⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 crc_checker_tb.vhd

📁 VHDL cyclic redundancy check generator und receiver
💻 VHD
字号:
--------------------------------------------------------------------------------
-- Description : This is a testbench for the design crc_checker: x^4 + x^3 + x^0 = 11001 
--               for testpurposes only
-- References  : 
--------------------------------------------------------------------------------
-- Author      : Kurt Illmayer (IL)
-- Department  : Bulme Graz Goesting 
-- Created     : 
-- Last update : 2005/06/29
-- Language    : vhdl '87 
--------------------------------------------------------------------------------
-- Revisions   : 
-- Date         Version   Author   Description 
-- 
--------------------------------------------------------------------------------

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

entity crc_checker_tb is
-- empty
end crc_checker_tb;

architecture test of crc_checker_tb is
	-- system clock
 signal clock_i           : std_ulogic;
        -- active low reset
 signal reset_ni          : std_ulogic;
	-- activation
 signal enable_i          : std_ulogic;
        -- input signal
 signal data_i            : std_ulogic_vector(11 downto 0);
        -- crc ok output signal
 signal crc_ok_o          : std_ulogic;
 
 component crc_checker
 port(  -- System clock
        clock_i           : in  std_ulogic;
        -- active low reset
        reset_ni          : in  std_ulogic;
    	-- activation
        enable_i          : IN  std_ulogic;
	-- input data
        data_i            : in  std_ulogic_vector(11 downto 0);
        -- crc ok output signal
        crc_ok_o          : out std_ulogic);
 end component;
  
begin

 UUT: crc_checker port map (clock_i          => clock_i,
  	                    reset_ni         => reset_ni,
		            enable_i         => enable_i,
                            data_i           => data_i,
		            crc_ok_o         => crc_ok_o);
 
 reset_ni  <= '0' after  0 ns,
	      '1' after 40 ns;

 data_i <= "101000111010" after     0 ns,
	   "011100011000" after  9000 ns,
	   "001100111001" after 18000 ns,
	   "111111110110" after 27000 ns;

 enable_i <= '1' after    10 ns,
             '0' after 40500 ns; 
 
 clock_p: process

 begin  
   
   clock_i <='1';

   wait for 500 ns;

   clock_i <='0';

   wait for 500 ns;
   
 end process clock_p;
 
end test;

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -