Jump to content

Интел 8080

(Перенаправлено с ИНТЕРП )

Интел 8080
Закрытый и открытый процессор Intel 8080
Общая информация
Запущен апрель 1974 г .; 50 лет назад ( 1974-04 )
Снято с производства 1990 год ; 34 года назад ( 1990 ) [1]
Продается через Интел
Разработано Интел
Общий производитель
  • Интел
Производительность
Макс. процессора Тактовая частота от 2 МГц до 3,125 МГц
Ширина данных 8 бит
Ширина адреса 16 бит
Архитектура и классификация
Технологический узел 6 мкм
Набор инструкций 8080
Физические характеристики
Транзисторы
  • 4500 или 6000 [2]
Ядра
  • 1
Упаковка
Розетка
История
Предшественник Интел 8008
Преемник Интел 8085
Статус поддержки
Не поддерживается

Intel 8080 ( «восемьдесят восемьдесят» ) — второй 8-битный микропроцессор, разработанный и производимый Intel . Впервые он появился в апреле 1974 года и представляет собой расширенный и улучшенный вариант более ранней конструкции 8008 , хотя и без двоичной совместимости . [3] Первоначальная указанная тактовая частота или ограничение частоты составляло 2 МГц , при этом общие инструкции использовали 4, 5, 7, 10 или 11 тактовых циклов. В результате процессор способен выполнять несколько сотен тысяч инструкций в секунду . Два более быстрых варианта, 8080A-1 и 8080A-2, стали доступны позже с пределами тактовой частоты 3,125 МГц и 2,63 МГц соответственно. [4] Для работы в большинстве приложений процессору 8080 необходимы два вспомогательных чипа: тактовый генератор/драйвер i8224 и контроллер шины i8228. 8080 реализован на основе логики металл-оксид-полупроводник N-типа (NMOS) с использованием ненасыщенных с режимом улучшения в качестве нагрузки. транзисторов [5] [6] таким образом, требуется напряжение +12 В и -5 В в дополнение к совместимому с основной транзисторно-транзисторной логикой (TTL) +5 В.

Хотя раньше микропроцессоры обычно использовались в устройствах массового производства, таких как калькуляторы , кассовые аппараты , компьютерные терминалы , промышленные роботы , [7] и других приложений, 8080 добился большего успеха в более широком наборе приложений, и ему во многом приписывают начало индустрии микрокомпьютеров . [8] Несколько факторов способствовали его популярности: его 40-контактный корпус упростил интерфейс, чем 18-контактный 8008, а также сделал шину данных более эффективной; его реализация NMOS дала ему более быстрые транзисторы, чем транзисторы с логикой металл-оксид-полупроводник P-типа (PMOS) 8008, а также упростила интерфейс, сделав его TTL-совместимым ; был доступен более широкий выбор вспомогательных чипов; его набор команд был расширен по сравнению с 8008; [9] а его полная 16-битная адресная шина (по сравнению с 14-битной у 8008) позволяла ему получить доступ к 64 КБ памяти, что в четыре раза больше, чем у 8008 в диапазоне 16 КБ. Он использовался в Altair 8800 и последующих персональных компьютерах с шиной S-100 , пока не был заменен в этой роли на Z80 , и был исходным целевым ЦП для операционных систем CP/M, разработанных Гэри Килдаллом .

8080 напрямую повлиял на более позднюю архитектуру x86 . Intel разработала ассемблер 8086 так, чтобы его язык ассемблера был достаточно похож на ассемблер 8080, при этом большинство инструкций сопоставлялись непосредственно друг с другом, чтобы транспилированный ассемблерный код 8080 мог быть выполнен на 8086. [10]

Потребители микропроцессоров неохотно принимали 8008 из-за таких ограничений, как режим единой адресации, низкая тактовая частота, малое количество выводов и небольшой встроенный стек, что ограничивало масштаб и сложность программного обеспечения. Было предложено несколько вариантов дизайна 8080: от простого добавления инструкций стека в 8008 до полного отказа от всех предыдущих архитектур Intel. [11] Окончательный проект представлял собой компромисс между предложениями.

Федерико Фаггин , создатель архитектуры 8080, в начале 1972 года предложил этот чип руководству Intel и настаивал на его внедрении. Наконец, шесть месяцев спустя он получил разрешение на его разработку. Фаггин нанял Масатоши Симу , который вместе с ним помогал проектировать 4004, из Японии в ноябре 1972 года. Сима выполнил детальное проектирование под руководством Фаггина. [12] используя методологию проектирования случайной логики с кремниевым затвором, которую Фаггин создал для семейства 4000.

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

Отметив специализированное использование регистров общего назначения программистами в системах мэйнфреймов, Стэнли Мазор , архитектор микросхем, решил, что регистры 8080 будут специализированными, а пары регистров будут иметь различный набор применений. [13] Это также позволило инженерам более эффективно использовать транзисторы для других целей.

Шима завершил компоновку в августе 1973 года. После регулирования производства NMOS в январе 1974 года был завершен прототип 8080. У него был недостаток: управление стандартными TTL-устройствами увеличивало напряжение заземления, поскольку в узкую линию протекал большой ток. . Intel уже произвела 40 000 единиц 8080 по указанию отдела продаж, прежде чем Шима представил прототип. Он был выпущен как требующий маломощных устройств Шоттки TTL (LS TTL). В 8080A этот недостаток исправлен. [14]

