8085

Материал из Википедии — свободной энциклопедии
Перейти к навигации Перейти к поиску
Intel 8085
Центральный процессор
KL Intel P8085AH.jpg
Микропроцессор Intel 8085
Производство с марта 1976 по 1990
Производитель Intel Corp.
Частота ЦП 3—6 МГц
Технология производства мкм
Наборы инструкций 80/90 инструкций
Разъём DIP40

Intel 8085 — 8-битный микропроцессор, выпущенный компанией Intel в марте 1976 года. Представляет собой усовершенствованную версию процессора Intel 8080.

Описание[править | править код]

Архитектура Intel 8085

8085 выпускался по 3-х микронной технологии, это позволило уместить на кристалл, по площади равный кристаллу Intel 8080, 6 500 транзисторов. Аналогично 6800 на кристалле имелся преобразователь напряжения подложки, благодаря чему 8085 использовал всего одно питание с напряжением +5 вольт (что нашло отражение в нумерации в виде цифры «5») [1]. Первоначально использовалась старая технология nMOS, но вскоре она была заменена на HMOS (High-performance MOS), что позволило поднять такт. Максимальная тактовая частота nMOS версии 1976 года (i8085A) составляла 3 МГц, а в последующих HMOS версиях (что с буквой H) достигла 6 МГц (i8085AH-1). Кристалл 8085 содержал свой задающий генератор, системный контроллер и контроллер приоритетных прерываний, позволяющий обслуживать прерывания с 4-х доп.входов запроса прерываний. Таким образом по сравнению с i8080 отпадали i8224, i8228 и i8259 [2].

Процессор 8085 в основном программно совместим с 8080. Отличия в числе тактов некоторых команд и работе вспомогательного флага переноса (auxillary carry) после команды AND (это не влияет на совместимость). Пятитактовые команды декремента/инкремента и, очень существенные для быстродействия, команды межрегистровой пересылки стали как и в Z80 четырёхтактовыми, но все команды требующие запись в/из стека удлинились на 1 такт. Для совместимости с 8080 в командах IN/OUT 8085 дублирует адрес порта и на старшей половине адресов (это существенно для систем, где порты в области памяти). На практике все программы для 8080 не использующие его недокументированные свойства и не привязанные жёстко к времянкам работают на 8085. В целом по работе команд 8085 более совместим с 8080, чем Z80.

Однако некоторые программы 8080 с целью защиты от взлома использующие 12 кодов 8080, не являющиеся официальными командами (но тем не менее исполняемые как CALL, JMP, RET и NOP) не могут работать на 8085, т.к. в нём эти же коды исполняются иначе (см.раздел "Недокументированные команды").

8085 использует уникальный протокол шины с мультиплексированием, что не позволяло включать в его шину периферийные БИС МП-комплекта 8080 или подобных. Потому специально для 8085 Intel выпускала широкий ассортимент периферийных БИС с такой же шиной. При некотором усложнении схемы инженерам удавалось интегрировать этот процессор и в системы с традиционной шиной.

Клоны процессора выпускались в разных странах. В СССР они выпускались Новосибирским заводом полупроводниковых приборов под обозначениями КР1821ВМ85А (пластиковый корпус) и ИМ1821ВМ85А (металло-керамический корпус).

Технические характеристики[править | править код]

  • Дата анонса: март 1976 года
  • Тактовая частота (МГц): 3; 5; 6
  • Разрядность регистров: 8 бит
  • Разрядность шины данных: 8 бит
  • Разрядность шины адреса: 16 бит
  • Объём адресуемой памяти: 64 Кбайт
  • Количество транзисторов: 6500
  • Техпроцесс (нм): 3000 (3 мкм)
  • Корпус: 40-контактный керамический или пластмассовый DIP-корпус
  • Поддерживаемые технологии: 90 инструкций

Недокументированные команды[править | править код]

