Citizendia

The RCA (CDP)1802 (aka RCA COSMAC*, COSMAC 1802) is an 8-bit CMOS microprocessor (µP) introduced by RCA in early 1976, and currently being manufactured by Intersil Corporation. Eight-bit CPUs normally use an 8-bit data bus and a 16-bit address bus which means that their Address space is limited to 64 KBs This is not a "natural Complementary metal–oxide–semiconductor ( CMOS) (pronounced "see-moss" siːmɔːs ˈsiːmɒs is a major class of Integrated circuits CMOS technology A microprocessor incorporates most or all of the functions of a Central processing unit (CPU on a single Integrated RCA Corporation, founded as Radio Corporation of America, was an electronics company in existence from 1919 to 1986 Year 1976 ( MCMLXXVI) was a Leap year starting on Thursday (link will display full calendar of the Gregorian calendar. Year 2005 ( MMV) was a Common year starting on Saturday (link displays full calendar of the Gregorian calendar. Intersil Corporation specializes in the design and manufacture of high-performance analog Semiconductors for four high-growth markets — Communications Computing High End The 1802 has an architecture quite different from most other 8-bit microprocessors.

(* COSMAC is an acronym for COmplementary Silicon Metal-oxide Conductor, which was RCA's term for its first CMOS (COS/MOS) semiconductor technology. A semiconductor' is a Solid material that has Electrical conductivity in between a conductor and an insulator; it can vary over that )

Contents

Introduction