Intel предложила симулятор набора команд для 8080 под названием INTERP/80 для запуска скомпилированных программ PL/M . Он был написан на FORTRAN IV Гэри Килдаллом, когда он работал консультантом в Intel. [15] [16]

Описание

[ редактировать ]

Модель программирования

[ редактировать ]
микроархитектура i8080
Регистры Intel 8080
1 5 1 4 1 3 1 2 1 1 1 0 0 9 0 8 0 7 0 6 0 5 0 4 0 3 0 2 0 1 0 0 (битовая позиция)
Основные регистры
А Флаги Слово статуса программы
Б С Б
Д И Д
ЧАС л H (косвенный адрес)
Индексные регистры
СП Указатель стека
Счетчик программ
ПК Программный счетчик
Регистр состояния
  С С 0 А С 0 П 1 С Флаги [17]

Intel 8080 является преемником 8008 . Он использует тот же базовый набор команд и модель регистров , что и 8008, хотя он не совместим ни с исходным кодом , ни с двоичным кодом со своим предшественником. Каждая инструкция в 8008 имеет эквивалентную инструкцию в 8080. 8080 также добавляет 16-битные операции в свой набор команд. В то время как 8008 требовал использования пары регистров HL для косвенного доступа к своему 14-битному пространству памяти, 8080 добавил режимы адресации, чтобы обеспечить прямой доступ ко всему 16-битному пространству памяти. Внутренний 7-уровневый стек вызовов с понижением уровня 8008 был заменен выделенным 16-битным регистром указателя стека (SP). 8080 40-контактный DIP-корпус процессора позволяет обеспечить 16-битную адресную шину и 8-битную шину данных , обеспечивая доступ к 64 КиБ (2 16 байт) памяти.

Регистры

[ редактировать ]

Процессор имеет семь 8-битных регистров (A, B, C, D, E, H и L), где A — основной 8-битный аккумулятор. Остальные шесть регистров могут использоваться либо как отдельные 8-битные регистры, либо как три пары 16-битных регистров (BC, DE и HL, называемые в документах Intel B, D и H) в зависимости от конкретной инструкции. Некоторые инструкции также позволяют использовать пару регистров HL в качестве (ограниченного) 16-битного аккумулятора. Псевдорегистр M, который относится к разыменованной ячейке памяти, на которую указывает HL, может использоваться практически везде, где могут использоваться другие регистры. 8080 имеет 16-битный указатель стека 8008 на память, заменяющий внутренний стек , и 16-битный программный счетчик .

Процессор поддерживает внутренние биты флагов ( регистр состояния ), которые указывают результаты арифметических и логических инструкций. Только определенные инструкции влияют на флаги. Флаги:

  • Знак (S), устанавливается, если результат отрицательный.
  • Ноль (Z), устанавливается, если результат равен нулю.
  • Четность (P), устанавливается, если количество битов 1 в результате четное.
  • Перенос (C), устанавливается, если последняя операция сложения привела к переносу или если последняя операция вычитания потребовала заимствования.
  • Вспомогательный перенос (AC или H), используемый для двоично-десятичной арифметики (BCD).

Бит переноса может быть установлен или дополнен специальными инструкциями. Инструкции условного перехода проверяют различные биты состояния флагов. Аккумулятор и флаги вместе называются PSW или словом состояния программы. PSW можно отправить в стек или извлечь из него.

Команды, инструкции

[ редактировать ]

Как и во многих других 8-битных процессорах, для простоты все инструкции кодируются одним байтом (включая номера регистров, но исключая непосредственные данные). За некоторыми могут следовать один или два байта данных, которые могут быть непосредственным операндом, адресом памяти или номером порта. Как и более продвинутые процессоры, он имеет автоматические инструкции CALL и RET для многоуровневых вызовов и возвратов процедур (которые могут даже выполняться условно, например, переходы) и инструкции для сохранения и восстановления любой 16-битной пары регистров в стеке машины. Восемь однобайтовых инструкций вызова ( RST) для подпрограмм существуют по фиксированным адресам 00h, 08h, 10h, ..., 38h. Они предназначены для обеспечения внешним оборудованием для вызова соответствующей процедуры обслуживания прерываний , но также часто используются в качестве быстрых системных вызовов . Инструкция, которая выполняется медленнее всего: XTHL, который используется для обмена пары регистров HL со значением, хранящимся по адресу, указанному указателем стека.

8-битные инструкции
[ редактировать ]

Все 8-битные операции с двумя операндами могут выполняться только с 8-битным аккумулятором (регистр A). Другой операнд может быть либо непосредственным значением, другим 8-битным регистром, либо байтом памяти, адресуемым парой 16-битных регистров HL. Увеличение и уменьшение может выполняться для любого 8-битного регистра или байта памяти с адресацией HL. Прямое копирование поддерживается между любыми двумя 8-битными регистрами, а также между любым 8-битным регистром и байтом памяти с адресацией HL. Благодаря регулярному кодированию MOV (используя четверть доступного пространства кода операции), существуют избыточные коды для копирования регистра в себя ( MOV B,B, например), от которых мало пользы, кроме задержек. Однако систематический код операции для MOV M,M вместо этого используется для кодирования остановки ( HLT) инструкция, останавливающая выполнение до тех пор, пока не произойдет внешний сброс или прерывание.

