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

Subversion Repositories xucpu

Compare Revisions

  • This comparison shows the changes necessary to convert path
    /xucpu
    from Rev 38 to Rev 39
    Reverse comparison

Rev 38 → Rev 39

/trunk/ss/arch/board.vhdl
67,29 → 67,41
END COMPONENT address_decoder;
 
COMPONENT bus_arbiter IS
PORT (
clk : IN STD_LOGIC;
rst : IN STD_LOGIC;
rd_rq : IN STD_LOGIC_VECTOR(nr_of_masters - 1 DOWNTO 0);
wr_rq : IN STD_LOGIC_VECTOR(nr_of_masters - 1 DOWNTO 0);
master_ack : OUT STD_LOGIC_VECTOR(nr_of_masters - 1 DOWNTO 0));
END COMPONENT bus_arbiter;
 
SIGNAL rd_rq : STD_LOGIC_VECTOR(nr_of_masters - 1 DOWNTO 0);
SIGNAL wr_rq : STD_LOGIC_VECTOR(nr_of_masters - 1 DOWNTO 0);
SIGNAL master_ack : STD_LOGIC_VECTOR(nr_of_masters - 1 DOWNTO 0);
 
-- Definition of master devices attached to the bus
COMPONENT icache IS
PORT (
clk : IN STD_LOGIC;
rst : IN STD_LOGIC;
data_in : IN STD_LOGIC_VECTOR(data_width - 1 DOWNTO 0);
addr_out : OUT STD_LOGIC_VECTOR(addr_width - 1 DOWNTO 0);
data_rd : OUT STD_LOGIC;
bus_wait : IN STD_LOGIC);
clk : IN STD_LOGIC;
rst : IN STD_LOGIC;
data_in : IN STD_LOGIC_VECTOR(data_width - 1 DOWNTO 0);
addr_out : OUT STD_LOGIC_VECTOR(addr_width - 1 DOWNTO 0);
data_rd : OUT STD_LOGIC;
bus_wait : IN STD_LOGIC;
master_ack : IN STD_LOGIC);
END COMPONENT icache;
 
COMPONENT dcache IS
PORT (
clk : IN STD_LOGIC;
rst : IN STD_LOGIC;
data_in : IN STD_LOGIC_VECTOR(data_width - 1 DOWNTO 0);
data_out : OUT STD_LOGIC_VECTOR(data_width - 1 DOWNTO 0);
addr_out : OUT STD_LOGIC_VECTOR(addr_width - 1 DOWNTO 0);
data_rd : OUT STD_LOGIC;
data_wr : OUT STD_LOGIC;
bus_wait : IN STD_LOGIC);
clk : IN STD_LOGIC;
rst : IN STD_LOGIC;
data_in : IN STD_LOGIC_VECTOR(data_width - 1 DOWNTO 0);
data_out : OUT STD_LOGIC_VECTOR(data_width - 1 DOWNTO 0);
addr_out : OUT STD_LOGIC_VECTOR(addr_width - 1 DOWNTO 0);
data_rd : OUT STD_LOGIC;
data_wr : OUT STD_LOGIC;
bus_wait : IN STD_LOGIC;
master_ack : IN STD_LOGIC);
END COMPONENT dcache;
 
-- Definition of io devices attached to the bus
123,6 → 135,13
BEGIN -- ARCHITECTURE Structural
 
-- Mapping of bus related components
bus_arbiter_1 : bus_arbiter
PORT MAP (
clk => clk,
rst => rst,
rd_rq => rd_rq,
wr_rq => wr_rq,
master_ack => master_ack);
 
-- Mapping of system devices
 
129,8 → 148,28
-- Main memory
 
-- Instruction cache
icache_1 : icache
PORT MAP (
clk => clk,
rst => rst,
data_in => data_bus,
addr_out => device_address_out(0),
data_rd => rd_rq(0),
bus_wait => bus_wait,
master_ack => master_ack(0));
 
-- Data cache
dcache_1 : dcache
PORT MAP (
clk => clk,
rst => rst,
data_in => data_bus,
data_out => device_data_out(1),
addr_out => device_address_out(1),
data_rd => rd_rq(1),
data_wr => wr_rq(1),
bus_wait => bus_wait,
master_ack => master_ack(0));
 
-- LED output device
led_out_1 : led_out
146,7 → 185,7
PORT MAP (
clk => clk,
rst => rst,
data_out => device_data_out(0)(7 DOWNTO 0),
data_out => device_data_out(3)(7 DOWNTO 0),
addr_in => address_bus,
port_in => button);
 
155,7 → 194,7
PORT MAP (
clk => clk,
rst => rst,
data_out => device_data_out(1)(7 DOWNTO 0),
data_out => device_data_out(4)(7 DOWNTO 0),
addr_in => address_bus,
port_in => switch);
 

powered by: WebSVN 2.1.0

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