Егоров В.А. Основы микропроцессорных систем управления - файл n1.doc

приобрести
Егоров В.А. Основы микропроцессорных систем управления
скачать (1446 kb.)
Доступные файлы (1):
n1.doc1446kb.30.05.2012 11:10скачать

n1.doc

1   2   3   4   5   6   7   8   9




Рис. 31. Схема полусумматора: (а) на элементах "И", "ИЛИ", "НЕ"; (б) на элементах "И", "исключающее ИЛИ"
Табл. 14 соответствуют следующие логические выражения (в дизъюнктивной нормальной форме):

Таким образом, для реализации полусумматора необходимы логические элементы: "исключающее ИЛИ" и элемент "И". Варианты реализации полусумматора приведены на рис. 31.

Условное графическое изображение полусумматора изображено на рис. 32.



Рис. 32. Условное графическое изображение полусумматора
Недостатком полусумматора является отсутствие входа P0, учитывающего перенос из младшего разряда. Это не позволяет использовать его для построения многоразрядного параллельного сумматора. Недостаток можно обойти, если для построения базовой ячейки одноразрядного сумматора использовать два полусумматора. На первом можно суммировать операнды А и В, а на втором – сумму S и перенос из младшего разряда P0. Такая схема называется полным сумматором. Схема и условное графическое изображение полного сумматора (или просто - сумматора) изображены на рис. 33.




Рис. 33. Схема (а) и условное графическое изображение (б) сумматора
Работа сумматора описывается таблицей истинности (табл. 15).
Таблица 15

Входы

Выходы

A

B

P0

P

S

0

0

0

0

1

1

1

1

0

0

1

1

0

0

1

1

0

1

0

1

0

1

0

1

0

0

0

1

0

1

1

1

0

1

1

0

1

0

0

1

(Обратите внимание на то, что выходные колонки P и S дают в двоичном коде сумму нулей и единиц на входах A B и P0).

На базе одноразрядного сумматора может быть легко построен многоразрядный. Схема трехразрядного параллельного сумматора изображена на рис. 34.



Рис. 34. Схема трехразрядного параллельного сумматора

Сумматор реализует следующую операцию:



4.5.2. Операция вычитания
Операция вычитания может быть сведена к операции сложения при представлении отрицательных двоичных чисел в дополнительном коде (или коде дополнения до двух). В этом случае вычитание реализуется так:



где (-B) – отрицательное число в дополнительном коде.

Дополнение до двух формируется путем инверсии исходного кода и добавления к инверсному коду единицы.

Пример:



Получим сумму чисел 6 и –6:



(При сложении чисел в дополнительном коде старший разряд отбрасывается).

Следует отметить, что при двоичном вычитании дополнительный код получается автоматически, если уменьшаемое меньше вычитаемого.

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

Схема двухразрядного блока сложения и вычитания, при представлении отрицательных чисел в дополнительном коде, имеет вид (рис. 35).




Рис. 35. Схема двухразрядного блока сложения и вычитания

Схема имеет управляющие входы для выполнения операции вычитания и сложения. При подаче на вход "Вычитание" логической единицы уменьшаемое B1B0 инвертируется, а единица, поступающая на вход переноса P0 младшего разряда сумматора, позволяет получить дополнительный код.

4.5.2. Логические операции



Для реализации логического умножения, логического сложения и сложения по модулю два, необходимо каждый разряд сумматора (рис. 35) снабдить соответствующими логическими вентилями. Вариант схемы блока логических операций для одного разряда приведён на рис. 36.


Рис. 36. Схема блока логических операций

4.5.3. Вопросы для повторения



1. Каково назначение АЛУ?

2. Приведите таблицу истинности, логические выражения и схему полусумматора.

3. Перечислите отличия сумматора от полусумматора.

4. Нарисуйте схему и условное графическое обозначение сумматора.

5. Как строится многоразрядный параллельный сумматор?

6. Для чего используется дополнительный код?

7. Получите дополнительный код числа 10(10).

4.6. Память


4.6.1. Информационная ёмкость блока памяти



Единицами измерения информационной ёмкости памяти являются: бит, байт, килобайт, мегабайт, гигабайт.

Элемент, запоминающий один двоичный разряд, имеет ёмкость – один бит. Остальные единицы измерения информационной ёмкости связаны следующими соотношениями:

1 байт = 8 бит;

1 Кбайт (килобайт) = 210 байт = 1024 байт;

