URL
https://opencores.org/ocsvn/tinyvliw8/tinyvliw8/trunk
Show entire file |
Details |
Blame |
View Log
Rev 2 |
Rev 9 |
Line 140... |
Line 140... |
else
|
else
|
pcReg_v := pcInt_s;
|
pcReg_v := pcInt_s;
|
end if;
|
end if;
|
end if;
|
end if;
|
|
|
if (irq = '1') then
|
|
pcIrq_s <= pcReg_v;
|
|
pcReg_s <= "111111111" & irqAddr;
|
|
else
|
|
pcReg_s <= pcReg_v;
|
pcReg_s <= pcReg_v;
|
|
|
|
end if;
|
end if;
|
end if;
|
|
end process;
|
|
|
|
irq_Assign: process(rst_n, irq)
|
|
begin
|
|
if (rst_n = '0') then
|
|
pcIrq_s <= (others => '0');
|
|
else
|
|
if (irq'event and irq = '1') then
|
|
pcIrq_s <= pcReg_s;
|
end if;
|
end if;
|
end if;
|
end if;
|
end process;
|
end process;
|
|
|
pcLoad_n <= pcLoad_n_s when rst_n = '1' and delayedState3_s = '1' else
|
pcLoad_n <= pcLoad_n_s when rst_n = '1' and delayedState3_s = '1' else
|
'1';
|
'1';
|
pcRegUpd_s <= state3_s when rst_n = '1' and stalled_n = '1' else
|
pcRegUpd_s <= state3_s when rst_n = '1' and stalled_n = '1' else
|
'1' when rst_n = '1' and irq = '1' else
|
'1' when rst_n = '1' and irq = '1' else
|
'0';
|
'0';
|
|
|
addrOut <= pcReg_s;
|
addrOut <= pcReg_s when irq = '0' else
|
|
"111111111" & irqAddr;
|
|
|
ioOut <= pcInt_s(7 downto 0) when (rst_n = '1' and ioInEn_n = '0' and ioAddr = "00") else
|
ioOut <= pcInt_s(7 downto 0) when (rst_n = '1' and ioInEn_n = '0' and ioAddr = "00") else
|
"00000" & pcInt_s(10 downto 8) when (rst_n = '1' and ioInEn_n = '0' and ioAddr = "01") else
|
"00000" & pcInt_s(10 downto 8) when (rst_n = '1' and ioInEn_n = '0' and ioAddr = "01") else
|
pcIrq_s(7 downto 0) when (rst_n = '1' and ioInEn_n = '0' and ioAddr = "10") else
|
pcIrq_s(7 downto 0) when (rst_n = '1' and ioInEn_n = '0' and ioAddr = "10") else
|
"00000" & pcIrq_s(10 downto 8) when (rst_n = '1' and ioInEn_n = '0' and ioAddr = "11") else
|
"00000" & pcIrq_s(10 downto 8) when (rst_n = '1' and ioInEn_n = '0' and ioAddr = "11") else
|
© copyright 1999-2024
OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.