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

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

?? capture_16_bit_words.vhd

?? pcmcia代碼驅(qū)動(dòng)等有用資料
?? VHD
字號(hào):
-------------------------------------------------------------
--	Filename:  CAPTURE_16_BIT_WORDS.VHD
-- Author: Alain Zarembowitch / MSS
--	Version: 2
--	Date last modified: 10-02-03
-- Inheritance: 	none
--
--
-- 
---------------------------------------------------------------

library IEEE;
use IEEE.STD_LOGIC_1164.ALL;
use IEEE.STD_LOGIC_ARITH.ALL;
use IEEE.STD_LOGIC_UNSIGNED.ALL;

entity CAPTURE_16_BIT_WORDS is port ( 
	--GLOBAL CLOCKS
   CLK : in std_logic;				-- Master clock for this FPGA
	ASYNC_RESET: in std_logic;		-- Asynchronous reset active high


	-- Inputs
	DECIMATE_VALUE: in std_logic_vector(4 downto 0);
		-- Decimate value. Can be taken straight from the registers.
		-- The decimation will 2^DECIMATE_VALUE.
	TRIGGER_POSITION: in std_logic_vector(1 downto 0);
		-- 00		0 %
		-- 01		10 %
		-- 10		50 %
		-- 11		90 %
	WORD_16_BIT_IN: in std_logic_vector(15 downto 0);
		-- Input signal to be captured
	WORD_CLK_IN: in std_logic;
		-- WORD_4_BIT_IN will be read whenever WORD_CLK_IN = '1'.
	NEXT_WORD_PLEASE: in std_logic;
		-- Increments the READ_POINTER so that the next 8-bit 
		-- word is ready to be read.
	TRIGGER: in std_logic;
		-- Is one when a trigger was forced or if the trigger 
		-- conditions were met. One CLK cycle wide pulse.
	TRIGGER_REARM: in std_logic;
		-- One CLK cycle wide pulse used to rearm the trigger.
	START_CAPTURING: in std_logic;
		-- One CLK cycle wide pulse that makes sure data is
		-- being captured when nothing is going on. Necessary
		-- before a capture with a non-zero trigger offset.


	-- Outputs
	WORD_8_BIT_OUT: out std_logic_vector(7 downto 0);
		-- The signal that was stored in the RAM.
	WORD_CLK_OUT: out std_logic;
		-- WORD_8_BIT_OUT is valid when WORD_CLK_OUT = '1'.
	STATE: out std_logic_vector(1 downto 0)
		-- 01		CAPTURING
		-- 10		CAPTURING_WAITING_FOR_TRIGGER
		-- 11		CAPTURING_TRIGGER_DETECTED
		-- 00		CAPTURE_CEASED
);
end entity;

architecture behavioral of CAPTURE_16_BIT_WORDS is
--------------------------------------------------------
--      COMPONENTS
--------------------------------------------------------

component RAMB4_S8_S16 port (
	DIA: in std_logic_vector (7 downto 0);
	DIB: in std_logic_vector (15 downto 0);
	ENA: in std_logic;
	ENB: in std_logic;
	WEA: in std_logic;
	WEB: in std_logic;
	RSTA: in std_logic;
	RSTB: in std_logic;
	CLKA: in std_logic;
	CLKB: in std_logic;
	ADDRA: in std_logic_vector (8 downto 0);
	ADDRB: in std_logic_vector (7 downto 0);
	DOA: out std_logic_vector (7 downto 0);
	DOB: out std_logic_vector (15 downto 0)); 
end component;


component DECIMATE port (
	--GLOBAL CLOCKS
   CLK : in std_logic;				-- Master clock for this FPGA
	ASYNC_RESET: in std_logic;		-- Asynchronous reset active high

	-- Inputs
	DECIMATE_VALUE: in std_logic_vector(4 downto 0);
	SAMPLE_CLK_IN: in std_logic;

	-- Output
	DECIMATED_SAMPLE_CLK_OUT: out std_logic
);
end component;

--------------------------------------------------------
--     SIGNALS
--------------------------------------------------------

--// Constants
signal ZERO: std_logic;
signal ONE: std_logic;
signal ZERO8: std_logic_vector(7 downto 0);

