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

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

?? gh_tvfd_filter.vhd

?? VHDL Library for 8254 timer/counter core
?? VHD
字號:
---------------------------------------------------------------------
--	Filename:	gh_TVFD_filter.vhd
--			
--	Description:
--		Time Varying Fractional Delay Filter 
--
--	Copyright (c) 2005, 2006, 2007 by George Huber 
--		an OpenCores.org Project
--		free to use, but see documentation for conditions 
--
--	Revision 	History:
--	Revision 	Date      	Author   	Comment
--	-------- 	----------	---------	-----------
--	1.0      	09/03/05  	S A Dodd 	Initial revision
--	1.1      	09/11/05  	G Huber  	reduce required clk/start
--	        	          	         	   rario to 8 (order of 
--	        	          	         	   filter) to 1
--	2.0     	09/17/05  	h LeFevre	add gh_ to library parts
--	3.0     	12/17/05  	S A Dodd 	fixed problem so generics will
--	        	          	          	   work with higher order filtes
--	3.1      	02/18/06  	G Huber 	add gh_ to name	- coef prom moved
--	        	          	          	  outside of this file
--	3.2     	08/11/07  	S A Dodd 	fixed problem read address timing
--
------------------------------------------------------------------
library IEEE;
USE ieee.std_logic_1164.all;
USE ieee.std_logic_arith.all;
USE ieee.std_logic_unsigned.all;


entity gh_TVFD_filter is  
	GENERIC(
		modulo_bits : INTEGER := 7; -- must have bits to hold modulo_count
		modulo_count : INTEGER := 100;
		x : INTEGER := 3 -- filter order = 2^x
		);
	port(
		CLK : in STD_LOGIC;
		rst : in STD_LOGIC;
		START : in STD_LOGIC;
		RATE : in STD_LOGIC_VECTOR(modulo_bits-1 downto 0);
		L_IN : in STD_LOGIC_VECTOR(15 downto 0);
		R_IN : in STD_LOGIC_VECTOR(15 downto 0);
		coef_data : in STD_LOGIC_VECTOR(15 downto 0); -- 02/16/06
		ND : out STD_LOGIC;
		ROM_ADD : out STD_LOGIC_VECTOR((modulo_bits + x -1) downto 0); -- 02/16/06
		L_OUT : out STD_LOGIC_VECTOR(15 downto 0);
		R_OUT : out STD_LOGIC_VECTOR(15 downto 0)
		);
end gh_TVFD_filter;

architecture a of gh_TVFD_filter is

---- Component declarations -----

component gh_register_ce
	generic(size : INTEGER := 8);
	port (
		clk : in STD_LOGIC;
		rst : in STD_LOGIC;
		CE  : in STD_LOGIC;
		D   : in STD_LOGIC_VECTOR(size-1 downto 0);
		Q   : out STD_LOGIC_VECTOR(size-1 downto 0)
		);
end component;

component gh_MAC_16bit_ld
	port (
		clk  : in STD_LOGIC;
		rst  : in STD_LOGIC;
		LOAD : in STD_LOGIC;
		ce   : in STD_LOGIC;
		DA   : in STD_LOGIC_VECTOR(15 downto 0);
		DB   : in STD_LOGIC_VECTOR(15 downto 0);
		Q    : out STD_LOGIC_VECTOR(15 downto 0)
		);
end component;

COMPONENT  gh_counter_modulo IS
	GENERIC (size : INTEGER :=7;
	         modulo :INTEGER :=100 );
	port (
		CLK   : IN	STD_LOGIC;
		rst   : IN	STD_LOGIC;
		CE    : IN	STD_LOGIC;
		N     : IN  STD_LOGIC_VECTOR(size-1 DOWNTO 0);
		Q     : OUT STD_LOGIC_VECTOR(size-1 DOWNTO 0);
		TC    : OUT STD_LOGIC
		);
END COMPONENT;

component gh_shift_reg
	GENERIC (size: INTEGER := 16); 
	PORT(
		clk      : IN STD_logic;
		rst      : IN STD_logic;
		D        : IN STD_LOGIC;
		Q        : OUT STD_LOGIC_VECTOR(size-1 DOWNTO 0)
		);
end component;

component gh_counter_up_ce
	GENERIC (size: INTEGER :=8);
	PORT(
		CLK   : IN	STD_LOGIC;
		rst   : IN	STD_LOGIC;
		CE    : IN	STD_LOGIC;
		Q     : OUT STD_LOGIC_VECTOR(size-1 DOWNTO 0)
		);
