General Purpose Register Module
This module contains the general-purpose registers used with this CPU. There are three registers available to the user and 3 registers used internally only. This module is connected to both the 8-bit data bus as well as the 16-bit address bus. There is an 8-bit control bus that connects directly to the CPU’s control unit.
Name Size Public C Register 8-bit Y D Register 8-bit Y S1 Register 8-bit N S2 Register 8-bit N F Register 16-bit Y S3 Register 16-bit N
Register Descriptions
Schematics
GPR Control Truth Table
Description [C0..C6] (RD_WR) C7 Opcode Reset / Load ALl 0000_000 0 0x0 Load C 0000_001 1 0x81 Load D 0000_010 1 0x82 Load S1 0000_011 1 0x83 Load S2 0000_100 1 0x84 Load F 0000_101 1 0x85 Load S3 0000_110 1 0x86 Assert C 0001_000 1 0x88 Assert D 0010_000 1 0x90 Assert S1 0011_000 1 0x98 Assert S2 0100_000 1 0xa0 Assert S1S2 0101_000 1 0xa8 Assert F 0110_000 1 0xb0 Assert S3 0111_000 1 0xb8 Assert S3L 1000_000 1 0xc0 Assert S3H 1001_000 1 0xc8 MOV C, D 0010_001 1 0x91 MOV C, S1 0011_001 1 0X99 MOV C, S2 0100_001 1 0xa1 MOV C, S3L 1000_001 1 0xc1 MOV C, S3H 1001_001 1 0xc9 MOV D, C 0001_010 1 0x8a MOV D, S1 0011_010 1 0x9a MOV D, S2 0100_010 1 0xa2 MOV D, S3L 1000_010 1 0xc2 MOV D, S3H 1001_010 1 0xca MOV S1, C 0001_011 1 0x8b MOV S1, D 0010_011 1 0x9a MOV S1, S2 0100_011 1 0x93 MOV S1, S3L 1000_011 1 0xc3 MOV S1, S3H 1001_011 1 0xcb MOV S2, C 0001_100 1 0x8c MOV S2, D 0010_100 1 0x94 MOV S2, S1 0011_100 1 0x9c MOV S2, S3L 1000_100 1 0xc4 MOV S2, S3H 1001_100 1 0xcc MOV F, S3 01111_101 1 0xbd MOV F, S1S2 0101_101 1 0xad MOV S3, F 0110_110 1 0xb6 MOV S3, S1S2 0101_110 1 0xae