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

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

?? main_enc_low.vhd

?? 16B20B編碼轉(zhuǎn)換
?? VHD
字號:
-- **************************************************************
-- Owner:		Xilinx Inc.
-- File:  		main_enc_low.vhd
--
-- Purpose: 		Main 8B/10B encoder description.  This encoder
--			can be used for fiber channel implementations.
--			Controls encoding, disparity and s_gen
--			modules in determining the 10-bit serial output 
--			encoded data.
--	
-- Author:		Jennifer Jenkins
-- Date:		7-5-2000
--		
-- **************************************************************************


library ieee;
use ieee.std_logic_1164.all;
use ieee.std_logic_arith.all;

entity ENCODER_LOW is
    port(
        
          clk			: in STD_LOGIC;
          rst			: in STD_LOGIC;
        
          -- Protocol Device Interface                      
	  data_in		: in STD_LOGIC_VECTOR(7 downto 0);   	-- Parallel byte of incoming data
	  k_char		: in STD_LOGIC;				-- Asserted specifies the transmission of 
									-- a special character
	  frame_in 		: in STD_LOGIC;				-- Asserted when parallel data is stable
		  	 
	  -- Disparity I/O
	  disin_rdy		: in STD_LOGIC;				-- Asserted when dis_in is stable
	  dis_in		: in STD_LOGIC;			   	-- Disparity in
	  dis_out		: out STD_LOGIC;		  	-- Disparity out

	  -- Encoder outputs
	  encoded_data		: out STD_LOGIC_VECTOR(9 downto 0);  	-- Encoded data to send out
	  frame_out		: out STD_LOGIC				-- Asserted when data is encoded and ready
									-- to be sent through the external serializer	  

        );

end ENCODER_LOW;



architecture BEHAVIOUR of ENCODER_LOW is

-- ******************** CONSTANT DECLARATIONS ***********************
constant RESET_ACTIVE 	: STD_LOGIC := '0';


-- ********************* SIGNAL DECLARATIONS ************************

-- Define states for download state machine
type STATE is (IDLE, ASSIGN, WAITING, DONE);
signal prs_state, nxt_state : STATE;

--------------------------- Encoder Logic ----------------------------
-- Starting signal for encoder, disparity, and s_gen logic
signal start_enc : STD_LOGIC;

-- Assignment and ending signals from encoder logic
signal init_rdy, assign_rdy, enc_done : STD_LOGIC;

-- Zero and One detect signals
signal l13, l31 : STD_LOGIC;			

-------------------------- Disparity Logic --------------------------
signal disfunc_rdy : STD_LOGIC;

-- Disparity Functions (positive and negative running disparity for
-- each 5B/6B and 3B/4B module)
signal nds4, pds4, nds6, pds6	: STD_LOGIC;

----------------------- S Generator Logic ----------------------------
signal s_term, s_done : STD_LOGIC;

-- Assinged from incoming parallel data byte
signal  ain, bin, cin, din, ein, fin, gin, hin : STD_LOGIC;

-- Preliminary output signals for b, c, d, and e
--signal b_prel, c_prel, d_prel, e_prel : STD_LOGIC;


