亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? dramcon_rtl.v

?? 本程式為使用Verilog語言寫控制DRAM的控制模塊, 可以簡易的控制DRAM IC, 本程式已經(jīng)過系統(tǒng)驗證.
?? V
字號:
/*********************************************************/
// MODULE:		DRAM Controller
//
// FILE NAME:	dramcon_rtl.v
// VERSION:		1.0
// DATE:		January 1, 1999
// AUTHOR:		Bob Zeidman, Zeidman Consulting
// 
// CODE TYPE:	Register Transfer Level
//
// DESCRIPTION:	This module implements a controller for a
// DRAM. It performs CAS-before-RAS refreshes.
//
/*********************************************************/

// DEFINES
`define DEL	1		// Clock-to-output delay. Zero
					// time delays can be confusing
					// and sometimes cause problems.
`define RBC_CYC 2	// Number of cycles to assert RAS
					// before asserting CAS
`define CBR_CYC 1	// Number of cycles to assert CAS
					// before asserting RAS
`define RACW_CYC 1	// Number of cycles to assert RAS
					// and CAS together for a write
`define RACR_CYC 2	// Number of cycles to assert RAS
					// and CAS together for a read
`define RACRF_CYC 1	// Number of cycles to assert RAS
					// and CAS together for a refresh
`define CNT_BITS 2	// Number of bits needed for the
					// counter to count the cycles
					// listed above
`define REF_CNT 24	// Number of cycles between refreshes
`define REF_BITS 5	// Number of bits needed for the
					// counter to count the cycles
					// for a refresh
`define AOUT 4 		// Address bit width to DRAM
`define AIN 2*`AOUT	// Address bit width from processor

// TOP MODULE
module dram_control(
		clock,
		reset_n,
		as_n,
		addr_in,
		addr_out,
		rw,
		we_n,
		ras_n,
		cas_n,
		ack);

// INPUTS
input				clock;	   	// State machine clock
input				reset_n;   	// Active low, synchronous reset
input				as_n;		// Active low address strobe
input [`AIN-1:0]	addr_in;	// Address from processor
input				rw;			// Read/write input
								// = 1 to read
								// = 0 to write

// OUTPUTS
output [`AOUT-1:0]	addr_out;	// Address to DRAM
output				we_n;		// Write enable output
output				ras_n;		// Row Address Strobe to memory
output				cas_n;		// Column Address Strobe
								// to memory
output				ack;		// Acknowledge signal
								// to processor

// INOUTS

// SIGNAL DECLARATIONS
wire				clock;
wire				reset_n;
wire [`AIN-1:0]	   	addr_in;
wire				as_n;
wire				rw;
wire				we_n;
wire				ras_n;
wire				cas_n;
wire				ack;
wire [`AOUT-1:0]	addr_out;

reg  [3:0]				mem_state;	// Synthesis state_machine
wire					col_out;	// Output column address
									// = 1 for column address
									// = 0 for row address
reg  [`CNT_BITS-1:0]	count;		// Cycle counter
reg	 [`REF_BITS-1:0]	ref_count;	// Refresh counter
reg						refresh;	// Refresh request

// PARAMETERS
// These bits represent the following signals
// 			col_out,ras,cas,ack
parameter[3:0]			// State machine states
	IDLE	= 4'b0000,
	ACCESS	= 4'b0100,
	SWITCH	= 4'b1100,
	RAS_CAS	= 4'b1110,
	ACK		= 4'b1111,
	REF1	= 4'b0010,
	REF2	= 4'b0110;

// ASSIGN STATEMENTS
// Create the outputs from the states
assign col_out = mem_state[3];
assign ras_n = ~mem_state[2];
assign cas_n = ~mem_state[1];
assign ack = mem_state[0];

// Deassert we_n high during refresh
assign #`DEL we_n = rw | (mem_state == REF1) |
					(mem_state == REF2);

// Give the row address or column address to the DRAM
assign #`DEL addr_out = col_out ? addr_in[`AOUT-1:0] :
								addr_in[`AIN-1:`AOUT];

// MAIN CODE

