KR580VM80A is an 8-bit microprocessor . The KR580VM80A microcircuit is a functionally complete single-chip parallel microprocessor with a fixed system of instructions; it is used as a central processor in data processing and control devices.
| KR580VM80A | |
|---|---|
| CPU | |
Microprocessor 580VM80, Quasar plant | |
| Production | from 1977 to the mid- 1990s |
| Manufacturer | the USSR |
| CPU frequency | 2-2.5 MHz |
| Production technology | 6 microns |
| Connector | 2123.40-2 |
The microprocessor has a separate 16-bit address channel and an 8-bit data channel . The address channel provides direct addressing of external memory up to 65536 bytes, 256 input devices and 256 output devices.
This is a functional analog of the Intel i8080A microprocessor ( 1974 ). There was also an earlier version of the microprocessor - K580IK80, produced in a planar case.
The microprocessor is the main element of the microprocessor kit series KR580 . Development of the Kiev Research Institute of Microdevices, the head of the direction is A. Kobylinsky
Content
Features
The processor contains 4758 transistors [1] using 6 μm n-MIS technology .
The nominal clock frequency for the K580IK80 processor is 2 MHz, for the KR580IK80A and KR580VM80A up to 2.5 MHz (theoretically it allows you to work at a higher frequency). Each command is executed in 1 ... 5 machine cycles , each of which consists of 3 ... 5 cycles . The minimum execution time for simple commands is 4 measures. Thus, the processor performance is estimated at 625 thousand op / s at a frequency of 2.5 MHz.
The 16-bit address bus (provides direct addressing of external memory of up to 64 KB and 256 input / output devices) and the 8-bit microprocessor data bus are separate.
Arithmetic Logic Device
The 8-bit ALU provides the ability to perform four arithmetic operations , four types of logical , as well as four types of cyclic shift . When performing these operations, one of the operands is the contents of the battery and the result of the operation is placed in the battery. A cyclic shift is performed only on the contents of the battery. It is possible to perform arithmetic operations on decimal numbers .
Buffers and Registers
Data buffers and address buffers provide communication between the central processor and external data and address buses . Using buffers with three states allows the processor to disconnect from external buses, making them available to external devices, and also allows you to use the same bus both for receiving data and for transmitting.
Data registers
The structure of the block of registers includes:
- 16-bit address register (PC),
- 16-bit stack pointer register (SP),
- 16-bit increment-decrement scheme
- and six 8-bit general purpose registers (RON) - B, C, D, E, H, L which can also be used as three 16-bit registers - BC, DE, HL.
Seven 8-bit registers are provided for storing data involved in operations.
- Register A , called the accumulator , is intended for exchanging information with external devices; when performing arithmetic, logical, and shift operations, it serves as the source of the operand, and the result of the performed operation is placed in it.
- Six other registers, designated B , C , D , E , H and L , form the so-called block of general purpose registers RON . These registers can be used as single 8-bit registers. In cases where it becomes necessary to store 16-bit binary numbers, they are combined in pairs BC , DE and HL .
Register of signs (RP) - 5-bit register is intended to indicate the results of certain operations. Five triggers of this register have the following purpose:
- Z - zero result trigger
- CY - High Transfer Transfer Trigger
- S - sign trigger
- P - parity trigger
- C ( AC ) - trigger auxiliary transfer from the third category
The first byte of the instruction containing the opcode is received in the instruction register .
The stack pointer is used to address a special type of memory called the stack, which stores the addresses of the return to interrupted routines.
The instruction counter (addresses) indicates the address where the next byte of the instruction is in memory.
Options
Originally produced under the name K580IK80 (without the letter A), it is a functional analogue of the i8080 in a 48-pin planar metal-ceramic case .
Since 1977 [2] it was produced in various versions (the earliest of the references was used in the prototype computer SM1800 , 1979 ).
Subsequently, an option for widespread use was released, the KR580IK80A, compatible with the i8080A - in a standard plastic case 2123.40-1 (analog of PDIP40 ), with a pin matching the original i8080A. In 1986 , after changing the Soviet system for designating microcircuits (GOST 18682-73), the KR580VM80A, which became most famous, became known.
It differs from the original i8080A in the internal wiring and location of the contact pads [3] .
In addition to the processor KP580VM80A, oriented to widespread use, a “military version” was produced - 580VM80 (without the letters K and A). It was distinguished by its performance in a ceramic-metal case 2123.40-6 (analogue of CDIP40 ), and was a functional analogue of i8080 (clock frequency - 2 MHz). The topology of the 580BM80 crystal is also different [4] .
Produced at the Crystal NGO ( Kiev , Ukraine) and at the Dnipro plants ( Kherson , Ukraine), Kvantor (Ternopil Oblast, Ukraine), Rodon ( Ivano-Frankivsk , Ukraine) , “Quasar” ( Kiev , Ukraine), “Electronpribor” ( Fryazino , Russia).
Features
To generate clock signals according to the specification, it was recommended to use an external chip KR580GF24 .
Like the predecessor 580IK80, the processor required three power supplies: −5V, + 12V and + 5V, but could operate from a single + 5V supply when supplying + 5V instead of + 12V and ground instead of −5V and lowering the clock frequency below 2 MHz (undocumented feature).
Also, by rejecting the chips, it was possible to select processors that stably operate at a frequency of 3 MHz. Such processors were used in the Vector-06C computer.
KR580VM80A has 12 undocumented teams (similar to 8080). Opcodes # 08, # 10, # 18, # 20, # 28, # 30, # 38 are analogues of the NOP operation; The #CB opcode is an analogue of JMP; opcodes #DD, #ED, #FD are analogs of CALL; opcode # D9 is an analog of RET.
In the Radio 86RK computer, the interrupt enable output was used as a single-bit output port for sound generation.
When working with the stack (PUSH and POP commands), the signal D2 = 1 was set on the processor data bus at the beginning of each machine cycle. This allowed you to switch the stack to another memory bank, expanding the addressable memory size of more than 64 KB.
Operations with the stack made it possible to clear (PUSH command - 11 cycles) with a speed of up to 440 KB / sec or fill the memory with an arbitrary code (many code repeats LXI D, # FFFF; PUSH D; - 21 cycles) up to 232 KB / sec at a frequency of 2, 5 MHz. Non-standard use of the stack was used when working with the screen (the maximum size of the graphic screen - 48 KB on this processor was on the PC Corvette PC8010 / PC8020 ).
Further Development
KR580VM1
There is also a microprocessor KP580VM1 [5] , [6] - a significantly improved and faster version of KP580VM80A. There are no direct foreign analogues. Native single power +5 V. Frequency up to 5 MHz. Produced at the Kiev factory "Quasar."
The processor allows you to address memory up to 128 K, while the memory consists of two banks - the primary and secondary . The main bank can be used to store data and sample commands, and the additional bank can only be used to store data. The SMF0 and SMF1 commands set the current bank. The bank number is displayed in the processor status word.
The KP580VM1 command system has been expanded compared to the KP580VM80A. There are several new commands, and prefixes have also been introduced. The MB memory bank replacement prefix (opcode 28H) allows you to temporarily switch the memory bank; the RS set replacement prefix (opcode 38H) allows you to use an alternative pair of H1L1 registers. The CS prefix (the same opcode 28H) modifies the action of the DAD, DSUB, DCMP commands [7] .
The IC operates in two modes: mode 0 - the usual emulation mode (the CO pin is connected to the “common” pin) is used when working in uniprocessor systems, implements memory addressing up to 64 Kb and up to 256 input / output devices, as well as data exchange via 8- bit data channel, mode 1 - advanced mode for the direct generation of exchange control signals (the CO terminal is connected to the +5 V terminal) are used in multiprocessor systems with complex configurations and implement memory addressing up to 128 KB. "When the IC is in mode 0, terminals 15 and 28 must stay with C0 - 11 pin 15 - sign of access to the air-blast and memory IO / M 28 - memory expansion EXM
IM1821VM85A
As with the original Intel 8080, further development was the release of the Intel 8085 “clone”. In the USSR, it was called IM1821VM85A and IKR1821VM85A .
Usage
At one time, this processor has gained wide popularity for building various controllers, terminals and personal computers, for example:
- Micro 80
- Radio 86RK
- K.001. Don
- Orion 128
- Mikrosha
- Apogee BK-01
- Bashkiria-2M
- Vector-06Ц
- Intellect-02 ( chess computer )
- Irisha
- Corvette PK8010 / PK8020
- Lviv PK-01
- Partner 01.01
- PK8000 (Sura, Vesta, Hobby)
- SM-1800
- Specialist
- Spark-1080 Tartu
- Ocean-240
- UT-88
- Krista-1 / Krista-2
- Controller REMICONT.
It was also used in a number of Soviet gaming machines , for example, in TIA-MTs-1 , musical synthesizers (Formanta, Maestro, Arton VS-34, Salmafon), computer peripherals (printer Electronics MS-6312 ”, MS6304, UVVCHR, etc.), measuring instruments, etc. Small-scale applications are known in early versions of telephones with automatic caller ID.
See also
- Microprocessor set of the КР580 series
Notes
- ↑ Mikhail Svarichevsky. Reverse engineering KP580VM80A / i8080 completed . Habrahabr (February 3, 2015). Date of treatment February 19, 2015.
- ↑ 1977 chip photos
- ↑ KR580IK80A: Weekend photo
- ↑ KR580VM80A: Weekend photo
- ↑ spensor. Speccy is our choice! → ZX Spectrum Hardware → Unsorted Mysterious percent of KR580VM1 . zx.pk.ru (February 24, 2005, 17:18). Date of treatment June 15, 2009. Archived August 23, 2011.
- ↑ A. V. Kobylinsky, V. V. Bestenkov, E. Ya. Stolyarov, V. A. Temchenko “8-bit microprocessor KP580VM1”
- ↑ Command system (Assembler) of the microprocessor КР580ВМ1
Literature
- A.V. Kobylinsky et al. 3.1. Chip KR580VM80A // Microprocessors and microprocessor sets of integrated circuits: Reference. In 2 volumes / ed. V.A. Shakhnova .. - M .: Radio and communications, 1988. - T. 1. - P. 55-66. - 368 p. - 100,000 copies. - ISBN 5-256-00371-2 .
- Myachev A.A., Stepanov V.N. Personal computers and Microcomputers. Organization Basics. - M .: Radio and communications, 1991 .-- S. 31-37. - 320 p. - ISBN 5-256-00406-9 .
- Samofalov K.G., Viktorov O.V. Microprocessors. - 2nd ed., Revised. and additional .. - K .: Technique, 1989. - S. 25-54. - 312 p. - (Library of the engineer).
- Kurina. A skyscraper on a clay foundation // UPgrade : magazine. - 2011. - No. 9 (513) . - S. 20-25 . - ISSN 1680-4694 .