URL
https://opencores.org/ocsvn/neorv32/neorv32/trunk
[/] [neorv32/] [trunk/] [rtl/] [core/] [neorv32_xirq.vhd] - Diff between revs 69 and 70
Go to most recent revision |
Show entire file |
Details |
Blame |
View Log
Rev 69 |
Rev 70 |
Line 60... |
Line 60... |
wren_i : in std_ulogic; -- write enable
|
wren_i : in std_ulogic; -- write enable
|
data_i : in std_ulogic_vector(31 downto 0); -- data in
|
data_i : in std_ulogic_vector(31 downto 0); -- data in
|
data_o : out std_ulogic_vector(31 downto 0); -- data out
|
data_o : out std_ulogic_vector(31 downto 0); -- data out
|
ack_o : out std_ulogic; -- transfer acknowledge
|
ack_o : out std_ulogic; -- transfer acknowledge
|
-- external interrupt lines --
|
-- external interrupt lines --
|
xirq_i : in std_ulogic_vector(XIRQ_NUM_CH-1 downto 0);
|
xirq_i : in std_ulogic_vector(31 downto 0);
|
-- CPU interrupt --
|
-- CPU interrupt --
|
cpu_irq_o : out std_ulogic
|
cpu_irq_o : out std_ulogic
|
);
|
);
|
end neorv32_xirq;
|
end neorv32_xirq;
|
|
|
Line 153... |
Line 153... |
-- IRQ Trigger --------------------------------------------------------------
|
-- IRQ Trigger --------------------------------------------------------------
|
-- -----------------------------------------------------------------------------
|
-- -----------------------------------------------------------------------------
|
irq_trigger: process(clk_i)
|
irq_trigger: process(clk_i)
|
begin
|
begin
|
if rising_edge(clk_i) then
|
if rising_edge(clk_i) then
|
irq_sync <= xirq_i;
|
irq_sync <= xirq_i(XIRQ_NUM_CH-1 downto 0);
|
irq_sync2 <= irq_sync;
|
irq_sync2 <= irq_sync;
|
end if;
|
end if;
|
end process irq_trigger;
|
end process irq_trigger;
|
|
|
irq_trigger_comb: process(irq_sync, irq_sync2)
|
irq_trigger_comb: process(irq_sync, irq_sync2)
|
© copyright 1999-2024
OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.