Логические вентили - Dmux (nand2tetris)

Я только начал проходить курс nand2tetris! В первом проекте требуется строить логические элементы с «Nand», начинающимся с «Not». Ну, это было легко в начале, построить или, и, xor. Но потом появился "Мультиплексор". Мне потребовалось некоторое время, чтобы решить, какие ворота использовать... Затем я открыл для себя новую технику под названием "Каноническое представление", и проблема была легко решена.

Но вот в чем проблема: демультиплексор!!! У него два выхода, поэтому я застрял, как реализовать эти два выходных элемента с помощью канонического представления?


^ проблема решена ^


А у меня более глобальная проблема. Как вы строите эти ворота! Возможна ли логическая реализация, например, шлюза Multiplexor?


person log101    schedule 30.01.2017    source источник
comment
Ха-ха! Обновить, немного подумав на бумаге, это просто пришло мне в голову! Но второй вопрос все еще существует!   -  person log101    schedule 30.01.2017


Ответы (1)


Предполагая, что вы построили основные логические элементы (И, ИЛИ, Xor...), тогда демультиплексор может быть построен из трех этих компонентов.

Рассмотрим описание состояния, которое вам дано:

/** * Demultiplexor: * {a, b} = {in, 0} if sel == 0 * {0, in} if sel == 1 */

Просто создайте две схемы, одну для вычисления a, а другую для вычисления b. Вы можете подключить свои входы (in и sel) к обеим схемам.

person MadOverlord    schedule 30.01.2017