-- ******************** COMPONENT DECLARATION ***********************
-- 8B/10B Encoder Function
component ENC_FUNC
	port(
		clk			: in STD_LOGIC;
        	rst			: in STD_LOGIC;

	  	ain			: in STD_LOGIC;		-- Data Inputs (AIN .. HIN)			
	  	bin			: in STD_LOGIC;
	  	cin			: in STD_LOGIC;			
	  	din			: in STD_LOGIC;
	  	ein			: in STD_LOGIC;			
	  	fin			: in STD_LOGIC;
	  	gin			: in STD_LOGIC;			
	  	hin			: in STD_LOGIC;  
	  	kin			: in STD_LOGIC;	
 	  	sin			: in STD_LOGIC;		-- S Signal input from S_GEN
	  	start_enc		: in STD_LOGIC;   	-- Asserted starts encoding sequence
	  	s_done			: in STD_LOGIC;		-- Asserted when S signal is ready

	  							-- Outputs for S_GEN state machine
	  	pos_l13 		: inout STD_LOGIC;	-- 1 one and 3 zeros signal in (A,B,C,D) 
	  	pos_l31			: inout STD_LOGIC;	-- 3 ones and 1 zero signal in (A,B,C,D)

	  	do			: out STD_LOGIC_VECTOR(9 downto 0);  -- Output data term (AOUT .. JOUT)
	
		init_rdy		: out STD_LOGIC;	-- Asserted when initial configurations made
	  	enc_done		: out STD_LOGIC);	-- Asserted when encoding is complete, 
								-- provides handshaking to main control logic

end component;


-- Disparity Generator
component DIS_GEN_LOW
    port(
        
          	clk			: in STD_LOGIC;
          	rst			: in STD_LOGIC;

          	-- Data Inputs (AIN .. HIN)
	  	ain			: in STD_LOGIC;			
	  	bin			: in STD_LOGIC;
	  	cin			: in STD_LOGIC;			
	  	din			: in STD_LOGIC;
	  	ein			: in STD_LOGIC;			
	  	fin			: in STD_LOGIC;
	 	gin			: in STD_LOGIC;			
	 	hin			: in STD_LOGIC;  
	 	kin			: in STD_LOGIC;	
	  
	 	 -- Disparity Input Terms 
		disin_rdy		: in STD_LOGIC;		-- Asserted when dis_in is stable	 
	  	dis_in			: in STD_LOGIC;		-- Disparity in for each 8B/10B module.
								-- In 16B/20B module, this is the disparity
								-- out of the upper to lower module or 
								-- lower to upper module.								
	  	-- Control terms
	  	start_enc		: in STD_LOGIC;   	-- Asserted starts encoding sequence
									
	  	-- Disparity Output Terms
	  	nds4			: inout STD_LOGIC;	-- Negative running disparity for 3B/4B module
	  	pds4			: inout STD_LOGIC;	-- Positive running disparity for 3B/4B module
	  	nds6			: inout STD_LOGIC;	-- Negative running disparity for 5B/6B module
	  	pds6			: inout STD_LOGIC;	-- Positive running disparity for 5B/6B module
	  
 	  	-- Output signals
	  	disfunc_rdy		: out STD_LOGIC;	-- Asserted with running disparity functions
								-- have been assigned								
	  	dis_out			: out STD_LOGIC		-- Disparity out for each 8B/10B block
        
          	);

end component;


-- S Signal Generator
component S_GEN
	port(      
        	clk			: in STD_LOGIC;
        	rst			: in STD_LOGIC;
	  	din			: in STD_LOGIC;		-- Data inputs D and E	
	  	ein			: in STD_LOGIC;		
	 	pos_l13 		: in STD_LOGIC;		-- 1 one and 3 zeros signal in (A,B,C,D) 
	  	pos_l31			: in STD_LOGIC;		-- 3 ones and 1 zero signal in (A,B,C,D)	  
		dis_in			: in STD_LOGIC;		-- Disparity in to 8B/10B block
		nds6			: in STD_LOGIC;		-- Negative running disparity for 5B/6B 
		pds6			: in STD_LOGIC;		-- Positive running disparity for 5B/6B 

	  	-- Input control terms
	  	start_enc		: in STD_LOGIC;   	-- Asserted starts s function	  	
		init_rdy		: in STD_LOGIC;		-- Asserted when initial configurations made
		disfunc_rdy		: in STD_LOGIC;		-- Running disparity functions determined

		-- Output control terms
		s_done			: out STD_LOGIC;	-- Asserted when S signal is ready
		sout			: out STD_LOGIC);	-- Output S signal

end component;