16-битные операции
[ редактировать ]

Хотя 8080 обычно является 8-битным процессором, его возможности для выполнения 16-битных операций ограничены. Любая из трех пар 16-битных регистров (BC, DE или HL, обозначаемых в документах Intel как B, D, H) или SP может быть немедленно загружена 16-битным значением (используя LXI), увеличивается или уменьшается (с использованием INX и DCX) или добавлен в HL (с помощью DAD). Добавляя к самому себе HL, можно добиться того же результата, что и 16-битный арифметический сдвиг влево с помощью одной инструкции. Единственные 16-битные инструкции, которые влияют на любой флаг, — это DAD, который устанавливает флаг CY (переноса), чтобы разрешить запрограммированную 24-битную или 32-битную арифметику (или больше), необходимую для реализации арифметики с плавающей запятой . BC, DE, HL или PSW можно скопировать в стек и из него, используя PUSH и POP. Кадр стека можно выделить с помощью DAD SP и SPHL. Переход к вычисленному указателю может быть выполнен с помощью PCHL. LHLD загружает HL из памяти с прямой адресацией и SHLD магазины HL аналогично. XCHG[18] Инструкция меняет значения пар регистров HL и DE. XTHLобменивает последний элемент, помещенный в стек, на HL.

Набор инструкций
[ редактировать ]
Код операции Операнды Мнемоника Часы Описание
7 6 5 4 3 2 1 0 б2 б3
0 0 0 0 0 0 0 0 НЕТ 4 Нет операции
0 0 РП 0 0 0 1 данные дати LXI рп, данные 10 РП ← данные
0 0 РП 0 0 1 0 STAX руб. 7 (RP) ← A [только BC или DE]
0 0 РП 0 0 1 1 ИНКС рп 5 РП ← РП + 1
0 0 ДДД 1 0 0 индийская рупия ддд 5/10 ДДД ← ДДД + 1
0 0 ДДД 1 0 1 ДЦР ддд 5/10 ДДД ← ДДД - 1
0 0 ДДД 1 1 0 данные МВИ ддд, данные 7/10 DDD ← данные
0 0 РП 1 0 0 1 ПАПА Рп 10 HL ← HL + РП
0 0 РП 1 0 1 0 LDAX рп 7 A ← (RP) [только BC или DE]
0 0 РП 1 0 1 1 DCX рп 5 РП ← РП - 1
0 0 0 0 0 1 1 1 РЛЦ 4 A 1-7 ← A 0-6 ; A 0 ← Cy ← A 7
0 0 0 0 1 1 1 1 РРК 4 A 0-6 ← A 1-7 ; A 7 ← Cy ← A 0
0 0 0 1 0 1 1 1 РАЛ 4 A 1-7 ← A 0-6 ; Cy ← A 7 ; A 0 ← Cy
0 0 0 1 1 1 1 1 РАР 4 A 0-6 ← A 1-7 ; Cy ← A 0 ; A 7 ← Cy
0 0 1 0 0 0 1 0 аддло Адди СХЛД добавить 16 (добавить) ← HL
0 0 1 0 0 1 1 1 ДАА 4 Если A 0-3 > 9 ИЛИ AC = 1, то A ← A + 6;

тогда если A 4-7 > 9 ИЛИ Cy = 1, то A ← A + 0x60