signal STATE_LOCAL: std_logic_vector(1 downto 0);
signal WRITE_POINTER: std_logic_vector(7 downto 0);
signal WRITE_POINTER_ADD_VALUE: std_logic_vector(7 downto 0);
signal WRITE_POINTER_PLUS_ADD_VALUE: std_logic_vector(7 downto 0);
signal WRITE_POINTER_PLUS_ONE: std_logic_vector(7 downto 0);
signal WRITE_POINTER_END: std_logic_vector(7 downto 0);
signal WRITE_ENABLE: std_logic;
signal READ_POINTER: std_logic_vector(8 downto 0);
signal DECIMATED_WORD_CLK: std_logic;
signal LAST_WORD_CAPTURED_PULSE: std_logic;
signal LAST_WORD_CAPTURED_PULSE_D: std_logic;
signal WORD_CLK_OUT_LOCAL: std_logic;
signal NEXT_WORD_PLEASE_D: std_logic;
--------------------------------------------------------
--      IMPLEMENTATION
--------------------------------------------------------

begin


--// COMSCOPE SOURCE CODE -----------
ZERO <= '0';
ONE <= '1';
ZERO8 <= (others => '0');


STATE <= STATE_LOCAL;


STATE_MACHINE_001: process(ASYNC_RESET, CLK, TRIGGER_POSITION)
begin
	if(ASYNC_RESET = '1') then
		STATE_LOCAL <= "01";
		WRITE_POINTER_END <= (others => '0');
	elsif rising_edge(CLK) then
		if (START_CAPTURING = '1') then
			STATE_LOCAL <= "01";
		elsif (TRIGGER_REARM = '1') then
			STATE_LOCAL <= "10";
		elsif (STATE_LOCAL = "10") and (TRIGGER = '1') then 
			-- trigger received, waiting for data and data capture completion
			-- trigger is only active if trace is re-armed
			STATE_LOCAL <= "11";
			-- remember the address at which we should stop capturing
			WRITE_POINTER_END <= WRITE_POINTER_PLUS_ADD_VALUE;
		elsif (STATE_LOCAL = "11") and (LAST_WORD_CAPTURED_PULSE = '1') then 
			STATE_LOCAL <= "00";
		end if;
	end if;
end process;


WRITE_POINTER_PLUS_ADD_VALUE <= WRITE_POINTER + WRITE_POINTER_ADD_VALUE;

-- compute end of buffer pointer location
-- Depending on whether the trigger is selected to be 
-- at 0%, 10%, 50% or 90% of the capture window
WRITE_POINTER_ADD_VALUE <= 
	"11100110" when TRIGGER_POSITION = "01" else		-- trigger at 10% (230)
	"10000000" when TRIGGER_POSITION = "10" else 	-- trigger at 50% (128)
	"00011010" when TRIGGER_POSITION = "11" else 	-- trigger at 90% (26)
	"00000000";			

WRITE_POINTER_PLUS_ONE <= WRITE_POINTER + 1;

LAST_WORD_CAPTURED_PULSE <= DECIMATED_WORD_CLK when (STATE_LOCAL = "11" and
									 WRITE_POINTER_PLUS_ONE = WRITE_POINTER_END) else '0';


WRITE_ENABLE <= DECIMATED_WORD_CLK when (STATE_LOCAL /= "00") else '0'; 


MANAGE_WP: process(ASYNC_RESET, CLK)
begin
	if(ASYNC_RESET = '1') then
		WRITE_POINTER <= (others => '0');
	elsif rising_edge(CLK) then
		if (WRITE_ENABLE = '1') then
			WRITE_POINTER <= WRITE_POINTER_PLUS_ONE;
		end if;
	end if;
end process;


DELAY: process(ASYNC_RESET, CLK)
begin
	if(ASYNC_RESET = '1') then
		LAST_WORD_CAPTURED_PULSE_D <= '0';
		NEXT_WORD_PLEASE_D <= '0';
	elsif rising_edge(CLK) then
		LAST_WORD_CAPTURED_PULSE_D <= LAST_WORD_CAPTURED_PULSE;
		NEXT_WORD_PLEASE_D <= NEXT_WORD_PLEASE;
	end if;
end process;


