Расширяя набор аргументов, мы постепенно придем к арифметико-логическому устройству (АЛУ). АЛУ представляет собой схему, выполняющую определенный набор арифметических и логических операций над входными данными в соответствии со значением на входах выбора режима. Микросхема 74LS382, показанная на Рис. 2.10, выполняет 8 операций над двумя 4-битными числами. Выполняемая операция задается тремя битами выбора режима S0S1S2 (Рис. 2.10, а). Кроме сложения и вычитания, это АЛУ выполняет также операции И, ИЛИ и Исключающее ИЛИ. Микросхема формирует даже признак переполнения дополнительного кода (см. стр. 24).
Рис. 2.10.Микросхема АЛУ 74LS382
Как мы увидим чуть позже, АЛУ является «сердцем» любого компьютера или микропроцессора. Подавая на входы выбора режима некоторую последовательность двоичных значений, можно заставить АЛУ выполнить соответствующую последовательность операций. Эти коды операций хранятся во внешней памяти и последовательно считываются схемами управления.
Обычно последовательность кодов операций, составляющих программу, хранится в какой-либо БИС ПЗУ Обратимся к структуре, показанной на Рис. 2.11. На этом рисунке изображен дешифратор 3 на 8, управляющий матрицей диодов 8x2. Для каждой n-й комбинации сигналов, подаваемых на вход адреса, выбирается п-я строка. Если к этой строке подключен диод, то он открывается и на линии соответствующего столбца появляется НИЗКИЙ уровень. Соответственно, инвертирующий буфер с тремя состояниями формирует ВЫСОКИЙ уровень для каждого подключенного диода и НИЗКИЙ уровень для разомкнутой цепи. Таким образом, для каждого входного кода совокупность подключенных диодов определяет выходной код. Для наглядности матрица запрограммирована на реализацию полного 1-битного сумматора, изображенного на Рис. 2.8, а, однако может быть задана и любая другая функция трех переменных.
Рис. 2.11.Реализация 1-битного сумматора на ПЗУ
Диодная матрица, показанная на Рис. 2.11, называется постоянным запоминающим устройством (ПЗУ), поскольку «память» представляет собой комбинацию диодов, формируемую на этапе изготовления микросхемы. Старые устройства, имевшие, как правило, дешифратор и матрицу 32х8, обычно выпускались в версиях, программируемых пользователем, в которых связи формировались плавкими перемычками. Требуемые диоды можно было исключить из матрицы при помощи высокого напряжения. Такие устройства называются программируемыми ПЗУ (ППЗУ).
При реализации СБИС ППЗУ больших объемов, необходимых для хранения программ, плавкие перемычки очень неудобны. Например, небольшое ППЗУ 27С64[33], показанное на Рис. 2.12, имеет объем, для формирования которого потребовалось бы 65 536 пар «перемычка — диод». То есть это относительно небольшое устройство способно хранить 8192 байта данных. В микросхеме 27С64 в качестве программируемой перемычки используется электрический заряд на плавающем затворе МОП-транзистора. Второй МОП-транзистор выполняет роль диода. Как и в варианте с плавкими перемычками, инжекция заряда в изолированный затвор осуществляется с помощью высокого напряжения. Образующееся электрическое поле удерживает МОП-транзистор в состоянии проводимости. Для полного рассасывания этого заряда требуется достаточно длительный срок в несколько десятков лет, однако это значение можно уменьшить до 20 мин, подвергая затвор интенсивному ультрафиолетовому излучению. Поэтому устройства, подобные 27С64, называют стираемым ППЗУ (СППЗУ). В корпусе микросхем, предусматривающих многократное использование, напротив кристалла размещается кварцевое окошко (см. Рис. 2.12), которое можно увидеть на фотографии, приведенной на стр. 15.
Рис. 2.12.Микросхема стираемого ППЗУ (СППЗУ) 27С64 (К573РФ4/6)
Программирование таких микросхем осуществляется специальными устройствами — программаторами. Версии микросхем без окошка называются однократно-программируемыми ПЗУ, поскольку их нельзя стереть после программирования. Однако они намного дешевле и поэтому используются в мелко- и среднесерийном производстве.