КР580ВМ80А
В этой статье может быть слишком много ссылок на другие статьи, и, возможно, их количество нужно сократить. |
КР580ВМ80А | |
---|---|
Центральный процессор | |
| |
Производство | с 1977 по середину 1990-х |
Производитель | |
Частота ЦП | 2—2,5 МГц |
Технология производства | 6 мкм |
Разъём | |
Ядра | |
КР580ВМ80А — 8-разрядный микропроцессор. Микросхема КР580ВМ80А — функционально законченный однокристальный микропроцессор с фиксированной системой команд, применяется в качестве центрального процессора в устройствах обработки данных и управления.
Микропроцессор имеет раздельные 16-разрядные шину адреса и 8-разрядную шину данных. Шина адреса обеспечивает прямую адресацию внешней памяти объёмом до 65536 байт, 256 устройств ввода и 256 устройств вывода.
Функциональный аналог микропроцессора Intel 8080A (1974 год). Также существовал более ранний вариант микропроцессора К580ИК80, выпускавшийся в 48-выводном корпусе.
Микропроцессор является основным элементом микропроцессорного комплекта серии КР580. Разработка Киевского НИИ микроприборов, руководитель направления — Кобылинский А. В.
Характеристики[править | править код]
Содержимое этого раздела нуждается в чистке. |
Процессор содержит 4758 транзисторов[1] по технологии 6 мкм n-МДП.
Максимальная гарантированная документацией тактовая частота для процессора КР580ВМ80А — 2,5 МГц. Каждая команда выполняется за 1-5 машинных циклов, каждый из которых состоит из 3-5 тактов. Минимальное время выполнения простых регистровых команд 4 такта. Таким образом максимальная производительность процессора оценивается в 625 тысяч операций в секунду.
16-разрядная шина адреса (обеспечивает прямую адресацию внешней памяти объёмом до 64 Кбайт и 256 устройств ввода-вывода) и 8-разрядная шина данных микропроцессора раздельные.
Арифметико-логическое устройство[править | править код]
В 8-разрядном АЛУ предусмотрена возможность выполнения четырёх арифметических операций, четырёх видов логических, а также четырёх видов циклического сдвига. При выполнении этих операций одним из операндов служит содержимое аккумулятора. Результат операции помещается в аккумулятор. Циклический сдвиг выполняется только над содержимым аккумулятора. Предусмотрена возможность выполнения арифметических операций над десятичными числами.
Буфера и регистры[править | править код]
Буфера данных и буфера адреса обеспечивают связь центрального процессора с внешними шинами данных и адреса. Использование буферов с тремя состояниями позволяет процессору отключаться от внешних шин, предоставляя их в распоряжение внешних устройств, а также позволяет использовать одну и ту же шину как для приёма данных, так и для передачи.
Регистры данных
В состав блока регистров входят:
- 16-разрядный регистр адреса (РС),
- 16-разрядный регистр указателя стека (SP),
- 16-разрядная схема инкремента-декремента,
- шесть 8-разрядных регистров общего назначения (РОН) — B, C, D, E, H, L, которые могут использоваться и как три 16-разрядных регистра — BC, DE, HL.
Для хранения участвующих в операциях данных предусмотрено семь 8-разрядных регистров:
- регистр А, называемый аккумулятором, предназначен для обмена информацией с внешними устройствами, при выполнении арифметических, логических операций и операций сдвига он служит источником операнда, в него помещается результат выполненной операции.
- шесть других регистров, обозначенных B, C, D, E, H и L, образуют так называемый блок регистров общего назначения РОН. Эти регистры могут использоваться как одиночные 8-разрядные регистры. В случаях, когда возникает необходимость хранить 16-разрядные двоичные числа, они объединяются в пары BC, DE и HL.
Регистр признаков (РП) — 5-разрядный регистр предназначен для индикации результатов выполнения некоторых операций. Пять триггеров этого регистра (часто называемые флагами результата) имеют следующее назначение:
- Z — триггер нулевого результата
- CY — триггер переноса из старшего разряда
- S — триггер знака
- P — триггер четности
- С (AC) — триггер вспомогательного переноса из третьего разряда
В регистр команд поступает первый байт команды, содержащий код операции.
Указатель стека служит для адресации особого вида памяти, называемого стеком, в котором хранятся адреса возврата к прерванным подпрограммам.
Счётчик команд (адреса) указывает адрес, где находится в памяти очередной байт команды.
Варианты[править | править код]
Изначально процессор выпускался под названием К580ИК80 (без буквы А), представляя собой функциональный аналог i8080 в 48-выводном планарном металлокерамическом корпусе.
С 1977 года[2] выпускался в различных вариантах (наиболее раннее из упоминаний — использован в прототипе компьютера СМ1800, 1979 год).
Впоследствии был выпущен вариант для широкого применения, КР580ИК80А, совместимый с i8080A — в стандартном пластиковом корпусе 2123.40-1 (аналог PDIP40), с цоколёвкой, соответствующей оригинальному i8080A. В 1986 году, после изменения советской системы обозначений микросхем (ГОСТ 18682-73), стал именоваться КР580ВМ80А, получивший наибольшую известность.
От оригинального i8080A отличается внутренней разводкой и расположением контактных площадок[3].
Помимо процессора КР580ВМ80А, ориентированного на широкое применение, выпускался «военный вариант» — 580ВМ80 (без букв К и А). Он отличался исполнением в металлокерамическом корпусе 2123.40-6 (аналог CDIP40) и являлся функциональным аналогом i8080 (тактовая частота — 2 МГц). Топология кристалла 580ВМ80 также отличается[4].
Выпускался на НПО «Кристалл» (г. Киев, Украина) и на заводах «Днепр» (г. Херсон, Украина), «Квантор» (Тернопольская обл., Украина), «Родон» (г. Ивано-Франковск, Украина), «Квазар» (г. Киев, Украина), «Электронприбор» (г. Фрязино, Россия).
Особенности[править | править код]
Для выработки тактовых сигналов по спецификации рекомендовалось применять внешнюю микросхему КР580ГФ24, однако реально процессор не критичен к форме и положению тактовых импульсов.
В большинстве отечественных бытовых компьютеров КР580ГФ24 не используется, так как из-за её коэффициента деления 9 она не годится для синхронных графических машин. Применение КР580ГФ24 в одной из самых ранних бытовых ПЭВМ «ИРИШЕ» не позволило реализовать синхронную работу процессора и видеоконтроллера и вызвала существенное торможение работы компьютера, поэтому в дальнейшем в графических ЭВМ КР580ГФ24 не использовали, всегда заменяя схемой на низкоинтегральных счётчиках или регистрах (с коэффициентом деления 8).
Так же, как и прототип 8080, процессор требовал трёх источников питания: −5 В, +12 В и +5 В. Также публиковалось сообщение о возможности работы КР580ВМ80А в нештатном режиме от одного источника +5 В при подаче +5 В вместо +12 В, «земли» вместо −5 В и снижении тактовой частоты ниже до 1,4—1,5 МГц[5].
Процессор не является полным клоном 8080A, что обусловлено разницей технологий. Отечественный кристалл больше, что благотворно отразилось на возможности оверклока. Даже в серийно выпускаемом промышленном бытовом компьютере Вектор-06Ц процессор тактируется частотой в 3 МГц, что на 20 % выше максимально допустимого.
КР580ВМ80А (как и прототип 8080) имеет 12 недокументированных команд. Опкоды #08, #10, #18, #20, #28, #30, #38 являются аналогами операции NOP; опкод #CB является аналогом JMP; опкоды #DD, #ED, #FD являются аналогами CALL; опкод #D9 является аналогом RET.
В компьютере «Радио 86РК» выход разрешения прерывания использовался как однобитный порт вывода для генерации звука.
Наличие в «слове состояния процессора», выдаваемом по сигналу SYNC, флага работы со стеком позволяет выделить для стека отдельный банк памяти, однако это применялось редко. В любительском компьютере «ЮТ-88» эта возможность использована для организации электронного диска.
Программисты нашли нетрадиционное использование стека в процедурах копирования блоков памяти и заполнения/очистки, где требуется максимальное быстродействие. Это позволяло на ~25 % ускорить прокрутку, очистку и закраску экрана, что существенно для графических машин. Например, у компьютера «Корвет» ПК8010/ПК8020 размер графического экрана 48 Кбайт — очистка и сдвиг такого объёма занимает много процессорного времени.
Дальнейшее развитие[править | править код]
КР580ВМ1[править | править код]
Известен отечественный микропроцессор КР580ВМ1[6][7] — несколько улучшенная и более быстрая версия КР580ВМ80А. Зарубежных аналогов нет. Одно питание +5 В. Частота тактирования до 5 МГц. Выпускался на киевском заводе «Квазар». Серийный выпуск процессора начался незадолго до и был прекращён сразу после распада СССР. Было выпущено всего несколько тысяч процессоров, что сделало его в наше время ценной добычей коллекционеров: известно о продажах КР580ВМ1 коллекционерам за 15 тыс. рублей.
Процессор КР580ВМ1 позволяет адресовать дополнительный банк памяти размером до 64 Кбайт, но использовать его можно только для данных. Система команд КР580ВМ1 расширена по сравнению с КР580ВМ80А. Имеются несколько новых команд, также введены префиксы. Префикс замены банка памяти MB (опкод 28h) позволяет временно переключить банк памяти, префикс замены набора RS (опкод 38h) позволяет использовать альтернативную пару регистров H1L1. Префикс CS (тот же опкод 28h) модифицирует действие команд DAD, DSUB, DCMP[8].
КР580ВМ1 работает в двух режимах: режим 0 — обычный режим эмуляции (вывод CO подключен в выводу «общий») применяется при работе в однопроцессорных системах, реализует адресацию памяти до 64 Кбайт и до 256 устройств ввода-вывода, а также обмен данными через 8-разрядный канал данных, режим 1 — расширенный режим непосредственного формирования сигналов управления обменом (вывод CO подключён к выводу +5 В) применяются в мультипроцессорных системах сложной конфигурации, реализует адресацию памяти до 128 Кбайт. При работе КР580ВМ1 в режиме 0 выводы 15 и 28 должны оставаться свободными. C0 — 11 вывод 15 — признак обращения к УВВ и ЗУ IO/M 28 — расширение памяти EXM[прояснить]
ИМ1821ВМ85А[править | править код]
Так же как и для оригинального Intel 8080, дальнейшим развитием явился выпуск «клона» Intel 8085. В СССР он назывался ИМ1821ВМ85А и ИКР1821ВМ85А.
Использование[править | править код]
В своё время данный процессор приобрёл широкую популярность для построения различных контроллеров, терминалов, промышленных и бытовых компьютеров, в частности:
- Микро-80
- Радио 86РК
- Орион-128
- Микроша
- Апогей БК-01
- Башкирия-2М
- Вектор-06Ц
- Интеллект-02 (шахматный компьютер)
- Ириша
- Корвет ПК8010/ПК8020
- Львов ПК-01
- Партнер 01.01
- ПК8000 (Сура, Веста, Хобби)
- СМ-1800
- Специалист
- Искра 1080 Тарту
- Океан-240
- ЮТ-88
- Криста-1/Криста-2
- Контроллер РЕМИКОНТ
- ПЭЛК-3110 Элема (Электронная печатная машинка ромашкового типа)
Также он применялся в ряде советских игровых автоматов, например в ТИА-МЦ-1, музыкальных синтезаторах («Форманта», «Маэстро», «Артон ВС-34», «Сэлмафон»), периферийных устройствах ЭВМ (принтер «Электроника МС-6312», МС6304, УВВПЧ и др.), измерительных приборах и т. д. Известно мелкосерийное применение в ранних версиях телефонов с автоматическим определителем номера.
В то время как в других странах процессор 8080 был популярен лишь в 1970-е годы (применялся в микрокомпьютерах первой волны), а с начала 1980-х очень быстро исчез, в СССР и на постсоветском пространстве его клон был популярным до середины 1990-х годов. Даже сейчас процессор КР580ВМ80А изучают в ВУЗах России как первый простой микропропроцессор, на котором удобно изучить основы и принципы работы всех микропроцессоров.
См. также[править | править код]
Примечания[править | править код]
- ↑ Михаил Сваричевский. Реверс-инжениринг КР580ВМ80А / i8080 завершен . Хабрахабр (3 февраля 2015). Дата обращения: 19 февраля 2015. Архивировано 21 февраля 2015 года.
- ↑ Фотографии чипов 1977 года . Дата обращения: 29 июля 2013. Архивировано 17 августа 2016 года.
- ↑ КР580ИК80А : Фото выходного дня . Дата обращения: 25 декабря 2016. Архивировано 25 декабря 2016 года.
- ↑ КР580ВМ80А : Фото выходного дня . Дата обращения: 25 декабря 2016. Архивировано 26 декабря 2016 года.
- ↑ Гильманов, И. Микропроцессор КР580ВМ80А в экономичном режиме№ 08). — С. 12. — ISSN 0869-0510. // Радиолюбитель : журнал. — Минск, 1994. — Август (
- ↑ spensor. Загадочный проц КР580ВМ1 // Форум, ZX Spectrum Hardware, Unsorted . Speccy — наш выбор! (24 февраля 2005). Дата обращения: 15 июня 2009. Архивировано 22 сентября 2016 года.
- ↑ А. В. Кобылинский, В. В. Бестенков, Е. Я. Столяров, В. А. Темченко. 8-разрядный микропроцессор КР580ВМ1 Архивная копия от 19 августа 2016 на Wayback Machine.
- ↑ Система команд (Ассемблер) микропроцессора КР580ВМ1 Архивная копия от 7 февраля 2008 на Wayback Machine.
Литература[править | править код]
- А. В. Кобылинский и др. 3.1. Микросхема КР580ВМ80А // Микропроцессоры и микропроцессорные комплекты интегральных микросхем: Справочник. В 2 т. / под ред. В. А. Шахнова. — М.: Радио и связь, 1988. — Т. 1. — С. 55—66. — 368 с. — 100 000 экз. — ISBN 5-256-00371-2.
- Мячев А. А., Степанов В. Н. Персональные ЭВМ и МикроЭВМ. Основы организации. — М.: Радио и связь, 1991. — С. 31—37. — 320 с. — ISBN 5-256-00406-9.
- Самофалов К. Г., Викторов О. В. Микропроцессоры . — 2-е изд., перераб. и доп.. — К.: Техника, 1989. — С. 25—54. — 312 с. — (Библиотека инженера).
- Кurina. Небоскрёб на глиняном фундаменте // UPgrade : журнал. — 2011. — № 9 (513). — С. 20—25. — ISSN 1680-4694.
- Шкабардня М. С. РЕМИКОНТ: регулирование становится микропроцессорным // Наука и жизнь : журнал. — 1985. — № 7. — С. 70—77, II-III. — ISSN 0028-1263.