· не равен 0, то число нечётное, переходим к шагу 12;
10. Производим сложение числа, находящегося в регистре Sч и числа, находящегося в регистре R. Результат помещаем в регистр Sч: Sч¬Sч+R;
11. Увеличиваем адрес числа на 1: Rа¬Rа+1;
12. Проверяем, последнее ли это число массива А: Сч(а)=N:
· если да, то переходим к шагу 14;
· если нет, то переходим к шагу 13;
13. Увеличиваем значение счётчика Сч(а) на единицу: Сч(а)¬Сч(а)+1 и переходим к шагу 7;
14. Считываем в регистр R число из массива В с порядковым номером Сч(в): R¬В[Сч(в)];
15. Проверяем число на «знак»: R[7]=0. Если старший разряд числа:
· равен 0, то число положительное, переходим к шагу 16;
·
не равен 0, то число отрицательное, переходим к шагу 19; 16. Проверяем число на чётность: R[0]=0. Если младший разряд числа:
· равен 0, то число чётное, переходим к шагу 19;
· не равен 0, то число нечётное, переходим к шагу 17;
17. Производим сложение числа, находящегося в регистре Sн и числа, находящегося в регистре R. Результат помещаем в регистр Sн: Sн¬Sн+R;
18. Увеличиваем адрес числа на 1: Rа¬Rа+1;
19. Проверяем, последнее ли это число массива В: Сч(в)=N:
· если да, то переходим к шагу 21;
· если нет, то переходим к шагу 20;
20. Увеличиваем значение счётчика Сч(в) на единицу: Сч(в)¬Сч(в)+1 и переходим к шагу 14;
21. Сравниваем сумму чётных и нечётных чисел: Sч=Sн;
· Если да, то переходим к шагу 22;
· Если нет, то переходим к шагу 23;
22. Сч=1;
23. Конец.
5 Синтез устройства управления
Устройство управления (или управляющее устройство) входит в состав микропроцессора и предназначено для подачи управляющих сигналов в устройства ЭВМ, и обеспечивает их соответствующее функционирование и взаимодействие друг с другом.
Синтез управляющего устройства основан на синтезе операционного устройства. За основу берётся схема алгоритма операционного устройства, на базе этой схемы строится схема алгоритма в микрооперациях, схема алгоритма в макрооперациях, схема алгоритма в микрокомандах и граф функционирования. Завершающим этапом синтеза устройства управления является построение структурной схемы устройства управления.
Микрооперации обозначаются символами у0, у1, у2 и т. д. Совокупность нескольких однотипных микроопераций образуют макрооперацию. Макрооперации обозначаются символами Y0, Y1, Y2, и т. д. Для обозначения микрокоманд применяются символы а0, а1, а2 и т. д.
5.1 Построение схемы алгоритма в микрооперациях
5.2 Построение схемы алгоритма в макрооперациях
5.3 Построение схемы алгоритма в микрокомандах
5.4 Построение графа функционирования
5.5 Структурная схема устройства управления
6 Цифровые устройства, входящие в состав процессора
6.1 Триггеры
Триггер – это логическая схема, имеющая два устойчивых состояния, которые называются единичным и нулевым и обозначаются 1 и 0.
Триггер предназначен для хранения значения одной логической переменной. В соответствии с этим триггер имеет два состояния: одно из них обозначается как состояние 0, другое – как состояние 1. Воздействуя на входы триггера, его устанавливают в нужное состояние.
Триггер имеет два выхода: прямой Q и инверсный`Q.
Классификация триггеров
1). По типам входов бывают SR-триггеры, JK-триггеры, D-триггеры и Т-триггеры. Эти типы триггеров являются основными.
2). По характеру реакции на входные сигналы триггеры бывают асинхронные и синхронные.
Асинхронные триггеры имеют только информационные (логические) входы. В таком триггере входные сигналы воздействуют на состояние триггера непосредственно с момента их подачи на вход.
Синхронные триггеры имеют дополнительный вход, который обозначается С. Вход С называется дополнительным, управляющим или синхронизирующим. Синхронный триггер срабатывает только при подаче синхронизирующего сигнала на управляющий вход С.
Принцип работы триггеров
Каждый тип триггера характеризуется таблицей переходов. Таблица переходов – это форма таблицы истинности, описывающая принцип работы устройства. Обратим внимание на то, что хотя триггер всегда имеет два выхода: прямой Q и инверсный`Q, в таблице переходов принцип работы триггера описывается только при помощи прямого выхода Q.
Первая таблица переходов соответствует работе SR-триггера. Здесь Q0 – текущее состояние триггера (т. е. состояние до подачи на вход активного сигнала). Активными являются сигналы, соответствующие логической единице. Первая строка – активных сигналов на входе нет (S и R равны нулю), поэтому на выходе сохраняется текущее состояние. Во второй и в третьей строке на входе появляются активные сигналы (во второй R = 1, а в третьей S = 1). Эти активные сигналы переводят триггер в другое состояние: R – в состояние 0, а S – в состояние 1. В последней строке звёздочкой отмечено запрещённое состояние входных сигналов триггера (так как оба входа активны, а одновременный переход в противоположные состояния невозможен). Дело в том, что если на RS-триггер подать одновременно оба входных сигнала, то обоих выходах появятся нули. Если одновременно снять единицы с входов, то оба элемента начнут переключаться в единичное состояние, стремясь оставить другой элемент в нулевом состоянии. Какой из элементов победит, зависит от скоростей переходных процессов, коэффициентов усиления и других факторов. Поэтому, комбинация R = S = 1 считается запрещённой. Вторая таблица переходов соответствует работе JK-триггера. JK-триггер имеет входы установки (J) и сброса (K), подобные входам RS-триггера. В отличие от последнего, допускает одновременную подачу сигналов J и K и при J = К = 1 он устанавливается в состояние, противоположное текущему`Q0. JK-триггер называется универсальным.
Рассмотрим таблицы переходов для D-триггеров и Т-триггеров.
Таблица переходов Т-триггера D | Q | Т | Q |
0 | 0 | 0 | Q0 |
1 | 1 | 1 | `Q0 |
У D-триггера сигналы на выходе такие же, как и на входе. Такой триггер называется информационным.
Т-триггер отличается тем, что если входной сигнал пассивен (т. е. Т = 0), то на выходе сохраняется текущее состояние. Если входной сигнал активен (Т = 1), то на выходе триггер переключается в состояние, противоположное текущему. Такой триггер называют счётным.
Асинхронный RS-триггер показан на рисунке 1.
6.2 Регистры
Регистр – это цифровое устройство для хранения одного многоразрядного числа.
Регистр является наиболее распространённым узлом цифровой техники и строится в виде набора триггеров, каждый из которых предназначается для хранения цифр определённого числа. Таким образом, регистр для хранения n-разрядного двоичного числа должен содержать n триггеров. Чаще всего регистры строятся на основе синхронных RS-триггеров или D-триггеров. В отдельных случаях регистры могут быть реализованы на базе JK-триггеров.