В официальной документации указано, что система команд процессора 8085 относительно 8080 расширена всего на 2 команды RIM и SIM (служащих для управления прерываниями и обслуживания входов SID/SOD). Однако оказалось, что реально по системе команд 8085 превосходит процессор 8080 на 12 команд. Два инженера разрабатывая в конце 70-тых свой ассемблер обнаружили и рассекретили ещё десять полезных, но недокументированных команд. Среди них такие полезные, как 16-тиричное вычитание, 16-тиричные сдвиги, сложение HL и числа с пересылкой результата в DE, часто используемая косвенная загрузка регистровой пары и др.[3].

Обычно недокументированные команды в ранних процессорах возникали случайно и потому они часто бесполезные, бессмысленные и даже вредные (приводящие к краху, их называют "Halt and Catch Fire"). А тут эти команды точно не случайно и самопроизвольно возникли из-за упрощённой дешифрации, а явно были реализованы разработчиками сознательно. Среди этих 10 команд нет ни одной бессмысленной или бесполезной, каждая заменяет какую-либо часто используемую цепочку из нескольких документированных команд.

Вызывает недоумение почему эти полезные команды оказались засекреченными, ведь фирме Intel было выгодно показать покупателям, что 8085 более удобный для программиста процессор, чем 8080 и его главное усовершенствование и преимущество состоит именно в доработанной системе команд, а вовсе не в одном питании, как написано в книгах. Ещё одним плюсом для фирмы Intel при этом стало бы отблокирование конкурентов с Z80, т.к. при использовании новых команд возникает несовместимость с Z80.

Непонятно какими соображениями руководствовалась фирма Intel скрыв столь важную информацию. Можно предположить, что это инженеры разработчики без ведома и прямого указания руководства по собственной инициативе это встроили, а затем побоялись признаться в содеянном. Тем не менее информация о дополнительных командах даже после обнаружения и публикаций не была распространена широко в мире и обычно эти команды не используются (вероятно из опасения, что могут существовать клоны, где эти 10 кодов не работают, но есть источники утверждающие, что таких не существует, - команды отработали на всех оттестированых клонах).

Применение[править | править код]

Микропроцессор 8085 и его КМОП версия 80C85 применялись в составе различных контроллеров, терминалов, некоторых персональных компьютеров, например TRS-80 Model 100 и IBM System/23 Datamaster (Model 5322). Радиационно-стойкие версии 8085 использовались в бортовых компьютерах ряда космических аппаратов НАСА и ЕКА в 1990-х и начале 2000-х годов, таких как CRRES, Polar, FAST, THEMIS[4], марсоходе Соджорнер[5]. Швейцарская компания SAIA в 1980-е годы применяла микропроцессоры 8085 и 8085-2 в линейке программируемых логических контроллеров PCA1.

Корпорация Pro-Log устанавливала 8085 и вспомогательные компоненты, включавшие ОЗУ, розетки для ПЗУ и ППЗУ, схемы ввода-вывода на платы для шины STD Bus. В прилагавшейся документации обозначения инструкций 8085 были полностью изменены, поскольку данные платы являлись прямым конкурентом плат для шины Multibus от компании Intel.

См. также[править | править код]

  • MFA — микрокомпьютер с процессором 8085
  • ИМ1821ВМ85А — отечественный аналог микропроцессора
  • Z80 - конкурировавший с 8085 процессор с расширенной системой команд и, также, 5-вольтовым питанием.

Примечания[править | править код]

  1. Как разрабатывались первые микросхемы Intel Архивировано 17 июля 2011 года.
  2. Ranjit Kumar. 27.1 Comparison of Intel 8080 with Intel 8085 // The 8085 Microprocessor: Architecture, Programming And Interfacing. — Pearson Education India, 2008. — С. 495-498. — 624 с. — ISBN 8177584553.
  3. Dehnhardt, Wolfgang; M. Sorensen, Villy (January 1979). “Unspecified 8085 op codes enhance programming”. Electronics. McGraw-Hill: 144—145. ISSN 0013-5070.
  4. Information technologie in past space missions Архивировано 8 декабря 2015 года.
  5. A Description of the Rover Sojourner

Ссылки[править | править код]