Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- LIBRARY ieee;
- USE ieee.std_logic_1164.ALL;
- ENTITY KlawTest IS
- END KlawTest;
- ARCHITECTURE behavior OF KlawTest IS
- -- Component Declaration for the Unit Under Test (UUT)
- COMPONENT Klawiatura
- PORT(
- clk_i : IN std_logic;
- ps2_clk_i : IN std_logic;
- rst_i : IN std_logic;
- ps2_data_i : IN std_logic;
- led7_an_o : OUT std_logic_vector(3 downto 0);
- led7_seg_o : OUT std_logic_vector(7 downto 0)
- );
- END COMPONENT;
- --Inputs
- signal clk_i : std_logic := '0';
- signal ps2_clk_i : std_logic := '1';
- signal rst_i : std_logic := '0';
- signal ps2_data_i : std_logic;
- --Outputs
- signal led7_an_o : std_logic_vector(3 downto 0);
- signal led7_seg_o : std_logic_vector(7 downto 0);
- -- Clock period definitions
- constant clk_i_period : time := 100 ps;
- BEGIN
- -- Instantiate the Unit Under Test (UUT)
- uut: Klawiatura PORT MAP (
- clk_i => clk_i,
- ps2_clk_i => ps2_clk_i,
- rst_i => rst_i,
- ps2_data_i => ps2_data_i,
- led7_an_o => led7_an_o,
- led7_seg_o => led7_seg_o
- );
- -- Clock process definitions
- clk_i_process :process
- begin
- clk_i <= '0';
- wait for clk_i_period/2;
- clk_i <= '1';
- wait for clk_i_period/2;
- end process;
- -- Stimulus process
- stim_proc: process
- begin
- ps2_clk_i <= '0';
- ps2_data_i <= '1';
- wait for 3 ns;
- ps2_clk_i <= '1';
- wait for clk_i_period*100;
- ps2_clk_i <= '0';
- ps2_data_i <= '0'; -- 0 start 1. litera
- wait for clk_i_period*100;
- ps2_clk_i <= '1';
- wait for clk_i_period*100;
- ps2_clk_i <= '0';
- ps2_data_i <= '0'; -- 0 dane
- wait for clk_i_period*100;
- ps2_clk_i <= '1';
- wait for clk_i_period*100;
- ps2_clk_i <= '0';
- ps2_data_i <= '0'; -- 0 dane
- wait for clk_i_period*100;
- ps2_clk_i <= '1';
- wait for clk_i_period*100;
- ps2_clk_i <= '0';
- ps2_data_i <= '1'; -- 1 dane
- wait for clk_i_period*100;
- ps2_clk_i <= '1';
- wait for clk_i_period*100;
- ps2_clk_i <= '0';
- ps2_data_i <= '0'; -- 0 dane
- wait for clk_i_period*100;
- ps2_clk_i <= '1';
- wait for clk_i_period*100;
- ps2_clk_i <= '0';
- ps2_data_i <= '0'; -- 0 dane
- wait for clk_i_period*100;
- ps2_clk_i <= '1';
- wait for clk_i_period*100;
- ps2_clk_i <= '0';
- ps2_data_i <= '1'; -- 1 dane
- wait for clk_i_period*100;
- ps2_clk_i <= '1';
- wait for clk_i_period*100;
- ps2_clk_i <= '0';
- ps2_data_i <= '0'; -- 0 dane
- wait for clk_i_period*100;
- ps2_clk_i <= '1';
- wait for clk_i_period*100;
- ps2_clk_i <= '0';
- ps2_data_i <= '0'; -- 0 dane
- wait for clk_i_period*100;
- ps2_clk_i <= '1';
- wait for clk_i_period*100;
- ps2_clk_i <= '0';
- ps2_data_i <= '1'; -- 1 parity
- wait for clk_i_period*100;
- ps2_clk_i <= '1';
- wait for clk_i_period*100;
- ps2_clk_i <= '0';
- ps2_data_i <= '1'; -- 1 stop
- wait for clk_i_period*100;
- ps2_clk_i <= '1';
- wait for clk_i_period*100;
- ps2_clk_i <= '0';
- ps2_data_i <= '0'; -- 0 start 2. litera
- wait for clk_i_period*100;
- ps2_clk_i <= '1';
- wait for clk_i_period*100;
- ps2_clk_i <= '0';
- ps2_data_i <= '1'; -- 1 dane
- wait for clk_i_period*100;
- ps2_clk_i <= '1';
- wait for clk_i_period*100;
- ps2_clk_i <= '0';
- ps2_data_i <= '1'; -- 1 dane
- wait for clk_i_period*100;
- ps2_clk_i <= '1';
- wait for clk_i_period*100;
- ps2_clk_i <= '0';
- ps2_data_i <= '0'; -- 0 dane
- wait for clk_i_period*100;
- ps2_clk_i <= '1';
- wait for clk_i_period*100;
- ps2_clk_i <= '0';
- ps2_data_i <= '1'; -- 1 dane
- wait for clk_i_period*100;
- ps2_clk_i <= '1';
- wait for clk_i_period*100;
- ps2_clk_i <= '0';
- ps2_data_i <= '0'; -- 0 dane
- wait for clk_i_period*100;
- ps2_clk_i <= '1';
- wait for clk_i_period*100;
- ps2_clk_i <= '0';
- ps2_data_i <= '1'; -- 1 dane
- wait for clk_i_period*100;
- ps2_clk_i <= '1';
- wait for clk_i_period*100;
- ps2_clk_i <= '0';
- ps2_data_i <= '0'; -- 0 dane
- wait for clk_i_period*100;
- ps2_clk_i <= '1';
- wait for clk_i_period*100;
- ps2_clk_i <= '0';
- ps2_data_i <= '0'; -- 0 dane
- wait for clk_i_period*100;
- ps2_clk_i <= '1';
- wait for clk_i_period*100;
- ps2_clk_i <= '0';
- ps2_data_i <= '1'; -- 1 parity
- wait for clk_i_period*100;
- ps2_clk_i <= '1';
- wait for clk_i_period*100;
- ps2_clk_i <= '0';
- ps2_data_i <= '1'; -- 1 stop
- wait for clk_i_period*100;
- ps2_clk_i <= '1';
- wait for clk_i_period*100;
- ps2_clk_i <= '0';
- ps2_data_i <= '0'; -- 0 start F0, czyli break (1)
- wait for clk_i_period*100;
- ps2_clk_i <= '1';
- wait for clk_i_period*100;
- ps2_clk_i <= '0';
- ps2_data_i <= '0'; -- 0 dane
- wait for clk_i_period*100;
- ps2_clk_i <= '1';
- wait for clk_i_period*100;
- ps2_clk_i <= '0';
- ps2_data_i <= '0'; -- 0 dane
- wait for clk_i_period*100;
- ps2_clk_i <= '1';
- wait for clk_i_period*100;
- ps2_clk_i <= '0';
- ps2_data_i <= '0'; -- 0 dane
- wait for clk_i_period*100;
- ps2_clk_i <= '1';
- wait for clk_i_period*100;
- ps2_clk_i <= '0';
- ps2_data_i <= '0'; -- 0 dane
- wait for clk_i_period*100;
- ps2_clk_i <= '1';
- wait for clk_i_period*100;
- ps2_clk_i <= '0';
- ps2_data_i <= '1'; -- 1 dane
- wait for clk_i_period*100;
- ps2_clk_i <= '1';
- wait for clk_i_period*100;
- ps2_clk_i <= '0';
- ps2_data_i <= '1'; -- 1 dane
- wait for clk_i_period*100;
- ps2_clk_i <= '1';
- wait for clk_i_period*100;
- ps2_clk_i <= '0';
- ps2_data_i <= '1'; -- 1 dane
- wait for clk_i_period*100;
- ps2_clk_i <= '1';
- wait for clk_i_period*100;
- ps2_clk_i <= '0';
- ps2_data_i <= '1'; -- 1 dane
- wait for clk_i_period*100;
- ps2_clk_i <= '1';
- wait for clk_i_period*100;
- ps2_clk_i <= '0';
- ps2_data_i <= '1'; -- 1 parity
- wait for clk_i_period*100;
- ps2_clk_i <= '1';
- wait for clk_i_period*100;
- ps2_clk_i <= '0';
- ps2_data_i <= '1'; -- 1 stop
- wait for clk_i_period*100;
- ps2_clk_i <= '1';
- wait for clk_i_period*100;
- ps2_clk_i <= '0';
- ps2_data_i <= '0'; -- 0 start Kod litery zbrejkowanej
- wait for clk_i_period*100;
- ps2_clk_i <= '1';
- wait for clk_i_period*100;
- ps2_clk_i <= '0';
- ps2_data_i <= '1'; -- 1 dane
- wait for clk_i_period*100;
- ps2_clk_i <= '1';
- wait for clk_i_period*100;
- ps2_clk_i <= '0';
- ps2_data_i <= '1'; -- 1 dane
- wait for clk_i_period*100;
- ps2_clk_i <= '1';
- wait for clk_i_period*100;
- ps2_clk_i <= '0';
- ps2_data_i <= '0'; -- 0 dane
- wait for clk_i_period*100;
- ps2_clk_i <= '1';
- wait for clk_i_period*100;
- ps2_clk_i <= '0';
- ps2_data_i <= '1'; -- 1 dane
- wait for clk_i_period*100;
- ps2_clk_i <= '1';
- wait for clk_i_period*100;
- ps2_clk_i <= '0';
- ps2_data_i <= '0'; -- 0 dane
- wait for clk_i_period*100;
- ps2_clk_i <= '1';
- wait for clk_i_period*100;
- ps2_clk_i <= '0';
- ps2_data_i <= '1'; -- 1 dane
- wait for clk_i_period*100;
- ps2_clk_i <= '1';
- wait for clk_i_period*100;
- ps2_clk_i <= '0';
- ps2_data_i <= '0'; -- 0 dane
- wait for clk_i_period*100;
- ps2_clk_i <= '1';
- wait for clk_i_period*100;
- ps2_clk_i <= '0';
- ps2_data_i <= '0'; -- 0 dane
- wait for clk_i_period*100;
- ps2_clk_i <= '1';
- wait for clk_i_period*100;
- ps2_clk_i <= '0';
- ps2_data_i <= '1'; -- 1 parity
- wait for clk_i_period*100;
- ps2_clk_i <= '1';
- wait for clk_i_period*100;
- ps2_clk_i <= '0';
- ps2_data_i <= '1'; -- 1 stop
- wait for clk_i_period*100;
- ps2_clk_i <= '1';
- wait for clk_i_period*100;
- ps2_clk_i <= '0';
- ps2_data_i <= '0'; -- 0 start Powrót do pierwszej, trzymanej litry
- wait for clk_i_period*100;
- ps2_clk_i <= '1';
- wait for clk_i_period*100;
- ps2_clk_i <= '0';
- ps2_data_i <= '0'; -- 0 dane
- wait for clk_i_period*100;
- ps2_clk_i <= '1';
- wait for clk_i_period*100;
- ps2_clk_i <= '0';
- ps2_data_i <= '0'; -- 0 dane
- wait for clk_i_period*100;
- ps2_clk_i <= '1';
- wait for clk_i_period*100;
- ps2_clk_i <= '0';
- ps2_data_i <= '1'; -- 1 dane
- wait for clk_i_period*100;
- ps2_clk_i <= '1';
- wait for clk_i_period*100;
- ps2_clk_i <= '0';
- ps2_data_i <= '0'; -- 0 dane
- wait for clk_i_period*100;
- ps2_clk_i <= '1';
- wait for clk_i_period*100;
- ps2_clk_i <= '0';
- ps2_data_i <= '0'; -- 0 dane
- wait for clk_i_period*100;
- ps2_clk_i <= '1';
- wait for clk_i_period*100;
- ps2_clk_i <= '0';
- ps2_data_i <= '1'; -- 1 dane
- wait for clk_i_period*100;
- ps2_clk_i <= '1';
- wait for clk_i_period*100;
- ps2_clk_i <= '0';
- ps2_data_i <= '0'; -- 0 dane
- wait for clk_i_period*100;
- ps2_clk_i <= '1';
- wait for clk_i_period*100;
- ps2_clk_i <= '0';
- ps2_data_i <= '0'; -- 0 dane
- wait for clk_i_period*100;
- ps2_clk_i <= '1';
- wait for clk_i_period*100;
- ps2_clk_i <= '0';
- ps2_data_i <= '1'; -- 1 parity
- wait for clk_i_period*100;
- ps2_clk_i <= '1';
- wait for clk_i_period*100;
- ps2_clk_i <= '0';
- ps2_data_i <= '1'; -- 1 stop
- wait for clk_i_period*100;
- ps2_clk_i <= '1';
- wait for clk_i_period*100;
- ps2_clk_i <= '0';
- ps2_data_i <= '0'; -- 0 start F0 trzymanej litery
- wait for clk_i_period*100;
- ps2_clk_i <= '1';
- wait for clk_i_period*100;
- ps2_clk_i <= '0';
- ps2_data_i <= '0'; -- 0 dane
- wait for clk_i_period*100;
- ps2_clk_i <= '1';
- wait for clk_i_period*100;
- ps2_clk_i <= '0';
- ps2_data_i <= '0'; -- 0 dane
- wait for clk_i_period*100;
- ps2_clk_i <= '1';
- wait for clk_i_period*100;
- ps2_clk_i <= '0';
- ps2_data_i <= '0'; -- 0 dane
- wait for clk_i_period*100;
- ps2_clk_i <= '1';
- wait for clk_i_period*100;
- ps2_clk_i <= '0';
- ps2_data_i <= '0'; -- 0 dane
- wait for clk_i_period*100;
- ps2_clk_i <= '1';
- wait for clk_i_period*100;
- ps2_clk_i <= '0';
- ps2_data_i <= '1'; -- 1 dane
- wait for clk_i_period*100;
- ps2_clk_i <= '1';
- wait for clk_i_period*100;
- ps2_clk_i <= '0';
- ps2_data_i <= '1'; -- 1 dane
- wait for clk_i_period*100;
- ps2_clk_i <= '1';
- wait for clk_i_period*100;
- ps2_clk_i <= '0';
- ps2_data_i <= '1'; -- 1 dane
- wait for clk_i_period*100;
- ps2_clk_i <= '1';
- wait for clk_i_period*100;
- ps2_clk_i <= '0';
- ps2_data_i <= '1'; -- 1 dane
- wait for clk_i_period*100;
- ps2_clk_i <= '1';
- wait for clk_i_period*100;
- ps2_clk_i <= '0';
- ps2_data_i <= '1'; -- 1 parity
- wait for clk_i_period*100;
- ps2_clk_i <= '1';
- wait for clk_i_period*100;
- ps2_clk_i <= '0';
- ps2_data_i <= '1'; -- 1 stop
- wait for clk_i_period*100;
- ps2_clk_i <= '1';
- wait for clk_i_period*100;
- ps2_clk_i <= '0';
- ps2_data_i <= '0'; -- 0 start Brejkowy powrót trzymanej litery
- wait for clk_i_period*100;
- ps2_clk_i <= '1';
- wait for clk_i_period*100;
- ps2_clk_i <= '0';
- ps2_data_i <= '0'; -- 0 dane
- wait for clk_i_period*100;
- ps2_clk_i <= '1';
- wait for clk_i_period*100;
- ps2_clk_i <= '0';
- ps2_data_i <= '0'; -- 0 dane
- wait for clk_i_period*100;
- ps2_clk_i <= '1';
- wait for clk_i_period*100;
- ps2_clk_i <= '0';
- ps2_data_i <= '1'; -- 1 dane
- wait for clk_i_period*100;
- ps2_clk_i <= '1';
- wait for clk_i_period*100;
- ps2_clk_i <= '0';
- ps2_data_i <= '0'; -- 0 dane
- wait for clk_i_period*100;
- ps2_clk_i <= '1';
- wait for clk_i_period*100;
- ps2_clk_i <= '0';
- ps2_data_i <= '0'; -- 0 dane
- wait for clk_i_period*100;
- ps2_clk_i <= '1';
- wait for clk_i_period*100;
- ps2_clk_i <= '0';
- ps2_data_i <= '1'; -- 1 dane
- wait for clk_i_period*100;
- ps2_clk_i <= '1';
- wait for clk_i_period*100;
- ps2_clk_i <= '0';
- ps2_data_i <= '0'; -- 0 dane
- wait for clk_i_period*100;
- ps2_clk_i <= '1';
- wait for clk_i_period*100;
- ps2_clk_i <= '0';
- ps2_data_i <= '0'; -- 0 dane
- wait for clk_i_period*100;
- ps2_clk_i <= '1';
- wait for clk_i_period*100;
- ps2_clk_i <= '0';
- ps2_data_i <= '1'; -- 1 parity
- wait for clk_i_period*100;
- ps2_clk_i <= '1';
- wait for clk_i_period*100;
- ps2_clk_i <= '0';
- ps2_data_i <= '1'; -- 1 stop
- wait for 300 ns; -- Poczekajmy chwilę (nic nie jest wciśnięte)
- ps2_clk_i <= '1';
- wait for clk_i_period*100;
- ps2_clk_i <= '0';
- ps2_data_i <= '0'; -- 0 start 3. litera
- wait for clk_i_period*100;
- ps2_clk_i <= '1';
- wait for clk_i_period*100;
- ps2_clk_i <= '0';
- ps2_data_i <= '0'; -- 0 dane
- wait for clk_i_period*100;
- ps2_clk_i <= '1';
- wait for clk_i_period*100;
- ps2_clk_i <= '0';
- ps2_data_i <= '0'; -- 0 dane
- wait for clk_i_period*100;
- ps2_clk_i <= '1';
- wait for clk_i_period*100;
- ps2_clk_i <= '0';
- ps2_data_i <= '1'; -- 1 dane
- wait for clk_i_period*100;
- ps2_clk_i <= '1';
- wait for clk_i_period*100;
- ps2_clk_i <= '0';
- ps2_data_i <= '1'; -- 1 dane
- wait for clk_i_period*100;
- ps2_clk_i <= '1';
- wait for clk_i_period*100;
- ps2_clk_i <= '0';
- ps2_data_i <= '1'; -- 1 dane
- wait for clk_i_period*100;
- ps2_clk_i <= '1';
- wait for clk_i_period*100;
- ps2_clk_i <= '0';
- ps2_data_i <= '0'; -- 0 dane
- wait for clk_i_period*100;
- ps2_clk_i <= '1';
- wait for clk_i_period*100;
- ps2_clk_i <= '0';
- ps2_data_i <= '0'; -- 0 dane
- wait for clk_i_period*100;
- ps2_clk_i <= '1';
- wait for clk_i_period*100;
- ps2_clk_i <= '0';
- ps2_data_i <= '0'; -- 0 dane
- wait for clk_i_period*100;
- ps2_clk_i <= '1';
- wait for clk_i_period*100;
- ps2_clk_i <= '0';
- ps2_data_i <= '0'; -- 0 parity
- wait for clk_i_period*100;
- ps2_clk_i <= '1';
- wait for clk_i_period*100;
- ps2_clk_i <= '0';
- ps2_data_i <= '1'; -- 1 stop
- wait;
- end process;
- END;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement