w11 - vhd 0.794
W11 CPU core and support modules
Loading...
Searching...
No Matches
tb_tst_serloop1_n4.vhd
Go to the documentation of this file.
1-- $Id: tb_tst_serloop1_n4.vhd 1181 2019-07-08 17:00:50Z mueller $
2-- SPDX-License-Identifier: GPL-3.0-or-later
3-- Copyright 2015-2018 by Walter F.J. Mueller <W.F.J.Mueller@gsi.de>
4--
5------------------------------------------------------------------------------
6-- Module Name: tb_tst_serloop1_n4 - sim
7-- Description: Test bench for sys_tst_serloop1_n4
8--
9-- Dependencies: simlib/simclk
10-- xlib/sfs_gsim_core
11-- sys_tst_serloop1_n4 [UUT]
12-- tb/tb_tst_serloop
13--
14-- To test: sys_tst_serloop1_n4
15--
16-- Target Devices: generic
17--
18-- Revision History:
19-- Date Rev Version Comment
20-- 2018-11-03 1064 1.2.1 use sfs_gsim_core
21-- 2016-09-03 805 1.2 remove CLK_STOP logic (simstop via report)
22-- 2016-04-09 760 1.1 clock now from cmt and configurable
23-- 2015-02-21 438 1.0 Initial version (cloned from tb_tst_serloop1_n3)
24------------------------------------------------------------------------------
25
26library ieee;
27use ieee.std_logic_1164.all;
28use ieee.numeric_std.all;
29use ieee.std_logic_textio.all;
30use std.textio.all;
31
32use work.slvtypes.all;
33use work.xlib.all;
34use work.simlib.all;
35use work.sys_conf.all;
36
39
40architecture sim of tb_tst_serloop1_n4 is
41
42 signal CLK100 : slbit := '0';
43
44 signal CLK : slbit := '0';
45
46 signal I_RXD : slbit := '1';
47 signal O_TXD : slbit := '1';
48 signal O_RTS_N : slbit := '0';
49 signal I_CTS_N : slbit := '0';
50 signal I_SWI : slv16 := (others=>'0');
51 signal I_BTN : slv5 := (others=>'0');
52
53 signal RXD : slbit := '1';
54 signal TXD : slbit := '1';
55 signal RTS_N : slbit := '0';
56 signal CTS_N : slbit := '0';
57 signal SWI : slv16 := (others=>'0');
58 signal BTN : slv5 := (others=>'0');
59
60 constant clock_period : Delay_length := 10 ns;
61 constant clock_offset : Delay_length := 200 ns;
62 constant delay_time : Delay_length := 2 ns;
63
64begin
65
66 SYSCLK : simclk
67 generic map (
70 port map (
71 CLK => CLK100
72 );
73
74 GEN_CLKSYS : sfs_gsim_core
75 generic map (
76 VCO_DIVIDE => sys_conf_clksys_vcodivide,
77 VCO_MULTIPLY => sys_conf_clksys_vcomultiply,
78 OUT_DIVIDE => sys_conf_clksys_outdivide)
79 port map (
80 CLKIN => CLK100,
81 CLKFX => CLK,
82 LOCKED => open
83 );
84
85 UUT : entity work.sys_tst_serloop1_n4
86 port map (
88 I_RXD => I_RXD,
89 O_TXD => O_TXD,
92 I_SWI => I_SWI,
93 I_BTN => I_BTN,
94 I_BTNRST_N => '1',
95 O_LED => open,
96 O_RGBLED0 => open,
97 O_RGBLED1 => open,
98 O_ANO_N => open,
99 O_SEG_N => open
100 );
101
102 GENTB : entity work.tb_tst_serloop
103 port map (
104 CLKS => CLK,
105 CLKH => CLK,
106 P0_RXD => RXD,
107 P0_TXD => TXD,
108 P0_RTS_N => RTS_N,
109 P0_CTS_N => CTS_N,
110 P1_RXD => open, -- port 1 unused for n4 !
111 P1_TXD => '0',
112 P1_RTS_N => '0',
113 P1_CTS_N => open,
114 SWI => SWI(7 downto 0),
115 BTN => BTN(3 downto 0)
116 );
117
118 I_RXD <= RXD after delay_time;
119 TXD <= O_TXD after delay_time;
120 RTS_N <= O_RTS_N after delay_time;
121 I_CTS_N <= CTS_N after delay_time;
122
123 I_SWI <= SWI after delay_time;
124 I_BTN <= BTN after delay_time;
125
126end sim;
VCO_DIVIDE positive := 1
OUT_DIVIDE positive := 1
in CLKIN slbit
VCO_MULTIPLY positive := 1
out LOCKED slbit
out CLKFX slbit
out CLK slbit
Definition: simclk.vhd:33
OFFSET Delay_length := 200 ns
Definition: simclk.vhd:31
PERIOD Delay_length := 20 ns
Definition: simclk.vhd:30
std_logic_vector( 4 downto 0) slv5
Definition: slvtypes.vhd:37
std_logic_vector( 15 downto 0) slv16
Definition: slvtypes.vhd:48
std_logic slbit
Definition: slvtypes.vhd:30
Delay_length := 2 ns delay_time
Delay_length := 10 ns clock_period
slv16 :=( others => '0') SWI
Delay_length := 200 ns clock_offset
slv5 :=( others => '0') I_BTN
slv5 :=( others => '0') BTN
slv16 :=( others => '0') I_SWI
out P0_RXD slbit
in P1_RTS_N slbit
in P1_TXD slbit
in P0_TXD slbit
out P0_CTS_N slbit
out P1_RXD slbit
in P0_RTS_N slbit
out P1_CTS_N slbit
Definition: xlib.vhd:35