Intel 4040 — 4-битный микропроцессор (улучшенный), разработанный Intel Corp. и выпущенный в 1974 году. Преемник Intel 4004 и предшественник первого 8-битного микропроцессора Intel 8008.
Стиль этой статьи неэнциклопедичен или нарушает нормы литературного русского языка.
Чип i4040 содержал 3000 транзисторов, размещённых на одном кристалле по техпроцессу 10 мкм. Микропроцессор использовался, в основном, в игровых устройствах, микроконтроллерах, управляющих различными процессами, и тестовых устройствах. Корпус i4040 вдвое шире корпуса i4004 и имеет 24 вывода (это замышлялось с самого начала, но из-за политики тогдашнего руководства Intel все микросхемы выпускались в корпусах с 16 выводами, из-за чего i4004 не смог реализовать первоначально задуманных функций). В новый процессор добавили 14 новых команд к 46 старым, увеличили количество регистров до 24, расширили память команд до 8 кб и увеличили глубину стека до 7 уровней, также, самое важное, появилась поддержка прерываний (отдельная линия ввода)[1] . Семейство микросхем i4040 также именовали как MCS-40. Выпускались микросхемы 3 типов: C4040, D4040, P4040.
Разрядность регистров: 4 бита
Внутренняя шина: 4 бита
Внешняя шина: мультиплексированная для адреса, данных, управления — 4 бита
Банки памяти:
Область программ: 2 банка (2 линии CM)
Область данных: 4 банка (4 линии CM) или 8 банков (4 линии CM с дешифратором)
Как и i4004, чип i4040 поставлялся с дополнительными микросхемами, в зависимости от потребностей микросхема могла поставляться со следующими чипами:
4201 — тактовый генератор, схема формирования сигналов RESET, STOP/ACK и импульсов пошагового исполнения.
Схемы для банков программ (ПЗУ, ОЗУ и ввода-вывода):
4001 — 256-байтовое масочное ПЗУ (256 8-битовых программных инструкций) и один встроенный 4-битный порт ввода-вывода.
4308 — 1024-байтовое масочное ПЗУ (1024 8-битовых программных инструкций) и четыре встроенных 4-битных порта ввода-вывода. Полная замена для четырёх схем 4001.
4008, 4009 — комплект для подключения стандартных чипов памяти (ПЗУ, ППЗУ, ОЗУ) и портов ввода-вывода. Позволяет подключить до 16 разных устройств памяти в формате 8 бит адреса, 8 бит данных. Для записи в ОЗУ используется ранее недокументированная команда WPM (Write Program Memory). Также поддерживается до 16 четырёхбитных портов ввода и до 16 четырёхбитных портов вывода. Intel рекомендует совместно использовать чипы: 4316 (2048 байт масочное ПЗУ), 4702А (256 байт ППЗУ/EPROM), 4101 (256 байт статическое ОЗУ).
4289 — схема для подключения стандартных чипов памяти и портов ввода-вывода. Более поздняя замена 4008/4009 в одном корпусе.
4207, 4209, 4211 — порты GPIO (4 порта по 4 бит). Схемы имеют адрес 3 в области программ, поэтому не могут использоваться совместно с 4008/4009/4289, а схемы 4001/4308 не должны занимать адрес 3. Можно использовать одновременно до восьми схем, используя для выбора линии CM-RAM.
4207 — 8 бит синхронного вывода данных, 4 выходных бита управления, 4 входных бита управления.
4209 — 8 бит синхронного ввода данных, 4 выходных бита управления, 4 входных бита управления.
4211 — 8 бит синхронного вывода данных, 8 бит синхронного ввода данных.
Схемы для банков данных (ОЗУ и ввода-вывода):
4002 — 40-байтовое ОЗУ (80 4-битных ячеек) и один встроенный 4-битный выходной порт; RAM в чипе организована в 4 «регистра» из двадцати 4-битных ячеек:
16 ячеек данных (в оригинальном калькуляторе использовались для цифр мантиссы)
4 ячейки состояния (в оригинальном калькуляторе использовались для цифр экспоненты и знаков)
4003 — 10-битный расширитель вывода (сдвиговый регистр, преобразующий последовательный код в параллельный)
4265 — 4 универсальных четырёхбитных порта ввода/вывода. Программно поддерживаются 14 режимов. Полностью замещает один из банков ОЗУ 4002.
4269 — программируемый контроллер клавиатуры и дисплея. Производит циклическое сканирование двух клавиатурных матриц 8×8 (128 клавиш) и циклический вывод 2*16*4 бит данных для управления дисплеем. Полностью замещает один из банков ОЗУ 4002.