The Intel 8085
is an 8-bit microprocessor
introduced by Intel
in 1977. It was binary-compatible with the more-famous Intel 8080
but required less supporting hardware, thus allowing simpler and less expensive microcomputer
systems to be built.
The "5" in the model number came from the fact that the 8085 required only a +5-volt (V) power supply rather than the +5V, -5V and +12V supplies the 8080 needed. Both processors were sometimes used in computers running the CP/M operating system, and the 8085 later saw use as a microcontroller (much by virtue of its component count reducing feature). Both designs were eclipsed for desktop computers by the compatible but more capable Zilog Z80, which took over most of the CP/M computer market as well as taking a large share of the booming home computer market in the early-to-mid-1980s. The 8085 had a very long life as a controller. Once designed into such products as the DECtape controller and the VT100 video terminal in the late 1970s, it continued to serve for new production throughout the life span of those products (generally many times longer than the new manufacture lifespan of desktop computers).
The 8085 Architecture follows the von Neumann architecture
, with a 16-bit address bus, and a 8-bit data bus. The 8085 incorporated all the features of the 8224 (clock generator) and the 8228 (system controller), increasing the level of system integration. The 8085 along with an 8156 RAM and 8355/8755 ROM/PROM constituted a complete system. The 8085 used a multiplexed Data Bus and required the 825X-5 support chips. The address was split between the 8-bit address bus and 8-bit data bus. The on-chip address latch of 8155/8355/8755 memory chips allowed a direct interface with the 8085. The processor was designed using NMOS circuitry and the later "H" versions were implemented in Intel's enhanced NMOS process called HMOS, originally developed for fast static RAM products. The 8085 used 6,500 transistors
The 8085 can access 216
(= 65,536) individual 8-bit memory locations, or in other words, its address space is 64 KB
. Unlike some other microprocessors of its era, it has a separate address space for up to 28
(=256) I/O ports. It also has a built in register array which are usually labeled A (Accumulator), B, C, D, E, H, and L. Further special-purpose registers are the 16-bit Program Counter (PC), Stack Pointer (SP), and 8-bit flag register F. The microprocessor has three maskable interrupts (RST 7.5, RST 6.5 and RST 5.5), one Non-Maskable interrupt
(TRAP), and one externally serviced interrupt (INTR). The RST n.5 interrupts refer to actual pins on the processor-a feature which permitted simple systems to avoid the cost of a separate interrupt controller chip.
- Address bus - 16 line bus accessing 216 memory locations (64 KB) of memory.
- Data bus - 8 line bus accessing one (8-bit) byte of data in one operation. Data bus width is the traditional measure of processor bit designations, as opposed to address bus width, resulting in the 8-bit microprocessor designation.
- Control buses - Carries the essential signals for various operations.
Intel produced a series of development systems for the 8080 and 8085, known as the Personal Development System. The original PDS was a large box (in the Intel corporate blue colour) which included a CPU and monitor, and used 8 inch floppy disks. It ran the ISIS
operating system and could also operate an emulator
pod and EPROM
programmer. The later iPDS was a much more portable unit featuring a small green screen and a 5¼ inch floppy disk drive, and ran the ISIS-II operating system. It could also accept a second 8085 processor, allowing a limited form of multi-processor operation where both CPUs
shared the screen, keyboard and floppy disk drive. In addition to an 8080/8085 assembler, Intel produced a number of compilers including PL/M-80
languages, and a set of tools for linking and statically locating programs to enable them to be burnt into EPROMs
and used in embedded systems
The 8085 as designed was upward-compatible in instruction set to the 8080, but had extensions to support new hardware (principally the RST n.5 interrupts as well as integration and electrical enhacements) and to provide more efficient code. The hardware support changes were announced and supported, but the software upgrades were not supported by the assembler, user manual or any other means. At times it was claimed they were not tested when that was false.
The 8085 can accommodate slower memories through externally generated Wait states (pin 35, READY), and also has provisions for Direct Memory Access (DMA) using HOLD and HLDA signals (pins 39 and 38). An improvement over the 8080 is that the 8085 can itself drive a piezoelectric crystal directly connected to it, and a built in clock generator generates the internal high amplitude two-phase clock signals at half the crystal frequency (a 6.14 MHz crystal would yield a 3.07 MHz clock for instance).
For the extensive use of 8085 in various applications,the microprocessor is provided with an instruction set which consists of various instructions such as MOV, ADD, SUB, JMP etc. These instructions are written in the form of a program which is used to perform various operations such as branching, addition, subtraction, bitwise logical and bit shift operations. More complex operations and other arithmetic operations must be implemented in software. For example, multiplication is implemented using a multiplication algorithm.
The 8085 processor has found marginal use in small scale computers up to the 21st century. The TRS-80 Model 100 line uses a 80C85. The CMOS version 80C85 of the NMOS/HMOS 8085 processor has/had several manufacturers, and some versions (eg. Tundra Semiconductor Corporation's CA80C85B) have additional functionality, eg. extra machine code instructions. One niche application for the rad-hard version of the 8085 has been in on-board instrument data processors for several NASA and ESA space physics missions in the 1990s and early 2000s, including CRRES, Polar, FAST, Cluster, HESSI, Sojourner (rover) , and THEMIS. The Swiss company SAIA used the 8085 and the 8085-2 as the CPUs of their PCA1 line of programmable logic controllers during the 1980s.
The 8085 CPU was only one part of a much larger family of chips developed by Intel, for bulding a complete system.
Although the 8085 CPU itself was not a great success, many of these support chips (or their descendents) later found their use in combination with the 8086
microprocessor, and are still in use today, although not as the chips themselves, but with their equivalent functionality embedded into larger VLSI
chips, namely the "Southbridge
" chips of modern PCs.
- 8007-Ram controller
- 8155-RAM+ 3 I/O Ports+Timer
- 8156-RAM+ 3 I/O Ports+Timer
- 8202-Dynamic RAM Controller
- 8203-Dynamic RAM Controller
- 8205-1 Of 8 Binary Decoder
- 8206-Error Detection & Correction Unit
- 8207-DRAM Controller
- 8210-TTL To MOS Shifter & High Voltage Clock Driver
- 8212-8 Bit I/O Port
- 8216-4 Bit Parallel Bidirectional Bus Driver
- 8218/8219-Bus Controller
- 8222-Dynamic RAM Refresh Controller
- 8226-4 Bit Parallel Bidirectional Bus Driver
- 8231-Arithmetic Processing Unit
- 8232-Floating Point Processor
- 8237-DMA Controller
- 8251-Communication Controller
- 8253-Programmable Interval Timer
- 8254-Programmable Interval Timer
- 8255-Programmable Peripheral Interface
- 8256-Multifunction Support Controller
- 8257-DMA Controller
- 8259-Programmable Interrupt Controller
- 8271-Programmable Floppy Disk Controller
- 8272-Single/Double Density Floppy Disk Controller
- 8273-Programmable HDLC/SDLC Protocol Controller
- 8274-Multi-Protocol Serial Controller
- 8275-CRT Controller
- 8276-Small System CRT Controller
- 8278-Programmable KeyBoard Interface
- 8279-KeyBoard/Display Controller
- 8282-8-bit Non-Inverting Latch with Output Buffer
- 8283-8-bit Inverting Latch with Output Buffer
- 8291-GPIB Talker/Listener
- 8292-GPIB Controller
- 8293-GPIB Transceiver
- 8294-Data Encryption/Decryption Unit+1 O/P Port
- 8295-Dot Matrix Printer Controller
- 8296-GPIB Transceiver
- 8297-GPIB Transceiver
- 8355-16,384-bit (2048 x 8) ROM with I/O
- 8604-4096-bit (512 x 8) PROM
- 8702-2K-bit (265 x 8 ) PROM
- 8755-EPROM+2 I/O Ports
In many engineering schools in Turkey
, Republic of Macedonia
, the 8085 processor is popularly used in many introductory microprocessor courses (as is for example also illustrated by the comprehensiveness and quality of non-English Wikipedia entries about the 8085, e.g. in German
8085 simulators exist aplenty for educational use. Freely available open source variants include GNUSim8085
, which runs on Linux
working on both, Linux and Windows.
Closed source freeware simulators for the Microsoft Win32 platform include Win85
(which also emulates undocumented operations of the chip) and Sim8085