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

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

?? atahost_wb_slave.vhd

?? PowerFull ATA Host Controller
?? VHD
?? 第 1 頁 / 共 2 頁
字號:
		begin			if (clk_i'event and clk_i = '1') then				if (PIOsel = '0') then					store_pp_full <= PIOpp_full;				end if;			end if;		end process;		brty <= (ATA_DEV_ADR and w_acc) and (DMAtip or store_pp_full);	end block gen_bc_dec;	--	-- generate registers	--	register_block : block		signal sel_PIO_cmdport, sel_PIO_dport0, sel_PIO_dport1 : std_logic; -- PIO timing registers		signal sel_DMA_dev0, sel_DMA_dev1 : std_logic;                      -- DMA timing registers		signal sel_ctrl, sel_stat : std_logic;                              -- control / status register	begin		-- generate register select signals		sel_ctrl        <= CONsel and we_i and (ATA_ADR = ATA_CTRL_REG);		sel_stat        <= CONsel and we_i and (ATA_ADR = ATA_STAT_REG);		sel_PIO_cmdport <= CONsel and we_i and (ATA_ADR = ATA_PIO_CMD);		sel_PIO_dport0  <= CONsel and we_i and (ATA_ADR = ATA_PIO_DP0);		sel_PIO_dport1  <= CONsel and we_i and (ATA_ADR = ATA_PIO_DP1);		sel_DMA_dev0    <= CONsel and we_i and (ATA_ADR = ATA_DMA_DEV0);		sel_DMA_dev1    <= CONsel and we_i and (ATA_ADR = ATA_DMA_DEV1);		-- reserved 0x1C-0x38 --		-- reserved 0x3C : DMA port --		-- generate control register		gen_ctrl_reg: process(clk_i, arst_i)		begin			if (arst_i = '0') then				CtrlReg(31 downto 1) <= (others => '0');				CtrlReg(0)           <= '1';                -- set reset bit			elsif (clk_i'event and clk_i = '1') then				if (rst_i = '1') then					CtrlReg(31 downto 1) <= (others => '0');					CtrlReg(0)           <= '1';                -- set reset bit				elsif (sel_ctrl = '1') then					CtrlReg <= dat_i;				end if;			end if;		end process gen_ctrl_reg;		-- assign bits		DMActrl_DMAen        <= CtrlReg(15);		DMActrl_dir          <= CtrlReg(13);		DMActrl_BeLeC1       <= CtrlReg(9);		DMActrl_BeLeC0       <= CtrlReg(8);		IDEctrl_IDEen        <= CtrlReg(7);		IDEctrl_FATR1        <= CtrlReg(6);		IDEctrl_FATR0        <= CtrlReg(5);		IDEctrl_ppen         <= CtrlReg(4);		PIO_dport1_IORDYen   <= CtrlReg(3);		PIO_dport0_IORDYen   <= CtrlReg(2);		PIO_cmdport_IORDYen  <= CtrlReg(1);		IDEctrl_rst          <= CtrlReg(0);		-- generate status register clearable bits		gen_stat_reg: block			signal dirq, int : std_logic;		begin			gen_irq: process(clk_i, arst_i)			begin				if (arst_i = '0') then					int  <= '0';					dirq <= '0';				elsif (clk_i'event and clk_i = '1') then					if (rst_i = '1') then						int  <= '0';						dirq <= '0';					else						int  <= (int or (irq and not dirq)) and not (sel_stat and not dat_i(0));						dirq <= irq;					end if;				end if;			end process gen_irq;			gen_stat: process(DMAtip, DMARxEmpty, DMATxFull, DMA_dmarq, PIOtip, int, PIOpp_full)			begin				StatReg(31 downto 0) <= (others => '0');                -- clear all bits (read unused bits as '0')				StatReg(31 downto 28) <= std_logic_vector(DeviceId);    -- set Device ID				StatReg(27 downto 24) <= std_logic_vector(RevisionNo);  -- set revision number				StatReg(15) <= DMAtip;				StatReg(10) <= DMARxEmpty;				StatReg(9)  <= DMATxFull;				StatReg(8)  <= DMA_dmarq;				StatReg(7)  <= PIOtip;				StatReg(6)  <= PIOpp_full;				StatReg(0)  <= int;			end process;		end block gen_stat_reg;		-- generate PIO compatible / command-port timing register		gen_PIO_cmdport_reg: process(clk_i, arst_i)		begin			if (arst_i = '0') then				PIO_cmdport_T1   <= conv_unsigned(PIO_mode0_T1, 8);				PIO_cmdport_T2   <= conv_unsigned(PIO_mode0_T2, 8);				PIO_cmdport_T4   <= conv_unsigned(PIO_mode0_T4, 8);				PIO_cmdport_Teoc <= conv_unsigned(PIO_mode0_Teoc, 8);			elsif (clk_i'event and clk_i = '1') then				if (rst_i = '1') then					PIO_cmdport_T1   <= conv_unsigned(PIO_mode0_T1, 8);					PIO_cmdport_T2   <= conv_unsigned(PIO_mode0_T2, 8);					PIO_cmdport_T4   <= conv_unsigned(PIO_mode0_T4, 8);					PIO_cmdport_Teoc <= conv_unsigned(PIO_mode0_Teoc, 8);				elsif (sel_PIO_cmdport = '1') then					PIO_cmdport_T1   <= unsigned(dat_i( 7 downto  0));					PIO_cmdport_T2   <= unsigned(dat_i(15 downto  8));					PIO_cmdport_T4   <= unsigned(dat_i(23 downto 16));					PIO_cmdport_Teoc <= unsigned(dat_i(31 downto 24));				end if;			end if;		end process gen_PIO_cmdport_reg;		-- generate PIO device0 timing register		gen_PIO_dport0_reg: process(clk_i, arst_i)		begin			if (arst_i = '0') then				PIO_dport0_T1   <= conv_unsigned(PIO_mode0_T1, 8);				PIO_dport0_T2   <= conv_unsigned(PIO_mode0_T2, 8);				PIO_dport0_T4   <= conv_unsigned(PIO_mode0_T4, 8);				PIO_dport0_Teoc <= conv_unsigned(PIO_mode0_Teoc, 8);			elsif (clk_i'event and clk_i = '1') then				if (rst_i = '1') then					PIO_dport0_T1   <= conv_unsigned(PIO_mode0_T1, 8);					PIO_dport0_T2   <= conv_unsigned(PIO_mode0_T2, 8);					PIO_dport0_T4   <= conv_unsigned(PIO_mode0_T4, 8);					PIO_dport0_Teoc <= conv_unsigned(PIO_mode0_Teoc, 8);				elsif (sel_PIO_dport0 = '1') then					PIO_dport0_T1   <= unsigned(dat_i( 7 downto  0));					PIO_dport0_T2   <= unsigned(dat_i(15 downto  8));					PIO_dport0_T4   <= unsigned(dat_i(23 downto 16));					PIO_dport0_Teoc <= unsigned(dat_i(31 downto 24));				end if;			end if;		end process gen_PIO_dport0_reg;		-- generate PIO device1 timing register		gen_PIO_dport1_reg: process(clk_i, arst_i)		begin			if (arst_i = '0') then				PIO_dport1_T1   <= conv_unsigned(PIO_mode0_T1, 8);				PIO_dport1_T2   <= conv_unsigned(PIO_mode0_T2, 8);				PIO_dport1_T4   <= conv_unsigned(PIO_mode0_T4, 8);				PIO_dport1_Teoc <= conv_unsigned(PIO_mode0_Teoc, 8);			elsif (clk_i'event and clk_i = '1') then				if (rst_i = '1') then					PIO_dport1_T1   <= conv_unsigned(PIO_mode0_T1, 8);					PIO_dport1_T2   <= conv_unsigned(PIO_mode0_T2, 8);					PIO_dport1_T4   <= conv_unsigned(PIO_mode0_T4, 8);					PIO_dport1_Teoc <= conv_unsigned(PIO_mode0_Teoc, 8);				elsif (sel_PIO_dport1 = '1') then					PIO_dport1_T1   <= unsigned(dat_i( 7 downto  0));					PIO_dport1_T2   <= unsigned(dat_i(15 downto  8));					PIO_dport1_T4   <= unsigned(dat_i(23 downto 16));					PIO_dport1_Teoc <= unsigned(dat_i(31 downto 24));				end if;			end if;		end process gen_PIO_dport1_reg;		-- generate DMA device0 timing register		gen_DMA_dev0_reg: process(clk_i, arst_i)		begin			if (arst_i = '0') then				DMA_dev0_Tm   <= conv_unsigned(DMA_mode0_Tm, 8);				DMA_dev0_Td   <= conv_unsigned(DMA_mode0_Td, 8);				DMA_dev0_Teoc <= conv_unsigned(DMA_mode0_Teoc, 8);			elsif (clk_i'event and clk_i = '1') then				if (rst_i = '1') then					DMA_dev0_Tm   <= conv_unsigned(DMA_mode0_Tm, 8);					DMA_dev0_Td   <= conv_unsigned(DMA_mode0_Td, 8);					DMA_dev0_Teoc <= conv_unsigned(DMA_mode0_Teoc, 8);				elsif (sel_DMA_dev0 = '1') then					DMA_dev0_Tm   <= unsigned(dat_i( 7 downto  0));					DMA_dev0_Td   <= unsigned(dat_i(15 downto  8));					DMA_dev0_Teoc <= unsigned(dat_i(31 downto 24));				end if;			end if;		end process gen_DMA_dev0_reg;		-- generate DMA device1 timing register		gen_DMA_dev1_reg: process(clk_i, arst_i)		begin			if (arst_i = '0') then				DMA_dev1_Tm   <= conv_unsigned(DMA_mode0_Tm, 8);				DMA_dev1_Td   <= conv_unsigned(DMA_mode0_Td, 8);				DMA_dev1_Teoc <= conv_unsigned(DMA_mode0_Teoc, 8);			elsif (clk_i'event and clk_i = '1') then				if (rst_i = '1') then					DMA_dev1_Tm   <= conv_unsigned(DMA_mode0_Tm, 8);					DMA_dev1_Td   <= conv_unsigned(DMA_mode0_Td, 8);					DMA_dev1_Teoc <= conv_unsigned(DMA_mode0_Teoc, 8);				elsif (sel_DMA_dev1 = '1') then					DMA_dev1_Tm   <= unsigned(dat_i( 7 downto  0));					DMA_dev1_Td   <= unsigned(dat_i(15 downto  8));					DMA_dev1_Teoc <= unsigned(dat_i(31 downto 24));				end if;			end if;		end process gen_DMA_dev1_reg;	end block register_block;	--	-- generate WISHBONE interconnect signals	--	gen_WB_sigs: block		signal Q : std_logic_vector(31 downto 0);	begin		-- generate acknowledge signal		ack_o <= PIOack or CONsel; -- or DMAack; -- since DMAack is derived from CONsel this is OK		-- generate error signal		err_o <= cyc_i and stb_i and berr;		-- generate retry signal		rty_o <= cyc_i and stb_i and brty;		-- assign interrupt signal		inta_o <= StatReg(0);			-- generate output multiplexor		with ATA_ADR select			Q <= CtrlReg when ATA_CTRL_REG, -- control register			     StatReg when ATA_STAT_REG, -- status register			     std_logic_vector(PIO_cmdport_Teoc & PIO_cmdport_T4 & PIO_cmdport_T2 & PIO_cmdport_T1) when ATA_PIO_CMD,  -- PIO compatible / cmd-port timing register			     std_logic_vector(PIO_dport0_Teoc & PIO_dport0_T4 & PIO_dport0_T2 & PIO_dport0_T1)     when ATA_PIO_DP0,  -- PIO fast timing register device0			     std_logic_vector(PIO_dport1_Teoc & PIO_dport1_T4 & PIO_dport1_T2 & PIO_dport1_T1)     when ATA_PIO_DP1,  -- PIO fast timing register device1			     std_logic_vector(DMA_dev0_Teoc & x"00" & DMA_dev0_Td & DMA_dev0_Tm)                   when ATA_DMA_DEV0, -- DMA timing register device0			     std_logic_vector(DMA_dev1_Teoc & x"00" & DMA_dev1_Td & DMA_dev1_Tm)                   when ATA_DMA_DEV1, -- DMA timing register device1			     DMAq    when ATA_DMA_PORT, -- DMA port, DMA receive register		       (others => '0') when others;		dat_o <= (x"0000" & PIOq) when (ATA_DEV_ADR = '1') else Q;	end block gen_WB_sigs;end architecture structural;

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
成人午夜免费视频| 日本aⅴ精品一区二区三区| 成人精品高清在线| 亚洲三级在线免费| 欧美综合一区二区三区| 午夜精品福利一区二区蜜股av | 老司机精品视频在线| 精品国产亚洲在线| 成人h动漫精品一区二| 亚洲黄色av一区| 欧美一级一级性生活免费录像| 久草这里只有精品视频| 久久久久久9999| 色狠狠av一区二区三区| 亚洲国产精品久久久久秋霞影院| 欧美肥大bbwbbw高潮| 久久99热99| 17c精品麻豆一区二区免费| 日本乱人伦一区| 美女网站视频久久| 欧美高清在线精品一区| 欧美性生活大片视频| 久久国产综合精品| 亚洲女同ⅹxx女同tv| 91.com视频| a级高清视频欧美日韩| 亚洲国产中文字幕在线视频综合 | 日本一区二区三区国色天香| 色综合色狠狠天天综合色| 日韩极品在线观看| 国产精品狼人久久影院观看方式| 色综合中文综合网| 91网上在线视频| 久久精品国产免费| 亚洲卡通欧美制服中文| 精品国产乱码久久久久久夜甘婷婷 | 国产又黄又大久久| 亚洲精品日日夜夜| 国产日韩欧美精品在线| 欧美猛男男办公室激情| 成人h动漫精品一区二| 日韩av不卡一区二区| |精品福利一区二区三区| 精品国产乱码久久久久久闺蜜 | 大美女一区二区三区| 丝袜a∨在线一区二区三区不卡| 久久精品夜色噜噜亚洲a∨| 欧美日韩精品一区二区| hitomi一区二区三区精品| 久久 天天综合| 天天色综合天天| 亚洲美女免费视频| 国产精品久久久久桃色tv| 久久丝袜美腿综合| 91精品国产综合久久久蜜臀图片 | 欧美一区二区三区人| 色噜噜夜夜夜综合网| 风间由美中文字幕在线看视频国产欧美 | 欧美日韩国产免费一区二区| 91在线一区二区三区| 国产酒店精品激情| 国产真实乱对白精彩久久| 丝袜美腿亚洲色图| 五月天视频一区| 午夜a成v人精品| 亚欧色一区w666天堂| 亚洲综合免费观看高清完整版| 国产精品国产三级国产专播品爱网| 精品国产乱码久久久久久久 | 日韩成人一级大片| 首页国产欧美日韩丝袜| 亚洲成av人片一区二区三区| 一区二区三区 在线观看视频| 成人免费视频在线观看| 亚洲视频每日更新| 亚洲免费色视频| 亚洲欧美综合另类在线卡通| 中文欧美字幕免费| 亚洲欧美日韩一区二区| 夜夜嗨av一区二区三区四季av| 亚洲精品v日韩精品| 亚洲国产一区二区三区青草影视| 亚洲最新在线观看| 日韩成人一级大片| 韩国一区二区三区| 国产成人av一区| 99re视频这里只有精品| 色菇凉天天综合网| 欧美顶级少妇做爰| 欧美精品一区二区三区蜜臀| 久久久久久久久久久电影| 国产精品天天看| 亚洲精品视频一区二区| 亚洲成人动漫一区| 热久久久久久久| 国产成人在线免费| 日本韩国一区二区| 在线成人免费观看| 久久久久国产精品麻豆ai换脸| 国产精品福利在线播放| 亚洲成人自拍网| 国产乱人伦精品一区二区在线观看| 成人国产亚洲欧美成人综合网 | 日本成人超碰在线观看| 加勒比av一区二区| 成人亚洲一区二区一| 91麻豆蜜桃一区二区三区| 欧美欧美欧美欧美| 久久精品一区蜜桃臀影院| 亚洲精品午夜久久久| 秋霞国产午夜精品免费视频| 国产成人免费xxxxxxxx| 欧美中文字幕亚洲一区二区va在线 | 国产精品久久久久一区二区三区 | 99久久久久免费精品国产 | 国产宾馆实践打屁股91| 色噜噜夜夜夜综合网| 欧美电影免费观看高清完整版在线观看 | 视频一区中文字幕国产| 成人综合婷婷国产精品久久免费| 欧美日韩在线播放三区四区| 久久香蕉国产线看观看99| 亚洲一区二区在线观看视频| 国产呦精品一区二区三区网站| 在线观看日韩电影| 国产欧美精品一区二区三区四区| 亚洲综合免费观看高清完整版在线 | 国产精品动漫网站| 丝袜美腿高跟呻吟高潮一区| 成人一级黄色片| 日韩丝袜美女视频| 亚洲资源中文字幕| 成人app软件下载大全免费| 欧美xxx久久| 日韩精品免费视频人成| 91猫先生在线| 国产日本一区二区| 麻豆91在线看| 欧美色精品在线视频| 国产精品免费久久| 国产激情一区二区三区桃花岛亚洲| 欧美日韩dvd在线观看| 亚洲精品精品亚洲| av资源网一区| 中文字幕乱码一区二区免费| 精品一区二区综合| 欧美一区二区精品在线| 亚洲国产精品久久一线不卡| 色综合一区二区| 国产精品视频你懂的| 国产精品88av| 精品欧美一区二区久久| 蜜桃av一区二区在线观看| 欧美日韩一卡二卡| 亚洲国产人成综合网站| 色伊人久久综合中文字幕| 国产精品久久久久影院亚瑟| 国产精品一区专区| 久久婷婷国产综合精品青草| 九九视频精品免费| wwwwww.欧美系列| 精品中文字幕一区二区 | 久久久久久久久久久黄色| 久久精品久久久精品美女| 日韩欧美国产一二三区| 久久国产尿小便嘘嘘尿| 欧美一级在线免费| 精品一区二区三区久久久| 精品99一区二区三区| 久久99久久精品| 精品国产凹凸成av人网站| 极品尤物av久久免费看| 久久久久国产精品麻豆| 国产白丝精品91爽爽久久| 国产精品久久久久一区二区三区 | 欧美一二三区精品| 久久精品国产一区二区| 久久综合九色综合97婷婷女人| 韩日av一区二区| 国产女主播在线一区二区| 99久久99久久久精品齐齐| 亚洲国产日韩在线一区模特| 欧美一区二区三区不卡| 国内精品伊人久久久久av影院| 国产欧美日韩一区二区三区在线观看| 国产风韵犹存在线视精品| 中文字幕视频一区| 欧美三级午夜理伦三级中视频| 视频一区视频二区中文| 精品盗摄一区二区三区| 成人国产电影网| 亚洲成年人影院| 久久亚洲综合av| 91在线观看视频| 男人的j进女人的j一区| 久久精品无码一区二区三区| 99久精品国产| 免费观看日韩电影| 日韩理论片中文av| 日韩久久久久久|