Разработка микропроцессорного устройства
СОДЕРЖАНИЕ: Введение В современном мире роль информатики, средств обработки, передачи, накопления информации неизмеримо возросла. Средства информатики и вычислительной техники сейчас во многом определяют научно-технический потенциал страны, уровень развития ее народного хозяйства, образ жизни и деятельности человека.Введение
|
|
1 Формализация задачи
Даны два массива чисел числа восьмиразрядные со знаком. Количество чисел в массивах одинаковое и равно N . Найти сумму положительных чётных в первом массиве и положительных нечётных чисел во втором массиве. Сравнить суммы между собой.
Разработать микропроцессорное устройство, выполняющее операции вычисления целых чисел, используя:
- Принцип схемной логики;
- Принцип программируемой логики.
В процессорное устройство необходимо включить логические элементы для формирования адресов ячеек памяти.
Адрес |
Данные массива «А» от -127 до +127 |
||||||
№ элемента |
Дес. число |
Дв. число |
Шестн. число |
Прямой код |
Обратный код |
Дополнительный код |
|
0001 |
0 |
48 |
00110000 |
30 |
00110000 |
||
0002 |
1 |
117 |
01110101 |
75 |
01110101 |
||
0003 |
2 |
-80 |
01010000 |
50 |
01010000 |
10101111 |
10110000 |
0004 |
3 |
-60 |
00111100 |
3С |
00111100 |
11000011 |
11000100 |
0005 |
4 |
120 |
01111000 |
78 |
01111000 |
||
0006 |
5 |
104 |
01101000 |
68 |
01101000 |
||
0007 |
6 |
-34 |
00100010 |
22 |
00100010 |
11011101 |
11011110 |
0008 |
7 |
83 |
01010011 |
53 |
01010011 |
||
N |
Адрес |
Данные массива «B» от -127 до +127 |
||||||
№ элемента |
Дес. число |
Дв. число |
Шестн. число |
Прямой код |
Обратный код |
Дополнительный код |
|
0001 |
0 |
36 |
00100100 |
24 |
00100100 |
||
0002 |
1 |
-8 |
00001000 |
8 |
00001000 |
11110111 |
11111000 |
0003 |
2 |
97 |
01100001 |
61 |
01100001 |
||
0004 |
3 |
-94 |
01011110 |
5Е |
01011110 |
10100001 |
10100010 |
0005 |
4 |
-105 |
01101001 |
69 |
01101001 |
10010110 |
10010111 |
0006 |
5 |
68 |
01000100 |
44 |
01000100 |
||
0007 |
6 |
-32 |
00100000 |
20 |
00100000 |
11011111 |
11100000 |
0008 |
7 |
-25 |
00011001 |
19 |
00011001 |
11100110 |
11100111 |
N |
|
2 Два подхода к построению процессорного устройства
Существует два принципиально разных подхода к проектированию микропроцессорного устройства: использование принципа схемной логики и использование принципа программируемой логики .
В первом случае в процессе проектирования подбирается некоторый набор цифровых микросхем (обычно малой и средней степени интеграции) и определяется такая схема соединения их вводов, которая обеспечивает требуемое функционирование (т. е. функционирование микропроцессора определяется тем, какие выбраны микросхемы и по какой схеме выполнено соединение их выводов). Устройства, основанные на таком принципе схемной логики, способны обеспечивать наивысшее быстродействие при заданном типе технологии элементов. Недостаток этого принципа построения процессора состоит в трудности использования БИС (больших интегральных схем) и СБИС (сверхбольших интегральных схем). Это связано с тем, что при использовании схемного принципа каждый разрабатываемый процессор окажется индивидуальным по схемному построению и потребует изготовления индивидуального типа БИС. Тогда выпускаемые промышленностью БИС окажутся узкоспециализированными, число выпускаемых типов БИС будет большим, а потребность в каждом типе БИС окажется низкой. Выпуск многих типов БИС малыми сериями по каждому типу для промышленности окажется экономически невыгодным.
|
Процессор, построенный на одной или нескольких БИС, называется микропроцессором .
|
3 Синтез операционного устройства
Операционным называют устройство, предназначенное для выполнения каких-либо операций.
Операционные устройства могут быть простыми , предназначенными для выполнения конкретного алгоритма над определённым видом информации, и сложными , предназначенными для выполнения множества алгоритмов над информацией разного вида.
Любое операционное устройство представляет собой цифровой автомат. К простым операционным устройствам относятся, например, счётчики, регистры. Простые операционные устройства не требуют какого-либо управления, в отличие от сложных.
Сложное операционное устройство состоит из двух частей: из операционного автомата, реализующего алгоритм, и из управляющего автомата, отвечающего за поведение операционного автомата.
Сложные операционные устройства бывают последовательные, т. е. с многотактовым выполнением своих функций, или параллельными, или однотактовыми. Часто используются промежуточные, параллельно-последовательные формы операционных устройств.
Процесс функционирования операционного устройства распадается на последовательность элементарных действий в его узлах, например:
1). Установка регистра в некоторое состояние;
2). Инвертирование содержимого разрядов регистра;
3). Пересылка содержимого из одного узла в другой;
4). Сложение;
|
6). Некоторые логические действия (операции дизъюнкции, конъюнкции, эквивалентности и др.).
Каждое такое элементарное действие, выполняемое в одном из узлов операционного устройства в течение одного тактового периода, называется микрооперацией .
Совокупность нескольких одновременно выполняемых операций называется микрокомандой , а набор микрокоманд, предназначенный для решения определённой задачи, называется микропрограммой .
Для синтеза операционного устройства нужно чётко знать, какие операции выполняются и в какой последовательности.
Синтез операционного устройства включает в себя построение алгоритма операционного устройства. Прежде, чем строить алгоритм, операционное устройство разбивается на отдельные блоки.
Для выполнения поставленной задачи необходимо иметь:
· Регистр для хранения и обработки числа R;
· Регистры для хранения чётных Sч и нечётных Sн чисел;
· Регистр для формирования адресов ячеек памяти Rа;
· Счётчики чисел в массивах Сч(а) и Сч(в);
· Сумматор Sm;
· Компаратор для сравнения суммы чётных и нечётных чисел Comp;
· Шифратор CD и дешифратор DC для перевода чисел.
· Если суммы четных и нечётных чисел равны, то Сч = 1.
|
Описание микроопераций:
у0 : обнуление регистра адреса: Rа 0;
у1 : запись в счётчик числа 1: Сч(а) 1;
у2 : запись в счётчик числа 1: Сч(в) 1;
у3 : обнуление регистра для хранения суммы чётных чисел: Sч 0;
у4 : обнуление регистра для хранения суммы нечётных чисел: Sн 0;
у5 : считывание в регистр очередного элемента массива А: R А [Сч(а)];
у6 : суммирование значений регистров R и Sч и запись результата в регистр Sч: Sч Sч + R;
у7 : увеличение адреса числа на 1: Rа Rа + 1;
у8 : переход к следующему элементу массива А: Сч(а) Сч(а) + 1;
у9 : считывание в регистр очередного элемента массива В: R В [Сч(в)];
у10 : суммирование значений регистров R и Sн и запись результата в регистр Sн: Sн Sн + R;
у11 : увеличение адреса числа на 1: Rа Rа + 1;
у12 : переход к следующему элементу массива В: Сч(в) Сч(в) + 1;
у13 : сравнение значений регистров Sч и Sн: Comp Sч = Sн.
у14 : Сч = 1.
|
Признаки:
х1 : проверка на «знак»: R [7] = 0;
х2 : проверка на чётность элемента массива А: R [0] = 0;
х3 : проверка на то, последнее ли это число массива А: Сч(а) = N;
х4 : проверка на «знак» R[7] = 0;
х5 : проверка на чётность элемента массива B: R [0] = 0;
|
4 Построение алгоритма операционного устройства
4.1 Понятие алгоритма, его виды и свойства
Алгоритм – строгая последовательность действий, описывающая процесс преобразования объекта из начального состояния в конечное, записанная с помощью понятных исполнителю команд.
Исполнитель – это объект, выполняющий действия.
Алгоритмизация — процесс разработки алгоритма (плана действий) для решения задачи.
Алгоритмы состоят из отдельных команд, которые выполняются одна за другой в определённой последовательности.
Виды алгоритмов:
· Линейный;
· Циклический;
· Разветвляющийся.
Линейным называется такой алгоритм, при котором все действия выполняются однократно в заданном порядке.
Циклический алгоритм – это алгоритм, в котором все действия должны повторяться указанное число раз или пока не выполнено заданное условие.
Разветвляющийся алгоритм – это алгоритм, в котором в зависимости от условия выполняется либо одна, либо другая последовательность действий.
Свойства алгоритмов:
1.
|
2. Детерминированность (от латинского определённость, точность) – это ясность для исполнителя последовательности выполнения команд;
3. Результативность – это свойство, обеспечивающее преобразование объекта из начального состояния в конечное за конечное число шагов;
4. Массовость – это свойство предполагает, что алгоритм должен быть пригоден для решения всех задач данного типа;
5. Конечность - каждое действие в отдельности и алгоритм в целом должны иметь возможность завершения.
Алгоритм должен быть формализован по некоторым правилам посредством конкретных изобразительных средств. К ним относятся следующие способы записи алгоритмов: словесный, формульно-словесный, графический, язык операторных схем, алгоритмический язык.
Наибольшее распространение благодаря своей наглядности получил графический (в виде блок-схем) способ записи алгоритмов.
Блок-схемой называется графическое изображение логической структуры алгоритма, в котором каждый этап процесса обработки информации представляется в виде геометрических символов (блоков), имеющих определенную конфигурацию в зависимости от характера выполняемых операций.
|
Изображение элементов алгоритма:
Начало (конец) алгоритма;
Команда алгоритма;
Условие алгоритма (это высказывание, которое может быть либо истинным, либо ложным);
Ввод (вывод) данных.
Циклическая частота
|
4.2 Схема алгоритма
|
4.3. Описание алгоритма
1. Начало;
2. Обнуляем регистр адреса Rа: Rа¬0;
3. Записываем в счётчик Сч(а) число 1: Сч(а)¬1;
4. Записываем в счётчик Сч(в) число 1: Сч(в)¬1;
5. Записываем в регистр сумму чётных чисел Sч: число 0: Sч¬0;
6. Записываем в регистр сумму нечётных чисел Sн: число 0: Sн¬0;
7. Считываем в регистр R число из массива А с порядковым номером Сч(а) (с тем числом, которое хранится в этом счётчике): R¬А[Сч(а)];
8. Проверяем число на «знак»: R[7]=0. Если старший разряд числа:
· равен 0, то число положительное, переходим к шагу 9;
· не равен 0, то число отрицательное, переходим к шагу 12;
9. Проверяем число на чётность: R[0]=0. Если младший разряд числа:
· равен 0, то число чётное, переходим к шагу 10;
· не равен 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;
·
|
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-триггера |
Таблица переходов JK-триггера |
||||
S |
R |
Q |
J |
K |
Q |
0 |
0 |
Q0 |
0 |
0 |
Q0 |
0 |
1 |
0 |
0 |
1 |
0 |
1 |
0 |
1 |
1 |
0 |
1 |
1 |
1 |
* |
1 |
1 |
`Q0 |
|
Вторая таблица переходов соответствует работе JK-триггера. JK-триггер имеет входы установки (J) и сброса (K), подобные входам RS-триггера. В отличие от последнего, допускает одновременную подачу сигналов J и K и при J = К = 1 он устанавливается в состояние, противоположное текущему`Q0 . JK-триггер называется универсальным .
Рассмотрим таблицы переходов для D-триггеров и Т-триггеров.
Таблица переходов D-триггера |
|
||||
D |
Q |
Т |
Q |
||
0 |
0 |
0 |
Q0 |
||
1 |
1 |
1 |
`Q0 |
У D-триггера сигналы на выходе такие же, как и на входе. Такой триггер называется информационным .
Т-триггер отличается тем, что если входной сигнал пассивен (т. е. Т = 0), то на выходе сохраняется текущее состояние. Если входной сигнал активен (Т = 1), то на выходе триггер переключается в состояние, противоположное текущему. Такой триггер называют счётным .
|
Асинхронный RS-триггер показан на рисунке 1.
|
6.2 Регистры
Регистр – это цифровое устройство для хранения одного многоразрядного числа.
Регистр является наиболее распространённым узлом цифровой техники и строится в виде набора триггеров, каждый из которых предназначается для хранения цифр определённого числа. Таким образом, регистр для хранения n-разрядного двоичного числа должен содержать n триггеров. Чаще всего регистры строятся на основе синхронных RS-триггеров или D-триггеров. В отдельных случаях регистры могут быть реализованы на базе JK-триггеров.
Классификация регистров:
По форме представления вводимых чисел регистры бывают:
· параллельные;
· последовательные.
В параллельный регистр число подаётся одновременно всеми разрядами. Простейший вариант выглядит так: на вход регистра подаётся парафазный код числа, т.е. само число и его инверсия. Очевидно, что необходим триггер, имеющий два входа. Такие регистры обычно строятся на основе простейших синхронных RS-триггеров. Условное обозначение параллельного регистра показано на рисунке 2. Здесь буквами RG показано, что это регистр. Видно, что регистр состоит из двух триггеров, входы первого обозначены S0 и R0 , выходы – Q0 и`Q0 . Для второго соответственно входы S1 и R1 , выходы – Q1 и`Q1 . Вход С – это вход сигнала записи (или синхронизирующий, управляющий вход).
|
Последовательный регистр отличается от параллельного тем, что число подаётся последовательно, разряд за разрядом. На вход подаётся однофазный код числа (без подачи инверсных значений цифр разрядов), следовательно, RS-триггеры не могут быть использованы, нужны триггеры с одним входом, поэтому обычно применяют D-триггеры. Условное обозначение последовательного трёхразрядного регистра показано на рисунке 3.
|
6.3 Счётчики
Счётчик – это функциональное устройство, предназначенное для счёта поступающих на его вход сигналов. Счётчики строятся на основе триггеров, следовательно, n-разрядный счётчик содержит n триггеров, при этом количество сигналов, которое может подсчитать счётчик, определяется из выражения N = 2n - 1, где n – число триггеров, а минус один, потому что в цифровой технике за начало отсчёта принимается 0. Таким образом, чтобы подсчитать число элементарных автоматов (триггеров), необходимых для построения счётчика, нужно из формулы выразить n: n = log2 N. Классификация счётчиков Счётчики можно классифицировать по следующим признакам:1). По основанию системы счисления счётчики делятся на: а) двоичные;б) десятичные (или двоично-десятичные);Большинство счётчиков работают в двоичном коде, то есть считают от 0 до (2n - 1). Например, 4-х разрядный счётчик будет считать от 0 (код 0000) до 15 (код 1111), а 8-ми разрядный – от 0 (код 0000 0000) до 255 (код 1111 1111). После максимального значения кода счётчик по следующему входному импульсу переключается опять в 0, то есть работает по кругу.
4-х разрядный двоично-десятичный счётчик будет считать от 0 (код 0000) до 9 (код 1001), а 8-ми разрядный двоично-десятичный счётчик будет считать от 0 (код 0000 0000) до 99 (код 1001 1001). Двоично-десятичные счётчики применяются реже обычных двоичных счётчиков.
Принцип работы простейшего 3-х разрядного счётчика показан в таблице 1. Сигнал переноса возникает после появления в счётчике последней комбинации 111 и исчезает при установлении в счётчике состояния 000.
|
Таблица 1 – Таблица состояний 3-х разрядного счётчика
№ |
Выходы |
|||||
02 |
01 |
00 |
Перенос |
|||
0 |
0 |
0 |
0 |
|||
1 |
0 |
0 |
1 |
|||
2 |
0 |
1 |
0 |
|||
3 |
0 |
1 |
1 |
|||
4 |
1 |
0 |
0 |
|||
5 |
1 |
0 |
1 |
|||
6 |
1 |
1 |
0 |
|||
7 |
1 |
1 |
1 |
|||
1 |
||||||
0 |
0 |
0 |
0 |
|
|
Синхронные счётчики характеризуются тем, что все их разряды в пределах одной микросхемы переключаются одновременно, параллельно. Это достигается существенным усложнением внутренней структуры микросхемы по сравнению с простыми асинхронными счётчиками. Синхронные счётчики гораздо быстрее асинхронных. Управление работой синхронного счётчика гораздо сложнее, чем в случае асинхронного счётчика, а количество разрядов синхронных счётчиков обычно не превышает четырех.
|
6 Шифраторы, дешифраторы
Шифратор или кодер – это логическое устройство, осуществляющее преобразование десятичных чисел в двоичную систему счисления. Классический шифратор имеет m входов и n выходов, при этом между количеством входов и выходов шифратора существует связь: m = 2n . Шифратор с таким количеством входов и выходов называется полным , но используются такие шифраторы достаточно редко, так как в большинстве случаев достаточно меньшего количества входов, т.е. m 2n .
Шифраторы используются для преобразования в двоичную систему счисления относительно небольших десятичных чисел. Шифраторы широко используются в разнообразных устройствах ввода информации, например, в клавиатуре, каждая клавиша которой связана с определённым входом шифратора. При нажатии на клавишу подаётся сигнал на соответствующий вход шифратора, и на его выходе возникает двоичное число, соответствующее выгравированному на клавише символу.
Условное обозначение шифратора показано на рисунке 4. Символ CD образован из букв, входящих в английское слово coder (кодер). Шифратор называется 8-3, так как имеет 8 входов и 3 выхода. Входы показаны слева, они обозначаются десятичными цифрами 0, 1, 2, …, 9, выходы шифратора – справа. Цифрами 1, 2, 4, обозначены весовые коэффициенты двоичных разрядов , соответствующие отдельным выходам.
|
Дешифратором или декодером (decoder) называют кодирующее устройство, преобразующее двоичный код в десятичный. На вход дешифратора подается двоичное число. Сигнал появляется на выходе, номер которого соответствует поданному на вход двоичному числу.
Если декодер имеет n входов, m выходов и использует все возможные наборы входных данных, то m=2n . Такой декодер называется полным . Как и полные шифраторы, полные дешифраторы используются редко, поэтому чаще всего для дешифраторов справедлива формула m 2n .
Входы декодера нумеруют не порядковыми номерами, а в соответствии с весами двоичных разрядов 1, 2, 4, 8. Выходы нумеруются десятичными числами, соответствующими отдельным комбинациям входных сигналов. Условное обозначение дешифратора 3-8 (3 входа и 8 выходов) показано на рисунке 5.
Дешифраторы часто имеют разрешающий вход Е (от англ. enable – давать возможность). При Е=1 дешифратор работает как обычно, при Е=0 на всех выходах устанавливаются неактивные уровни независимо от поступившего кода (см. рис. 5). В схемах дешифраторы обозначаются DC.
|
6.5 Сумматоры
Сумматор – цифровое устройство, выполняющее операции арифметического сложения над числами.
Если сумматор предназначен для сложения двух входных двоичных кодов, то выходной код будет равен арифметической сумме этих двух входных кодов. Например, если один входной код = 7 (0111), а второй = 5 (0101), то суммарный код на выходе будет = 12 (1100).
При необходимости сумматоры с помощью некоторых вспомогательных операций могут выполнять алгебраическое сложение, вычитание, умножение, деление, сравнение и другие действия с числами.
Классификация сумматоров
Сумматоры классифицируются по следующим признакам:
1). По основанию системы счисления чисел, с которыми оперирует сумматор, сумматоры бывают двоичные , десятичные и двоично-десятичные ;
2). По способу обработки многоразрядных чисел сумматоры делят на последовательные и параллельные . В сумматорах последовательного действия цифры какого-либо числа, начиная с младшего разряда, последовательно передаются в канал, обладающий ёмкостью в одну цифру. В сумматорах параллельного действия все цифры числа передаются одновременно, поэтому ёмкость канала должна быть N цифр. В таком устройстве передача всего числа осуществляется за такое же время как у последовательного одна цифра. Сумматоры последовательного действия обладают более низким быстродействием. Суммирование может так же осуществляться параллельно-последовательно и последовательно-параллельно.
3). По количеству обрабатываемых разрядов сумматоры бывают одноразрядные и многоразрядные (2-х, 3-х разрядные и т. д.).
|
Двоичный сумматор
Двоичные сумматоры складывают только двоичные числа. Одноразрядный цифровой двоичный сумматор предназначен для сложения двух двоичных чисел и имеет три входа: два входа слагаемых (обозначаются А и В) и вход переноса С от предыдущего сумматора (от английского carry – перенос). Выходов у одноразрядного двоичного сумматора два: S – выход суммы, Р – выход переноса к следующему сумматору.
Одноразрядный двоичный сумматор показан на рисунке 6.
Рисунок 6 – Одноразрядный двоичный сумматор
Из одноразрядных сумматоров составляются многоразрядные сумматоры, предназначенные для сложения многоразрядных двоичных чисел. Такой сумматор имеет n входов разрядов слагаемого А, n входов разрядов слагаемого В и вход переноса C. Выходами сумматора являются n выходов разрядов суммы S и выход переноса P (см. рисунок 7).
|
6.6 Компараторы
Компаратор (другое название – схема отношений ) – это электронная схема, принимающая на свои входы два аналоговых сигнала и выдающая логический ноль или логическую единицу в зависимости от того, какой из сигналов больше. Компараторы позволяют аппаратурным способом, без выполнения программных операций, сравнивать между собой по качественным отношениям кодовые комбинации. Проще говоря, компараторы сравнивают два входных кода и выдают на выход сигнал о результатах сравнения. На схемах компараторы обозначаются: Comp или двумя символами равенства: = =.
При сравнении чисел кодовые отношения определяются функциями отношений БОЛЬШЕ или МЕНЬШЕ. При равенстве всех разрядов действует кодовое отношение РАВНО.
Функции кодовых отношений обозначаются: F (БОЛЬШЕ), L (МЕНЬШЕ) и В (РАВНО). Отношения определяются на основе последовательного опроса состояний разрядов чисел, начиная со старших разрядов. Способ опроса может быть последовательный , по типу сквозного переноса, или одновременный , по типу группового переноса.
Компараторы строятся на основе логических элементов, например, на так называемых триггерах Шмидта. Триггер Шмидта – не компаратор по своей природе, но устройство с очень схожей областью применения. Другое название этого триггера – несимметричный триггер. Триггер Шмидта стоит особняком в семействе триггеров: он имеет один вход, один выход и не обладает свойствами запоминающего элемента. Такой триггер содержит два последовательно подключенных инвертора, охваченных положительной обратной связью. Простейшая схема триггера Шмидта показана на рисунке 8.
|
Рисунок 8 – Триггер Шмидта
В триггере Шмидта переход из одного устойчивого состояния в другое осуществляется при определенных уровнях входного напряжения.
Если на вход триггера Шмидта подавать нарастающее напряжение, то при некотором уровне напряжения в определённый момент времени напряжение на выходе скачком переходит из состояния 0 в состояние 1. Если уменьшать напряжение на входе до некоторого напряжения, то напряжение на выходе скачком переходит из состояния 1 в состояние 0. Таким образом, триггер Шмидта обладает гистерезисным характером.
Рассмотрим схему 4-х разрядного компаратора, сравнивающего величины двух 4-х разрядных чисел. Такой компаратор будет иметь 8 входов: 4 для первого сравниваемого 4-х разрядного числа (обозначаются А0 …А3 ) и 4 – для второго (В0 …В3 ). Кроме того, компаратор имеет три управляющих входа для подачи разрядности (обозначаются АВ, АВ, А=В). Выходов у компаратора три (АВ, АВ, А=В) для выдачи результатов сигналов (см.рис. 9)
|
7 Логическая схема комбинационного узла микропроцессора
|
Заключение
В данном курсовом проекте были рассмотрены два подхода к построению процессорного устройства: принцип схемной логики и принцип программируемой логики, представлена их сравнительная характеристика. Осуществлено знакомство с операционным устройством и устройством управления. Рассмотрено понятие алгоритма, его виды и свойства. Построен и описан алгоритм операционного устройства. Изучены понятия микрооперации, макрооперации, микрокоманды. Построены схемы алгоритмов в микрооперациях, макрооперациях и микрокомандах. Построен граф функционирования. Рассмотрены основные цифровые устройства, входящие в состав микропроцессора: триггеры, регистры, счётчики, сумматоры, шифраторы, дешифраторы и компараторы. Построена схема микропроцессорного устройства.
|
Список литературы
1. Каган Б. М. Электронные вычислительные машины и системы – М.: Энергоатомиздат, 1991. – 546 с.
2. Калабеков Б. А. Цифровые устройства и микропроцессорные системы: Учебник для техникумов связи. – Горячая линия – Телеком, 2003. – 336 с.
3. Калиш Г. Г. Основы вычислительной техники. Учебное пособие для средних профессиональных учебных заведений. – М.: Высшая школа, 2000. – 271 с.
4. Могилёв А. В. Информатика – М.: Издательский центр «Академия», 2000. – 816 с.
5. Преснухин Л. Н., Воробьёв Н. В., Шишкевич А. А. Расчёт элементов цифровых устройств: Учебное пособие. – М.: Радио и связь, 1998. – 296 с.
6. Савельев А. Я. Электронные вычислительные машины. – М.: Высшая школа, 1997. – 274 с.
7. Стрыгин В. В., Щарев Л. С. Основы вычислительной, микропроцессорной техники и программирования. – М.: Высшая школа, 1999. – 346 с.
Угрюмов Е. А. Цифровая схемотехника. – Санкт-Петербург, «БХВ», 2000. – 528 с.
|