General Instrument CP1600
One of the first single-chip 16-bit microprocessors, resembling the PDP-11.
The General Instrument CP1600 is a 16-bit microprocessor introduced in February 1975, developed in partnership with Honeywell. It is notable as one of the first single-chip 16-bit processors, with a design that strongly resembles the PDP-11.
- Introduced
- February 1975
- Bit width
- 16-bit
- Package
- 40-pin DIP
- Power supplies
- +12, +5, and −3 V
- Maximum clock speed
- 5 MHz
- Addressable memory
- 64K words (128 kbytes)
- Number of registers
- 8 × 16-bit
Lore & Background
The CP1600 was implemented in enhancement mode nMOS and required +12, +5, and −3 V power supplies, with TTL-compatible I/O except for clocks. It used a multiplexed data and address bus to fit into a 40-pin DIP, requiring two bus cycles and external latches. The processor had a complex bus interface with three status pins (BDIR, BC1, BC2) that had to be decoded. A distinctive feature was the 'external branch' concept: the BEXT instruction allowed the programmer to set bits on external pins (EBCA0–EBCA3) to select one of up to 16 devices, which could then set the EBCI line to trigger a branch. This contrasted with typical interrupt handling, allowing device selection in fewer instructions.
The CP1600 used 10-bit instructions out of 16-bit opcodes, with the remaining 6 bits marked 'Future Use' and intended for co-processors. General Instrument produced special 10-bit ROMs to avoid wasting memory, and included an SDBD instruction to assemble 16-bit values from two 10-bit reads. The system had 87 basic instructions, an 8-bit ALU, and eight 16-bit registers: R0 as primary accumulator, R1–R3 as data pointers, R4–R5 with autoincrement, R6 as stack pointer, and R7 as program counter. Stack operations were simulated through register behavior.
Memory-mapped I/O was used, but the multiplexed bus made implementation difficult. General Instrument supplied 164x series I/O chips (e.g., 1641 keyboard controller, 1643 cassette controller, 1647 display control) that handled bus logic. The 1640 Programmable Interface Controller (PIC) acted as a channel controller with its own processor for I/O and DMA. GI also provided cross-assemblers, simulators, and the GIC1600 microcomputer system.
Reader's Guide
The CP1600's significance lies in its early adoption of a 16-bit single-chip design and its architectural resemblance to the PDP-11, which influenced its register set and instruction style. However, its commercial impact was limited by General Instrument's marketing philosophy, which focused on very large orders and ignored smaller customers, and by the lack of a second source arrangement—a requirement for many potential buyers in the early microprocessor market. The most widespread use of the architecture was the CP1610 variant, a slower version running at about 2 MHz, which powered the Intellivision video game console and the Champion 2711. The CP1600's complex bus interface and need for external support chips (latches, decoders, and dedicated I/O controllers) increased system cost and complexity, hindering broader adoption. Its external branch feature was an innovative approach to device handling, but the overall design required significant additional logic. The processor's legacy is thus tied more to its niche in early gaming and process control than to general-purpose computing, and it serves as an example of the challenges faced by early 16-bit microprocessors in gaining market traction.
Did You Know?
- The CP1600 was one of the first single-chip 16-bit processors, introduced in February 1975.
- Its design strongly resembles the PDP-11, including eight 16-bit registers with R6 as stack pointer and R7 as program counter.
- The CP1600 used 10-bit instructions out of 16-bit opcodes, with 6 bits reserved for future co-processor use.
- The CP1610 variant, running at about 2 MHz, was used in the Intellivision video game console.
More in Microprocessors 1-24
Spotted an error? Know more?
Reader corrections go straight into our review queue. Suggest an edit · How this site is sourced
