| News · Chips · Information · Forum · Links · About | Contact Us | |
|---|---|---|
| Identification · Pinouts · S-Spec numbers · Wanted | Site Search | |
Signetics 2650 microprocessor architecture | ||
|---|---|---|
MemoryProgram instructions and data are located in the same memory space. The total addressable memory size is 32 KB. Program memory - program instructions can be located anywhere in memory. All branch instructions, which use absolute addressing and indirect relative addressing, can jump to any location in program memory. Branch instructions that use relative non-indirect addressing can jump up to +63/-64 bytes from the address of the next instruction. Data memory - program data can be located anywhere in memory. All instructions that use indirect addressing method can access data placed anywhere. Instructions that don't use indirect memory addressing can only access data within current 8 KB memory page. Stack memory is located on the CPU. Stack size is 8 x 15 bits, that is it can store 8 return addresses. Stack cannot be used to store program data. Reserved/Special locations:
InterruptsThe processor supports only one type of interrupt. When an external device generates interrupt signal, the CPU finishes processing of current instruction, sets Interrupt Inhibit bit in the Program Status Word register and starts executing ZBSR instruction (branch to subroutine with the address relative to page zero). Second byte of the ZBSR instruction is supplied by the external device. This byte specifies memory location, relative to byte 0 in zero page, where the interrupt handling routine or a vector to it is located. The CPU stores the address of next instruction in stack memory, and jumps to the interrupt handling routine. When the routine finishes processing the interrupt, it can execute RETE instruction, which clears II flag, or it may choose to clear II flag first and then execute RETC instruction. Interrupts can be enabled or disabled by clearing/setting II (Interrupt Inhibit) flag. I/O ports256 8-bit ports. Single-bit I/O port RegistersProgram Status Word register - 16-bit register containing the following status and control bits:
General registers: Instruction Set2650 instruction set consists of the following instructions:
Addressing modesRegister - references data in a register. Immediate - 8-bit data is provided in the instruction. Absolute - two-byte operand provided in the instruction specifies memory address in current 8 KB page (for non-branch instruction) or in memory (for branch instructions) where data is located. Absolute Indirect - two-byte operand provided in the instruction specifies memory address in current 8 KB page where 16-bit data address is stored. Absolute indexed - the contents of one general register is added to two-byte operand provided in the instruction. The resulting address points to memory where data is located. Absolute indexed with auto-increment - the contents of one general register is incremented, and then added to two-byte operand provided in the instruction. The resulting address points to memory where data is located. Absolute indexed with auto-decrement - the contents of one general register is decremented, and then added to two-byte operand provided in the instruction. The resulting address points to memory where data is located. Relative - 7-bit offset, provided in the second byte of the instruction, is added to the address of the next instruction. The offset is a signed number in the range -64 - +63. Zero Page Relative - 7-bit offset, provided in the second byte of the instruction, specifies memory location in the zero page (first 8 KB page) where data is located. The offset is a signed number in the range -64 - +63, so this addressing method can access memory locations 0000h - 003Fh and 1FC0h - 1FFFh. Relative Indirect - 7-bit offset (signed number in the range -64 - +63), provided in the second byte of the instruction, is added to the address of the next instruction. The calculated address points to memory location where 16-bit data address is stored. Zero Page Relative Indirect - 7-bit offset, provided in the second byte of the instruction, specifies memory location in the zero page (first 8 KB page) which contains 16-bit data address. Add comment / picture Comments: 0 |
(c) Copyright 2003 Gennadiy Shvets |