0 0 1 0 1 0 1 0 аддло Адди LHLD добавить 16 HL ← (добавить)
0 0 1 0 1 1 1 1 СМА 4 А ← ¬А
0 0 1 1 0 0 1 0 аддло Адди СТА добавить 13 (добавить) ← А
0 0 1 1 0 1 1 1 СТЦ 4 Сай ← 1
0 0 1 1 1 0 1 0 аддло Адди LDA добавить 13 А ← (добавить)
0 0 1 1 1 1 1 1 КМЦ 4 Сай ← ¬Си
0 1 ДДД ССС МОВ ддд,ссс 5/7 ДДД ← ССС
0 1 1 1 0 1 1 0 HLT 7 Остановиться
1 0 ИДТИ ССС ДОБАВИТЬ ADC SUB SBB ANA XRA ORA CMP sss 4/7 A ← A [Работа ALU] SSS
1 1 СС 0 0 0 РСС 5/11 Если cc истинно, PC ← (SP), SP ← SP + 2
1 1 РП 0 0 0 1 ПОП Рп 10 РП ← (СП), ИП ← СП + 2
1 1 СС 0 1 0 аддло Адди JCC добавить 10 Если cc true, PC ← добавить
1 1 0 0 0 0 1 1 аддло Адди СПМ добавить 10 ПК ← добавить
1 1 СС 1 0 0 аддло Адди Копия добавить 11/17 Если cc истинно, SP ← SP - 2, (SP) ← PC, PC ← добавить
1 1 РП 0 1 0 1 НАЖМИТЕ рп 11 ИП ← СП - 2, (СП) ← РП
1 1 ИДТИ 1 1 0 данные ADI ACI SUI SBI ГОДЫ XRI ИЛИ дата CPI 7 A ← A Данные [работа АЛУ]
1 1 Н 1 1 1 RST н 11 ИП ← СП - 2, (СП) ← ПК, ПК ← N x 8
1 1 0 0 1 0 0 1 ВЕРНО 10 ПК ← (СП), ИП ← СП + 2
1 1 0 0 1 1 0 1 аддло Адди ЗВОНИТЕ добавить 17 ИП ← СП - 2, (СП) ← ПК, ПК ← добавить
1 1 0 1 0 0 1 1 порт ВЫХОДНОЙ порт 10 Порт ← А
1 1 0 1 1 0 1 1 порт IN- порт 10 ← Порт
1 1 1 0 0 0 1 1 ХТХЛ 18 ХЛ ↔ (СП)
1 1 1 0 1 0 0 1 ПКХЛ 5 ПК ← ХЛ
1 1 1 0 1 0 1 1 XCHG 4 ХЛ ↔ DE
1 1 1 1 0 0 1 1 ОТ 4 Отключить прерывания
1 1 1 1 1 0 0 1 СФХЛ 5 СП ← ХЛ
1 1 1 1 1 0 1 1 НЕТ 4 Включить прерывания
7 6 5 4 3 2 1 0 б2 б3 Мнемоника Часы Описание
ССС ДДД 2 1 0 СС ИДТИ РП
Б 0 0 0 Новая Зеландия ДОБАВИТЬ ADI (A ← A + arg) до нашей эры
С 0 0 1 С АЦП ACI (A ← A + arg + Cy) ИЗ
Д 0 1 0 Северная Каролина SUB SUI (A ← A - arg) ХЛ
И 0 1 1 С SBB SBI (A ← A - arg - Cy) ИП или PSW
ЧАС 1 0 0 PO ГОД ГОД (A ← A ∧ arg)
л 1 0 1 НА XRA XRI (A ← A ⊻ arg)
М 1 1 0 П ВРЕМЯ ВРЕМЯ (A ← A ∨ arg)
А 1 1 1 Н CMP CPI (A - arg)
ССС ДДД 2 1 0 СС ИДТИ

Схема ввода/вывода

[ редактировать ]

Пространство входного выходного порта

[ редактировать ]

Модель 8080 поддерживает до 256 портов ввода/вывода (I/O). [19] доступ осуществляется через специальные инструкции ввода-вывода, принимающие адреса портов в качестве операндов. [20] Такая схема отображения ввода-вывода считается преимуществом, поскольку она освобождает ограниченное адресное пространство процессора. Вместо этого во многих архитектурах ЦП используется так называемый ввод-вывод с отображением в памяти (MMIO), в котором общее адресное пространство используется как для ОЗУ, так и для периферийных микросхем. Это устраняет необходимость в выделенных инструкциях ввода-вывода, хотя недостатком таких конструкций может быть то, что для вставки состояний ожидания необходимо использовать специальное оборудование, поскольку периферийные устройства часто работают медленнее, чем память. Однако в некоторых простых компьютерах 8080 ввод-вывод действительно адресуется так, как если бы они были ячейками памяти, «отображенными в память», оставляя команды ввода-вывода неиспользованными. Адресация ввода-вывода также может иногда использовать тот факт, что процессор выводит один и тот же 8-битный адрес порта как для младшего, так и для старшего байта адреса (т. е. IN 05h поместит адрес 0505h на 16-битную адресную шину). Подобные схемы портов ввода-вывода используются в обратно совместимых процессорах Zilog Z80 и Intel 8085, а также в близкородственных семействах микропроцессоров x86.

Отдельное пространство для стека

[ редактировать ]

Один из битов слова состояния процессора (см. ниже) указывает, что процессор обращается к данным из стека. Используя этот сигнал, можно реализовать отдельное пространство памяти стека. Эта функция используется редко.

Слово состояния

[ редактировать ]

В более продвинутых системах в начале каждого машинного цикла процессор помещает восьмибитное слово состояния на шину данных. Этот байт содержит флаги, определяющие, осуществляется ли доступ к памяти или порту ввода-вывода и необходимо ли обрабатывать прерывание.

Состояние системы прерываний (включено или отключено) также выводится на отдельный вывод. Для простых систем, где прерывания не используются, можно встретить случаи, когда этот вывод используется как дополнительный одноразрядный выходной порт ( «Радио-86РК» популярный компьютер советского например, производства).

Пример кода

[ редактировать ]

Следующий исходный код ассемблера 8080/8085 предназначен для подпрограммы с именем memcpy который копирует блок байтов данных заданного размера из одного места в другое. Блок данных копируется по одному байту за раз, а логика перемещения данных и цикла использует 16-битные операции.

 
 
 
 
 
 
 
 
 
 
 
1000
1000
1000  78
1001  B1
1002  C8
1003  1A
1004  77
1005  13
1006  23
1007  0B
1008  78
1009  B1
100A  C2 03 10
100D  C9
; memcpy --
; Copy a block of memory from one location to another.
;
; Entry registers
;       BC - Number of bytes to copy
;       DE - Address of source data block
;       HL - Address of target data block
;
; Return registers
;       BC - Zero

            org     1000h       ;Origin at 1000h
memcpy      public
            mov     a,b         ;Copy register B to register A
            ora     c           ;Bitwise OR of A and C into register A
            rz                  ;Return if the zero-flag is set high.
