Схема, которая принимает 4-битное число и генерирует его тройку, что это значит? Может ли кто-нибудь привести мне пример?

Мне нужно спроектировать комбинационную схему, которая принимает 4-битное число и генерирует его тройку, что это значит? Может кто-нибудь, пожалуйста, дайте мне пример конкретного ввода и его вывода, чтобы я мог понять вопрос?

Если бы вы могли дать мне какую-либо подсказку для разработки этой схемы, я был бы очень признателен.

Спасибо.


person user93765    schedule 07.10.2014    source источник
comment
Это означает, что выход должен быть в 3 раза больше, чем вход   -  person JoelFan    schedule 08.10.2014
comment
Вход: 4-битное число от 0 до 15. Выход: 6-битное число от 0 до 45.   -  person barak manos    schedule 08.10.2014
comment
Если вы не заботитесь об использовании минимально возможной логики и вам нравится повторное использование вещей, просто соедините пару сумматоров вместе. Добавьте свой ввод к себе, затем добавьте результат к вводу.   -  person    schedule 08.10.2014


Ответы (2)


Начните с таблицы истинности:

IN              OUT
 0   0 0 0 0     0   0 0 0 0 0 0
 1   0 0 0 1     3   0 0 0 0 1 1
 2   0 0 1 0     6   0 0 0 1 1 0
 3   0 0 1 1     9   0 0 1 0 0 1
 4   0 1 0 0     C   0 0 1 1 0 0
 5   0 1 0 1     F   0 0 1 1 1 1
 6   0 1 1 0    12   0 1 0 0 1 0
 7   0 1 1 1    15   0 1 0 1 0 1
 8   1 0 0 0    18   0 1 1 0 0 0
 9   1 0 0 1    1B   0 1 1 0 1 1
 A   1 0 1 0    1E   0 1 1 1 1 0
 B   1 0 1 1    21   1 0 0 0 0 1
 C   1 1 0 0    24   1 0 0 1 0 0
 D   1 1 0 1    27   1 0 0 1 1 1
 E   1 1 1 0    2A   1 0 1 0 1 0
 F   1 1 1 1    2D   1 0 1 1 0 1

Затем используйте стандартный метод, такой как карта Карно, чтобы вывести выражения ввода/вывода.

person Paul R    schedule 07.10.2014

Вы захотите составить таблицу истинности, а затем вывести комбинационную логику либо из булевой алгебры (сумма истин), либо из k-карты.

Если, например, введено 0100, что равно десятичному числу 4, то тройка будет равна 12 или 1100. Поскольку наибольшее число равно 1111 (15), ваш вывод должен представлять 45 или 101101 (6 бит).

Следовательно, у вас будет что-то вроде:

Input | Output
-----------------
abcd     uvwxyz
0000  | 000000
0001  | 000011
0010  | 000110
0011  | 001001
0100  | 001100
0101  | 001111
0110  | 010010
0111  | 010101
1000  | 011000
1001  | 011011
1010  | 011110
1011  | 100001
1100  | 100100
1101  | 100111
1110  | 101010
1111  | 101101

Исходя из этого, вы можете построить k-карту для каждого выходного бита и найти минимальную комбинационную логику, необходимую для каждого выходного бита.

Например, чтобы найти комбинационную логику для бита u, вы должны использовать следующую k-карту:

         AB
      00 01 11 10
CD 00 0  0  1  0
   01 0  0  1  0
   11 0  0  1  1
   10 0  0  1  0

Что сводится к ACD + AB

Повторите для остальных 5 бит (v-z), и у вас будет полная комбинационная логика, необходимая для реализации решения.

person Gillespie    schedule 07.10.2014
comment
Карта k для u неверна, поскольку ABCD=1110 u=1, а не 0. Таким образом, у нас должно быть 5 единиц вместо 4. Верно? - person user93765; 08.10.2014