Как реализовать генератор последовательностей с помощью универсального регистра сдвига? - PullRequest
0 голосов
/ 08 июня 2018

Как я могу реализовать генератор последовательностей, который генерирует следующую последовательность

0000 1000 0001 0011 0110 1101 1110 1111

с использованием универсального регистра сдвига?Сдвиговый регистр, который мне нужно использовать, это модель 74LS194, показанная ниже, где входы S1, S0 управляют режимом сдвига.

Если (S1, S0) = (0,0), то текущее значение заблокировано наследующее состояние.Если (1,0), это сдвиг вправо.Если (0,1), это сдвиг влево, а (1,1) указывает на параллельную загрузку с параллельных входов данных.

Я думаю, что это был бы простой вопрос, если бы требование было просто использовать триггерымой выбор, а не сдвиговый регистр, но с этим требованием я не знаю с чего начать.Несмотря на то, что я рисую 4 карты Карно для каждой цифры, я, кажется, не понимаю ключ.Любая помощь будет оценена.Заранее спасибо!

Универсальный сдвиговый регистр 74LS194:

Universal shift register 74LS194


Редактировать: я принял совет и написал следующее состояниетаблица с входными сигналами.Я заметил, что при рисовании следующей таблицы состояний было слишком много входных переменных.Вы должны рассмотреть сигналы Qd Qc Qb Qa, CLR, S1, S0, RIn, LIn для каждого следующего состояния Qd, Qc, Qb, Qa, что означает карту Карно с 9 переменными для каждого Q, что, как я знаю, смешно.Я что-то здесь упускаю?

1 Ответ

0 голосов
/ 09 июня 2018

Первое, что нужно сделать, это выяснить режим сдвига (S1, S0).Во всех случаях может работать только одна смена:

0000, 1101, 1110 => shift right
1000, 0001, 0011, 0110 => shift left
1111 => load all zeros

Поскольку в последовательности используются не все комбинации Q0-Q3, существует много допустимых функций от Q0-Q3 до S0, S1.Я заметил, что вы можете принять решение, основываясь на количестве 1 бита.

Теперь, когда вы знаете, как меняется каждый код, вы можете вычислить входной бит (LSI / RSI)

0000, 1101, 1110 => LSI=1
1000, 0001, 0110 => RSI=1
0011 => RSI=0

Похоже, что LSI всегда может быть 1.

Существует множество функций, которые действительны для RSI.RSI = НЕ (Q0 & Q1) работает.

...