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

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

?? nand_interface.vhd

?? 用CPLD實現NAND FLASH接口的VHDL源碼
?? VHD
字號:
-- ********************************************************************
--
-- Owner:	Xilinx Inc.
-- File:  	nand_interface.vhd
--
-- Purpose: 	Interface for the AMD AM30LV0064D UltraNAND Flash and
--		Samsung K9F4008W0A memory devices.  Decodes the lower 
--		address bits of the system bus to decode commands and set 
--		or clear interface signals.
--		This device includes a RESET input to force WP# asserted 
--		on power transitions. RESET is high until Vcc is valid
--		and goes high when supply power ramps down.
--
-- *********************************************************************

library IEEE;
use IEEE.std_logic_1164.all;
use IEEE.numeric_std.all;


entity NAND_INTERFACE is

	port(	
		-- Input Signals to CPLD
		write_n		: in 	STD_LOGIC;			-- System Write Enable
		read_n		: in 	STD_LOGIC;			-- System Read Enable	
		port_addr	: in 	STD_LOGIC_VECTOR (3 downto 0);	-- Address input to select port
		ce_n		: in 	STD_LOGIC;			-- Chip Enable for the interface and UltraNAND 
		ry_byn		: in 	STD_LOGIC;			-- RY/BY# input from UltraNAND 
		reset		: in 	STD_LOGIC;			-- RESET - high for reset and power transitions
		com_lat_n	: in 	STD_LOGIC;			-- COM_LAT from test bench to negate CLE 
									-- during command write cycle
			
		-- Output signals from CPLD
		ready 		: out 	STD_LOGIC;			-- Allows system to read RY/BY# pin state 
		cle		: out 	STD_LOGIC;			-- Command Latch Enable to UltraNAND 
		ale		: out 	STD_LOGIC;			-- Address Latch Enable to UltraNAND 
		se_n		: out 	STD_LOGIC;			-- Spare Area Enable to UltraNAND 
		wp_n 		: out 	STD_LOGIC;			-- Write Protect to UltraNAND 
		outce_n		: out 	STD_LOGIC;			-- Chip Enable to UltraNAND 	
		we_n 		: out 	STD_LOGIC;			-- Write Enable to UltraNAND 
		re_n		: out 	STD_LOGIC			-- Read Enable to UltraNAND 

		);
	
end NAND_INTERFACE;


architecture BEHAVIOR of NAND_INTERFACE is 

constant RESET_ACTIVE : STD_LOGIC := '1';

-- Define port address signals
signal port0	: STD_LOGIC;
signal port1	: STD_LOGIC;
signal port2	: STD_LOGIC;
signal port3	: STD_LOGIC;
signal port4	: STD_LOGIC;
signal port5	: STD_LOGIC;
signal port6	: STD_LOGIC;
signal port7	: STD_LOGIC;
signal port8	: STD_LOGIC;
signal port9	: STD_LOGIC;
signal porta	: STD_LOGIC;
signal portb	: STD_LOGIC;
signal portc	: STD_LOGIC;
signal portd	: STD_LOGIC;
signal porte	: STD_LOGIC;
signal portf	: STD_LOGIC;

-- Create internal signals
signal se_n_int		: STD_LOGIC;
signal ale_int		: STD_LOGIC;
signal wp_n_int 	: STD_LOGIC;
signal outce_n_int 	: STD_LOGIC;