loop:       ldax    d           ;Load A from the address pointed by DE
            mov     m,a         ;Store A into the address pointed by HL
            inx     d           ;Increment DE
            inx     h           ;Increment HL
            dcx     b           ;Decrement BC   (does not affect Flags)
            mov     a,b         ;Copy B to A    (so as to compare BC with zero)
            ora     c           ;A = A | C      (are both B and C zero?)
            jnz     loop        ;Jump to 'loop:' if the zero-flag is not set.   
            ret                 ;Return

Использование контактов

[ редактировать ]
8080 Распиновка

Адресная шина имеет собственные 16 контактов, а шина данных — 8 контактов, которые можно использовать без какого-либо мультиплексирования. Используя два дополнительных контакта (сигналы чтения и записи), можно очень легко собрать простые микропроцессорные устройства. Только отдельное пространство ввода-вывода, прерывания и DMA требуют дополнительных микросхем для декодирования сигналов выводов процессора. Однако нагрузочная способность штифта ограничена; даже простым компьютерам часто требуются усилители шины.

Процессору необходимы три источника питания (-5, +5 и +12 В) и два непересекающихся синхронизирующих сигнала большой амплитуды. Однако, по крайней мере, поздняя советская версия КР580ВМ80А могла работать с одним источником питания +5 В, при этом вывод +12 В был подключен к +5 В, а вывод -5 В - к земле.

Таблица распиновки из сопроводительной документации чипа описывает контакты следующим образом:

Номер контакта Сигнал Тип Комментарий
1 А10 Выход Адресная шина 10
2 Земля Земля
3 Д4 Двунаправленный Двунаправленная шина данных. Процессор также временно устанавливает здесь «состояние процессора», предоставляя информацию о том, что процессор в данный момент делает:
  • Команда прерывания чтения D0. В ответ на сигнал прерывания процессор читает и выполняет одну произвольную команду с поднятым этим флагом. Обычно поддерживающие микросхемы предоставляют команду вызова подпрограммы (CALL или RST), передавая управление коду обработки прерывания.
  • Чтение D1 (низкий уровень означает запись)
  • Доступ к стеку D2 (вероятно, изначально планировалось отдельное пространство памяти стека)
  • D3 ничего не делает, был остановлен HLT инструкцией
  • D4 записывает данные в выходной порт
  • D5 чтение первого байта исполняемой инструкции
  • D6 чтение данных из входного порта
  • D7 reading data from memory
4 Д5
5 Д6
6 D7
7 Д3
8 Д2
9 Д1
10 Д0
11 −5 V Источник питания −5 В. Это должен быть первый подключенный источник питания и последний отключенный, иначе процессор будет поврежден.
12 ПЕРЕЗАГРУЗИТЬ Вход Перезагрузить. Этот активный низкий сигнал вызывает выполнение команд, расположенных по адресу 0000. Содержимое других регистров процессора не изменяется.
13 ДЕРЖАТЬ Вход Запрос прямого доступа к памяти. Процессору предлагается переключить шину данных и адрес в высокоомное («отключенное») состояние.
14 ИНТ. Вход Запрос прерывания
15 f2 Вход Вторая фаза сигнала тактового генератора
16 НЕТ Выход Процессор имеет две команды для установки уровня 0 или 1 на этом выводе. Обычно этот вывод используется для управления прерываниями. Однако в простых компьютерах он иногда использовался как одноразрядный выходной порт для различных целей.
17 ДБИН Выход Чтение (процессор читает из памяти или входного порта)
18 WR Выход Запись (процессор записывает в память или порт вывода). Это активный низкий выход.
19 СИНХРОНИЗАЦИЯ Выход Активный уровень указывает на то, что процессор поместил «слово состояния» на шину данных. Различные биты этого слова состояния предоставляют дополнительную информацию для поддержки отдельных пространств адреса и памяти, прерываний и прямого доступа к памяти. Этот сигнал должен пройти через дополнительную логику, прежде чем его можно будет использовать для записи слова состояния процессора из шины данных в какой-либо внешний регистр, например, 8238. Архивировано 18 сентября 2023 г. в Wayback Machine — системный контроллер и драйвер шины.
20 +5 V Источник питания + 5 В
21 HLDA Выход Подтверждение прямого доступа к памяти. Процессор переключает контакты данных и адреса в состояние высокого импеданса, позволяя другому устройству манипулировать шиной.
22 ф1 Вход Первая фаза сигнала тактового генератора
23 ГОТОВЫЙ Вход Ждать. По этому сигналу можно приостановить работу процессора. Он также используется для поддержки аппаратного режима пошаговой отладки.
24 ЖДАТЬ Выход Подождите (указывает, что процессор находится в состоянии ожидания)
25 А0 Выход Адресная шина
26 А1
27 А2
28 12 V Питание +12 В. Это должен быть последний подключенный и первый отключенный источник питания.
29 А3 Выход Адресная шина; может переключаться в состояние высокого импеданса по требованию
30 A4
31 А5
32 А6
33 A7
34 А8
35 А9
36 А15
37 А12
38 А13
39 А14
40 А11

Поддержка чипов

[ редактировать ]