1 Мбайт (мегабайт) = 210 Кбайт = 1024 Кбайт;

1 Гбайт (гигабайт) = 210 Мбайт = 1024 Мбайт.

4.6.2. Адресная организация памяти



Запоминающее устройство состоит из множества одинаковых запоминающих элементов, образующих запоминающий массив. Информационная ёмкость каждого элемента – один бит. Массив разделён на ячейки по n – элементов. Число n равно числу разрядов двоичного кода, хранимого в одной ячейке памяти. При n = 8 запоминающий массив имеет вид (рис. 37).



Рис. 37. Адресная память с байтной организацией ячеек
В памяти с адресной организацией размещение и поиск информации в запоминающем массиве основан на использовании адреса хранения слова. Адресом служит номер ячейки запоминающего массива, в которой это слово размещается (рис. 37).

При записи (или чтении) данных в память, команда процессора, выполняющая эту операцию, должна сначала выставить адрес (номер ячейки), а затем передать (или считать) данные.

4.6.3. Классификация микросхем памяти



Основная память ЭВМ, как правило, состоит из полупроводниковых запоминающих устройств двух типов: оперативного (ОЗУ или RAM) и постоянного (ПЗУ или ROM).

Постоянную память (ПЗУ) – можно только считывать. С оперативной памятью (ОЗУ) можно производить операции как чтения, так и записи данных.

По способу хранения информации микросхемы ОЗУ (RAM) разделяются на статические и динамические. В статических ОЗУ элементами памяти являются триггеры, а в динамических ОЗУ – электрические конденсаторы.

Наличие токов утечки у конденсаторов ведёт к необходимости периодической перезаписи (регенерации) информации для её сохранения.

Оба типа ОЗУ являются энергозависимыми, то есть при выключении питания информация разрушается.

ПЗУ являются энергонезависимой памятью.

По способу программирования, то есть занесения в них информации, ПЗУ (RОM) делятся на три группы:

1) ПЗУ, однократно программируемые изготовителем по способу заказного фотошаблона (маски), масочные ПЗУ (ПЗУМ или RОM);

2) ПЗУ, однократно программируемые пользователем по способу пережигания плавких перемычек на кристалле (ППЗУ или РRОM);

3) ПЗУ, многократно программируемые пользователем, репрограммируемые ПЗУ (РПЗУ или ЕРRОM).

В свою очередь, РПЗУ по способу стирания информации делятся на:

а) ПЗУ, со стиранием электрическим сигналом;

б) ПЗУ, со стиранием ультрафиолетовым излучением.

4.6.4. Организация ПЗУ на базе диодной матрицы



Схема реализации ПЗУ с организацией 4 ячейки по 4 разряда приведена на рис. 38. Информация, хранящаяся в ПЗУ, представлена в табл. 16.

Таблица 16
Адрес

Данные

А1

А0

D3

D2

D1

D0

0

0

1

1

0

1

0

1

0

0

0

0

0

0

0

0

0

0

1

1

0

1

1

0




Рис. 38. Схема ПЗУ на базе диодной матрицы
Схема имеет адресные входы А1А0, информационные выходы D3D2D1D0 и вход разрешения чтения R. Сигнал чтения R = 1 активизирует тристабильные усилители, подключающие вертикальные линии матрицы к информационным выходам D3D2D1D0.

Чтение данных из ПЗУ происходит в следующем порядке: процессор выставляет на линии адреса А1А0 двоичный код адреса ячейки и формирует сигнал чтения R = 1. Для заданного адреса (входного значения), высокий уровень напряжения будет только на одной выходной линии дешифратора. Предположим, что входным значением является А1 = 0, А0 = 1, что соответствует активизации линии 1 на выходе дешифратора на рис. 38. Выходные линии дешифратора при помощи диодов соединены с выходными линиями схемы со значениями 1; подобные соединения отсутствуют там, где должны появиться нули. Для входного значения 01 к выходной линии D0 подключен только один диод, так как на выходе должно быть 0001. (Аналогично для входного значения 10 диоды подключены к D1 и D0 , так как на выходе должно быть 0011.)

Таким образом, в любой момент времени только на одной выходной линии дешифратора может быть высокий уровень напряжения. Ток с этой линии течет только на те выходные линии, с которыми эта линия соединена диодом. Так, для входного значения 01 ток пойдет по линии D0, но не D3, D2 и D1, поэтому на D0 будет единица, а на D3,D2,D1 - нули. В итоге, процессор считает по линиям данных D3D2D1D0 код 0001 - содержимое ячейки с адресом 01.

