RCA (CDP) 1802 (also known as RCA COSMAC , COSMAC 1802 ) is an 8-bit microprocessor introduced by Radio Corporation of America (RCA) in the spring of 1976 . It continues to be produced by Intersil Corporation . The processor architecture is significantly different from most other 8-bit processors.
Frequently indicated in the designation, the letters RCA in the name are an abbreviation of the name of the manufacturer and are not part of its present designation CDP 1802. There is also the abbreviation COSMAC ( CO mplementary S ilicon M et a l-oxide C onductor ), which RCA used as the name chip manufacturing technology that later became known as CMOS . The processor 1802 is one of the first to be made using this technology.
The main developer of the processor was Joe Weisbecker, the development team was led by Jerry Herzog.
Content
Description
The processor is a single-chip implementation of the earlier dual-chip RCA 1801 processor (introduced in 1975) with a number of add-ons, but retains backward compatibility . A static CMOS design that does not have a minimum clock speed allows the processor to operate at very low frequencies with very low power consumption . The external address bus is 8-bit, multiplexing is used (the highest and lowest address bytes are issued to the external bus in turn).
Compared to most other processors of the same class, the RCA 1802 had a low speed. One machine cycle is performed in eight cycles. Most instructions consist of two machine cycles. At a clock frequency of 1.7 MHz (1,700,000 Hz), the average speed will be about 106,000 instructions per second.
Applications
Since the beginning of the release of CDP 1802, a version made using silicon on sapphire (SPS) technology, which is highly resistant to radiation and electrostatic discharges, has also been produced. Together with low power consumption, these properties made the processor well suited for use in spacecraft . At that time, there were very few radiation resistant processors.
The processor 1802 was used in the Galileo spacecraft [1] , and was also widely used in artificial Earth satellites . It is mistakenly believed that the 1802 processor was used in the Voyager-1 and Viking spacecraft. In fact, at the time of the development of these spacecraft (1970-1974), this processor was not available, and computers were executed on CMOS microcircuits of small and medium degree of integration [2] . All processors used in space were issued with military acceptance and worked in the temperature range from β55 to +125 Β° C.
Based on the 1802 processor, several early microcomputers were developed, including Comx-35 , COSMAC ELF , COSMAC VIP , ELF II , SuperELF , Finnish Telmac 1800 and Oscom Nano , Yugoslav Pecom 32 and 64 , as well as the RCA Studio II game console .
The first high-level programming language available for 1802 was the Forth version of Forth, Inc. in 1976.
Device
An important feature of the processor is a register file consisting of sixteen 16-bit registers . Any of them can be used as a pointer to the current command (selected by the SEP command) or an index register (selected by the SEX command). Register R0 has a special purpose and stores the address used by the built-in simple controller for direct access to memory .
The processor does not have the usual call and return commands from the subroutine (CALL and RET) and stack support. The ability to place the current command pointer in any register allows you to implement unusual ways of calling subprograms, however, mostly suitable for small programs. The addresses of several commonly used routines can be placed in several registers, and the call and return from routines can be performed using the SEP command. When executing the SEP command, before selecting a new register, the address in the current used register is increased, which makes it easy to implement a return to the desired location. It can also be arranged to call two or more routines in a cyclic mode. This was often used in amateur computers when displaying graphics, for fourfold duplication of lines. Calling routines at computed addresses is straightforward, since all CALL commands use the indexing addressing model.
In addition to conditional jump commands, there are also conditional skip commands for the next command.
The processor has five special I / O lines. One of the lines, Q, is the output port; its state is set by the SEQ and REQ commands. The other four lines are input ports. Their status is displayed by the flags EF1, EF2, EF3, EF4, which can be interrogated by eight special conditional branch commands. These I / O lines have been used extensively in processor-based systems. In particular, in amateur computers, the Q line could simultaneously control the LED status indicator, the output of the tape recorder interface, RS-232 interface and a loudspeaker (in this case, the loudspeaker reproduced sound during data transfer).
Modifications
Two processor modifications were released that had different maximum clock speeds - 1802A (3.2 MHz) and 1802B (5 MHz). The case used was DIP40 .
RCA also released the CDP1804, CDP1805, and CDP1806 microcontrollers based on the 1802 kernel. They have 64 bytes of internal RAM , a clock , an 8-bit timer, and 32 additional commands, including call and return commands from routines. The CDP1804 also has a built-in 2KB ROM .
Intersil has released a number of 1802A and 1802B modifications in plastic and ceramic DIP, as well as in PLCC .
Sources
See also
- RCA CDP1861 - video controller chip from the 1802 support chipset
Links
- White Papers ( PDF )
- COSMAC ELF Computer Site (English)
- Spare Time Gizmos ELF 2K (English)
- ELF computer emulation and 1802 processor (eng.)
- A Short Course in Programming (1980 article, RCA 1802 assembler basics )
- Home-made computer based on RCA 1802 and the Forth language
- Cosmicos 1802 Computer