begin

	-- ****************** SIGNAL ASSIGNMENTS ***********************
	start_enc <= '1' when (prs_state = ASSIGN) else '0';

	-- ***************** COMPONENT ASSIGNMENTS *********************
	-- 8B/10B Encoder Function
	ENC_8B_10B: ENC_FUNC
		port map(
			clk		=> clk,			
        		rst		=> rst,
	  		ain		=> ain,  	
			bin		=> bin,
	  		cin		=> cin,	
			din		=> din,		
	  		ein		=> ein,	
			fin		=> fin,		
	  		gin		=> gin,	
			hin		=> hin,			  
	  		kin		=> k_char,			 	
 	  		sin		=> s_term,		 
	  		start_enc	=> start_enc,	 
	  		s_done		=> s_done,	
	 	  	pos_l13 	=> l13,	
	  		pos_l31		=> l31,	  	  
	  		do		=> encoded_data,
			init_rdy	=> init_rdy,		
	  		enc_done	=> enc_done);

	-- Disparity Generator
	DIS_FUNC: DIS_GEN_LOW
		port map(        
          		clk		=> clk,			
        		rst		=> rst,
	  		ain		=> ain,  	
			bin		=> bin,
	  		cin		=> cin,	
			din		=> din,		
	  		ein		=> ein,	
			fin		=> fin,		
	  		gin		=> gin,	
			hin		=> hin,			  
	  		kin		=> k_char,
			disin_rdy	=> disin_rdy,			
	  		dis_in		=> dis_in,					
	  	  	start_enc	=> start_enc,
	  		nds4		=> nds4,	
	  		pds4		=> pds4,
	  		nds6		=> nds6,	
	  		pds6		=> pds6,	
	  		disfunc_rdy	=> disfunc_rdy, 									
	  		dis_out		=> dis_out);


	-- S Signal Generator 
	S_FUNC: S_GEN
		port map(      
        		clk		=> clk,	
      	  		rst		=> rst,	
	  		din		=> din,		
	  		ein		=> ein,	
	 		pos_l13 	=> l13,	
	  		pos_l31		=> l31,	  
			dis_in 		=> dis_in,
			nds6		=> nds6,
	  		pds6		=> pds6,	  		
	  		start_enc	=> start_enc,	
			init_rdy	=> init_rdy,	
	  		disfunc_rdy	=> disfunc_rdy,			
			s_done		=> s_done,
			sout		=> s_term);



	-- ***************** Process: SEQUENTIAL ************************
	-- Purpose:  	Synchronize target state machine
	-- Components: 	none
    
    	SEQUENTIAL: process (rst, clk)
    	begin
       	 	if rst = RESET_ACTIVE then	
         	   	prs_state <= IDLE;
            
       	 	elsif clk'event and (clk = '1') then
         	   	prs_state <= nxt_state;
            
        	end if;

    	end process SEQUENTIAL;
    
    
    
    	-- ******************** Process: MAIN_ENCODE ************************
    	-- Purpose: 	Main encoding control logic.  Synchronize control logic 
	-- 		for encoding 16-bit parallel data to 20-bit serial stream 
	--		of data in accordance to 8B/10B encoding rules.  Initializes
	--		start signal for disparity and encoding function
	--		generators.  Waits for end of encode signal and asserts
	--		frame_out when encoded_data is ready.
	--		
    	-- Components:	none
        
    	MAIN_ENCODE: process (prs_state, frame_in, enc_done)
    	begin
    
    	 	nxt_state <= prs_state;

		ain <= data_in(0);
		bin <= data_in(1);
		cin <= data_in(2);
		din <= data_in(3);
		ein <= data_in(4);
		fin <= data_in(5);
		gin <= data_in(6);
		hin <= data_in(7);
		frame_out <= '0';	
    	
        	case prs_state is
        
        		------------------- IDLE State --------------------------
        		when IDLE =>

				-- Reset input data signals
				ain <= '0';
				bin <= '0';
				cin <= '0';
				din <= '0';
				ein <= '0';
				fin <= '0';
				gin <= '0';
				hin <= '0';

				-- Waits for valid data in the system
				-- Assertion of frame_in
        			if frame_in = '1' then
        				nxt_state <= ASSIGN;        			
        			end if;
        		
        	
      	  		------------------- ASSIGN State -----------------------
	      		when ASSIGN =>

				-- Start encoder, disparity, and sgen
				-- state machines by asserting start_enc signal,
				-- and bring data byte into module and assign to
				-- corresponding AIN .. HIN				
			
				-- Waits for encoder to finish
				if enc_done = '1' then
					nxt_state <= DONE;
				end if;

					
			-------------------- DONE State -------------------
			when DONE =>
				
				-- Assert frame_out
				frame_out <= '1';

				-- Wait for transition on frame_in signal
				if frame_in = '0' then
					nxt_state <= IDLE;
				end if;				
        		        	
        
			----------------------- DEFAULT -----------------------------
			when others =>
				nxt_state <= IDLE;	      
        	        	
        end case;  
        
    end process MAIN_ENCODE;
  