end component;

component gh_counter_up_sr_ce
	GENERIC (size: INTEGER :=8);
	PORT(
		CLK   : IN	STD_LOGIC;
		rst   : IN	STD_LOGIC;
		srst  : IN	STD_LOGIC;
		CE    : IN	STD_LOGIC;
		Q     : OUT STD_LOGIC_VECTOR(size-1 DOWNTO 0)
		);
end component;

component gh_sram_1wp_2rp
	GENERIC (size_add: INTEGER :=8 ;
	         size_data: INTEGER :=8 );
	port (					
		A_clk  : in STD_LOGIC;
		B_clk  : in STD_LOGIC;
		WE     : in STD_LOGIC;
		A_add  : in STD_LOGIC_VECTOR(size_add-1 downto 0);
		B_add  : in STD_LOGIC_VECTOR(size_add-1 downto 0);
		D      : in STD_LOGIC_VECTOR (size_data-1 downto 0);
		A_Q    : out STD_LOGIC_VECTOR (size_data-1 downto 0);
		B_Q    : out STD_LOGIC_VECTOR (size_data-1 downto 0));
end component;

	constant ORDER : INTEGER := 2**x;
	constant max_coef_count : STD_LOGIC_VECTOR(x downto 1) := (others => '1');

	signal DIN          : STD_LOGIC_VECTOR(31 downto 0);
	signal DOUT         : STD_LOGIC_VECTOR(31 downto 0);
	signal iND          : STD_LOGIC;
	signal i_L_DATA     : STD_LOGIC_VECTOR(15 downto 0);
	signal i_R_DATA     : STD_LOGIC_VECTOR(15 downto 0);
	signal L_ACC        : STD_LOGIC_VECTOR(15 downto 0);
	signal R_ACC        : STD_LOGIC_VECTOR(15 downto 0);
	signal filter       : STD_LOGIC_VECTOR(modulo_bits-1 downto 0);
	signal CE           : STD_LOGIC;
	signal R_ADD        : STD_LOGIC_VECTOR(x-1 downto 0);
	signal buff_wr_ADD  : STD_LOGIC_VECTOR (x downto 0);
	signal ibuff_rd_ADD : STD_LOGIC_VECTOR (x downto 0);
	signal buff_rd_ADD  : STD_LOGIC_VECTOR (x downto 0);
	signal WINDOW       : STD_LOGIC;
	signal Delay        : STD_LOGIC_VECTOR(3 downto 1);
	signal iSTART       : STD_LOGIC_VECTOR(order+5 downto 1); -- 8/11/07

begin

	ND <= iND;

	DIN(31 downto 16) <= L_IN;
	DIN(15 downto 0) <= R_IN;

-----------------------------------------------------
-- data buffer --------------------------------------
-----------------------------------------------------

U1 : gh_sram_1wp_2rp
	generic map (
		size_add => x+1,
		size_data => 32
		)
	port map(
		A_clk => CLK,
		B_clk => CLK,
		WE => iND,
		D =>  DIN(31 downto 0),
		A_add => buff_wr_ADD,
		B_add => buff_rd_ADD,
		B_Q =>  DOUT(31 downto 0)
		);
  
u2 : gh_counter_up_ce generic map (size => x+1)
	port map(
		CLK => CLK,
		rst => rst,
		ce => iND,
		Q => buff_wr_ADD);

U3 : gh_register_ce generic map (size => x+1)
	port map(
		CLK => CLK,
		rst => rst,
		ce => iND,
		D => buff_wr_ADD,
		Q => ibuff_rd_ADD);

	buff_rd_ADD <= ibuff_rd_ADD - R_ADD;

	i_L_DATA <= DOUT(31 downto 16); 
	i_R_DATA <= DOUT(15 downto 0); 
	
---------------------------------------------

U4 : gh_MAC_16bit_ld
	port map(
		clk => CLK,
		rst => rst,
		LOAD => iSTART(4), -- 8/11/07
		CE => WINDOW,
		DA => i_L_DATA,
		DB => coef_data,
		Q => L_ACC
		);

U5 : gh_MAC_16bit_ld
	port map(
		clk => CLK,
		rst => rst,
		LOAD => iSTART(4), -- 8/11/07
		CE => WINDOW,
		DA => i_R_DATA,
		DB => coef_data,
		Q => R_ACC
		);