MANAGE_RP: process(ASYNC_RESET, CLK)
begin
	if(ASYNC_RESET = '1') then
		READ_POINTER <= (others => '0');
		WORD_CLK_OUT_LOCAL <= '0';
	elsif rising_edge(CLK) then
		WORD_CLK_OUT_LOCAL <= NEXT_WORD_PLEASE_D or LAST_WORD_CAPTURED_PULSE_D;
		if (LAST_WORD_CAPTURED_PULSE = '1') then
			READ_POINTER(8 downto 1) <= WRITE_POINTER_END;
			READ_POINTER(0) <= '0';
		elsif (NEXT_WORD_PLEASE = '1') then
			READ_POINTER <= READ_POINTER + 1;
		end if;
	end if;
end process;

WORD_CLK_OUT <= WORD_CLK_OUT_LOCAL;

--------------------------------------------------------------------------
-- COMPONENT INSTANTIATIONS
--------------------------------------------------------------------------

-- Instantiate the decimation
DECIMATE_001: DECIMATE port map(
	CLK => CLK,
	ASYNC_RESET => ASYNC_RESET,
	DECIMATE_VALUE => DECIMATE_VALUE,
	SAMPLE_CLK_IN => WORD_CLK_IN,
	DECIMATED_SAMPLE_CLK_OUT => DECIMATED_WORD_CLK
);


-- Instantiate the block RAM
RAMB_001:  RAMB4_S8_S16 port map(
	DIA => ZERO8,
	DIB => WORD_16_BIT_IN,
	ENA => ONE,
	ENB => ONE,
	WEA => ZERO,
	WEB => WRITE_ENABLE,
	RSTA => ASYNC_RESET,
	RSTB => ASYNC_RESET,
	CLKA => CLK,
	CLKB => CLK,
	ADDRA => READ_POINTER,
	ADDRB => WRITE_POINTER,
	DOA => WORD_8_BIT_OUT
);