Условное графическое обозначение ПЗУ представлено на рис. 39.



Рис. 39. Условное графическое обозначение ПЗУ

4.6.5. Построение регистрового ОЗУ



Оперативная память, построенная на D –триггерах, называется регистровой, потому что ячейка такой памяти представляет собой параллельный регистр. Схемотехника базового запоминающего элемента ячейки приведена на рис. 40, а.

Рис. 40. Схема (а) и обозначение (б) запоминающего элемента на D –триггере

Схема запоминающего элемента имеет информационный вход I и выход O. Для чтения данных необходимо подать уровень логической единицы на вход выборки S. Выходной вентиль И откроется и подключит выход триггера к линии O .

Для записи бита информации в запоминающий элемент, необходимо выставить его на информационный вход I и подать уровни логической единицы на входы выборки S и записи W. При этом входные вентили И откроются и подключат вход установки S RS -триггера к входу I напрямую, а вход сброса R – через инвертор, образуя D –схему, что приведет к записи информации со входа I в RS –триггер.

Используем рассмотренный элемент для реализации схемы ОЗУ с организацией 4 ячейки по 3 разряда (рис. 41).

Элементы памяти (рис. 41) объединены в запоминающий массив из четырёх строк и трёх столбцов. Строки представляют собой трёхразрядные ячейки с разрядами D2D1D0. Входы выборки i –й строки соединены вместе и подключены к i -му выходу дешифратора, являющемуся одновременно адресом ячейки.

Запись данных в ячейку оперативной памяти осуществляется в следующем порядке. Процессор выставляет адрес ячейки памяти на линии А1А0. Дешифратор активизирует элементы i –й строки. Далее процессор выставляет трехразрядный двоичный код на информационные входы DI2 DI1 DI0 и формирует на входе запись/чтение () уровень логической единицы. В результате открываются входы элементов i –й строки и происходит запись данных в i –ю ячейку.





Рис. 41. Схема ОЗУ (4 ячейки по 3 разряда) на D –триггерах

Запись данных в ячейку оперативной памяти осуществляется в следующем порядке. Процессор выставляет адрес ячейки памяти на линии А1А0. Дешифратор активизирует элементы i –й строки. Далее процессор выставляет трехразрядный двоичный код на информационные входы DI2 DI1 DI0 и формирует на входе запись/чтение () уровень логической единицы. В результате открываются входы элементов i –й строки и происходит запись данных в i –ю ячейку.

Чтение данных из оперативной памяти аналогично чтению из ПЗУ. Процессор выставляет адрес ячейки памяти на линии А1А0 и подает на вход запись/чтение () логический ноль. В результате данные из i –й ячейки оказываются на информационных выходах DO2 DO1 DO0 .

Условное графическое обозначение микросхемы ОЗУ представлено на рис. 42.



Рис. 42. Условное графическое обозначение микросхемы ОЗУ

4.6.6. Вопросы для повторения
1. Назовите единицы измерения информационной емкости микросхем памяти.

2. Перечислите отличия оперативной и постоянной памяти.

3. В чём состоит принцип адресной организации памяти?

4. Какой тип триггера используется как базовая ячейка оперативной памяти?
5. ПРИНЦИПЫ ОРГАНИЗАЦИИ МИКРОПРОЦЕССОРОВ


5.1. Основные функциональные узлы центрального процессора



Структура МП и набор входящих в него функциональных узлов существенно зависит от формата выполняемых им команд.

Формат команд первых ЭВМ имел пять полей:

Рис. 43. Формат команды ЭВМ с четырьмя адресными полями

Простейшая структура процессора, выполняющего команды указанного формата, изображена на рис. 44.

Рис. 44. Структура процессора, выполняющего команды с четырьмя адресными

полями

содержит: Устройство управления (УУ), арифметико-логическое устройство (АЛУ), регистр для размещения исполняемой команды (регистр команд), регистр для размещения одного из операндов или результата операции (аккумулятор) и вентили Yn, открываемые одноимённым управляющим сигналом уровня логической единицы.

Рассмотрим работу процессора после загрузки в регистр команд команды 1 из памяти. (Пусть команда 1 – команда вычитания).

Поле кода операции дешифрируется УУ и оно переходит в режим генерации управляющих сигналов Yn:

Такт 1: сигналы y1,y5,y10,y8 обеспечивают пересылку из памяти уменьшаемого, проходящего через АЛУ (y10) и запись в аккумулятор;

Такт 2: сигналы y2,y5,y6,y11 обеспечивают пересылку из памяти вычитаемого и вычитание этого значения (y11) из содержимого аккумулятора;

Такт 3: сигналом y8 разность заносится в аккумулятор;

Такт 4: сигналы y3 и y9 обеспечивают пересылку разности из аккумулятора в ячейку памяти, на которую указывает четвёртое поле команды;

Такт 5: сигналы y4 и y7 обеспечивают чтение в регистр команд следующей команды программы.




Рис. 45. Временная диаграмма работы УУ для команды вычитания

Существенным недостатком рассмотренного процессора является непомерно большая разрядность шины данных, обусловленная необходимостью хранения всех полей команды в одной ячейке памяти. Так, например, при ёмкости памяти в 64К каждое адресное поле будет содержать 16 двоичных разрядов, и для хранения только адресной части команды необходима 64-х разрядная ячейка памяти, а для передачи в процессор – 64-х разрядная шина данных. В связи с этим в современных микропроцессорах число адресных полей уменьшено до одного за счёт усложнения структуры и алгоритмов функционирования процессора.

Соображения для исключения трёх последних адресных полей команды:

1) Если размещать команды программы в памяти друг за другом, то адрес следующей команды будет отличаться от адреса текущей команды на единицу. Добавив в процессор счётчик команд, можно хранить в нём адрес текущей команды и наращивать его содержимое на единицу перед чтением следующей команды. Это позволит исключить из команды поле адреса следующей команды.

2) Содержимое регистра аккумулятора можно по умолчанию использовать, как второй операнд, и результат операции оставлять в аккумуляторе. Это позволит исключить из команды поле адреса второго операнда и поле адреса результата соответственно.

5.2. Процессор, работающий с одноадресными командами



Формат команды процессора имеет вид:

Рис. 46. Формат команды процессора с одноадресными командами

Структурная схема процессора изображена на рис. 47. Процессор содержит следующие элементы: РА – регистр адреса; СК – счетчик команд; РД – регистр данных; РК – регистр команд; АЛУ - арифметико-логическое устройство; РСост – регистр состояния (флагов); БР – буферный регистр; A – регистр аккумулятор; УУ - устройство управления; ГТИ – генератор тактовых импульсов; Yn – управляющие сигналы; -коммутатор; - элемент задержки.

5.2.1. Описание работы



1) Загрузка кода операции и операнда. Подготовка регистров к выполнению команды

В исходном состоянии счётчик команд СК, предназначенный для хранения адреса команды, обнулён, т.е. выполнение программы начинается с команды, расположенной в нулевой ячейке. Наращивание СК на единицу производится сигналом у0, формируемым после выполнения очередной инструкции. Адрес из счётчика команд запоминается для хранения в регистре адреса РА сигналом у1 и поступает на шину адреса ША. В соответствии с выставленным на шине адреса кодом, происходит выборка из памяти команды, предназначенной для выполнения. Эта команда последовательно переносится в регистр данных РД и регистр команд РК по управляющим сигналам у5 и у3 соответственно. Адресная часть, необходимая для выборки из памяти операнда, помещается в регистр адреса РА сигналом у2. Выбор операнда из памяти в регистр данных происходит сигналом у5.
Рис. 47. Структура процессора, работающего с одноадресными командами

Код операции поступает в устройство управления, где происходит его дешифрация.

На этом подготовительная часть, включающая в себя загрузку из памяти инструкции, предназначенной для выполнения, и операнда считается завершенной. Дальнейшая работа процессора происходит в соответствии с загруженной командой. Рассмотрим её на примере операции сложения содержимого аккумулятора с памятью.

2) Выполнение команды

После завершения подготовительной части в регистре данных уже находится операнд, с которым происходит сложение содержимого аккумулятора. Сигналом у7 второй операнд передаётся в АЛУ. Содержимое аккумулятора поступает на нижний вход АЛУ по сигналу у8. Далее по сигналу у10 производится сложение. Результат автоматически передаётся в буферный регистр БР, предназначенный для хранения промежуточных результатов вычислений. По сигналу у9 содержимое этого регистра копируется в аккумулятор.

5.2.2. Примеры реализации некоторых команд

1   2   3   4   5   6   7   8   9


Учебный материал
© nashaucheba.ru
При копировании укажите ссылку.
обратиться к администрации