begin

	-- ********************** SIGNAL ASSIGNMENTS *************************

	-- Assign output signals
	se_n <= se_n_int;
	ale <= ale_int;
	wp_n <= wp_n_int;
	outce_n <= outce_n_int;

	-- Data read/write port
	port0 <= (not ce_n) and (not port_addr(3)) and (not port_addr(2)) and (not port_addr(1)) 
		and (not port_addr(0)); 	

	-- CLE write port 
	port1 <= (not ce_n) and (not port_addr(3)) and (not port_addr(2)) 
		and (not port_addr(1)) and port_addr(0);

	-- Used to set ALE
	port2 <= (not ce_n) and (not port_addr(3)) and (not port_addr(2)) 
		and port_addr(1) and (not port_addr(0));
	
	-- Used to clear ALE
	port3 <= (not ce_n) and (not port_addr(3)) and (not port_addr(2)) 
		and port_addr(1) and port_addr(0);

	-- Used to set SE# 
	port4 <= (not ce_n) and (not port_addr(3)) and port_addr(2) 
		and (not port_addr(1)) and (not port_addr(0)); 
	
	-- Used to clear SE#
	port5 <= (not ce_n) and (not port_addr(3)) and port_addr(2) 
		and (not port_addr(1)) and port_addr(0); 	
	
	-- Used to set WP# 
	port6 <= (not ce_n) and (not port_addr(3)) and port_addr(2) 
		and port_addr(1) and (not port_addr(0)); 	
	
	-- Used to clear WP# 
	port7 <= (not ce_n) and (not port_addr(3)) and port_addr(2) 
		and port_addr(1) and port_addr(0); 	
	
	-- Used to set OUTCE# 
	port8 <= (not ce_n) and port_addr(3) and (not port_addr(2)) 
		and (not port_addr(1)) and (not port_addr(0)); 

	-- Used to clear OUTCE# 
	port9 <= (not ce_n) and port_addr(3) and (not port_addr(2)) 
		and (not port_addr(1)) and port_addr(0); 	

	-- No Function
	porta <= (not ce_n) and port_addr(3) and (not port_addr(2)) and port_addr(1) 
		and (not port_addr(0)); 
	portb <= (not ce_n) and port_addr(3) and (not port_addr(2)) and port_addr(1) 
		and port_addr(0); 
	portc <= (not ce_n) and port_addr(3) and port_addr(2) and (not port_addr(1)) 
		and (not port_addr(0)); 	
	portd <= (not ce_n) and port_addr(3) and port_addr(2) and (not port_addr(1)) 
		and port_addr(0); 
	porte <= (not ce_n) and port_addr(3) and port_addr(2) and port_addr(1) 
		and (not port_addr(0)); 	

	-- To read RY/BY# state 
	portf <= (not ce_n) and port_addr(3) and port_addr(2) and port_addr(1) 
		and port_addr(0); 	

	-- Assert CLE on all port1 accesses 
	cle <= port1;			       
	
	-- Drive WE# to UltraNAND for port0 or port1 
	we_n <= not ((not write_n) and ( port0 or (port1 and (not com_lat_n))));
	
	
	-- Drive REor to UltraNAND for port0 only 
	re_n <= not ((not read_n) and port0); 	
	
		
	-- ********************** PROCESS: ALE_SIG ******************************
	-- Purpose: Assert ALE signal
	ALE_SIG: process (reset, write_n, port2, port3)
	begin	
		-- Reset Condition
		if (reset = RESET_ACTIVE) then
			ale_int <= '0';
		
		-- Latch ALE on write to PORT2
		elsif (write_n = '0') and (port2 = '1') then
			ale_int <= '1';
		
		-- Clear on write to PORT3
		elsif (write_n = '0') and (port3 = '1') then
			ale_int <= '0';
		
		-- Transparent latch cover term
		else
			ale_int <= ale_int;
			
		end if;
	
	end process ALE_SIG;
	
	
	-- ********************** PROCESS: SEN_SIG ******************************
	-- Purpose: Assert SE# signal
	SEN_SIG: process (reset, write_n, port4, port5)
	begin	
		-- Reset Condition
		if (reset = RESET_ACTIVE) then
			se_n_int <= '1';
		
		-- Latch SE# on write to PORT4
		elsif (write_n = '0') and (port4 = '1') then
			se_n_int <= '0';
		
		-- Clear on write to PORT5
		elsif (write_n = '0') and (port5 = '1') then
			se_n_int <= '1';
		
		-- Transparent latch cover term
		else
			se_n_int <= se_n_int;
			
		end if;
	
	end process SEN_SIG;
	
	
	-- ********************** PROCESS: WPN_SIG ******************************
	-- Purpose: Assert WP# signal
	WPN_SIG: process (reset, write_n, port6, port7)
	begin	
		-- Reset Condition
		if (reset = RESET_ACTIVE) then
			wp_n_int <= '0';
		
		-- Latch WP# on write to PORT6
		elsif (write_n = '0') and (port6 = '1') then
			wp_n_int <= '0';
		
		-- Clear on write to PORT7
		elsif (write_n = '0') and (port7 = '1') then
			wp_n_int <= '1';
		
		-- Transparent latch cover term
		else
			wp_n_int <= wp_n_int;
			
		end if;
	
	end process WPN_SIG;
		
								
	-- ********************* PROCESS: OUTCE_SIG *****************************
	-- Purpose: Assert OUTCE# signal
	OUTCE_SIG: process (reset, write_n, port8, port9)
	begin	
		-- Reset Condition
		if (reset = RESET_ACTIVE) then
			outce_n_int <= '1';
		
		-- Set OUTCE# (low) on write to port8
		elsif (write_n = '0') and (port8 = '1') then
			outce_n_int <= '0';
		
		-- Clear OUTCE# (high) on write to port9
		elsif (write_n = '0') and (port9 = '1') then
			outce_n_int <= '1';
		
		-- Transparent latch cover term
		else
			outce_n_int <= outce_n_int;
			
		end if;
	
	end process OUTCE_SIG;
	
		
	-- ********************** PROCESS: READY_SIG ******************************
	-- Purpose: Assert ready signal
	READY_SIG: process (portf, read_n)
	begin	
		-- READY is only driven during a PORTF read
		-- READY shows the state of RY/BY# 
		if (portf = '1') and (read_n = '0') then
			ready <= ry_byn;
		else
			ready <= 'Z';
		end if;
	
	end process READY_SIG;

 
 end BEHAVIOR;
 

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
不卡一卡二卡三乱码免费网站| 亚洲国产精品激情在线观看| 亚洲第一狼人社区| 日本大香伊一区二区三区| 亚洲精品中文在线观看| 91麻豆国产福利精品| 亚洲综合丝袜美腿| 欧美日韩一区二区三区在线| 亚洲大片免费看| 欧美成人一区二区三区在线观看| 麻豆国产91在线播放| 久久只精品国产| 99久久99久久精品免费观看| 亚洲国产精品麻豆| 精品国产91亚洲一区二区三区婷婷| 国产成人综合在线观看| 亚洲精品亚洲人成人网| 欧美老年两性高潮| 国产一区二区免费视频| 综合欧美亚洲日本| 在线播放国产精品二区一二区四区| 精品写真视频在线观看| 中文字幕亚洲一区二区va在线| 在线观看不卡一区| 精品系列免费在线观看| 亚洲男人天堂av| 日韩一区二区三区av| 国产麻豆视频精品| 国产精品久99| 欧美精品久久99久久在免费线 | 一区二区三区 在线观看视频| 色偷偷久久一区二区三区| 一区二区三区成人| 欧美中文字幕一二三区视频| 免费久久99精品国产| 亚洲成a人片在线不卡一二三区| 不卡的av网站| 亚洲成人www| 精品精品国产高清a毛片牛牛 | 亚洲永久精品国产| 日韩欧美一区二区不卡| 风间由美性色一区二区三区| 亚洲午夜激情av| 欧美tickling网站挠脚心| 99这里只有精品| 久久国产精品一区二区| 中文字幕一区二区三| 欧美一区二区三区色| 成人妖精视频yjsp地址| 五月天激情小说综合| 欧美国产在线观看| 欧美高清视频一二三区| 国产一区二区在线影院| 亚洲精品亚洲人成人网在线播放| 欧美电视剧在线观看完整版| 91丨国产丨九色丨pron| 狠狠色狠狠色综合| 亚洲摸摸操操av| 久久青草国产手机看片福利盒子| 在线视频欧美区| 丁香五精品蜜臀久久久久99网站| 丝袜美腿亚洲色图| 国产精品久久久久婷婷二区次| 欧美一区二区网站| 色久综合一二码| 国产99久久久国产精品| 免费在线视频一区| 亚洲成人中文在线| 亚洲日本va午夜在线电影| www国产成人| 日韩三级电影网址| 欧美在线|欧美| 国产精品影视在线观看| 久久99国内精品| 日本欧美在线看| 首页国产欧美久久| 亚洲一区二区高清| 中文字幕佐山爱一区二区免费| 久久先锋影音av鲁色资源网| 制服丝袜中文字幕一区| 欧美视频日韩视频在线观看| 成人av免费网站| 国产高清不卡二三区| 美国毛片一区二区| 日韩va亚洲va欧美va久久| 亚洲在线视频网站| 一区二区三区色| 久久影音资源网| 日韩你懂的电影在线观看| 欧美伦理电影网| 欧美猛男超大videosgay| 在线观看视频一区二区 | 亚洲女人的天堂| 亚洲美女电影在线| 亚洲欧美一区二区三区久本道91| 国产嫩草影院久久久久| 国产女人18水真多18精品一级做| 国产清纯在线一区二区www| 久久综合网色—综合色88| 精品久久国产97色综合| 欧美成人video| 久久精品人人做| 中文在线资源观看网站视频免费不卡| 26uuu色噜噜精品一区| 91麻豆精品91久久久久同性| 3d成人h动漫网站入口| 欧美一级黄色大片| 欧美日韩精品是欧美日韩精品| 91精品综合久久久久久| 精品理论电影在线观看| www国产亚洲精品久久麻豆| 国产亚洲欧美一级| 亚洲人成小说网站色在线| 一级特黄大欧美久久久| 午夜天堂影视香蕉久久| 久久精品国产99国产精品| 国产乱一区二区| av电影在线观看一区| 欧美中文字幕一二三区视频| 在线亚洲+欧美+日本专区| 69久久夜色精品国产69蝌蚪网| 日韩欧美国产1| 精品嫩草影院久久| 久久综合久久综合九色| 中文字幕日韩一区| 天天影视涩香欲综合网| 国产一区二区三区四区五区入口| 福利电影一区二区三区| 欧美日韩精品一区二区天天拍小说| 日韩欧美中文一区二区| 国产精品网站导航| 亚洲成人动漫一区| 国产成人一区在线| 欧美一区二区视频在线观看| 国产欧美日韩精品在线| 中文字幕日韩一区| 蜜臀91精品一区二区三区 | 免费观看在线综合色| 成人网在线免费视频| 欧美日韩免费电影| 国产欧美日韩不卡免费| 日本成人在线看| 91在线看国产| 精品国产乱码久久久久久蜜臀 | 欧美综合亚洲图片综合区| 精品黑人一区二区三区久久 | 久久久久久久久久久久电影| 亚洲少妇30p| 亚洲成人777| 色国产精品一区在线观看| 欧美精品一区在线观看| 一区二区久久久| 欧美一级高清片在线观看| 亚洲图片激情小说| 久久99久久99精品免视看婷婷 | 麻豆91在线看| 欧美视频一区二区三区四区| 国产精品视频麻豆| 久久精品免费看| 欧美精品久久一区| 亚洲精品视频自拍| 成人av在线资源网站| 欧美经典一区二区| 久久精品免费观看| 91精品国产综合久久久久久漫画| 亚洲乱码一区二区三区在线观看| 国产尤物一区二区| 日韩亚洲国产中文字幕欧美| 亚洲第一福利视频在线| 色婷婷av一区二区三区大白胸| 欧美国产精品v| 国产成人av电影在线| 欧美日韩精品福利| 人人精品人人爱| 欧美一级日韩一级| 免费人成黄页网站在线一区二区 | 亚洲婷婷在线视频| 处破女av一区二区| 久久蜜臀中文字幕| 国产一区二区三区香蕉| 久久久亚洲国产美女国产盗摄 | 日韩一级在线观看| 天天综合网 天天综合色| 欧美四级电影网| 亚洲综合清纯丝袜自拍| 一本久久综合亚洲鲁鲁五月天 | 91国产精品成人| 又紧又大又爽精品一区二区| 99麻豆久久久国产精品免费| 欧美激情一区在线| 懂色av中文一区二区三区| 欧美激情一区二区三区在线| 成人午夜av影视| 亚洲品质自拍视频网站| 成人99免费视频| 一区二区不卡在线视频 午夜欧美不卡在 | 精品亚洲国内自在自线福利| 欧美精品乱码久久久久久按摩| 六月丁香综合在线视频| 久久久久久久久久久久久女国产乱|