В этом вопросе определяется соответствие между EBCDIC и расширенным набором ISO-8859-1.
Ваша задача - построить сеть из двух входных вентилей NAND, которые будут принимать восемь входов, A1, A2, A4, ..., A128
представляющих символ EBCDIC, и возвращать восемь выходов, B1, B2, B4, ..., B128
которые представляют соответствующий символ «ISO-8859-1» в соответствии с этим отображением.
Чтобы упростить задачу, вы можете использовать на диаграмме вентили AND, OR, NOT и XOR со следующими соответствующими показателями:
NOT: 1
AND: 2
OR: 3
XOR: 4
Каждый из этих баллов соответствует количеству вентилей NAND, необходимых для построения соответствующих вентилей.
Логическая схема, которая использует наименьшее количество вентилей NAND для правильной реализации всех вышеперечисленных требований, выигрывает.
источник
309 NANDS
Действительно низкое решение по количеству NAND, но я могу пойти еще ниже. Нужно просто где-то остановиться, какое-то время, и 309 кажется хорошим для этого. (Я на самом деле достиг 308 NANDs позже, но затем столкнулся с каким-то барьером.)
На этот раз карандашом не нарисовано изображение схемы. Возможно, позже, если я когда-нибудь вернусь к этой проблеме и столкнусь с нижним краем, уступом, пределом, во все более и более густой заросли неправильных цепей.
Схема представлена в явном коде Verilog, готовом к работе с включенным тестом.
Verilog код:
источник