aboutsummaryrefslogtreecommitdiffstats
path: root/testsuite/synth/issue2390/top.vhdl
blob: 5c08f590cd5efdaed8fe5dbe735740868c1d7ecb (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
library ieee;
context ieee.ieee_std_context;
use work.uCPUtypes.all;

entity top is
  port (
    rst, clk : in logic;
    display : out unsigned_byte;
    stb : out logic
  );
end entity top;

architecture mixed of top is
  signal rom_addr, ram_addr, ram_data : unsigned_byte;
  signal rom_data : code_word;
  signal wr_en : logic;
begin

stb <= '1' when wr_en = '1' and ram_addr = x"00" else '0';

display <= ram_data;

CPU_instance: entity work.uCPU(RTL) port map (rst, clk, rom_addr, rom_data, ram_addr, ram_data, wr_en);

ROM_instance: entity work.ROM(RTL) port map (rom_addr, rom_data, '1');

RAM_instance: entity work.RAM(RTL) port map (clk, ram_addr, ram_data, wr_en);

end architecture mixed;