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

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

?? capture_1_bit_words.vhd

?? pcmcia代碼驅動等有用資料
?? VHD
字號:
-------------------------------------------------------------
--	Filename:  CAPTURE_1_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_1_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_1_BIT_IN: in std_logic;
		-- Input signal to be captured
	WORD_CLK_IN: in std_logic;
		-- WORD_1_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_1_BIT_WORDS is
--------------------------------------------------------
--      COMPONENTS
--------------------------------------------------------

component RAMB4_S1_S1 port (
	DIA: in std_logic_vector (0 downto 0);
	DIB: in std_logic_vector (0 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 (11 downto 0);
	ADDRB: in std_logic_vector (11 downto 0);
	DOA: out std_logic_vector (0 downto 0);
	DOB: out std_logic_vector (0 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 WORD1_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;
		-- Word to be converted into a 64 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 ZERO1: std_logic_vector(0 downto 0);


signal STATE_LOCAL: std_logic_vector(1 downto 0);
signal WRITE_POINTER: std_logic_vector(11 downto 0);
signal WRITE_POINTER_ADD_VALUE: std_logic_vector(11 downto 0);
signal WRITE_POINTER_PLUS_ADD_VALUE: std_logic_vector(11 downto 0);
signal WRITE_POINTER_PLUS_ONE: std_logic_vector(11 downto 0);
signal WRITE_POINTER_END: std_logic_vector(11 downto 0);
signal WRITE_ENABLE: std_logic;
signal READ_POINTER: std_logic_vector(11 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(0 downto 0);
signal COUNTER_3_BIT: std_logic_vector(2 downto 0);
signal DIA: std_logic_vector(0 downto 0);

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

begin


--// COMSCOPE SOURCE CODE -----------
ZERO <= '0';
ONE <= '1';
ZERO1 <= (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 <= 
	"111001100110" when TRIGGER_POSITION = "01" else	-- trigger at 10% (3686)
	"100000000000" when TRIGGER_POSITION = "10" else 	-- trigger at 50% (2048)
	"000110011010" when TRIGGER_POSITION = "11" else 	-- trigger at 90% (410)
	"000000000000";						


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_3_BIT <= (others => '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_3_BIT /= "000") then
			COUNTER_3_BIT <= COUNTER_3_BIT + 1;
			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
);

DIA <= "0" when WORD_1_BIT_IN = '0' else "1";

-- Instantiate the block RAM
RAMB_001:  RAMB4_S1_S1 port map(
	DIA => DIA,
	DIB => ZERO1,
	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 1 bit to 8 bit conversion
WORD1_TO_WORD8_001:  WORD1_TO_WORD8 port map(
	ASYNC_RESET => ASYNC_RESET,
	CLK => CLK,
	COMPONENT_RESET => LAST_WORD_CAPTURED_PULSE,
	WORD_IN => WORD_FROM_BUFFER(0),
	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一区二区三区免费野_久草精品视频
首页国产欧美日韩丝袜| 午夜av电影一区| 亚洲成人一区二区在线观看| 精品在线免费观看| 91国偷自产一区二区开放时间 | 欧美亚男人的天堂| 26uuu久久天堂性欧美| 一区二区三区中文在线观看| 国产精品中文字幕日韩精品| 欧美老年两性高潮| 亚洲精品成人悠悠色影视| 成人在线综合网| 欧美大片在线观看一区二区| 丝袜亚洲精品中文字幕一区| 91一区在线观看| 国产精品免费久久久久| 久久成人羞羞网站| 91精品国产综合久久福利| 亚洲综合一区二区三区| 91视频xxxx| 亚洲视频一二三| 99精品久久久久久| 国产精品久久久久婷婷| 国产高清精品在线| 国产日韩一级二级三级| 国产一二三精品| 国产亚洲成av人在线观看导航 | 一区二区三区产品免费精品久久75 | 国产精品一区二区三区乱码| 91精品国模一区二区三区| 日韩精品亚洲专区| 欧美一区二区三区四区视频| 日韩国产欧美视频| 在线观看91av| 强制捆绑调教一区二区| 日韩欧美亚洲国产精品字幕久久久| 亚洲aⅴ怡春院| 欧美精品色综合| 精品一区二区三区视频| 精品av久久707| 国产久卡久卡久卡久卡视频精品| 精品精品国产高清a毛片牛牛 | 日韩欧美国产高清| 黄色小说综合网站| xf在线a精品一区二区视频网站| 蜜桃视频一区二区三区| 欧美成人一区二区三区片免费| 蜜臀久久久99精品久久久久久| 精品三级av在线| 高清不卡在线观看av| 国产精品白丝在线| 欧美日韩国产成人在线91| 免费在线观看成人| 国产欧美视频在线观看| www.性欧美| 亚洲图片欧美色图| 欧美精品一区二区三区很污很色的 | 92国产精品观看| 亚洲国产成人tv| 日韩精品最新网址| 成人av在线播放网址| 亚洲精品久久久蜜桃| 777亚洲妇女| 粉嫩av一区二区三区| 一个色综合网站| 欧美videofree性高清杂交| 成人激情免费电影网址| 亚洲国产日韩精品| 久久久综合视频| 日本韩国一区二区三区视频| 蜜乳av一区二区| 亚洲精品亚洲人成人网在线播放| 欧美一级爆毛片| 99视频超级精品| 麻豆精品久久精品色综合| 国产精品区一区二区三| 欧美一区二区播放| 97aⅴ精品视频一二三区| 精品一区二区久久| 亚洲综合色视频| 国产日韩精品视频一区| 这里只有精品视频在线观看| 99精品久久99久久久久| 老汉av免费一区二区三区 | 麻豆传媒一区二区三区| 亚洲图片欧美激情| 精品国产91久久久久久久妲己| 色爱区综合激月婷婷| 国产精品一区二区你懂的| 亚洲v中文字幕| 亚洲欧美一区二区久久| 久久久精品人体av艺术| 欧美日韩国产高清一区二区三区 | 国产一区 二区| 日韩av电影天堂| 亚洲国产精品天堂| 最新热久久免费视频| 国产日韩精品一区| 久久久久国产免费免费| 精品国免费一区二区三区| 欧美美女一区二区在线观看| www.日本不卡| 丁香婷婷深情五月亚洲| 国产一区二区在线电影| 免费观看成人av| 男女激情视频一区| 奇米精品一区二区三区四区| 性欧美疯狂xxxxbbbb| 亚洲一区二区美女| 亚洲永久精品大片| 亚洲国产中文字幕在线视频综合| 中文字幕一区二区三区在线播放| 久久久久99精品一区| 国产农村妇女精品| 国产精品色在线| 国产精品久久福利| 中文字幕在线观看一区二区| 欧美国产1区2区| 国产精品传媒视频| 亚洲猫色日本管| 亚洲综合免费观看高清在线观看| 亚洲夂夂婷婷色拍ww47| 一区二区三区在线观看动漫| 夜夜嗨av一区二区三区| 亚洲综合免费观看高清完整版| 亚洲综合在线免费观看| 亚洲午夜免费电影| 日韩电影在线观看电影| 狂野欧美性猛交blacked| 精品在线观看视频| 成人av在线电影| 欧美制服丝袜第一页| 91精品国产综合久久久蜜臀图片| 欧美tickling挠脚心丨vk| 国产亚洲一区二区三区四区| 国产精品欧美精品| 亚洲影院久久精品| 免费成人你懂的| 成人黄色在线看| 欧美综合一区二区三区| 欧美一区二区三区婷婷月色| 久久女同精品一区二区| 亚洲免费观看在线视频| 日本亚洲最大的色成网站www| 麻豆国产精品一区二区三区| 豆国产96在线|亚洲| 欧美中文字幕久久| 久久久欧美精品sm网站| 亚洲美女偷拍久久| 久久www免费人成看片高清| 99久久精品国产导航| 欧美一区二区三区啪啪| 国产精品色眯眯| 日韩国产成人精品| 国产99久久久国产精品免费看| 在线免费观看日本欧美| 精品国产乱码久久久久久老虎| 中文字幕一区二区三区不卡在线| 天天av天天翘天天综合网| 国产成人aaa| 日韩一级片网站| 亚洲免费av网站| 国产精品资源网| 91精品免费观看| 一区二区激情小说| 国产精品一区二区在线观看不卡| 欧美亚洲一区二区在线观看| 久久久久9999亚洲精品| 日本伊人精品一区二区三区观看方式| 成人免费高清在线| 精品久久久久久久久久久院品网 | 亚洲欧洲美洲综合色网| 美女网站一区二区| 欧美日韩激情一区| 亚洲另类春色国产| 成人性生交大片免费看在线播放 | 亚洲精品视频免费看| 国产一区视频网站| 日韩精品一区二区三区蜜臀 | 精品国产免费一区二区三区四区| 一区二区三区日韩精品视频| 成人综合激情网| 国产人妖乱国产精品人妖| 美腿丝袜亚洲一区| 91精品一区二区三区久久久久久 | 一区二区高清在线| av不卡免费在线观看| 国产区在线观看成人精品| 久久99精品国产.久久久久久| 欧美日韩一区久久| 亚洲最色的网站| 日本丶国产丶欧美色综合| 中文字幕亚洲综合久久菠萝蜜| 国产成人亚洲综合a∨婷婷图片| 2021久久国产精品不只是精品| 麻豆国产一区二区| 精品第一国产综合精品aⅴ| 日本亚洲天堂网| 欧美成人免费网站| 国产一区欧美二区|