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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? wr_rd.v

?? 高速AD采集卡應用程序及SDRAM控制器
?? V
字號:
`timescale 1ns / 1ps
////////////////////////////////////////////////////////////////////////////////
// Company: 
// Engineer:
//
// Create Date:    16:07:21 01/18/06
// Design Name:    
// Module Name:    sdram_wr_rd
// Project Name:   
// Target Device:  
// Tool versions:  
// Description:
//
// Dependencies:
// 
// Revision:
// Revision 0.01 - File Created
// Additional Comments:
// 
////////////////////////////////////////////////////////////////////////////////
module wr_rd(clk,sd_data_in,lwr,ads,blast,do_read_ack,do_write_ack,pci_data,do_write,do_read,addr,sd_data_out,sd_rst
//debug
//,next_state
);

input clk;
input lwr;
input ads;
input blast;
input do_read_ack;
input do_write_ack;
input [31:0] sd_data_in;



//output wr_l,rd_l;
output do_write;
output do_read;
output [20:0] addr;
output [31:0] sd_data_out;
output sd_rst;
//debug
//output [3:0]  next_state;



inout	[31:0] pci_data;

//reg wr_l;
//reg rd_l;
reg do_write;
reg do_read;
reg sd_rst;
reg [31:0] sd_data_out; 
reg [31:0] sd_data_in_reg;	
reg [20:0] addr;
reg [31:0] reg_data;
//reg [31:0] previous_data;
reg [3:0]  next_state;
reg [3:0]  read_counter;
reg [2:0]  addrm;
reg [31:0] mem [7:0];
reg [2:0]  rst_counter;

//----------------------------------------------------------------
parameter    idle  = 4'd0,
             reset = 4'd1,  
				// reset_wait = 4'd2,
				 write = 4'd3,
				 write_wait=4'd4,

				 send_read_cmd  = 4'd5,
				 read_wait=4'd6,
				 burst_read=4'd7,
				 read_mem=4'd8;
				
				
				


//---------------------------------------------------------------------------------------------------
assign pci_data=((!lwr)&(!ads))? sd_data_in_reg : 32'hzzzzzzzz;//當pci端發出讀信號時,將數據輸出,否則呈現高阻,使數據輸入


always@(posedge clk)

	begin
		if(lwr&(!blast))     //每當pci寫入數據或命令時
			begin
				reg_data<=pci_data;	//	將輸入的數據或命令寄存
				//previous_data<=reg_data;		//	與上一次的命令或數據對比
			end
	end
//--------------------------------------------------------------------------
always@(posedge clk)

	begin
		
		case(next_state)
			idle:
				begin
					//wr_l<=1;
					//rd_l<=1;
					do_write<=1'b0;
					do_read<=1'b0;
					sd_rst<=1'b1;
					read_counter<=4'd0;
					rst_counter<=3'd0;
					

					if(lwr&(!blast))		  // 每當pci寫入數據或命令時
						next_state<=write;
					//	begin
				
						//	if(pci_data==32'd0)  //	寫入全0表示reset sdram,不完善
					//	if(lwr&(!blast)&(pci_data==32'd0))		 
					//if(reg_data==32'd0)

								//begin	
									
															  
					//				next_state<=reset;
					//			end
							//else if(pci_data==32'h7fffeeee)   //寫入2147479278發出讀命令
						//	else if(lwr&(!blast)&(pci_data==32'h7fffeeee))
					//	else if(reg_data==32'h7fffeeee)
					//			next_state<=send_read_cmd;				
							//else 
					//		else if(lwr&(!blast)&(pci_data!=32'h7fffeeee)&(pci_data!=32'd0))
					//		   next_state<=write;		//其他情況為寫入數據
						//end

					else if((!lwr)&(!ads)) 	   	//當pci端發出讀信號時
		      				next_state<=read_mem;      //讀取寄存器

		        		else next_state<=idle;		//沒有讀或寫表示idle
					
				end
			reset: 
				begin
					sd_rst<=1'b0;
					addr<=21'd0;
					//wr_l<=1;
					//rd_l<=1;
					do_write<=1'b0;
					do_read<=1'b0;
					sd_data_out<=32'd0;

					addrm<=3'd0;
					read_counter<=4'd0;
					mem[0]<=32'd0;
					mem[1]<=32'd0;
					mem[2]<=32'd0;
					mem[3]<=32'd0;
					mem[4]<=32'd0;
					mem[5]<=32'd0;
					mem[6]<=32'd0;
					mem[7]<=32'd0;

					if(rst_counter==3'd5)	 //將rst信號維持低電平的時間維持5個周期
						begin
							rst_counter<=3'd0;
							next_state<=idle;
						end
					else
							begin
								rst_counter<=rst_counter+1;
								next_state<=reset;			
							end  


					//next_state<=reset_wait;
				end

		//	-----------------------------------------------------------
		/*	reset_wait:                              //將reset延長一個時鐘周期
				begin
					sd_rst<=0;
               addr<=21'd0;
					//wr_l<=1;
					//rd_l<=1;
					do_write<=0;
					do_read<=0;
					sd_data_out<=32'd0;

					addrm<=3'd0;
					read_counter<=4'd0;
					mem[0]<=32'd0;
					mem[1]<=32'd0;
					mem[2]<=32'd0;
					mem[3]<=32'd0;
					mem[4]<=32'd0;
					mem[5]<=32'd0;
					mem[6]<=32'd0;
					mem[7]<=32'd0;

					
					next_state<=idle;
				end
				*/
				//---------------------------------------------------------------------------

			write:                                       //可能要加入等待周期
				begin
					sd_rst<=1'b1;
					
					if(reg_data==32'd0)
						begin
							sd_rst<=1'b0;
							next_state<=reset;
						end
					else if(reg_data==32'h7fffeeee)   //寫入2147479278發出讀命令
						next_state<=send_read_cmd;
					else
						begin	
							//wr_l<=0;							  //發出寫命令
							do_write<=1'b1;						  //發出寫命令
							sd_data_out<=reg_data;		//向sdram發出數據

							if(addr==21'd7)						 //發出地址
								addr<=21'd0;
							else addr<=addr+1;

							next_state<=write_wait;
						end
				end
			write_wait:
				begin
					sd_rst<=1'b1;
					//調試屏蔽wr_l<=1;			  //不需要一直為低

					sd_data_out<=sd_data_out; //保持輸出數據不變
					//addr<=addr;		//保持地址不變

					if(do_write_ack)	  
						begin		  							
							//wr_l<=1;
							do_write<=1'b0;
							next_state<=idle;
						end
					else next_state<=write_wait;


				end

			

			send_read_cmd:                                         //可能要加入等待周期
				begin
					sd_rst<=1'b1;
					//rd_l<=0;        //send read command
					do_read<=1'b1;			//send read command

					addr<=21'd0;     //給出猝發讀的初始地址

					//if(addr==7)
					  //addr<=21'd0;
					//else addr<=addr+1;

					//sd_data_in_reg<=sd_data_in;

					//next_state<=idle;
					next_state<=read_wait;
				end
			read_wait:                                    //等待數據有效
				begin
					sd_rst<=1;
					//調試屏蔽 rd_l<=1;  //不需要一直為低		 
					//addr<=addr;//地址保持
					
					if(do_read_ack)   //當收到do_read_ack后表示下一個周期數據有效,開始接受數據
						begin
							//rd_l<=1;
							do_read<=1'b0;	
							next_state<=burst_read;
						end		 
					else next_state<=read_wait;
				end
			burst_read:                                 //將sdram的數據寫道存儲器mem中
				begin
					sd_rst<=1'b1;
					//rd_l<=1;
					do_read<=1'b0;
				
				
					if(addrm==3'd7)
						addrm<=3'd0;
					else 
						begin
							addrm<=addrm+1;					
							mem[addrm]<=sd_data_in;
						end
			
					
					if(read_counter==4'd8)
						begin
							read_counter<=1'b0;
                     next_state<=idle;
							
						end
					else 
						begin
							read_counter<=read_counter+1;
							next_state<=burst_read;
						end
					
				end

			read_mem:

				begin
					sd_rst<=1'b1;
					//rd_l<=1;
					do_read<=1'b0;
					if(addrm==3'd7)
						addrm<=3'd0;
					else
						begin
							addrm<=addrm+1;
							sd_data_in_reg<=mem[addrm];   //sd_data_in_reg是pci_data的輸出寄存器

						end
					next_state<=idle;	

				end
			
			default:next_state<=idle;

		endcase
	end


endmodule

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
另类人妖一区二区av| 久久精品欧美日韩精品| 中文字幕亚洲在| aaa欧美日韩| 怡红院av一区二区三区| 在线亚洲+欧美+日本专区| 亚洲一级不卡视频| 欧美一区二区在线不卡| 免费观看在线综合| 国产日韩高清在线| 一本色道**综合亚洲精品蜜桃冫| 亚洲愉拍自拍另类高清精品| 欧美精品自拍偷拍| 国内精品视频666| 国产精品成人一区二区三区夜夜夜 | 国产欧美一区二区精品秋霞影院| 国产成人av影院| 亚洲卡通欧美制服中文| 91.麻豆视频| 国产精品综合av一区二区国产馆| 中文子幕无线码一区tr| 在线视频综合导航| 国产在线不卡视频| 亚洲精品久久久蜜桃| 日韩一区二区三区视频| proumb性欧美在线观看| 天堂成人国产精品一区| 国产亚洲欧美一级| 欧美视频中文字幕| 国产精品亚洲一区二区三区在线| 亚洲欧美色一区| 26uuu精品一区二区三区四区在线| www.欧美色图| 久久精品国产精品亚洲精品| 亚洲色大成网站www久久九九| 91精品国产综合久久久久久久久久 | 国产91丝袜在线观看| 无码av中文一区二区三区桃花岛| 国产女主播一区| 8v天堂国产在线一区二区| 不卡视频免费播放| 精品一区精品二区高清| 亚洲高清在线精品| 国产精品黄色在线观看| 日韩欧美国产一区二区三区| 91色porny蝌蚪| 国产福利电影一区二区三区| 天天综合色天天综合色h| 中文字幕一区二区三区蜜月| 欧美电视剧免费全集观看| 欧美性xxxxx极品少妇| 成人黄色大片在线观看| 国产在线精品免费| 男人的天堂久久精品| 亚洲一区二区三区四区在线观看| 国产欧美精品一区| 久久久www成人免费毛片麻豆| 91精品国产综合久久婷婷香蕉| 一本色道**综合亚洲精品蜜桃冫 | 色噜噜夜夜夜综合网| 国产69精品一区二区亚洲孕妇| 捆绑调教一区二区三区| 日韩精品一二三| 亚洲一级二级三级| 亚洲一区二区三区小说| 亚洲夂夂婷婷色拍ww47| 依依成人综合视频| 依依成人精品视频| 樱桃国产成人精品视频| 亚洲精品国产精品乱码不99| 亚洲丝袜自拍清纯另类| 国产精品久线观看视频| 国产精品麻豆一区二区| 中文字幕不卡在线| 中文字幕av一区 二区| 国产午夜亚洲精品理论片色戒| 久久久夜色精品亚洲| 337p日本欧洲亚洲大胆精品 | 国产精品久久久久久亚洲毛片 | 国产欧美一区二区三区在线看蜜臀 | 成人爱爱电影网址| 不卡av在线免费观看| 粉嫩在线一区二区三区视频| 国产成人精品免费看| 成人性生交大合| 99视频在线精品| 色综合久久综合| 日本久久精品电影| 欧美麻豆精品久久久久久| 欧美疯狂性受xxxxx喷水图片| 日韩视频免费直播| 久久久www成人免费毛片麻豆| 欧美国产一区视频在线观看| 国产精品久久久久久久浪潮网站 | 国产成人免费视| 成人国产一区二区三区精品| 色婷婷久久久亚洲一区二区三区| 欧美综合天天夜夜久久| 51午夜精品国产| 久久久不卡网国产精品二区| 亚洲丝袜精品丝袜在线| 午夜亚洲国产au精品一区二区| 日本sm残虐另类| 国产999精品久久| 色999日韩国产欧美一区二区| 欧美日韩你懂的| 久久一区二区三区四区| 亚洲图片激情小说| 三级不卡在线观看| 国产乱码精品一品二品| 91免费在线看| 精品三级av在线| 中文字幕亚洲区| 日韩精品视频网站| 成人一区二区三区视频| 欧美精品丝袜久久久中文字幕| 26uuu国产一区二区三区| 中文字幕一区二区三区不卡在线 | 成人av影院在线| 欧美日韩国产系列| 久久精品一区二区三区不卡牛牛 | 成人黄色小视频| 欧美一区二区日韩| 亚洲欧美一区二区在线观看| 日韩成人午夜精品| 99久久精品国产一区| 欧美一个色资源| 一区二区三区中文字幕电影| 精品系列免费在线观看| 色婷婷av一区二区三区之一色屋| 日韩精品在线网站| 亚洲综合色视频| 成人av影视在线观看| 2欧美一区二区三区在线观看视频| 亚洲欧美在线aaa| 国产精品正在播放| 制服丝袜亚洲精品中文字幕| 亚洲人精品午夜| 国产成人精品免费| 欧美电影免费提供在线观看| 亚洲国产日韩精品| 色爱区综合激月婷婷| 中文字幕乱码亚洲精品一区| 美女视频网站久久| 4hu四虎永久在线影院成人| 亚洲三级免费电影| 成人黄页在线观看| 国产日韩精品久久久| 狠狠色丁香久久婷婷综合_中| 欧美疯狂性受xxxxx喷水图片| 亚洲精品成人天堂一二三| 成人在线综合网站| 26uuu精品一区二区| 久久精品99国产国产精| 欧美一区二区三区在| 视频一区二区中文字幕| 欧美性色黄大片| 亚洲国产一区视频| 欧洲精品视频在线观看| 怡红院av一区二区三区| 91网站在线观看视频| 亚洲婷婷在线视频| 97se亚洲国产综合在线| 中文字幕一区二区三区av| 成人毛片视频在线观看| 中文幕一区二区三区久久蜜桃| 国产一区二区免费视频| 久久久一区二区| 国产凹凸在线观看一区二区| 久久精品一二三| 国产不卡在线一区| 国产精品日产欧美久久久久| 成人avav影音| 18成人在线视频| 色婷婷综合久久久久中文| 一区二区三区精密机械公司| 在线国产亚洲欧美| 亚洲午夜av在线| 日韩午夜激情电影| 久久草av在线| 中文字幕精品一区二区三区精品| 成人午夜在线播放| 亚洲欧美日韩一区| 欧美日韩大陆一区二区| 久久66热偷产精品| 国产亚洲精品aa| 波多野结衣在线一区| 亚洲免费成人av| 欧美日韩国产美| 精品一二三四在线| 国产精品福利在线播放| 欧美日韩一级黄| 精品伊人久久久久7777人| 国产精品视频麻豆| 欧美曰成人黄网| 蜜桃一区二区三区在线| 欧美国产精品劲爆| 欧美三区在线观看| 韩国av一区二区| 亚洲精品中文字幕在线观看|