КР580ВМ80А ( русский : КР580ВМ80А ) — советский микропроцессор , клон процессора Intel 8080. [ 1] [2] Различные версии этого процессора выпускались с конца 1970-х годов, самое раннее известное применение было в компьютере СМ1800 в 1979 году . Первоначально называвшийся К580ИК80 (К580ИК80), он выпускался в 48-выводном планарном металлокерамическом корпусе. Позже была выпущена версия в корпусе PDIP-40 , получившая название КР580ИК80А (КР580ИК80А). Расположение выводов последнего полностью совпадало с расположением выводов процессора Intel 8080A . В 1986 году этот ЦП получил новый номер детали, соответствующий обозначению советских интегральных схем 1980 года , и стал известен как КР580ВМ80А (КР580ВМ80А), номер, под которым он наиболее широко известен сегодня (периферийные устройства КР580ВВ51А и КР580ВВ55А прошли аналогичные доработки). Обычная тактовая частота для К580ИК80А составляет 2 МГц, а для КР580ВМ80А — до 2,5 МГц. КР580ИК80А производился по 6- мкм техпроцессу. [3] В более позднем КР580ВМ80А размер элемента был уменьшен до 5 мкм, а кристалл стал на 20% меньше. [4]
KR580VM80A был изготовлен с использованием n-MOS- процесса. Контакты были электрически совместимы с логическими уровнями TTL . Нагрузочная способность каждого выходного контакта была достаточна для одного входа TTL. Выходная емкость каждого контрольного и информационного контактов была ≤ 100 пФ каждый.
Семейство состоит из следующих чипов: [5] [6] [7]
Для краткости в таблице выше приведены только варианты исполнения микросхем в пластиковом DIP-корпусе (префикс КР ), а также в оригинальном планарном корпусе (префикс К ). Отдельно не указаны варианты исполнения в керамическом DIP-корпусе (префикс КМ для коммерческого исполнения и префикс М или без префикса для военного исполнения) или экспортные варианты (префикс ЭКР ) в пластиковом DIP-корпусе, но с шагом выводов в одну десятую дюйма.
Для КР580ВМ1 ( КР580ВМ1 ) см. Дальнейшее развитие ниже.
Несколько микросхем серии К580 фактически предназначались для других семейств микропроцессоров: КР580ВР43 ( КР580ВР43 — Intel 8243) для семейства К1816 ( Intel MCS-48 ) и КР580ГФ84 ( КР580ГФ84 — Intel 8284 ) / КР580ВГ88 ( КР580ВГ88 — Intel 8288 ) / КР580ВБ89 ( КР580ВБ89 — Intel 8289 ) для семейства К1810 ( Intel 8086 ). Кроме того, большинство устройств серии К580 могли использоваться и для серии К1810.
Хотя советский клон, по-видимому, полностью совместим с программным обеспечением Intel 8080A, есть небольшое различие между логикой обработки прерываний двух процессоров , которое выглядит как ошибка в микрокоде KR580VM80A . [8] Если во время цикла INTA подается инструкция CALL , а вход INT остается активным, KR580VM80A не очищает свой внутренний флаг разрешения прерывания, несмотря на то, что выход INTE становится неактивным. В результате ЦП входит в цикл микрокода, непрерывно подтверждая прерывание и помещая ПК в стек , что приводит к переполнению стека . В типичной аппаратной конфигурации это явление маскируется поведением контроллера прерываний 8259A, который отменяет активацию INT во время цикла INTA. Румынский MMN8080 ведет себя так же, как KR580VM80A; ни один другой клон 8080A, по-видимому, не подвержен этой ошибке.
KR580VM80A был популярен в домашних компьютерах , компьютерных терминалах , промышленных контроллерах . Вот некоторые примеры его успешного применения:
Зеркально отражая развитие на Западе, где на смену Intel 8080 пришли двоично-совместимые Intel 8085 и Zilog Z80 , а также совместимый с исходным кодом Intel 8086 , Советский Союз производил IM1821VM85A ( ИМ1821ВМ85А , на самом деле КМОП-версия Intel 80C85), KR1858VM1 ( КР1858ВМ1 ) и K1810VM86 ( К1810ВМ86 ) соответственно. [9] 580VM80 по-прежнему указан в прайс-листе от 15 августа 2022 года завода «Квазар» в Киеве [10] вместе с различными вспомогательными микросхемами серии K580.
Другая разработка, KR580VM1 ( КР580ВМ1 ), не имеет западного эквивалента. [11] KR580VM1 расширяет архитектуру Intel 8080 и совместима с ней на уровне двоичного кода. Однако расширения отличаются как от Intel 8085, так и от Zilog Z80. KR580VM1 расширяет диапазон адресов с 64 КБ до 128 КБ. Он добавляет два регистра, H1 и L1, которые могут использоваться вместо H и L. Также было добавлено несколько 16-битных арифметических инструкций ( DAD
, DSUB
, DCOMP
). [12] Так же, как Intel 8085 и Zilog Z80, KR580VM1 требует только одного источника питания +5 В вместо трех напряжений, требуемых KR580VM80A. Максимальная тактовая частота была увеличена с 2 МГц до 5 МГц, а энергопотребление снижено с 1,35 Вт до 0,5 Вт по сравнению с KR580VM80A.