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

Subversion Repositories epc_rfid_transponder

[/] [epc_rfid_transponder/] [trunk/] [tb_InvSelFlag.vhd] - Blame information for rev 2

Go to most recent revision | Details | Compare with Previous | View Log

Line No. Rev Author Line
1 2 erwing
-------------------------------------------------------------------------------
2
--     Politecnico di Torino                                              
3
--     Dipartimento di Automatica e Informatica             
4
-------------------------------------------------------------------------------
5
-------------------------------------------------------------------------------     
6
--
7
--     Title          : EPC Class1 Gen2 RFID Tag - Inventoried and Selected Flags
8
--                      Test Bench
9
--
10
--     File name      : tb_InvSelFlag.vhd 
11
--
12
--     Description    : Inventoried and Selected flag test bench.
13
--                      
14
--     Authors        : Erwing R. Sanchez <erwing.sanchezsanchez@polito.it>
15
--
16
--     Rev. History   : 16 Oct 06 
17
--                                 
18
-------------------------------------------------------------------------------            
19
-------------------------------------------------------------------------------
20
library IEEE;
21
use IEEE.STD_LOGIC_1164.all;
22
use IEEE.std_logic_unsigned.all;
23
 
24
entity tb_InvSelFlag is
25
end tb_InvSelFlag;
26
 
27
architecture stim of tb_InvSelFlag is
28
 
29
 
30
  component InvSelFlag
31
    generic (
32
      S1INV_PERSISTENCE_TIME : time;
33
      S2INV_PERSISTENCE_TIME : time;
34
      S3INV_PERSISTENCE_TIME : time;
35
      SL_PERSISTENCE_TIME    : time);
36
    port (
37
      S1i : in  std_logic;
38
      S2i : in  std_logic;
39
      S3i : in  std_logic;
40
      SLi : in  std_logic;
41
      S1o : out std_logic;
42
      S2o : out std_logic;
43
      S3o : out std_logic;
44
      SLo : out std_logic);
45
  end component;
46
 
47
 
48
  constant S1INV_PERSISTENCE_TIME : time := 500 ms;
49
  constant S2INV_PERSISTENCE_TIME : time := 2 sec;
50
  constant S3INV_PERSISTENCE_TIME : time := 2 sec;
51
  constant SL_PERSISTENCE_TIME    : time := 2 sec;
52
  constant CKdiv2                 : time := 260 ns;
53
 
54
  signal Si  : std_logic_vector(1 to 3);
55
  signal Sli : std_logic;
56
  signal So  : std_logic_vector(1 to 3);
57
  signal Slo : std_logic;
58
 
59
 
60
begin  -- stim
61
 
62
 
63
  process
64
 
65
  begin  -- process
66
 
67
    Si  <= (others => '0');
68
    Sli <= '0';
69
 
70
    wait for 20 * CKdiv2;
71
 
72
    Si(1) <= '1';
73
    wait for 2 * CKdiv2;
74
    Si(1) <= '0';
75
    wait for 2 * CKdiv2;
76
    Si(1) <= '1';
77
    wait for 2 * CKdiv2;
78
 
79
    Si(2) <= '1';
80
    wait for 2 * CKdiv2;
81
    Si(2) <= '0';
82
    wait for 2 * CKdiv2;
83
    Si(2) <= '1';
84
    wait for 2 * CKdiv2;
85
 
86
    Si(3) <= '1';
87
    wait for 2 * CKdiv2;
88
    Si(3) <= '0';
89
    wait for 2 * CKdiv2;
90
    Si(3) <= '1';
91
    wait for 2 * CKdiv2;
92
 
93
    Sli <= '1';
94
    wait for 2 * CKdiv2;
95
    Sli <= '0';
96
    wait for 2 * CKdiv2;
97
    Sli <= '1';
98
    wait for 2 * CKdiv2;
99
 
100
 
101
    wait;
102
 
103
  end process;
104
 
105
 
106
  InvSelFlag_1 : InvSelFlag
107
    generic map (
108
      S1INV_PERSISTENCE_TIME => S1INV_PERSISTENCE_TIME,
109
      S2INV_PERSISTENCE_TIME => S2INV_PERSISTENCE_TIME,
110
      S3INV_PERSISTENCE_TIME => S3INV_PERSISTENCE_TIME,
111
      SL_PERSISTENCE_TIME    => SL_PERSISTENCE_TIME)
112
    port map (
113
      S1i => Si(1),
114
      S2i => Si(2),
115
      S3i => Si(3),
116
      SLi => Sli,
117
      S1o => So(1),
118
      S2o => So(2),
119
      S3o => So(3),
120
      SLo => Slo);
121
 
122
end stim;

powered by: WebSVN 2.1.0

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