Ключевым фактором успеха 8080 стал широкий спектр доступных вспомогательных микросхем, обеспечивающих последовательную связь, счетчик/тайминг, ввод/вывод, прямой доступ к памяти и программируемое управление прерываниями, среди других функций:

Физическая реализация

[ редактировать ]

8080 Интегральная схема использует ненасыщенные nMOS - затворы с улучшенной нагрузкой, требующие дополнительных напряжений (для смещения нагрузки-затвора). Он был изготовлен по технологии кремниевых затворов с минимальным размером элемента 6 мкм. Один слой металла используется для соединения примерно 4500 транзисторов. [23] в конструкции, но с более высоким сопротивлением слой поликремния , который требовал более высокого напряжения для некоторых межсоединений, реализован с помощью транзисторных затворов. Размер матрицы примерно 20 мм. 2 .

Промышленное воздействие

[ редактировать ]

Приложения и преемники

[ редактировать ]

8080 использовался во многих ранних микрокомпьютерах, таких как компьютер MITS Altair 8800 , с процессорной технологией терминальный компьютер SOL-20 и микрокомпьютер IMSAI 8080 , образуя основу для машин под управлением операционной системы CP / M (более поздняя, ​​почти полностью совместимая и более В этом случае процессор Zilog Z80 мог бы извлечь из этого выгоду: Z80 и CP/M стали доминирующей комбинацией ЦП и ОС в период по 1983 год , с 1976 так же, как это произошло с x86 и DOS десятилетие спустя для ПК).

В 1979 году, даже после появления процессоров Z80 и 8085, пять производителей 8080 продавали примерно 500 000 единиц в месяц по цене от 3 до 4 долларов за штуку. [24]

Первые одноплатные микрокомпьютеры , такие как MYCRO-1 и dyna-micro /MMD-1 (см.: Одноплатный компьютер ), были основаны на Intel 8080. Одно из первых применений 8080 было сделано в конце 1970-х годов. компанией Cubic-Western Data из Сан-Диего, Калифорния, в своих автоматизированных системах сбора платы за проезд, специально разработанных для систем общественного транспорта по всему миру. Первым промышленным использованием 8080 было использование в качестве «мозга» линейки продуктов DatagraphiX Auto-COM (микрофиша компьютерного вывода), которая принимает большие объемы пользовательских данных с катушечной ленты и отображает их на микрофише. Инструменты Auto-COM также включают в себя полную автоматизированную подсистему резки, обработки, промывки и сушки пленки.