U5a : gh_shift_reg generic map (size => order+5) -- 8/11/07
	port map(
		CLK => CLK,
		rst => rst,
		D => START,
		Q => iSTART
		);
		
-------------------------------------------------
-- hold the output of the MAC's ----------------- 
------ (output of filter)  ----------------------
-------------------------------------------------
		
U6 : gh_register_ce
	generic map (size => 16)
	port map(
		clk => CLK,
		rst => rst,
		CE => iSTART(order+5), -- 8/11/07
		D => L_ACC,
		Q => L_OUT
		);

U7 : gh_register_ce
	generic map (size => 16)
	port map(
		clk => CLK,
		rst => rst,
		CE => iSTART(order+5), -- 8/11/07
		D => R_ACC,
		Q => R_OUT
		);

----------------------------------------------------------
------- control the fractional delay --------------------- 
-------- filter -> Fractional Delay  ---------------------
----------------------------------------------------------

u8 : gh_counter_modulo 
	GENERIC map(
		size => modulo_bits, 
		modulo => modulo_count)
	port map(
		CLK => clk,
		rst => rst,
		CE => START,
		N => RATE,
		Q => filter,
		TC => iND);


----------------------------------------------------------
------- cycle through the 8 data samples and prom coef  -- 
-------- R_ADD -> coef/data sample address  --------------
----------------------------------------------------------
	
	CE <= '0' when (R_ADD = max_coef_count) else
	      '1';

u9 : gh_counter_up_sr_ce generic map (size => x) -- 12/17/05
	port map(
		CLK => CLK,
		rst => rst,
		srst => iSTART(1), -- 8/11/07
		CE => CE,
		Q => R_ADD);

---------------------------------------------------------------

	ROM_ADD <= (filter & R_ADD);
		
--------------------------------------------------
--- control the accumulate in the MAC  -----------
--------------------------------------------------
		
U11 : gh_shift_reg generic map (size => 3)
	port map(
		CLK => CLK,
		rst => rst,
		D => CE,
		Q => DELAY
		);
	
	WINDOW <= DELAY(2) or DELAY(3);
---- CE is delayed by the clock delays of the SRAM/coef_prom
---- CE is is high for 7 clocks, 
---- needs to be stretched by 1 clock
--------------------------------------------------