// Look at the rising edge of clock for state transitions
always @(posedge clock or negedge reset_n) begin
	if (~reset_n) begin
	   	mem_state <= #`DEL IDLE;
		count <= #`DEL `CNT_BITS'h0;
		ref_count <= #`DEL `REF_CNT;
		refresh <= #`DEL 1'b0;
	end
	else begin
		// Time for a refresh request?
		if (ref_count == 0) begin
			refresh <= #`DEL 1'b1;
			ref_count <= #`DEL `REF_CNT;
		end
		else
			ref_count <= #`DEL ref_count - 1;

		// Decrement cycle counter to zero
		if (count)
			count <= #`DEL count - 1;

		case (mem_state)	// synthesis full_case parallel_case
			IDLE:	begin
				// Refresh request has highest priority
				if (refresh) begin
					// Load the counter to assert CAS
					count <= #`DEL `CBR_CYC;
					mem_state <= #`DEL REF1;
				end
				else if (~as_n) begin
					// Load the counter to assert RAS
					count <= #`DEL `RBC_CYC;
					mem_state <= #`DEL ACCESS;
				end
			end
			ACCESS:	begin
				mem_state <= #`DEL SWITCH;
			end
			SWITCH:	begin
				if (count == 0) begin
					mem_state <= #`DEL RAS_CAS;
					if (rw)
						count <= #`DEL `RACR_CYC;
					else
						count <= #`DEL `RACW_CYC;
				end
			end
			RAS_CAS:begin
				if (count == 0) begin
					mem_state <= #`DEL ACK;
				end
			end
			ACK:	begin
				mem_state <= #`DEL IDLE;
			end
			REF1:	begin
				if (count == 0) begin
					mem_state <= #`DEL REF2;
					count <= #`DEL `RACRF_CYC;
				end
			end
			REF2:	begin
				if (count == 0) begin
					mem_state <= #`DEL IDLE;
					refresh <= #`DEL 1'b0;
				end
			end
		endcase
	end