end behavioral;

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
99久久99精品久久久久久 | 99r精品视频| 亚洲国产精品视频| 日本一区二区三区久久久久久久久不 | 在线视频一区二区三区| 精品综合久久久久久8888| 亚洲美女免费在线| 国产欧美精品一区| 日韩精品中文字幕在线不卡尤物| 91美女福利视频| 国产又粗又猛又爽又黄91精品| 亚洲乱码国产乱码精品精可以看| 26uuu国产在线精品一区二区| 欧美探花视频资源| 色香蕉成人二区免费| 国产美女视频一区| 蜜臀av一区二区三区| 一区二区三区不卡视频| 国产精品国产三级国产aⅴ原创 | 色综合久久天天综合网| 国产曰批免费观看久久久| 蜜桃久久精品一区二区| 夜夜爽夜夜爽精品视频| 亚洲欧洲精品一区二区三区不卡| 久久久电影一区二区三区| 欧美成人a在线| 91精品啪在线观看国产60岁| 欧美亚洲动漫另类| 欧美色精品在线视频| 在线国产电影不卡| 色婷婷综合久色| 99精品偷自拍| 91捆绑美女网站| av中文字幕不卡| 95精品视频在线| 久久久久9999亚洲精品| 国产成都精品91一区二区三| 伊人色综合久久天天| 久久久蜜臀国产一区二区| 国内精品久久久久影院一蜜桃| 午夜精品爽啪视频| 亚洲大型综合色站| 婷婷开心激情综合| 日韩国产在线一| 奇米影视一区二区三区| 男人的j进女人的j一区| 另类欧美日韩国产在线| 美女视频黄a大片欧美| 美脚の诱脚舐め脚责91| 久久精品国产精品青草| 国产一区二区三区在线观看精品| 国产精品综合视频| youjizz久久| 欧美影片第一页| 日韩午夜av一区| 久久精品人人做| 欧美极品xxx| 亚洲视频1区2区| 日韩成人精品视频| 久久综合九色综合97婷婷| 91黄色激情网站| 色就色 综合激情| 欧美日韩美少妇| 欧美刺激午夜性久久久久久久| 精品日韩欧美一区二区| 国产农村妇女毛片精品久久麻豆| 综合久久综合久久| 午夜电影网亚洲视频| 麻豆一区二区三区| 成人中文字幕电影| 欧美日韩一区二区三区四区五区| 在线观看精品一区| 日韩久久免费av| 成人免费在线视频观看| 五月天一区二区三区| 精品一区二区三区在线视频| 成人激情综合网站| 3751色影院一区二区三区| 久久精品一区八戒影视| 亚洲欧美二区三区| 奇米888四色在线精品| 成人爱爱电影网址| 91麻豆精品久久久久蜜臀| 中文字幕第一区综合| 亚洲成a天堂v人片| voyeur盗摄精品| 欧美一级久久久| 亚洲色图丝袜美腿| 久久 天天综合| 色偷偷久久一区二区三区| 久久一夜天堂av一区二区三区| 亚洲激情成人在线| 国产mv日韩mv欧美| 欧美视频在线观看一区| 国产女同互慰高潮91漫画| 香蕉影视欧美成人| 色综合天天综合网天天狠天天| 2020国产精品| 亚洲一区二区三区在线| 国产成人综合网站| 欧美一区二区免费观在线| 中文字幕一区二区三区四区不卡| 美腿丝袜亚洲三区| 欧洲精品一区二区| 中文字幕 久热精品 视频在线 | 国产精品国产三级国产普通话三级| 亚洲高清免费视频| 91啪在线观看| 亚洲国产精华液网站w| 青青草精品视频| 欧美日韩久久久久久| 日本一区二区电影| 韩国成人精品a∨在线观看| 欧美日韩国产精品成人| 亚洲精品成人精品456| 丁香婷婷深情五月亚洲| 欧美成人一级视频| 秋霞电影一区二区| 欧美一卡2卡3卡4卡| 亚洲成av人片观看| 欧洲一区二区av| 亚洲精品ww久久久久久p站| 成人黄动漫网站免费app| www激情久久| 久久99精品国产麻豆不卡| 欧美福利电影网| 午夜在线成人av| 91.xcao| 日韩精品一二区| 欧美蜜桃一区二区三区| 日日摸夜夜添夜夜添精品视频| 欧美色视频在线观看| 亚洲一区二区三区小说| 欧洲国内综合视频| 午夜久久久影院| 制服.丝袜.亚洲.中文.综合| 五月天久久比比资源色| 3751色影院一区二区三区| 日本91福利区| xfplay精品久久| 国产一区二区按摩在线观看| 久久久久国产精品人| 成人一区二区三区视频在线观看 | 亚洲精品视频一区二区| 一本一道久久a久久精品| 伊人开心综合网| 欧美肥胖老妇做爰| 美女脱光内衣内裤视频久久网站| 欧美videofree性高清杂交| 国产麻豆一精品一av一免费 | 欧美三级日韩三级| 午夜日韩在线电影| 精品国产91久久久久久久妲己| 国产精品系列在线播放| 中文字幕视频一区| 欧美系列日韩一区| 青娱乐精品视频在线| 国产欧美一区二区三区网站| 91在线视频免费91| 天天av天天翘天天综合网| 日韩三级高清在线| 成人夜色视频网站在线观看| 亚洲精品福利视频网站| 欧美乱妇15p| 国产精品中文字幕欧美| 亚洲日本va在线观看| 91精品婷婷国产综合久久竹菊| 国产一区在线视频| 亚洲免费观看高清| 日韩一本二本av| 成人免费的视频| 五月婷婷另类国产| 国产亚洲婷婷免费| 欧美性色黄大片| 精品亚洲porn| 亚洲精品大片www| 久久美女艺术照精彩视频福利播放 | 免费黄网站欧美| 国产精品欧美一区二区三区| 欧美日韩一区二区三区不卡| 激情综合网最新| 亚洲综合一区在线| 久久久久久久综合狠狠综合| 欧美在线观看一区| 国产精品中文字幕一区二区三区| 亚洲国产欧美在线人成| 久久嫩草精品久久久久| 欧美日韩另类一区| 99视频超级精品| 久久精品72免费观看| 一区二区高清在线| 国产视频在线观看一区二区三区| 欧美精品日韩一区| 99精品欧美一区二区蜜桃免费| 奇米精品一区二区三区四区| 一级特黄大欧美久久久| 日本一区二区三区国色天香 | 欧美影院一区二区三区| 成人免费三级在线| 韩国成人福利片在线播放|