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

Subversion Repositories openverifla

[/] [openverifla/] [trunk/] [openverifla_2.4/] [vhdl/] [verifla/] [top_of_verifla.vhd] - Blame information for rev 46

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 46 laurentiud
-- 20180820-1740
2
-- Author: Laurentiu Duca
3
-- License: GNU GPL
4
-----------------------------------------------------
5
 
6
library IEEE;
7
use IEEE.STD_LOGIC_1164.ALL;
8
use IEEE.NUMERIC_STD.ALL;
9
--use ieee.std_logic_arith.all;  
10
use ieee.std_logic_unsigned.all;
11
use work.common_internal_verifla.all;
12
 
13
-----------------------------------------------------
14
 
15
entity top_of_verifla is
16
        port (clk, rst_l, sys_run: in std_logic;
17
                        data_in: in std_logic_vector(LA_DATA_INPUT_WORDLEN_BITS-1 downto 0);
18
                        -- Transceiver
19
                        uart_XMIT_dataH: out std_logic;
20
                        uart_REC_dataH: in std_logic);
21
end top_of_verifla;
22
 
23
-----------------------------------------------------
24
 
25
architecture top_of_verifla_arch of top_of_verifla is
26
 
27
        signal mem_port_A_data_in, mem_port_B_dout: std_logic_vector(LA_MEM_WORDLEN_BITS-1 downto 0);
28
        signal mem_port_A_address, mem_port_B_address: std_logic_vector (LA_MEM_ADDRESS_BITS-1 downto 0) ;
29
        signal mem_port_A_wen: std_logic;
30
        signal user_run: std_logic;
31
        signal sc_run, ack_sc_run, sc_done: std_logic;
32
        -- Transmitter
33
        signal  xmit_dataH: std_logic_vector(7 downto 0);
34
        signal xmit_doneH, xmitH: std_logic;
35
        -- Receiver
36
        signal  rec_dataH: std_logic_vector(7 downto 0);
37
        signal rec_readyH: std_logic;
38
        -- Baud
39
        signal baud_clk_posedge: std_logic;
40
 
41
begin
42
        iUART: entity work.uart_of_verifla(uart_of_verifla_arch)
43
                port map(clk, rst_l, baud_clk_posedge,
44
                                -- Transmitter
45
                                uart_XMIT_dataH, xmitH, xmit_dataH, xmit_doneH,
46
                                -- Receiver
47
                                uart_REC_dataH, rec_dataH, rec_readyH);
48
        mi: entity work.memory_of_verifla(memory_of_verifla_arch)
49
                port map (addra => mem_port_A_address,  addrb => mem_port_B_address,
50
                        clk=>clk,       rst_l=>rst_l,
51
                        dina=>mem_port_A_data_in,       doutb=>mem_port_B_dout,
52
                        wea=>mem_port_A_wen);
53
 
54
        ci: entity work.computer_input_of_verifla(computer_input_of_verifla_arch)
55
                port map (clk, rst_l, rec_dataH, rec_readyH, user_run);
56
 
57
        mon: entity work.monitor_of_verifla(monitor_of_verifla_arch)
58
                port map (clk, rst_l,
59
                        sys_run, user_run, data_in,
60
                        mem_port_A_address, mem_port_A_data_in, mem_port_A_wen,
61
                        ack_sc_run, sc_done, sc_run);
62
 
63
        -- send_capture_of_verifla must use the same reset as the uart.
64
        sc: entity work.send_capture_of_verifla(send_capture_of_verifla_arch)
65
                port map (clk, rst_l, baud_clk_posedge,
66
                        sc_run, ack_sc_run, sc_done,
67
                        mem_port_B_address, mem_port_B_dout,
68
                        xmit_doneH, xmitH, xmit_dataH);
69
 
70
end top_of_verifla_arch;
71
 

powered by: WebSVN 2.1.0

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