Несколько первых аркадных игр были построены на базе микропроцессора 8080. Первой коммерчески доступной аркадной видеоигрой, включающей микропроцессор, была Gun Fight , Midway Games основанная на 8080 переработка компании дискретной логики Western Gun , выпущенная в ноябре 1975 года. [25] [26] [27] [28] (Автомат для игры в пинбол, оснащенный процессором Motorola 6800 , The Spirit of '76 , уже был выпущен в прошлом месяце. [29] [30] ) Затем 8080 использовался в более поздних аркадных видеоиграх Midway. [31] Тайто 1978 года и в Space Invaders , одной из самых успешных и известных аркадных видеоигр. [32] [33]

Zilog представил Z80 , который имеет совместимый набор команд машинного языка и изначально использовал тот же язык ассемблера, что и 8080, но по юридическим причинам Zilog разработал синтаксически отличный (но совместимый по коду) альтернативный ассемблерный язык для Z80. В Intel за 8080 последовал совместимый и более элегантный с электрической точки зрения 8085 .

совместимый с языком ассемблера (но не бинарно-совместимый) Позже Intel выпустила 16-битный 8086, , а затем 8/16-битный 8088 , который был выбран IBM для своего нового ПК , который будет выпущен в 1981 году. Позже NEC создала NEC. V20 (клон 8088 с совместимостью с набором инструкций Intel 80186 ), который также поддерживает режим эмуляции 8080. Это также поддерживается NEC V30 (аналогично улучшенный клон 8086). Таким образом, 8080 благодаря своей архитектуре набора команд (ISA) оказал длительное влияние на историю компьютеров.

Ряд процессоров, совместимых с Intel 8080A, производился в Восточном блоке : КР580ВМ80А (первоначально имел обозначение КР580ИК80) в Советском Союзе , MCY7880 [34] производства Unitra CEMI в Польше , MHB8080A. [35] производства TESLA в Чехословакии , 8080APC [35] производства Tungsram /MEV в Венгрии и MMN8080. [35] Производство Microelectronica Bucharest Румыния , .

По состоянию на 2017 год 8080 все еще находится в производстве Lansdale Semiconductors. [36]

Изменение отрасли

[ редактировать ]

8080 также изменил способ создания компьютеров. Когда был представлен 8080, компьютерные системы обычно создавались такими производителями компьютеров, как Digital Equipment Corporation , Hewlett-Packard или IBM . Производитель будет производить весь компьютер, включая процессор, терминалы и системное программное обеспечение, такое как компиляторы и операционную систему. Модель 8080 была разработана практически для любого применения, за исключением полноценной компьютерной системы. Компания Hewlett-Packard разработала серию интеллектуальных терминалов HP 2640 на основе 8080. HP 2647 — это терминал, который использует язык программирования BASIC на 8080. Microsoft Основополагающий продукт , Microsoft BASIC , изначально был запрограммирован для 8080.

8080 и 8085 дали начало 8086, который был разработан как совместимое с исходным кодом , хотя и не бинарно-совместимое , расширение 8080. [37] Эта конструкция, в свою очередь, позже породила семейство чипов x86 , которые продолжают оставаться основной линейкой процессоров Intel. Многие из основных машинных инструкций и концепций 8080 сохранились на широко распространенной платформе x86. Примеры включают регистры с именами A , B , C и D , а также многие флаги, используемые для управления условными переходами. Ассемблерный код 8080 по-прежнему можно напрямую транслировать в инструкции x86. [ нечеткий ] поскольку все его основные элементы все еще присутствуют.

Культурное влияние

[ редактировать ]
  • Астероид 8080 Intel назвал в шутку [ нужна ссылка ] и хвала имени Intel 8080. [38]
  • Опубликованный номер телефона Microsoft 425-882-8080 был выбран потому, что над этим чипом проводилось много ранних работ.
  • Многие из основных телефонных номеров Intel также имеют аналогичную форму: xxx-xxx-8080.

См. также

[ редактировать ]
  1. ^ «История процессора – Музей процессора – жизненный цикл процессора» . Архивировано из оригинала 16 января 2010 года.
  2. ^ Льюнес, Энн, «Архитектура Intel386 останется здесь», корпорация Intel, Microcomputer Solutions, июль/август 1989 г., стр. 2
  3. ^ «От процессора до программного обеспечения — микрокомпьютер 8080 уже здесь». Электронные новости . Нью-Йорк: Публикации Fairchild. 15 апреля 1974 г. стр. 44–45. Electronic News была еженедельной отраслевой газетой. Такая же реклама появилась в от 2 мая 1974 года Electronics номере журнала .
  4. ^ «8080A/8080A-1/8080A-2 8-битный N-канальный микропроцессор» (PDF) . Интел. Архивировано (PDF) из оригинала 15 ноября 2021 г. Проверено 16 ноября 2021 г.
  5. ^ аналогично подтягивающим резисторам
  6. ^ Тохья, Хирокадзу (2013). Анализ и проектирование схем переключения режимов: инновационная методология новой теории уединенных электромагнитных волн . Издательство Bentham Science. п. 4. ISBN  9781608054497 . Архивировано из оригинала 15 ноября 2021 года . Проверено 28 ноября 2020 г.
  7. ^ 8008 (1972) использовался для интерполяции и управления в первой линейке общепромышленных роботов ASEA (ныне ABB), представленной в октябре 1973 года.
  8. ^ Мюллер, Скотт (2006). Модернизация и ремонт компьютеров (17-е изд.). Пирсон Образование. п. 37. ИСБН  978-0-7897-3404-4 . Архивировано из оригинала 16 ноября 2021 года . Проверено 16 ноября 2021 г.
  9. ^ Усовершенствования были в значительной степени основаны на отзывах клиентов, а также на том, что Федерико Фаггин и другие слушали профессионалов, ориентированных на миникомпьютеры, об определенных проблемах и отсутствии функций в архитектуре 8008. (Источник: устные рассказы 8008 и 8080 годов.)
  10. ^ Мазор, Стэнли (июнь 1978 г.). «Микропроцессор Intel 8086: 16-битная эволюция 8080» . IEEE-компьютер . 11 (6): 18–27. дои : 10.1109/CM.1978.218219 . S2CID   16962774 . Архивировано из оригинала 19 сентября 2021 года . Проверено 18 ноября 2021 г.
  11. ^ Миллер, Майкл. «Создание 8080: процессор, положивший начало революции ПК» . PCMag . Зафф Дэвис. Архивировано из оригинала 14 ноября 2021 года . Проверено 14 ноября 2021 г.
  12. ^ Фаггин, Федерико. «Вопросы и ответы по 8008 и 8080» . Микропроцессор Intel 4004 . Архивировано из оригинала 15 ноября 2021 года . Проверено 15 ноября 2021 г.
  13. ^ Мазор, Стэнли (апрель – июнь 2007 г.). «Разработка процессорного чипа Intel 8080». IEEE Анналы истории вычислений . 29 (2): 70–73. дои : 10.1109/MAHC.2007.25 . S2CID   14755544 .
  14. ^ Сима, Масатоши Нишимура, Исида, Харухиса (1979). «Круговая дискуссия: Рождение микрокомпьютеров: Интервью с разработчиком Масатоши Сима». Бит (на японском языке) Шуппан : 4–12. ;   Кёрицу -6984 .
  15. ^ Килдалл, Гэри Арлен (27 июня 1974 г.). «Язык высокого уровня упрощает программирование микрокомпьютеров» (PDF) . Электроника . Макгроу-Хилл Образование . С. 103–109 [108]. Архивировано (PDF) из оригинала 14 ноября 2021 г. Проверено 14 ноября 2021 г.
  16. ^ «Симулятор 8080 ИНТЕРП/80» (PDF) . Программное обеспечение микрокомпьютера. Корпорация Интел . Март 1975 г. Код товара 98-119А. МКС-516-0375/27,5К. Архивировано (PDF) из оригинала 25 ноября 2023 г. Проверено 25 ноября 2023 г. (2 страницы)
  17. ^ Руководство по программированию на ассемблере 8080 (PDF) (ред. B). Интел. 1975. с. 22 . Проверено 29 февраля 2024 г.
  18. ^ Кодировка инструкций 8080. Архивировано 5 марта 2018 г. на Wayback Machine . ClassicCMP.org. Проверено 23 октября 2011 г.
  19. ^ Примечание. В некоторых таблицах данных Intel 1970-х годов указано 512 портов ввода-вывода, поскольку порты ввода и вывода считаются отдельно.
  20. ^ ХЕЙС, ДЖОН П. (1978). Компьютерная архитектура и организация . МакГроу-Хилл. стр. 420–423. ISBN  0-07-027363-4 .
  21. ^ Корпорация Intel, «Блок управления приоритетными прерываниями 8214», Руководство пользователя микрокомпьютерных систем Intel 8080, сентябрь 1975 г., стр. 5-153. Архивировано 28 мая 2024 г. на Wayback Machine с сайта bitsaver.org в формате PDF.
  22. ^ Корпорация Intel, «Два недорогих программируемых устройства LSI упрощают реализацию проектов и снижают стоимость 4-битных систем MCS-40», Intel Microcomputer News, Том 3, № 1, январь 1976 г., стр. 1
  23. ^ «Хронология чипов Intel» (PDF) . Интел . Корпорация Интел. Архивировано (PDF) из оригинала 14 ноября 2021 г. Проверено 14 ноября 2021 г.
  24. ^ Либес, Соль (ноябрь 1979 г.). «Байт Ньюс». Байт . 11. Том. 4. с. 82. ISSN   0360-5280 .
  25. ^ «Какая была первая аркадная игра, в которой вместо дискретной логики использовался микропроцессор?» . Архивировано из оригинала 11 апреля 2023 года . Проверено 11 апреля 2023 г.
  26. ^ Стив Л. Кент (2001), Полная история видеоигр: от понга до покемонов и не только: история увлечения, которое коснулось нашей жизни и изменило мир , с. 64, Прима, ISBN   0-7615-3643-4
  27. ^ Акаги, Масуми (13 октября 2006 г.). телеигр Список аркадных : внутреннее • зарубежное издание (1971–2005 гг .) (на японском языке: Агентство новостей развлечений, стр. 124) .  978-4990251215 .
  28. ^ «Дэйв Нидл и Джерри Лоусон — два первых независимых дизайнера видеоигр» . 29 июля 2013. Архивировано из оригинала 11 апреля 2023 года . Проверено 11 апреля 2023 г.
  29. ^ «База данных автоматов для игры в пинбол в Интернете: Mirco Games, Inc. «Дух 76» » . www.ipdb.org . Архивировано из оригинала 16 апреля 2023 года . Проверено 11 апреля 2023 г.
  30. ^ выход440. «Продается Mirco Spirit 76 – первый полупроводниковый значок?» . Pinside.com . Архивировано из оригинала 11 апреля 2023 года . Проверено 11 апреля 2023 г. {{cite web}}: CS1 maint: числовые имена: список авторов ( ссылка )
  31. ^ «Системные платы Midway 8080» . Архивировано из оригинала 11 апреля 2023 года . Проверено 11 апреля 2023 г.
  32. ^ «Видеоигра Space Invaders от Балли Мидуэй (1978)» . Убийственный список видеоигр . Архивировано из оригинала 25 ноября 2010 года . Проверено 11 апреля 2023 г.
  33. ^ Эдвардс, Бендж. «Десять вещей, которые каждый должен знать о космических захватчиках» . 1UP.com . Архивировано из оригинала 26 февраля 2009 года . Проверено 11 апреля 2023 г.
  34. MCY7880 — клон 8080 польского производства. Архивировано 17 августа 2016 года в Wayback Machine . Мир процессоров. Проверено 23 октября 2011 г.
  35. ^ Перейти обратно: а б с Советские чипы и их западные аналоги. Архивировано 9 февраля 2017 года в Wayback Machine . CPU-мир. Проверено 23 октября 2011 г.
  36. ^ «Intel — семейство микропроцессоров 8080A и серия 828X» . Lansdale Semiconductor Inc. Архивировано из оригинала 14 октября 2015 года . Проверено 20 июня 2017 г.
  37. ^ Морс, Стивен; Равенел, Брюс; Мазор, Стэнли; Полман, Уильям (октябрь 1980 г.). «Микропроцессоры Intel: от 8008 до 8086» (PDF) . IEEE-компьютер . 13 (10): 42–60. дои : 10.1109/MC.1980.1653375 . S2CID   206445851 . Архивировано (PDF) из оригинала 14 сентября 2021 г. Проверено 5 ноября 2021 г.
  38. ^ «(8080) Intel = 1958 QC = 1987 WU2 = 1989 AS5» . Центр малых планет . Международный астрономический союз. Архивировано из оригинала 25 сентября 2019 года . Проверено 14 ноября 2021 г.

Дальнейшее чтение

[ редактировать ]
[ редактировать ]
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: 4b36804a10e924799aa165045f91c0ee__1719844500
URL1:https://arc.ask3.ru/arc/aa/4b/ee/4b36804a10e924799aa165045f91c0ee.html
Заголовок, (Title) документа по адресу, URL1:
Intel 8080 - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)