OpenCores
URL https://opencores.org/ocsvn/manchesterwireless/manchesterwireless/trunk

Subversion Repositories manchesterwireless

[/] [manchesterwireless/] [tags/] [release-1.0/] [singleDouble/] [simTest.vhd] - Blame information for rev 5

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 2 kingmu
library IEEE;
2
use IEEE.STD_LOGIC_1164.ALL;
3
use IEEE.STD_LOGIC_ARITH.ALL;
4
use IEEE.STD_LOGIC_UNSIGNED.ALL;
5
 
6
 
7
entity test_sim is
8
end test_sim;
9
 
10
architecture Behavioral of test_sim is
11
 
12 4 kingmu
        COMPONENT singleDouble
13 2 kingmu
        PORT(
14
    clk_i   :  in  std_logic;
15
    ce_i    :  in  std_logic;
16
    rst_i   :  in  std_logic;
17
    data_i  :  in  std_logic;
18
    q_o     :  out std_logic_vector(3 downto 0);
19
    ready_o :  out std_logic
20
                );
21
        END COMPONENT;
22
 
23
  signal clk : std_logic := '0';
24
  signal ce_i : std_logic := '0';
25
  signal mdi : std_logic := '0';
26
  signal q : std_logic_vector(3 downto 0);
27
  signal nd : std_logic;
28
 
29
  constant period : time := 10 ns;
30
  constant md_period : time := period*16;
31
  signal reset : std_logic := '1';
32
begin
33
 
34 4 kingmu
        Inst_singleDouble: singleDouble PORT MAP(
35 2 kingmu
    clk_i =>  clk,
36
    ce_i  =>  ce_i,
37
    rst_i  =>  reset,
38
    data_i   =>  mdi,
39
    q_o     =>  q,
40
    ready_o    =>  nd
41
        );
42
 
43
  process
44
  begin
45 4 kingmu
    loop
46
      reset <= '1';
47
      ce_i <= '0';
48
 
49
      wait for 2*md_period;
50 2 kingmu
 
51
      reset <= '0';
52
      ce_i <= '1';
53 4 kingmu
 
54 2 kingmu
      wait for 2*md_period;
55
 
56
      mdi <= not mdi;
57
      wait for 2*md_period;
58
 
59
      mdi <= not mdi;
60
      wait for md_period;
61
 
62
      mdi <= not mdi;
63
      wait for md_period;
64
 
65
      mdi <= not mdi;
66
      wait for md_period;
67
 
68
      mdi <= not mdi;
69
      wait for 2*md_period;
70
 
71
      mdi <= not mdi;
72
      wait for md_period;
73
 
74
      mdi <= not mdi;
75
      wait for 5*md_period;
76
    end loop;
77
  end process;
78
 
79
  process
80
  begin
81
    loop
82
      clk <= not clk;
83
      wait for period/2;
84
    end loop;
85
  end process;
86
 
87
end Behavioral;
88
 

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.