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

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

?? capture_4_bit_words.vhd

?? pcmcia代碼驅動等有用資料
?? VHD
字號:
-------------------------------------------------------------
--	Filename:  CAPTURE_4_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_4_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_4_BIT_IN: in std_logic_vector(3 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_4_BIT_WORDS is
--------------------------------------------------------
--      COMPONENTS
--------------------------------------------------------

component RAMB4_S4_S4 port (
	DIA: in std_logic_vector (3 downto 0);
	DIB: in std_logic_vector (3 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 (9 downto 0);
	ADDRB: in std_logic_vector (9 downto 0);
	DOA: out std_logic_vector (3 downto 0);
	DOB: out std_logic_vector (3 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;


component WORD4_TO_WORD8 port (
	ASYNC_RESET: in std_logic;
		-- Asynchronous reset, active high
	CLK: in std_logic;
		-- Reference clock


	--// INPUTS 
	COMPONENT_RESET: in std_logic;
	WORD_IN: in std_logic_vector(3 downto 0);
		-- Word to be converted into a 8 bit word. Will be read when
		-- Valid when WORD_IN_CLK = '1'.
	WORD_IN_CLK: in std_logic;
		-- The data on the WORD_IN lines will be read when WORD_IN_CLK = '1'.


	--// OUTPUTS
	WORD_OUT: out std_logic_vector(7 downto 0);
		-- Word converted into byte. Valid when WORD_OUT_CLK = '1'.
	WORD_OUT_CLK: out std_logic
		-- One clock pulse wide pulse indicating that the byte on the WORD_OUT 
		-- lines is valid now.
	);
end component;

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

--// Constants
signal ZERO: std_logic;
signal ONE: std_logic;
signal ZERO4: std_logic_vector(3 downto 0);

signal STATE_LOCAL: std_logic_vector(1 downto 0);
signal WRITE_POINTER: std_logic_vector(9 downto 0);
signal WRITE_POINTER_ADD_VALUE: std_logic_vector(9 downto 0);
signal WRITE_POINTER_PLUS_ADD_VALUE: std_logic_vector(9 downto 0);
signal WRITE_POINTER_PLUS_ONE: std_logic_vector(9 downto 0);
signal WRITE_POINTER_END: std_logic_vector(9 downto 0);
signal WRITE_ENABLE: std_logic;
signal READ_POINTER: std_logic_vector(9 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: std_logic;
signal WORD_FROM_BUFFER: std_logic_vector(3 downto 0);
signal COUNTER_1_BIT: std_logic;

--------------------------------------------------------
--      IMPLEMENTATION
--------------------------------------------------------

begin


--// COMSCOPE SOURCE CODE -----------
ZERO <= '0';
ONE <= '1';
ZERO4 <= (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 <= 
	"1110011010" when TRIGGER_POSITION = "01" else	-- trigger at 10% (922)
	"1000000000" when TRIGGER_POSITION = "10" else 	-- trigger at 50% (512)
	"0001100110" when TRIGGER_POSITION = "11" else 	-- trigger at 90% (102)
	"0000000000";


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';
	elsif rising_edge(CLK) then
		LAST_WORD_CAPTURED_PULSE_D <= LAST_WORD_CAPTURED_PULSE;
	end if;
end process;


MANAGE_RP_AND_WORD_CLK: process(ASYNC_RESET, CLK)
begin
	if(ASYNC_RESET = '1') then
		WORD_CLK <= '0';
		READ_POINTER <= (others => '0');
		COUNTER_1_BIT <= '0';
	elsif rising_edge(CLK) then
		if (LAST_WORD_CAPTURED_PULSE = '1') then
			READ_POINTER <= WRITE_POINTER_END;
		elsif (NEXT_WORD_PLEASE = '1') or (LAST_WORD_CAPTURED_PULSE_D = '1') or
				(COUNTER_1_BIT /= '0') then
			COUNTER_1_BIT <= not COUNTER_1_BIT;
			READ_POINTER <= READ_POINTER + 1;
			WORD_CLK <= '1';
		else 
			WORD_CLK <= '0';
		end if;
	end if;
end process;

--------------------------------------------------------------------------
-- 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_S4_S4 port map(
	DIA => WORD_4_BIT_IN,
	DIB => ZERO4,
	ENA => ONE,
	ENB => ONE,
	WEA => WRITE_ENABLE,
	WEB => ZERO,
	RSTA => ASYNC_RESET,
	RSTB => ASYNC_RESET,
	CLKA => CLK,
	CLKB => CLK,
	ADDRA => WRITE_POINTER,
	ADDRB => READ_POINTER,
	DOB => WORD_FROM_BUFFER
);


-- Instantiate the 4 bit to 8 bit conversion
WORD4_TO_WORD8_001:  WORD4_TO_WORD8 port map(
	ASYNC_RESET => ASYNC_RESET,
	CLK => CLK,
	COMPONENT_RESET => LAST_WORD_CAPTURED_PULSE,
	WORD_IN => WORD_FROM_BUFFER,
	WORD_IN_CLK => WORD_CLK,
	WORD_OUT => WORD_8_BIT_OUT,
	WORD_OUT_CLK => WORD_CLK_OUT
);

end behavioral;

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲三级在线免费| 亚洲国产精品激情在线观看| 91在线免费播放| 国产麻豆成人精品| 国内成+人亚洲+欧美+综合在线| 日日夜夜精品视频天天综合网| 一区二区三国产精华液| 亚洲女与黑人做爰| 亚洲一区二区三区四区在线免费观看 | 蜜臀久久久久久久| 日韩av一级电影| 久久精品二区亚洲w码| 韩日av一区二区| 高清不卡在线观看| 91精品福利视频| 欧美一级视频精品观看| 精品国产在天天线2019| 久久久久九九视频| 国产精品日韩精品欧美在线| 亚洲三级在线看| 午夜电影网一区| 精品一区二区三区蜜桃| 国产乱子伦视频一区二区三区| 国产ts人妖一区二区| 91丨国产丨九色丨pron| 欧美日韩国产bt| 久久久久久影视| 亚洲精品免费视频| 日本不卡的三区四区五区| 国产一区二区久久| 91啪亚洲精品| 精品国产91洋老外米糕| 日韩毛片高清在线播放| 免费在线观看一区二区三区| 国产suv精品一区二区6| 欧美最猛性xxxxx直播| 精品国产免费人成在线观看| 国产精品国产三级国产aⅴ无密码 国产精品国产三级国产aⅴ原创 | 波多野结衣在线一区| 欧美在线999| 精品av久久707| 一区二区欧美视频| 福利一区福利二区| 51精品国自产在线| 日韩美女视频一区| 国产自产v一区二区三区c| 欧美色老头old∨ideo| 欧美国产日韩精品免费观看| 亚洲综合激情另类小说区| 国产美女精品一区二区三区| 欧美午夜不卡视频| 国产精品久久久久婷婷二区次| 久久精品理论片| 欧美日韩在线一区二区| 亚洲人成影院在线观看| 国产成都精品91一区二区三| 欧美一区二区视频免费观看| 亚洲一二三四区不卡| 91色综合久久久久婷婷| 中日韩av电影| 国产大陆精品国产| 久久久影视传媒| 91免费小视频| 欧美激情一二三区| 国产伦精一区二区三区| 一区精品在线播放| 在线成人午夜影院| 狠狠色狠狠色综合| 亚洲国产精品自拍| 国产精品人成在线观看免费| 精品处破学生在线二十三| 欧美另类久久久品| 一区在线观看视频| 丁香亚洲综合激情啪啪综合| 久久综合久久鬼色| 国产一区三区三区| 久久久欧美精品sm网站| 国产综合久久久久久鬼色 | 一区二区三区在线视频观看58| 国产精品资源站在线| 久久久精品国产免大香伊| 国产一区二区三区久久悠悠色av| 日韩精品一区二区三区三区免费| 日本sm残虐另类| 日韩精品资源二区在线| 国产一区二区三区电影在线观看| 久久久久国产一区二区三区四区 | 欧美激情一区二区三区不卡 | 欧美日韩一区高清| 石原莉奈在线亚洲二区| 欧美一区三区四区| 国产乱人伦偷精品视频免下载 | 欧美一区二视频| 精品一区二区三区在线观看国产| 久久精品综合网| 9久草视频在线视频精品| 一区二区三区丝袜| 欧美一级片在线看| 国产乱子伦视频一区二区三区 | 日本一区中文字幕 | 曰韩精品一区二区| 欧美精品粉嫩高潮一区二区| 麻豆成人久久精品二区三区小说| 久久人人97超碰com| 91麻豆视频网站| 国产一区二区伦理| 国产精品网站一区| 欧美精品乱人伦久久久久久| 韩国精品免费视频| 亚洲精品一卡二卡| 日韩欧美国产麻豆| 91麻豆国产香蕉久久精品| 日本伊人色综合网| 亚洲欧洲色图综合| 日韩欧美一级二级三级久久久| 国产**成人网毛片九色 | 日韩一区精品字幕| 国产精品三级久久久久三级| 欧美色图一区二区三区| 国产寡妇亲子伦一区二区| 亚洲制服丝袜一区| 中日韩免费视频中文字幕| 欧美老年两性高潮| www.欧美.com| 国内精品免费**视频| 午夜精品一区二区三区电影天堂| 国产日韩欧美制服另类| 欧美人牲a欧美精品| 成人黄色免费短视频| 久久国产成人午夜av影院| 亚洲午夜电影网| 国产精品福利一区| 日韩精品中文字幕一区| 在线视频国内自拍亚洲视频| 韩国一区二区视频| 免费欧美高清视频| 亚洲一区二区三区自拍| 中文字幕不卡在线观看| 久久免费电影网| 精品日产卡一卡二卡麻豆| 欧美精品v日韩精品v韩国精品v| caoporn国产精品| 成人理论电影网| 成人黄色软件下载| 国产精品一区在线观看乱码| 免费人成在线不卡| 日本女优在线视频一区二区| 亚洲一区二区四区蜜桃| 亚洲综合无码一区二区| 亚洲精品写真福利| 亚洲精品日韩综合观看成人91| 中文字幕一区在线观看| 欧美国产欧美综合| 国产精品毛片a∨一区二区三区| 久久综合五月天婷婷伊人| 日韩视频一区在线观看| 精品美女被调教视频大全网站| 日韩免费视频一区| 久久影院午夜片一区| 精品国产一区二区三区四区四| 26uuu欧美| 国产精品毛片a∨一区二区三区 | 99精品国产视频| 97久久精品人人澡人人爽| 欧洲国内综合视频| 欧美日韩国产免费一区二区| 欧美日本乱大交xxxxx| 欧美一区二区三区电影| 26uuu欧美| 亚洲柠檬福利资源导航| 亚洲电影一级黄| 麻豆精品久久久| eeuss鲁片一区二区三区在线观看| 91在线丨porny丨国产| 欧美群妇大交群中文字幕| 精品日韩在线观看| 亚洲欧美日韩国产成人精品影院 | 老色鬼精品视频在线观看播放| 国产精品中文字幕日韩精品 | 香蕉乱码成人久久天堂爱免费| 天涯成人国产亚洲精品一区av| 精品亚洲免费视频| 91在线视频网址| 91精品国产美女浴室洗澡无遮挡| 国产女主播视频一区二区| 亚洲精品久久久蜜桃| 免费在线视频一区| 91亚洲国产成人精品一区二三| 91麻豆精品国产91久久久| 欧美国产成人精品| 日韩国产成人精品| 成人18精品视频| 91精品在线麻豆| 亚洲欧美日韩中文字幕一区二区三区| 日本一区中文字幕| 91国偷自产一区二区开放时间| 久久综合久色欧美综合狠狠| 玉足女爽爽91| 成人丝袜视频网| wwwwxxxxx欧美|