Intel 4040 - Википедия - Intel 4040
Керамический вариант C4040. | |
Общая информация | |
---|---|
Запущен | 1974 |
Снято с производства | 1981[1] |
Общий производитель (и) |
|
Спектакль | |
Максимум. ЦПУ тактовая частота | От 500 кГц до 740 кГц |
Ширина данных | 4 бит |
Ширина адреса | 12 (мультиплексный) |
Архитектура и классификация | |
Мин. размер элемента | 10 мкм |
Набор инструкций | 4-битный BCD ориентированный |
Физические характеристики | |
Транзисторы |
|
Пакет (ы) |
|
Розетки) | |
История | |
Предшественник | Intel 4004 |
Преемник | нет (Intel прекратила выпуск своих 4-битных процессоров после 4040.) |
В Intel 4040 микропроцессор был преемником Intel 4004. Он был представлен в 1974 году. 4040 использовала 10 мкм кремниевый затвор усиливающая нагрузка PMOS технологии, состояло из 3000 транзисторы[3] и мог выполнить около 62000 инструкций в секунду. Общая производительность, схема шины и набор команд были идентичны 4004, с основными улучшениями в добавлении дополнительных строк и инструкций для распознавания и обслуживания. прерывает и аппаратные команды Halt / Stop (последние позволяют выполнять пошаговое управление оператором для целей отладки), расширенный внутренний стек и универсальное регистровое пространство «Индекс» для обработки вложения нескольких подпрограмм и / или прерываний, а также дублирования программы ПЗУ диапазон адресов.
Новые возможности
- Прерывания
- Одиночный шаг плюс аппаратный и программный HALTing.
- Режим ожидания с низким энергопотреблением[Примечание 1]
Расширения
Регистры Intel 4040 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
- Набор инструкций расширен до 60 инструкций (14 новых инструкций добавлены к существующим 46, в основном связанных с обработкой прерываний, остановкой / пошаговым выполнением и переключением банка ПЗУ)
- Программная память (ROM) расширена до 8 КБ (13-битное адресное пространство) с использованием переключения банков (исходный выбор одного чипа 4004 расширен до двух взаимоисключающих строк)[Заметка 2]
- Число регистров увеличено до 24 (8 добавлены к 16 существующим 4-битным универсальным "индексным регистрам", главным образом для использования с обработкой прерываний)[Заметка 3]
- Стек подпрограмм / прерываний расширен до 7 уровней (с использованием специальных внутренних регистров)[Примечание 4]
Характеристики
- Шина данных: 4-битный
- Адресный автобус: 12 бит для ПЗУ (мультиплексируется на шину данных; для передачи адресов потребовалось три цикла шины, как в 4004), фактически 13-битное с использованием команд переключения банков; эффективно 10-битный или 8-битный для RAM (8-битный прямой адрес плюс один из четырех, т. е. 2-битный эквивалент, выбор банка; дополнительные 256 ячеек памяти "состояния" требовали использования команд ввода / вывода для чтения или запись из общего 8-битного адресного пространства)
- Напряжение: -15 В постоянного тока
- Рабочая частота: основная частота от 500 до 740 кГц (2 фазы, с перекрытием); От 62500 до 92500 8-тактовых машинных циклов в секунду, каждая инструкция требует одного или двух машинных циклов для чтения и выполнения, что означает приблизительное среднее значение 62KIPS на 740 кГц с равным миксом.[Примечание 5]
- Производительность: Заявленное время выполнения ~ 850 мкс для сложения двух 32-битных (8-значных двоично-десятичных) чисел или около 1175 таких операций в секунду и примерно 10 машинных циклов на каждую пару цифр.[Примечание 6]
Дизайнеров
Федерико Фаггин предложил проект, сформулировал архитектуру и руководил проектированием. Том Иннес (Тиннес из Бристоля).
Новые микросхемы поддержки
- Драйверы 4-битной параллельной шины 3216 и 3226[Примечание 7]
- 4101 - 256 x 4 бит Статическая RAM[Примечание 8]
- 4201 - Тактовый генератор, от 500 до 740 кГц, с использованием кристаллов от 4 000 до 5,185 МГц
- 4207 - 8-битный выходной порт общего назначения
- 4209 - 8-битный входной порт общего назначения
- 4211 - 8-битный порт ввода / вывода общего назначения
- 4265 - Программируемый ввод / вывод общего назначения
- 4269 - Программируемая клавиатура / дисплей
- 4289 - Стандартный интерфейс памяти (заменяет 4008/4009)[Примечание 9]
- 4308 - 1K x 8-битное ПЗУ плюс 4 x 4-битных порта ввода-вывода[Примечание 10]
- 4316 - ПЗУ 2K x 8 бит[Примечание 11]
- 4702 - СППЗУ 256 x 8 бит[Примечание 12]
Производство
Примечания
- ^ По сути, побочная функция Halt / Single Step; вся внутренняя обработка будет приостановлена, а большая часть аппаратного обеспечения микросхемы будет переведена в состояние с низким уровнем стока и высоким импедансом, но тактовые импульсы машинного цикла будут продолжать работать в пользу внешних устройств, включая любые контроллеры прерываний, которые потребуются для пробуждения чип, который полагался на их синхронизацию.
- ^ Объем RAM остался неизменным по сравнению с 4004, как и невозможность запускать программы из RAM.
- ^ Только 16 из так называемых «индексных» регистров (которые работали и могли использоваться способом, более знакомым как регистры общего назначения в современном ЦП, где Индексный регистр имеет гораздо более конкретное приложение для адресации памяти) может быть доступен в любой момент, при этом требуется конкретная команда переключения банка для замены одного или другого банка 8 на логические регистры 0-7, а регистры 8-15 остаются постоянно доступный. Идея заключалась в том, что любой критически важный контекст должен храниться в первых 8, поскольку при возникновении прерывания он не только помещает адрес обработчика исключений в стек, но и переключает банки индексных регистров, автоматически сохраняя это состояние до тех пор, пока обработчик не вернет управление. в нормальный поток программы - при условии, конечно, что вы еще не поменяли местами банки намеренно, чтобы использовать дополнительное пространство внутренней памяти. Если процедура прерывания хотела использовать последние восемь регистров, программист должен был сначала сохранить любые данные, хранящиеся в них, в другое место, а затем восстановить их перед возвратом из подпрограммы.
- ^ по умолчанию поддерживался только один уровень прерывания, так как дальнейшее обслуживание было отключено после подтверждения первоначального прерывания и повторно включено только на RTI, по сути, позволяя три уровня стекирования подпрограмм внутри самого прерывания, происходящего в рамках подпрограммы трех уровней, но обнаружение может быть принудительно включен с помощью определенной команды
- ^ Это может быть не совсем точным и основано на характеристиках 4004; некоторые из добавленных инструкций могут потребовать дополнительных циклов для выполнения, особенно любого внешнего стекирования регистров, необходимого для обработки прерывания, но в документации не ясно, так ли это; остановка / шаг - это особые случаи, которые, естественно, требуют многих миллионов циклов для «выполнения», но, поскольку они по существу происходят «вне» обычного потока программы, они не учитываются при вычислении скорости.
- ^ Аналогично, исходя из заявленной производительности 4004; «850 мкс» - это несколько округленное значение, заявленное в ранней брошюре Intel, и может быть не особенно точным, но общее время выполнения составляет примерно 79 или 80 машинных циклов, что вполне соответствует 10 циклам на пару цифр, 9 циклов на пару плюс 7 для настройки и любой необходимой постобработки, или 8 на пару плюс 15 дополнительных (... и т. Д.). Фактическое сочетание инструкций не было указано, поэтому без исходного кода и списка времени выполнения инструкций невозможно быть уверенным. Более эффективная процедура добавления могла бы быть возможна на 4040 по сравнению с 4004, но дополнительные инструкции не предлагают какого-либо очевидного метода для достижения этого и, по-видимому, сосредоточены на устранении более очевидных недостатков более раннего чипа, например отсутствие прерываний и остановок.
- ^ Обеспечивает способность выдерживать «высокий» ток (~ 25 мА) для внешних устройств ввода / вывода. Предполагается, что он предназначен исключительно для использования с 4289, но дизайн выглядит довольно универсальным и может быть адаптирован к голым 4004/4040?
- ^ то есть объединение главный хранение четырех 4002 в одной индивидуально выбираемой микросхеме, но без 4-битного порта ввода / вывода и дополнительных 64 слов памяти состояния, доступной для команд ввода / вывода. Поскольку он имеет выделенную 8-битную адресную шину и две отдельные 4-битные шины ввода и вывода данных, 4101 предназначен только для использования в качестве периферийного устройства нисходящего потока 4289. Это дополнительно подчеркивается в заявлении SRAM: используется для записываемой программной памяти », что недостижимо для 4004 или 4040.
- ^ Позволяет подключать «стандартную» память (8-битные параллельные данные и / или до 12-битной параллельной адресации, последняя в форме 8-битного адреса плюс 4-битный двоичный выбор микросхемы) и устройств к 4004 или 4040, как а также использование ОЗУ в качестве памяти программ (4289 может быть установлен так, чтобы он выглядел как обычное ПЗУ 4001 для процессора независимо от того, что подключено с другой стороны; поддерживая иллюзию, он также обеспечивает те же четыре линии ввода / вывода что предлагает 4001). 4040, использующий два 4289, может предлагать различные комбинации ПЗУ и ОЗУ в сегментах 2 КБ до 8 КБ с относительно упрощенной схемой сегрегированной адресации и небольшим количеством 4101 и 4308, например 3x 4308 и 8x 4101 для 6 КБ ПЗУ и 1 КБ ОЗУ.
- ^ Непосредственно заменяет четыре отдельных чипа 4001 одним чипом, в том числе доступен в четырех «металлических» вариантах, которые отвечают на логические адреса чипа 0-3, 4-7, 8-11 и 12-15, имитируя шестнадцать оригинальных версий 4001
- ^ Предназначен для использования после 4289, так как он имеет 11-битную шину ввода параллельного адреса и отдельную 8-битную параллельную шину вывода данных, а также три линии выбора микросхемы с двоичным кодированием (что позволяет обеспечить до 16 КБ ПЗУ с схема адресации несовместима с 4004/4040 на нескольких разных уровнях - хотя только два 4316, то есть 4 КБ ПЗУ, или один 4316 плюс ОЗУ, могут быть напрямую адресуется 4289 без дополнительного оборудования и / или специальных методов программирования)
- ^ то есть с УФ-стиранием, а не электронным способом, и снова предназначен для использования с 4289, поскольку он имеет отдельные 8-битные параллельные шины ввода адреса и вывода данных.
Рекомендации
- ^ "История ЦП - Музей ЦП - Жизненный цикл ЦП". www.cpushack.com.
- ^ "cpu-collection.de >> Intel >> 4040". www.cpu-collection.de.
- ^ "cpu-collection.de >> Intel >> 4040". www.cpu-collection.de.