The RCA 1802—which is actually the one-chip implementation of the earlier two-chip RCA 1801—has a static CMOS design with no minimum clock frequency, so that it can be run at very low speeds and low power. Complementary metal–oxide–semiconductor ( CMOS) (pronounced "see-moss" siːmɔːs ˈsiːmɒs is a major class of Integrated circuits CMOS technology In Electronics and especially synchronous Digital circuits a clock signal is a signal used to coordinate the actions of two or more circuits It has an 8-bit parallel bus with a bidirectional data bus and a multiplexed address bus (i. In Computer architecture, a bus is a subsystem that transfers data between computer components inside a Computer or between computers An address bus is a Computer bus, controlled by CPUs or DMA -capable Peripherals for specifying the Physical addresses of computer e. , the high order byte of the 16-bit address and the low order byte of the address take turns in using the 8-bit physical address bus lines, by accessing the bus lines in different clock cycles). It has a single bit, programmable output port, and four input pins which are directly tested by branch instructions. A bit is a binary digit, taking a value of either 0 or 1 Binary digits are a basic unit of Information storage and communication An instruction set is a list of all the instructions and all their variations that a processor can execute Its I/O mode is flexible and programmable, and it has a single-phase clock with an on-chip oscillator. In Computing, input/output, or I/O, refers to the communication between an Information processing system (such as a Computer) and the outside Oscillation is the repetitive variation typically in Time, of some measure about a central value (often a point of Equilibrium) or between two or more different states Its register set consists of sixteen 16-bit registers. In Computer architecture, a processor register is a small amount of storage available on the CPU whose contents can be accessed more quickly than storage The program counter (PC) can reside in any of these, providing a simple way to implement multiple PCs, pointers, or registers. The program counter, or shorter PC (also called the instruction pointer, part of the instruction sequencer in some Computers is a register in

Applications

From the outset the 1802 has also been available fabricated in Silicon on Sapphire semiconductor process technology, which gives it a degree of resistance to radiation and electrostatic discharge (ESD). Silicon on sapphire (SOS is a hetero-epitaxial process for Integrated circuit manufacturing that consists of a thin layer (typically thinner than 0 Radiation hardening is a method of designing and testing electronic components and systems to make them resistant to damage or malfunctions caused by high-energy Subatomic particles Electrostatic discharge ( ESD) is the sudden and momentary Electric current that flows between two objects at different Electrical potentials The term is Along with its extreme low-power abilities, this makes the chip well-suited in space applications (also, at the time the 1802 was introduced, very few, if any, other radiation-hardened microprocessors were available in the market). The 1802 was used in the Voyager, Viking, and Galileo spacecraft, and has been widely used in Earth-orbiting satellites. See also Voyager 1 and Voyager 2. The Voyager program consists of a pair of unmanned scientific probes Voyager 1 and NASA 's Viking program consisted of a pair of space probes sent to Mars, Viking 1 and Viking 2. Galileo was an Unmanned spacecraft sent by NASA to study the Planet Jupiter and its moons Named after the Astronomer This article is about artificial satellites For natural satellites also known as moons see Natural satellite. The Voyager spacecraft have three 1802s running at 6. The Voyager 1 spacecraft is a 722-kilogram robotic Space probe of the outer Solar system and beyond launched September 5, MHz. The hertz (symbol Hz) is a measure of Frequency, informally defined as the number of events occurring per Second. All these CPUs sent to space were operating at full military specification temperatures (-55 to +125 °C). A United States Defense Standard, often called a military standard, " MIL-STD " or " MIL-SPEC " is used to help achieve standardization

The 1802 was also used in ACAL, a microprocessor based system for the detection of gasses in chemical warfare. ACAL was designed by Oldelft / Delft Instruments, a Dutch company in the military & defence business. ACAL only got as far as prototype stage and never made production.

Commercial applications included the MIL Key building access control system, made in Australia, and marketed by Philips in Europe in the 1980s.

A number of early microcomputers were based on the 1802, including the Comx-35, COSMAC ELF, COSMAC VIP, ELF II, SuperELF, Finnish Telmac_1800 and Yugoslav Pecom 32 and 64, as well as the RCA Studio II video game console (one of the first consoles to use bitmapped graphics). The COMX-35 was a Home computer that was one of the very few systems to use the RCA 1802 Microprocessor, the same microprocessor that is also used The COSMAC ELF was an RCA 1802 microprocessor-based computer based on a series of construction articles in Popular Electronics Magazine in 1976 The COSMAC VIP (1977 was an early Microcomputer that was aimed at Video games For a price of US$275 it could be purchased from RCA by Mail order The Netronics ELF II was an early microcomputer trainer kit introduced about 1977 featuring an RCA 1802 microprocessor 256 bytes of RAM, 0 bytes of ROM The Telmac 1800 was an early Microcomputer delivered in kit form The Socialist Federal Republic of Yugoslavia (SFRY was a socialist country that existed in the second half of the 20th century Pecom 32 was an Educational and/or home Computer developed by Elektronska Industrija Niš of Serbia in 1985. Pecom 64 was an Educational and/or home Computer developed by Elektronska Industrija Niš of Serbia in 1985. The RCA Studio II is a Videogame console made by RCA that debuted in January 1977. In Computer graphics, a bitmap or pixmap is a type of memory organization or Image file format used to store Digital images The

The first high-level language available for the 1802 was Forth, provided by Forth, Inc. Forth is a structured, imperative, stack-based, computer Programming language and programming environment in 1976.

Technical description

Registers and I/O

An important feature of the 1802 is the register file of sixteen registers of 16 bits each. Using the SEP instruction, you can select any of the 16 registers to be the program counter; using the SEX instruction, you can select any of the 16-bit registers to be the index register. The program counter, or shorter PC (also called the instruction pointer, part of the instruction sequencer in some Computers is a register in The acronym SEX (written in capital letters redirects here For other meanings see Sex (disambiguation. An index register in a computer's CPU is a Processor register used for modifying Operand addresses during the run of a program typically for doing vector/ Register R0 has the special use of holding the memory address for the built-in DMA controller. Direct memory access ( DMA) is a feature of modern Computers and Microprocessors that allows certain hardware subsystems within the computer to access system

The processor has 5 special I/O lines. In Computing, input/output, or I/O, refers to the communication between an Information processing system (such as a Computer) and the outside There's a single Q output that can be set with the SEQ instruction and reset with the REQ instruction. There are four external flag inputs: EF1, EF2, EF3, EF4 and there are 8 dedicated branch instructions to conditionally branch based on the state of those input lines. The EF and Q lines were typically overused on RCA 1802 based hobbyist computers because of the lines' favorable handling. It was typical for the Q line to drive a status LED, a cassette interface, an RS-232 interface, and the speaker. The Compact Cassette, often referred to as audio cassette, cassette tape, cassette, or simply tape, is a Magnetic tape sound In Telecommunications, RS-232 (Recommended Standard 232 is a standard for serial binary data signals connecting between a DTE ( Data Terminal Equipment This meant that the user could actually hear RS-232 and cassette data being transmitted.

Subroutine calls

The processor does not have standard subroutine CALL immediate and RET instructions, though they can be emulated. The register file makes possible some interesting subroutine call and return mechanisms, though they are better suited to small programs than general purpose coding. A few commonly used subroutines can be called quickly by keeping their address in one of the 16 registers; the SEP instruction is used to call a subroutine pointed to by one of the 16 bit registers and another SEP to return to the caller. Before a subroutine returns, it jumps to the location immediately preceding its entry point so that after the SEP instruction returns control to the caller, the register will be pointing to the right value for next time. An interesting variation of this scheme is to have two or more subroutines in a ring so that they are called in round robin order. On early hobbyist computers, tricks like this were commonly used in the horizontal refresh interrupt to reprogram the scan line address to repeat each scan line 4 times for the video controller. Computed subroutine calls were no problem because all CALL instructions were indexed (some processors only had CALL immediate).

DMA; Clock cycles

The built-in DMA controller is typically used to load or view program memory, depending on the state of the write enable signal, after the processor has been reset but still being held in a special wait state. Direct memory access ( DMA) is a feature of modern Computers and Microprocessors that allows certain hardware subsystems within the computer to access system

Clock cycle efficiency is poor in comparison to most other similar processors. In Electronics and especially synchronous Digital circuits a clock signal is a signal used to coordinate the actions of two or more circuits Eight clock cycles makes up one machine cycle. Most instructions take two machine cycles to execute.

Support chips

Video

In early microcomputers the companion graphics Video Display Controller chip, CDP1861 for the NTSC video format, (CDP1864 variant for PAL), used the built-in DMA controller to display bitmapped graphics. 2D computer graphics is the Computer -based generation of Digital images mdashmostly from two-dimensional models (such as 2D geometric models text and digital A Video Display Controller or VDC is an Integrated circuit which is the main component in a Video signal generator, a device responsible for the production NTSC ( National Television System Committee) is the Analog television system used in the United States, Canada, Japan, Mexico PAL, short for Phase Alternating Line, is a colour -encoding system used in Broadcast television systems in large parts of the world In Computer graphics, a bitmap or pixmap is a type of memory organization or Image file format used to store Digital images The

The 1861 chip could display 64 pixels horizontally and 128 pixels vertically, though by reloading the R0 register, the resolution could be reduced to 64×64 or 64×32 to use less memory or to make square pixels. In Digital imaging, a pixel ( pict ure el ement is the smallest piece of information in an image Since the frame buffer was similar in size to the memory size, it was not unusual to display your program/data on the screen allowing you to watch the computer "think" (i. e. process its data).

Programs which ran amok and accidentally overwrote themselves could be spectacular. Although the faster version of 1802 could operate at 5 MHz (at 5 V; it was faster at 10 V), it was usually operated at 3. 58 MHz/2 to suit the requirements of the 1861 chip which gave a speed of a little over 100,000 instructions per second.

Code samples

This code snippet tests ALU OPS, it is a diagnostic routine.

. .   TEST ALU OPS0000 90         GHI 0     . .  SET UP R60001 B6         PHI 60002 F829       LDI DOIT  . .  FOR INPUT OF OPCODE0004 A6         PLO 60005 E0         SEX 0     . .  (X=0 ALREADY)0006 6400       OUT 4,00  . .  ANNOUNCE US READY0008 E6         SEX 6     . .  NOW X=60009 3F09       BN4 *     . .  WAIT FOR IT000B 6C         INP 4     . .  OK, GET IT000C 64         OUT 4     . .  AND ECHO TO DISPLAY000D 370D       B4 *      . .  WAIT FOR RELEASE000F F860       LDI #60   . .  NOW GET READY FOR0011 A6         PLO 6     . .  FIRST OPERAND0012 E0         SEX 0     . .  SAY SO0013 6401       OUT 4,010015 3F15       BN4 *0017 E6         SEX 6     . .  TAKE IT IN AND ECHO0018 6C         INP 4     . .  (TO 0060)0019 64         OUT 4     . .  (ALSO INCREMENT R6)001A 371A       B4 *001C E0         SEX 0     . .  DITTO SECOND OPERAND001D 6402       OUT 4,02001F E6         SEX 60020 3F20 LOOP: BN4 *     . .  WAIT FOR IT0022 6C         INP 4     . .  GET IT (NOTE: X=6)0023 64         OUT 4     . .  ECHO IT0024 3724       B4 *      . .  WAIT FOR RELEASE0026 26         DEC 6     . .  BACK UP R6 TO 00600027 26         DEC 60028 46         LDA 6     . .  GET 1ST OPERAND TO D0029 C4   DOIT: NOP       . .  DO OPERATION002A C4         NOP       . .  (SPARE)002B 26         DEC 6     . .  BACK TO 0060002C 56         STR 6     . .  OUTPUT RESULT002D 64         OUT 4     . .  (X=6 STILL)002E 7A         REQ       . .  TURN OFF Q002F CA0020     LBNZ LOOP . .  THEN IF ZERO,0032 7B         SEQ       . .  TURN IT ON AGAIN0033 3020       BR LOOP   . .  REPEAT IN ANY CASE

External links

Minor parts of this article were originally based on material from the Free On-line Dictionary of Computing, which is licensed under the GFDL. Forth is a structured, imperative, stack-based, computer Programming language and programming environment The Free On-line Dictionary of Computing ( FOLDOC) is an online searchable encyclopedic Dictionary of Computing subjects The GNU Free Documentation License ( GNU FDL or simply GFDL) is a Copyleft License for free documentation designed by the Free Software


© 2009 citizendia.org; parts available under the terms of GNU Free Documentation License, from http://en.wikipedia.org
Dapyx Software network: MP3 Explorer | Ebook Manager | Zenithic