end BEHAVIOUR;
















?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧洲av一区二区嗯嗯嗯啊| 国产精品三级av| 欧美亚洲综合久久| 色综合天天综合| 91丨porny丨首页| av不卡在线播放| 一本色道久久综合亚洲aⅴ蜜桃| youjizz国产精品| 99久久夜色精品国产网站| 99久久99精品久久久久久| fc2成人免费人成在线观看播放| hitomi一区二区三区精品| 91天堂素人约啪| 在线亚洲一区二区| 欧美日韩一区成人| 日韩免费福利电影在线观看| 欧美成va人片在线观看| 久久精品人人爽人人爽| 国产精品丝袜一区| 亚洲精品免费看| 亚洲成人av福利| 蜜臀91精品一区二区三区| 毛片基地黄久久久久久天堂| 国产一区二区三区精品欧美日韩一区二区三区 | 精品国产乱子伦一区| 26uuu亚洲| 亚洲国产精品ⅴa在线观看| 亚洲天堂福利av| 亚洲一区二区三区四区在线观看| 日韩精品视频网站| 经典三级视频一区| 成人动漫在线一区| 欧美日韩一区二区欧美激情 | 中文字幕日韩精品一区| 亚洲资源在线观看| 麻豆精品一区二区| 成人一级片网址| 欧美日韩和欧美的一区二区| ww亚洲ww在线观看国产| 国产精品成人一区二区三区夜夜夜| 亚洲国产成人av| 国产揄拍国内精品对白| 99re热视频精品| 欧美一级欧美三级在线观看| 国产欧美一区二区精品久导航| 亚洲理论在线观看| 激情综合色播五月| 91麻豆高清视频| 日韩欧美一级精品久久| 国产精品久久久久影院| 日韩影院免费视频| 成人国产精品免费观看视频| 欧美精品色综合| 国产精品理论片在线观看| 视频在线观看一区二区三区| 成人一级片在线观看| 欧美福利视频导航| 自拍偷在线精品自拍偷无码专区| 免费看欧美女人艹b| 99re热这里只有精品视频| 日韩精品一区在线| 亚洲综合在线五月| 国产精品一卡二卡在线观看| 欧美日韩在线播放一区| 亚洲国产精品成人久久综合一区 | 欧美这里有精品| 久久久久久一二三区| 亚洲国产欧美在线人成| 成人免费视频免费观看| 日韩三级在线观看| 亚洲影视在线观看| 99re成人精品视频| 久久精品水蜜桃av综合天堂| 日韩电影在线观看一区| 色综合激情久久| 国产精品欧美久久久久一区二区| 久久国产精品色婷婷| 欧美日韩一区二区不卡| 亚洲乱码国产乱码精品精可以看 | 日韩精品高清不卡| 色婷婷激情久久| 亚洲欧美综合网| 成人一区二区视频| 久久久国产午夜精品| 精品综合久久久久久8888| 欧美一区二区三区免费| 午夜视频一区在线观看| 91精品福利在线| 亚洲视频1区2区| 成人在线综合网站| 国产欧美日韩精品a在线观看| 麻豆一区二区在线| 日韩一区二区高清| 蜜桃视频一区二区三区| 欧美精品在线一区二区三区| 亚洲国产成人va在线观看天堂 | 亚洲美女精品一区| 丰满白嫩尤物一区二区| 2023国产精品| 韩国av一区二区| 欧美tickling网站挠脚心| 日本免费在线视频不卡一不卡二| 欧美精品在线视频| 午夜精品爽啪视频| 5566中文字幕一区二区电影| 日韩国产成人精品| 欧美一二三区在线| 久久成人免费电影| 久久综合给合久久狠狠狠97色69| 狠狠色丁香婷婷综合| 国产亚洲污的网站| 成熟亚洲日本毛茸茸凸凹| 久久久99久久| gogo大胆日本视频一区| 亚洲三级电影全部在线观看高清| 91在线免费视频观看| 夜夜嗨av一区二区三区网页| 欧美日韩中字一区| 日本特黄久久久高潮| 精品国产一区二区亚洲人成毛片| 国产精品一卡二卡在线观看| 国产精品国产三级国产普通话99 | 91国在线观看| 偷拍一区二区三区四区| 日韩欧美成人一区二区| 国产精品资源网| 最新中文字幕一区二区三区| 欧美少妇一区二区| 开心九九激情九九欧美日韩精美视频电影| 日韩免费高清视频| 国产99久久久国产精品潘金网站| 国产精品高清亚洲| 欧美色男人天堂| 免费成人在线影院| 中文字幕免费不卡| 精品婷婷伊人一区三区三| 美国三级日本三级久久99| 中文字幕av免费专区久久| 欧美在线一区二区三区| 久久精品国产99| 国产精品久久久久三级| 欧美性一区二区| 国内欧美视频一区二区| 亚洲激情一二三区| 欧美成人一区二区三区在线观看 | 欧美精三区欧美精三区| 国产精品亚洲午夜一区二区三区 | 国产精品视频你懂的| 欧美最猛黑人xxxxx猛交| 轻轻草成人在线| 国产精品亲子伦对白| 正在播放亚洲一区| 国产91精品入口| 午夜亚洲福利老司机| 久久精品综合网| 欧美日韩精品欧美日韩精品一综合| 国产呦精品一区二区三区网站| 亚洲精品日韩综合观看成人91| 91精品国产综合久久精品麻豆| 北岛玲一区二区三区四区| 日本不卡123| 亚洲人成7777| 精品国免费一区二区三区| 在线视频国内一区二区| 国产一区不卡在线| 天堂精品中文字幕在线| 国产精品久久看| 欧美成人a视频| 欧美日本国产一区| 成a人片国产精品| 麻豆91精品91久久久的内涵| 亚洲美女区一区| 欧美国产禁国产网站cc| 欧美一区二区三区免费视频 | 欧美日韩精品一区二区天天拍小说| 福利91精品一区二区三区| 久久精品国产77777蜜臀| 亚洲国产精品影院| 亚洲欧美激情小说另类| 国产农村妇女精品| 久久先锋资源网| 欧美一级二级三级乱码| 欧美三区在线观看| 91丨九色丨蝌蚪丨老版| 国产毛片精品视频| 老鸭窝一区二区久久精品| 午夜精品一区在线观看| 一区二区在线观看视频| 中文字幕va一区二区三区| 久久综合久久99| 欧美电视剧在线看免费| 欧美高清dvd| 欧美放荡的少妇| 在线观看欧美日本| 日本韩国欧美一区| www.亚洲色图.com| 菠萝蜜视频在线观看一区| 成人午夜精品在线| 国产suv精品一区二区883| 国产福利精品一区|