Programmed IO: Difference between revisions
(Initial page, copy from Rogers wiki) |
m (Wikifying the intro) |
||
Line 1: | Line 1: | ||
The following information is collected from the ND- | :''The following information is collected from the {{ND-doc|06.015}}'' | ||
Programmed IO is used for the CPU to communicate with devices. The only instructions that could access the IO is [[IOX]] and [[IOXT]]. | '''Programmed IO''' is used for the CPU to communicate with devices. The only instructions that could access the IO is [[IOX]] and [[IOXT]]. | ||
IOX uses the lower 11 bits in the instruction as address (0-3777 oct). IOXT uses the T register as address and could access the full IO address range (0-177777 oct). Both instructions transfers data to and from register A. | IOX uses the lower 11 bits in the instruction as address (0-3777 oct). IOXT uses the T register as address and could access the full IO address range (0-177777 oct). Both instructions transfers data to and from register A. | ||
Revision as of 13:20, 5 November 2008
- The following information is collected from the Norsk Data Document ND–06.015 ND-100 FUNCTIONAL DESCRIPTION
Programmed IO is used for the CPU to communicate with devices. The only instructions that could access the IO is IOX and IOXT. IOX uses the lower 11 bits in the instruction as address (0-3777 oct). IOXT uses the T register as address and could access the full IO address range (0-177777 oct). Both instructions transfers data to and from register A.
IO transfer direction
The lowest bit in the address decides the transfer direction. If the bit is zero then the direction is from the IO register into register A. If the bit is one then the contents in register A is written to the IO register.
IO memory map
Most Norsk Data devices recides in the area adressable from IOX. The lower half of that IO area is reserved for Norsk Data devices. The rest of that area is free for customer devices.
IO device address map for ND-100 (octal)
000000-001777 Norsk Data interfaces 002000-003777 Free for customer interfaces 004000-077777 Illegal 100000-100777 System control registers 101000-107777 Reserved 110000-137777 140000-177777 Norsk Data interfaces
System registers : Some system control registers are controlled via the IO bus, for example ECCR, Error Correctio Control Register is located on the memory module so the micro code converts the TRR instruction to an IOXT 100115
ND IO interrupts
If the IO address is to a non existing device the IO instruction will timeout after 10 us and issue an IOX error interrupt if enabled.
ND IO register standard
(to be done)
ND IO device numbers
The device numbers are listed in the appendix C of ND-100 functional description.