Применение ПЗУ, вычислитель квадратов входных чисел

Опубликовано 19.07.2011 Ведущий Валерий Харыбин

Микросхемы ПЗУ могут заменять собой любые комбинационные микросхемы: дешифраторы, шифраторы, компараторы кодов, сумматоры, мультиплексоры, преобразователи кодов и т.д. Однако при подобной замене всегда стоит подумать, не лучше ли использовать уже готовые микросхемы, чем программировать ПЗУ. Микросхемы ПЗУ могут оказаться медленнее стандартных комбинационных микросхем и потреблять больший ток питания. К тому же они могут требовать выходных резисторов. Другое дело, когда ПЗУ выполняет функцию, отличающуюся от функции стандартной комбинационной микросхемы.
В качестве простейшего примера рассмотрим вычислитель для возведения в квадрат 4-разрядного двоичного числа. Вычислитель выполнен на микросхеме ПЗУ типа РЕ3, у которого использованы четыре разряда адреса и восемь разрядов данных. Он позволяет получать двоичные коды квадратов любых чисел в диапазоне от 0 до 15, которые принимают значения от 0 до 225.
Карта прошивки ПЗУ вычислителя квадратов будет очень проста: код данных в каждой ячейке равен квадрату кода адреса этой ячейки. Используется всего 16 ячеек памяти, содержимое остальных 16 ячеек не имеет значения.
На такой же точно схеме можно сделать и вычислитель квадратов в двоично-десятичном коде. В этом случае будет использовано всего лишь десять ячеек памяти с адресами от 0 до 9, а в ячейках будут записаны их квадраты от 0 до 81.
Недостаток любого табличного вычислителя на ПЗУ — это необходимость увеличения вдвое требуемого объема памяти при увеличении разрядности входного числа на единицу. Например, при 8-разрядных входных числах требуется ПЗУ с количеством ячеек 256, при 16-разрядных входных числах — ПЗУ с количеством ячеек 64К, а при 32-разрядных входных числах — ПЗУ с количеством ячеек 4Г. Такие большие объемы очень трудно реализовать на серийно выпускаемых микросхемах. Поэтому табличные вычислители на ПЗУ обычно строятся только для разрядности входных чисел не более 16.