end a;

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲另类一区二区| 在线成人小视频| 国产精品一区三区| 免费成人在线观看| 精品亚洲成a人| 麻豆视频一区二区| 国产一区二区在线看| 久久99久国产精品黄毛片色诱| 亚洲午夜久久久久久久久电影院| 亚洲欧美日韩系列| 一区二区三区在线高清| 亚洲精品日韩一| 亚洲mv大片欧洲mv大片精品| 亚洲国产精品视频| 久久成人免费电影| 狠狠色狠狠色综合| 风间由美性色一区二区三区| 成人综合在线观看| 欧洲色大大久久| 制服丝袜中文字幕亚洲| 日韩视频免费直播| 国产欧美久久久精品影院| 国产精品初高中害羞小美女文| 亚洲色图在线播放| 日韩激情在线观看| 成人免费观看视频| 欧美色男人天堂| 久久人人97超碰com| 国产精品午夜在线观看| 一区二区三区国产| 日本道免费精品一区二区三区| 欧洲视频一区二区| 亚洲精品一区二区精华| 亚洲天天做日日做天天谢日日欢| 一区二区三区不卡视频| 蜜臀精品久久久久久蜜臀| 成人黄色免费短视频| 欧美在线不卡一区| 2023国产精品自拍| 亚洲电影一级黄| 成人免费视频网站在线观看| 欧美日韩三级视频| 日本一区二区高清| 青青草精品视频| 色香色香欲天天天影视综合网| 日韩免费看网站| 亚洲欧洲中文日韩久久av乱码| 久久精品噜噜噜成人av农村| 91丨porny丨户外露出| 精品三级av在线| 亚洲午夜久久久久中文字幕久| 国产在线国偷精品产拍免费yy| 欧美色区777第一页| 国产免费成人在线视频| 日本一道高清亚洲日美韩| 色嗨嗨av一区二区三区| 国产日韩欧美电影| 国产在线不卡一卡二卡三卡四卡| 欧美视频在线播放| 亚洲女与黑人做爰| 成人白浆超碰人人人人| 久久精品夜色噜噜亚洲aⅴ| 视频一区中文字幕| 欧美性视频一区二区三区| 1024亚洲合集| 成人av高清在线| 中文字幕av不卡| 国产不卡免费视频| 久久午夜羞羞影院免费观看| 日本不卡一二三| 欧美久久久久中文字幕| 亚洲一区二区高清| 欧美午夜宅男影院| 亚洲一区二区在线播放相泽| 在线欧美日韩精品| 一区二区在线观看视频| 色婷婷av久久久久久久| 一区二区不卡在线播放| 91激情在线视频| 亚洲3atv精品一区二区三区| 欧美无砖专区一中文字| 性做久久久久久| 欧美一级高清片| 激情综合网最新| 中文字幕+乱码+中文字幕一区| 不卡视频在线观看| 亚洲男人的天堂av| 欧美日韩国产首页| 另类小说图片综合网| 日韩欧美亚洲一区二区| 国产美女av一区二区三区| 国产性色一区二区| 日本福利一区二区| 日本欧美在线看| 欧美国产精品一区二区| 99精品久久99久久久久| 亚洲亚洲人成综合网络| 91精品国产麻豆| 国产福利一区二区三区视频在线| 日本一二三不卡| 欧洲一区二区三区免费视频| 日本美女视频一区二区| 久久久国产精华| 欧美性受xxxx黑人xyx性爽| 日本欧美一区二区在线观看| 国产拍揄自揄精品视频麻豆| 一本一本久久a久久精品综合麻豆 一本一道波多野结衣一区二区 | 亚洲影院久久精品| 日韩一区二区在线观看| 粉嫩一区二区三区性色av| 亚洲一区av在线| 精品国产乱码久久| 在线欧美小视频| 国产东北露脸精品视频| 亚洲风情在线资源站| 国产亚洲精品中文字幕| 欧美色图免费看| 国产精品一区不卡| 日韩黄色免费网站| 亚洲人成网站在线| 2020国产精品自拍| 欧美肥妇bbw| 一本一本大道香蕉久在线精品| 老司机精品视频一区二区三区| 亚洲三级电影网站| 久久久久久久久久久久电影| 欧美日韩一本到| 91视频精品在这里| 成人性生交大片免费看视频在线| 日韩国产成人精品| 亚洲美女视频一区| 国产精品久久久久久久久搜平片| 欧美一区二区三区免费| 日本福利一区二区| 777午夜精品免费视频| 亚洲午夜久久久久| 91麻豆自制传媒国产之光| 免费高清不卡av| 综合电影一区二区三区 | 国产成人在线观看免费网站| 国产成+人+日韩+欧美+亚洲| 成人免费黄色在线| 欧美亚洲综合久久| 日韩三级在线观看| 一区在线中文字幕| 天天综合色天天综合色h| 国精品**一区二区三区在线蜜桃| 国产91精品久久久久久久网曝门| proumb性欧美在线观看| 欧美性色aⅴ视频一区日韩精品| 日韩欧美色综合| 自拍偷拍亚洲欧美日韩| 日韩专区欧美专区| 成人一级黄色片| 欧美精品精品一区| 中文字幕乱码日本亚洲一区二区| 一区二区三区在线高清| 国产中文字幕一区| 欧美性受xxxx黑人xyx性爽| 久久久噜噜噜久噜久久综合| 亚洲欧美另类综合偷拍| 狠狠久久亚洲欧美| 欧美亚洲综合网| 国产欧美日韩一区二区三区在线观看 | 一本到高清视频免费精品| 日韩欧美中文字幕公布| 一区二区三区在线观看视频| 国产在线一区二区综合免费视频| 91久久精品网| 中文av字幕一区| 精品亚洲免费视频| 欧美高清视频不卡网| 国产精品久久久久影院色老大 | 极品销魂美女一区二区三区| 日本伦理一区二区| 中文字幕av一区二区三区高| 日韩激情视频在线观看| 在线欧美日韩国产| 日韩毛片视频在线看| 国产成人av一区二区| 精品国一区二区三区| 亚洲va天堂va国产va久| 在线观看亚洲a| 国产精品久久久久影院色老大| 经典三级视频一区| 精品欧美一区二区在线观看| 亚洲高清在线视频| 在线观看av一区二区| 亚洲欧美国产高清| 色综合视频在线观看| 中文天堂在线一区| 成人av网站大全| 国产精品无人区| 风间由美性色一区二区三区| 久久免费偷拍视频| 国内精品国产成人国产三级粉色| 日韩欧美国产精品| 国模冰冰炮一区二区| 久久精品视频免费| 国产精品18久久久久久久久久久久|