end
endmodule		// dram_control

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产.精品.日韩.另类.中文.在线.播放| 一区二区三区毛片| 国内国产精品久久| 久久久99精品免费观看不卡| 粉嫩蜜臀av国产精品网站| 国产精品欧美精品| 在线观看免费亚洲| 亚洲18女电影在线观看| 欧美一区二区播放| 国产91丝袜在线播放| 亚洲欧美日韩电影| 欧美一区二区视频网站| 国产在线播放一区二区三区| 国产精品久久久久9999吃药| 欧亚洲嫩模精品一区三区| 视频在线在亚洲| 国产日韩精品久久久| 91麻豆福利精品推荐| 美女视频网站黄色亚洲| 国产精品不卡在线| 91麻豆精品国产无毒不卡在线观看| 国产乱子伦视频一区二区三区| 亚洲图片你懂的| 在线观看91精品国产麻豆| 国产成人自拍在线| 亚洲高清免费观看| 国产精品丝袜在线| 欧美一级艳片视频免费观看| 成人美女视频在线看| 日韩电影免费一区| 综合在线观看色| 亚洲精品在线电影| 欧美三级视频在线| 丁香啪啪综合成人亚洲小说| 视频一区欧美日韩| 亚洲欧美日本韩国| 国产丝袜美腿一区二区三区| 欧美理论电影在线| 91免费观看视频在线| 国产精品自产自拍| 日韩高清一区二区| 亚洲精品国产无天堂网2021| 久久九九99视频| 亚洲一区在线观看视频| 精品国产区一区| 欧美情侣在线播放| 91片黄在线观看| 国产成人av一区二区三区在线观看| 性做久久久久久免费观看| 中文字幕在线观看不卡视频| 精品国精品国产| 欧美日本一区二区| 在线中文字幕一区二区| 成人高清伦理免费影院在线观看| 美女一区二区久久| 亚洲成人av资源| 一区二区三区精品视频| 国产精品进线69影院| 久久这里只有精品视频网| 欧美一区二区视频在线观看2020| 欧美亚洲免费在线一区| 色综合视频在线观看| 福利一区福利二区| 国产成+人+日韩+欧美+亚洲| 久久99久久久久久久久久久| 日韩精彩视频在线观看| 亚洲第一精品在线| 亚洲成人高清在线| 五月婷婷色综合| 五月天激情小说综合| 亚洲444eee在线观看| 天天综合天天综合色| 婷婷六月综合网| 日韩有码一区二区三区| 蜜臀av性久久久久av蜜臀妖精| 亚洲福利视频三区| 视频一区免费在线观看| 蜜臀av性久久久久蜜臀aⅴ四虎| 日本sm残虐另类| 美美哒免费高清在线观看视频一区二区| 婷婷综合在线观看| 毛片基地黄久久久久久天堂| 久久精品国产久精国产| 激情成人综合网| 顶级嫩模精品视频在线看| 成人a级免费电影| 日本高清成人免费播放| 欧美三级资源在线| 欧美成人一区二区| 国产情人综合久久777777| 国产精品国产三级国产a| 亚洲日本va午夜在线影院| 亚洲在线视频免费观看| 日韩电影在线免费看| 国产精品一区二区三区四区| 成人免费视频免费观看| 色噜噜狠狠成人网p站| 欧美日韩在线三级| 精品国精品自拍自在线| 国产精品免费观看视频| 亚洲国产日韩综合久久精品| 久久草av在线| 99久久99久久精品免费观看| 欧美日韩国产经典色站一区二区三区| 欧美一区二区三区在线观看| 久久夜色精品一区| 亚洲精品欧美激情| 久久er精品视频| 99久久久无码国产精品| 91麻豆精品国产91| 国产精品欧美久久久久无广告 | 亚洲成av人片一区二区| 欧美日韩国产大片| 欧美电视剧免费观看| 国产精品国产三级国产三级人妇 | 3atv一区二区三区| 国产欧美日韩激情| 五月天中文字幕一区二区| 国产美女视频91| 欧美亚洲动漫另类| 久久久亚洲精品一区二区三区 | 日韩电影在线一区| av成人老司机| 欧美大黄免费观看| 一级中文字幕一区二区| 国产剧情一区二区| 7777精品伊人久久久大香线蕉的| 日本一区二区三区四区在线视频| 一级精品视频在线观看宜春院| 国产自产v一区二区三区c| 色先锋aa成人| 亚洲国产精品国自产拍av| 丝袜亚洲精品中文字幕一区| 99v久久综合狠狠综合久久| 久久毛片高清国产| 爽爽淫人综合网网站| 91国产视频在线观看| 中文字幕第一区二区| 激情综合一区二区三区| 欧美老年两性高潮| 一区二区免费视频| av一区二区久久| 国产日韩欧美精品综合| 久久99这里只有精品| 欧美理论电影在线| 亚瑟在线精品视频| 欧美在线一二三四区| 亚洲日本青草视频在线怡红院| 国产成人精品三级麻豆| 久久先锋资源网| 国产一区二区三区四区五区入口 | 日韩女优av电影| 五月综合激情婷婷六月色窝| 欧美亚洲丝袜传媒另类| 一区二区三区四区在线播放| 成a人片亚洲日本久久| 国产天堂亚洲国产碰碰| 国产麻豆欧美日韩一区| 337p粉嫩大胆噜噜噜噜噜91av| 亚州成人在线电影| 欧美精品久久天天躁| 亚洲国产成人av网| 欧美日韩一区 二区 三区 久久精品 | 亚洲欧美色图小说| av电影在线不卡| 亚洲色图第一区| 92国产精品观看| 亚洲欧美国产毛片在线| 色狠狠av一区二区三区| 亚洲最新视频在线播放| 在线亚洲高清视频| 视频一区欧美日韩| 日韩欧美黄色影院| 国产在线一区观看| 国产精品麻豆网站| 91同城在线观看| 亚洲无线码一区二区三区| 欧美欧美欧美欧美| 精品一区二区免费看| 久久久精品免费网站| 成人理论电影网| 一区二区三区日本| 一区二区三区美女| 欧美一区二区二区| 国产成人精品在线看| 最好看的中文字幕久久| 在线一区二区视频| 蜜臀精品一区二区三区在线观看| 精品国产乱码91久久久久久网站| 国产精品一二二区| 亚洲精品免费在线观看| 欧美一级一级性生活免费录像| 国产乱理伦片在线观看夜一区| 国产精品丝袜久久久久久app| 在线观看三级视频欧美| 久久99深爱久久99精品| 一区在线观看视频| 3atv一区二区三区| 成人av网站在线观看免费| 亚洲一区二区三区小说|