mirror of
https://github.com/stnolting/neorv32.git
synced 2025-04-24 14:17:51 -04:00
[top] note: machine IRQs are for chip-internal use
This commit is contained in:
parent
fb8ce9c5a6
commit
da22ce643f
2 changed files with 11 additions and 5 deletions
|
@ -69,7 +69,13 @@ bits/channels are hardwired to zero.
|
|||
|
||||
.Tri-State Interfaces
|
||||
[NOTE]
|
||||
Some interfaces (like the TWI and the 1-Wire bus) require tri-state drivers in the designs top module.
|
||||
Some interfaces (like the TWI and the 1-Wire bus) require explicit tri-state drivers in the final top module.
|
||||
|
||||
.Input/Output Registers
|
||||
[NOTE]
|
||||
By default all output signals are driven by register and all input signals are synchronized into the processor's
|
||||
clock domain also using registers. However, for ASIC implementations it is recommended to add another register state
|
||||
to all inputs and output so the synthesis tool can insert an explicit IO (boundary) scan chain.
|
||||
|
||||
.NEORV32 Processor Signal List
|
||||
[cols="<3,^1,^1,^1,<8"]
|
||||
|
@ -154,9 +160,9 @@ Some interfaces (like the TWI and the 1-Wire bus) require tri-state drivers in t
|
|||
5+^| **<<_external_interrupt_controller_xirq>>**
|
||||
| `xirq_i` | 32 | in | `'L'` | external interrupt requests
|
||||
5+^| **RISC-V Machine-Mode <<_processor_interrupts>>**
|
||||
| `mtime_irq_i` | 1 | in | `'L'` | machine timer interrupt (RISC-V), high-level-active
|
||||
| `msw_irq_i` | 1 | in | `'L'` | machine software interrupt (RISC-V), high-level-active
|
||||
| `mext_irq_i` | 1 | in | `'L'` | machine external interrupt (RISC-V), high-level-active
|
||||
| `mtime_irq_i` | 1 | in | `'L'` | machine timer interrupt (RISC-V), high-level-active; for chip-internal usage only
|
||||
| `msw_irq_i` | 1 | in | `'L'` | machine software interrupt (RISC-V), high-level-active; for chip-internal usage only
|
||||
| `mext_irq_i` | 1 | in | `'L'` | machine external interrupt (RISC-V), high-level-active; for chip-internal usage only
|
||||
|=======================
|
||||
|
||||
|
||||
|
|
|
@ -235,7 +235,7 @@ entity neorv32_top is
|
|||
-- External platform interrupts (available if XIRQ_NUM_CH > 0) --
|
||||
xirq_i : in std_ulogic_vector(31 downto 0) := (others => 'L'); -- IRQ channels
|
||||
|
||||
-- CPU interrupts --
|
||||
-- CPU interrupts (for chip-internal usage only) --
|
||||
mtime_irq_i : in std_ulogic := 'L'; -- machine timer interrupt, available if IO_MTIME_EN = false
|
||||
msw_irq_i : in std_ulogic := 'L'; -- machine software interrupt
|
||||
mext_irq_i : in std_ulogic := 'L' -- machine external interrupt
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue