Internal Port Decoding b8-15 Register: Difference between revisions
core 3.0 changes/refresh |
core 3.1.3 changes/refresh |
||
| (2 intermediate revisions by the same user not shown) | |||
| Line 3: | Line 3: | ||
|Readable=Yes | |Readable=Yes | ||
|Writable=Yes | |Writable=Yes | ||
|ShortDesc=Enabling internal ports | |ShortDesc=Enabling internal ports decoding | ||
}} | }} | ||
{|class="wikitable" | {|class="wikitable" | ||
| Line 25: | Line 25: | ||
|} | |} | ||
All bits are set to 1 upon soft reset. | since core3.1.1: all bits are set to 1 when: soft reset and bit 31 is set OR hard reset and bit 31 is clear (otherwise content is kept intact). <del>All bits are set to 1 upon soft reset.</del> | ||
The internal port decoding enables always apply. | |||
When the expansion bus is on, the expansion port decoding (Next Registers $86-$89) enables are logically ANDed with the internal enables (Next Registers $82-$85). A zero bit indicates the internal device is disabled. | |||
If the expansion bus is on, this allows I/O cycles for disabled internal ports to propagate to the expansion bus, otherwise corresponding I/O cycles to the expansion bus are filtered. | |||
(note: Next registers with number higher than $7F are inaccessible from Copper code) | (note: Next registers with number higher than $7F are inaccessible from Copper code) | ||
Latest revision as of 18:44, 13 April 2020
| Number | TBRegisterNumber::$83 |
|---|---|
| Readable | TBRegisterReadable::Yes |
| Writable | TBRegisterWritable::Yes |
| Short Description | ShortDesc::Enabling internal ports decoding |
| Bit | Description |
|---|---|
| 7 | (bit 15) Enabling {{#ask:
PortNumber::$123B }} ($123B{{#ask: PortNumber::$123B |mainlabel=- |headers=hide |intro= / |?NumberDec#- }}) |
| 6 | (bit 14) Enabling {{#ask:
PortNumber::$xx57 }} ($xx57{{#ask: PortNumber::$xx57 |mainlabel=- |headers=hide |intro= / |?NumberDec#- }}), {{#ask: PortNumber::$xx5B }} ($xx5B{{#ask: PortNumber::$xx5B |mainlabel=- |headers=hide |intro= / |?NumberDec#- }}) and {{#ask: PortNumber::$303B }} ($303B{{#ask: PortNumber::$303B |mainlabel=- |headers=hide |intro= / |?NumberDec#- }}) |
| 5 | (bit 13) Enabling {{#ask:
PortNumber::$FADF }} ($FADF{{#ask: PortNumber::$FADF |mainlabel=- |headers=hide |intro= / |?NumberDec#- }}), {{#ask: PortNumber::$FBDF }} ($FBDF{{#ask: PortNumber::$FBDF |mainlabel=- |headers=hide |intro= / |?NumberDec#- }}) and {{#ask: PortNumber::$FFDF }} ($FFDF{{#ask: PortNumber::$FFDF |mainlabel=- |headers=hide |intro= / |?NumberDec#- }}) |
| 4 | (bit 12) Enabling {{#ask:
PortNumber::$133B }} ($133B{{#ask: PortNumber::$133B |mainlabel=- |headers=hide |intro= / |?NumberDec#- }}), {{#ask: PortNumber::$143B }} ($143B{{#ask: PortNumber::$143B |mainlabel=- |headers=hide |intro= / |?NumberDec#- }}) and {{#ask: PortNumber::$153B }} ($153B{{#ask: PortNumber::$153B |mainlabel=- |headers=hide |intro= / |?NumberDec#- }}) (UART) |
| 3 | (bit 11) Enabling {{#ask:
PortNumber::$xxE7 }} ($xxE7{{#ask: PortNumber::$xxE7 |mainlabel=- |headers=hide |intro= / |?NumberDec#- }}) and {{#ask: PortNumber::$xxEB }} ($xxEB{{#ask: PortNumber::$xxEB |mainlabel=- |headers=hide |intro= / |?NumberDec#- }}) (SPI) |
| 2 | (bit 10) Enabling {{#ask:
PortNumber::$103B }} ($103B{{#ask: PortNumber::$103B |mainlabel=- |headers=hide |intro= / |?NumberDec#- }}) and {{#ask: PortNumber::$113B }} ($113B{{#ask: PortNumber::$113B |mainlabel=- |headers=hide |intro= / |?NumberDec#- }}) |
| 1 | (bit 9) Enabling Multiface (two variable ports) |
| 0 | (bit 8) Enabling {{#ask:
PortNumber::$xxE3 }} ($xxE3{{#ask: PortNumber::$xxE3 |mainlabel=- |headers=hide |intro= / |?NumberDec#- }}) (DivMMC control) |
since core3.1.1: all bits are set to 1 when: soft reset and bit 31 is set OR hard reset and bit 31 is clear (otherwise content is kept intact). All bits are set to 1 upon soft reset.
The internal port decoding enables always apply.
When the expansion bus is on, the expansion port decoding (Next Registers $86-$89) enables are logically ANDed with the internal enables (Next Registers $82-$85). A zero bit indicates the internal device is disabled.
If the expansion bus is on, this allows I/O cycles for disabled internal ports to propagate to the expansion bus, otherwise corresponding I/O cycles to the expansion bus are filtered.
(note: Next registers with number higher than $7F are inaccessible from Copper code)