Понятие и архитектура микропроцессора.
Микропроцессор (МП) - это микросхема или совокупность небольшого числа микросхем, выполняющая над данными арифметические и логические операции и осуществляющая управление вычислительным процессом. |
Любой микропроцессор можно представить как устройство,
состоящее из четырех логически законченных узлов:
┌────────────────┐ выполняет функции выборки, декодирования
│ Устройство │
│ управления │ и вычисления адресов операндов, генери-
└────────────────┘
A A рует последовательности микрокоманд и
│ . . . │
V V осуществляет синхронизацию системы.
┌────────────────┐
│ Операционное │
│ устройство │ производит операции над данными.
└────────────────┘
A A
│ . . . │
V V
┌────────────────┐
│ Внутреннее │ Служит для временного хранения данных и
│ запоминающее │
│ устройство │ промежуточных результатов.
└────────────────┘
A A
│ . . . │
V V
┌────────────────┐ осуществляют связь МП с периферийными
│ Интерфейсные │
│ схемы │ схемами.
└────────────────┘
Рис.7.1.
Связь между узлами осуществляется при помощи шин. Шины
различают по характеру передаваемой информации:
- шина данных;
- шина адреса;
- шина управления.
┌──────┐ ┌───┐
│Буфер-│ │ П │
┌──────────────────────────────────────────┤ ные │ /────\ │ А │
│ Внутренняя шина данных │ │< ШД >│ М │
└──────────────────────────────────────────┤схемы │ \────/ │ Я │
/\ /\ /\ /\ │ │ │ Т │
││ ││ ││ ││ └──────┘ │ Ь │
\/ \/ \/ \/ │ │
┌────────┐ ┌───────┐ ┌───────┐ ┌────────┐ │ И │
│ │ │Регистр│ │Регистр│ ├────────┤ │ │
│ ├─>│ │ │ │ │ : │ │ П │
\ │ │призна-│ │команд │ │Регистры│ │ О │
\ А Л У │ │ков │ │ │ ├────────┤ │ Р │
/ │ └────┬──┘ └────┬──┘ ├────────┤ │ Т │
/ │ │ │ │регистр │ ┌──────┐ │ Ы │
│ │ │ │ │адреса │ │Буфер-│ │ │
│ │ │ │ └──┬──┬──┘ │ ные │ /────\ │ В │
└──────┬─┘ │ │ │ └────┤ │< ША >│ / │
│ │ │ │ │схемы │ \────/ │ В │
│ V V └───────┤ │ │ │
┌┴─────────┴─────────┴───────┐ └──────┘ └───┘
Fтакт│ Устройство управления │ /───────────────────\
────>─┤ │< шина управления >
│ и синхронизации │ \───────────────────/
└────────────────────────────┘
Рис.7.2. Схема МП, построенного по архитектуре Фон-Неймана.
Особенностью архитектуры машины Фон-Неймана является наличие единого адресного пространства для хранения как программ, так и данных. При этом для обращения к памяти используются шины адреса и данных, по которым в разные моменты времени передаются либо коды команд, либо данные и только программист определят назначение различных областей памяти. Такая архитектура позволяет создавать достаточно простые, компактные микропроцессорные системы. Однако, использование общих шин и памяти значительно снижает быстродействие системы. Процессоры, построенные по архитектуре Фон-Неймана, обычно используются для построения универсальных систем, оперирующих большими объемам данных, со средним быстродействием.
.
┌────────────────────────────────────────────────\ ┌────────┐
│ Внутренняя шина данных ШД > │ Память │
└────────────────────────────────────────────────/ │ данных │
/\ /\ /\ /\ │ │
││ ││ ││ ││ │ │
\/ \/ \/ \/ │--------│
┌────────┐ ┌───────┐ ┌────────┐ ┌────────┐ │ порты │
\ │ │Регистр│ ├────────┤ │ │ /─────\ │ ввода/ │
\ А Л У ├─>│ │ │ : │ │регистр │< ШАД >│ вывода │
/ │ │призна-│ │Регистры│ │адреса │ \─────/ └────────┘
/ │ │ков │ ├────────┤ │ │
└──────┬─┘ └────┬──┘ └────┬───┘ └┬───────┘
A V A A
┌┴─────────┴─────────┴──────┴┐
Fтакт│ Устройство управления │ /──────────────────\
────>─┤ │< шина управления >
│ и синхронизации │ \──────────────────/
└─────┬────────────┬─────────┘
V A
┌───┴───┐ ┌───┴───┐
│ │ │ ├────────────────────\ ┌────────┐
│Счетчик│ │Регистр│ >│ │
│команд │ │команд ├────────────────────/ │ Память │
└─┬───┬─┘ └───────┘ │ │
│ │ │программ│
│ └───────────────────────────────────\ │ │
│ >│ │
└───────────────────────────────────────/ └────────┘
Рис.7.3. Схема МП, построенного по Гарвардской архитектуре.
Особенностью МП систем, построенных по Гарвардской архитектуре, является наличие отдельных групп шин и банков памяти для хранения программ и данных. При этом коды команд и данных могут передаваться одновременно, независимо друг от друга. Такая архитектура позволяет создавать системы с высоким быстродействием. Однако, использование раздельных шин значительно усложняет такие системы и делает их достаточно громоздкими. Процессоры, построенные по Гарвардской архитектуре, обычно используются для построения специализированных систем с высоким быстродействием и микроконтроллеров.
.
КЛАССИФИКАЦИЯ И ОСНОВНЫЕ ХАРАКТЕРИСТИКИ МП.
Классификация микропроцессоров осуществляется по следующим показателям (см. Приложение 1):
1.Архитектура а) Фон-Неймана
б) Гарвардская
в) Модифицированная Гарвардская
2.Система и набор команд
а) Полный набор (CISC)
б) Ограниченный (RISC)
3.Тип микроэлектронной технологии.
Отсюда: а) Быстродействие;
б) Энергопотребление;
4.Количество кристаллов
а) Однокристальные;
б) Многокристальные;
5.Разрядность слова данных;
6.Емкость адресуемой памяти;
7.Тип управляющего устройства
а) схемное управление - фиксированная система команд
б) микропрограммное управление - изменяемая с/к;
8.Микропроцессоры и однокристальные ЭВМ;
и др. показатели.
.
8. ПОСТРОЕНИЕ ПРОЦЕССОРА.
Существует два принципиально разных подхода к проектированию управляющего устройства МП: использование принципа схемной логики или использование принципа программируемой логики.
В первом случае при проектировании МП определяется такой порядок соединения логических схем, который обеспечивает требуемое функционирование. Устройства построенные на принципе схемной логики, способны обеспечивать наивысшее быстродействие при заданной технологии.
Во втором случае требуемое функционирование обеспечивается занесением в память устройства определенной программы или микропрограммы. В зависимости от введенной программы такое универсальное управляющее устройство способно обеспечить требуемое управление операционным устройством при решении самых разных задач. Можно построить операционное устройство с таким набором узлов и такой схемой их соединения, которые обеспечивают решение разнообразных задач. Задача, решаемая таким универсальным операционным устройством, определяется тем, какая микропрограмма хранится в управляющем устройстве. Таким образом, независимо от решаемой задачи может быть использовано одно и то же операционное устройство.
Следует однако иметь ввиду, что наивысшее быстродействие достигается в процессорах, в которых управляющее устройство строится с использованием принципа схемной логики, а операционное устройство выполняется в виде устройства, специализированного для решения конкретной задачи.
.
7.1. СИНТЕЗ ПРОЦЕССОРА СО СПЕЦИАЛИЗИРОВАННЫМ ОПЕРАЦИОННЫМ УСТРОЙСТВОМ.
Рассмотрим методику построения процессора на примере реализации устройства, выполняющего операцию умножения двоичных чисел без знака.
Проиллюстрируем на примере умно- 1 1 0 1 13
1 0 1 1 11
жения двух двоичных чисел. ─────── ───
1 1 0 1
Предусмотрим суммирование час- 1 1 0 1 13
0 0 0 0 13
тичных произведений, начиная с млад- 1 1 0 1
─────────────── ───
шего. 1 0 0 0 1 1 1 1 143
В таблице приведена схема выполнения операции.
──────────────┬────────────────┬────────────┬─────────────────
Множимое │Старшие разряды │Множитель и │
(R1) │произведения(R3)│младшие раз-│ Действие
│ │ряды произ-│
│ │ведения (R2)│
──────────────┼────────────────┼────────────┼─────────────────
1 1 0 1 │ 0 0 0 0 │ 1 0 1 1 │Исходное состояние
│ + │ │
│ 1 1 0 1 │ │
│ ─────── │ │
│ 0 1 1 0 1 ────┐ │Суммирование
│ └┐ │ │
│ 0└>0 1 1 0 └─> 1 1 0 1 │Сдвиг (R3) и (R2)
│ + │ │
│ 1 1 0 1 │ │
│ ─────── │ │
│ 1 0 0 1 1 ─────┐ │Суммирование
│ └┐ ││ │
│ 0└>1 0 0 1 ───┐│└> 1 1 1 0 │Сдвиг (R3) и (R2)
│ └┐ ││ │
│ 0└>0 1 0 0 └──> 1 1 1 1 │Сдвиг (R3) и (R2)
│ + │ │
│ 1 1 0 1 │ │
│ ─────── │ │
│ 1 0 0 0 1 ────┐ │Суммирование
│ └┐ │ │
│ 0└>1 0 0 0 └─> 1 1 1 1 │Сдвиг (R3) и (R2)
│ ─────────────────────── │
│ п р о и з в е д е н и е │
──────────────┴────────────────┴────────────┴─────────────────
В исходном состоянии в R1 и R2 - множимое и множитель, R3 - в нулевом состоянии. Анализируется содержимое младшего разряда R2. Так как его значение "1", то 1-е частичное произведение равно множимому и оно прибавляется к содержимому регистра R3, используемому для накопления сумм частичных произведений. Далее производится сдвиг на один разряд вправо содержимого регистров R2 и R3, причем выдвигаемый при сдвиге из R3 младший разряд (не принимающий в дальнейшем участия при суммировании) передается в освобождающийся старший разряд R2. В младшем разряде R2 оказывается 2-й разряд множителя. Процесс повторяется. При его нулевом значении суммирование не производится, только сдвиг. Число циклов равно числу разрядов множителя.
7.2. СИНТЕЗ ОПЕРАЦИОННОГО УСТРОЙСТВА.
В соответствии с описанным выше процессом, для выполнения операции умножения необходимо в операционном устройстве иметь: регистры R1,2,3, сумматор (См) и счетчик (Сч) числа повторений.
┌─>────────────────────────────┐
┌───┬───┬────┴────┬───┐ │
│n+1│ n │ См │ 1 │ │
└───┴───┴──A───A──┴───┘ ┌>──┐ │
┌──────────┘ └──────────────┐ ├─┴─┤ │ │
┌───┬────┴────┬───┐ ┌───┬───┬────┴────┬───┐ │ │
│ n │ R1 │ 1 │ │n+1│ n │ R3 ┌>│ 1 │ │ │
└───┴─────────┴───┘ └───┴───┴A──A───┼─┴───┘ │ │
┌───>x1 y4──┘ │ └──y5 │ │
├─┴─┤ │ │ │
┌───┬─────────┬───┐ y3────>└───<───────┼──┘
│ n │ R2 │ 1 │ │
└───┴────A────┴───┘ │
├─┬─┤ └───────y1 │
y2───>└────<─────────────────────────────────────<────┘
┌────────────> x2
├───────┴───────┤
-1 ┌───────────────┐
y7──────>│ Сч │
└───────A───────┘
Рис.8.1. n └────y6
В R2 предусмотрена микрооперация сдвига содержимого на 1 разряд вправо, выполняемая под действием управляющего сигнала y1 и микрооперации пересылки в старший разряд этого регистра содержимого младшего разряда R3, выполняемого под действием сигнала y2. Сумматор производит суммирование чисел, поступающих из R1 и R3. Для хранения переноса сумматор содержит n+1 разряд. Результат под действием y3 принимается в R3, который, тоже должен иметь n+1 разряд. Кроме того для регистра R3 предусмотрены микрооперации установки в 0 и сдвига содержимого на 1 разряд вправо, выполняемые под действием y4 и y5. При наличии y6 счетчиком принимается установленное число n, под действием y7 выполняется микрооперация вычитания 1.
В операционном устройстве формируются следующие признаки:
x1 - содержимое младшего разряда R2;
x2 - результат проверки на 0 счетчика.
Приведем в условной записи список выполняемых в узлах операционного устройства микроопераций и список формируемых признаков:
y1: R2 <─ Сдвиг вправо (R2)
y2: R2[n] <─ (R3[1])
y3: R3 <─ См
y4: R3 <─ (0)
y5: R3 <─ Сдвиг вправо (R3)
y6: Сч <─ (n)
y7: Сч <─ (Сч)-1
----------------------------
x1: (R2[1]) = 1
x2: (Сч) = 0
7.3. СИНТЕЗ УПРАВЛЯЮЩЕГО УСТРОЙСТВА НА ОСНОВЕ СХЕМНОЙ ЛОГИКИ.
Разобьем на 2 этапа:
1.Построение алгоритма в микрооперациях (схема на рисунке соответствует рассмотренному множительному устройству);
2.Построение алгоритма в микрокомандах.
Для формирования микрокоманд необходимо определить, какие микрооперации могут выполняться одновременно (в одни и те же тактовые периоды).
─────────── ───────────
( S T A R T ) ( S T A R T )
─────┬───── ─────┬─────
┌1────────┴─────────┐ ┌1───────┴────────┐
│ y4: R3 <─ 0 │ │ Y1: y4, y6 │
└─────────┬─────────┘ └─────────┬───────┘
┌2────────┴─────────┐ ┌───────────>┤
│ y6: Сч <─ n │ │ / \
└─────────┬─────────┘ │ 2─── ──── да
┌────────────>┤ │ < x2 >──┐
│ / \ │ ──── ──── │
│ 3──── ───── да │ \ / ────┴────
│ < x2: (Сч)=0 >──┐ │ нет │ ( S T O P )
│ ───── ───── │ │ / \ ─────────
│ \ / ────┴──── │ нет 3──── ────
│ нет │ ( S T O P ) │ ┌───< x1 >
│ / \ ───────── │ │ ───── ────
│ нет 4──── ───── │ │ \ /
│ ┌────< x1:(R[1])=1> │ │ да │
│ │ ───── ───── │ │ ┌4───────┴────────┐
│ │ \ / │ │ │ Y2: y3 │
│ │ да │ │ │ └────────┬────────┘
│ │ ┌5────────┴─────────┐ │ └─────────>┤
│ │ │ y3: R3 <─ (См) │ │ ┌5───────┴────────┐
│ │ └─────────┬─────────┘ │ │ Y3: y1,y2,y5,y7 │
│ └──────────>┤ │ └────────┬────────┘
│ ┌6────────┴─────────┐ └────────────┘
│ │ y1:R2 <─ Сдв.п(R2)│
│ └─────────┬─────────┘
│ ┌7────────┴─────────┐
│ │ y2: R2[n] <─ R3[1]│
│ └─────────┬─────────┘
│ ┌8────────┴─────────┐
│ │ y5:R3 <─ Сдв.п(R3)│
│ └─────────┬─────────┘
│ ┌9────────┴─────────┐
│ │ y7: Сч <─ (Сч)-1 │
│ └─────────┬─────────┘
└<────────────┘ Рис.8.2.
Очевидно, микрооперации y4 и y6 могут быть объединены в микрокоманду Y1, y3 не может быть объединена с другими микрооперациями, она представляет микрокоманду Y2; y1, y2, y5, y7 могут выполняться одновременно и объединены в Y3. На рисунке - схема алгоритма в микрокомандах.
Управляющее устройство - это логическое устройство последовательностного типа. Микрокоманда, выдаваемая в следующем тактовом периоде, зависит от того, какая микрокоманда выдается в текущем тактовом периоде, или, иначе, от состояния в котором находится устройство.
Можно построить структурную схему управляющего устройства. Она состоит из комбинационного узла и регистра состояния.
┌──────────────────────────────────────────┐
│ ┌──────────────────────────────────────┐ │
│ │ ┌──────────────┐ ┌───────┐ │ │
│ └>┤ ├──────────>┤регистр│ │ │
└──>┤Комбинационный│ . │ ├─┘ │
│ │ . │состоя-│ │
x1───>┤ узел ├──────────>┤ ├───┘
x2───>┤ │ ┌────>┤ ния │
└─┬─┬────────┬─┘ │ └───────┘
│ │ . . . │ │
V V V │
y1 y2 y7 │
c ─────────────────────────┘ Рис.8.3.
7.4. ВЫПОЛНЕНИЕ ПРОГРАММЫ.
Мы рассмотрели реализацию управляющего устройства для выполнения операции умножения. Очевидно, могут быть построены подобные устройства для выполнения других операций. И если в управляющем устройстве процессора предусмотреть такие устройства, то, включая то или иное устройство, можно обеспечить выполнение различных операций на одном и том же оборудовании операционного устройства.
┌──────────────────────────────────────────────┐
│ ┌──────────────────────────────────────────┐ │
┌────────┐ │ │ ┌──────────────────────┐ ┌────────┐ │ │
│ │ │ │ │Управляющее устройство│ y1 │ │x1 │ │
│ │ │ └>┤┌──────┐ ┌───────┐├───>┤ ├───┘ │
│ │ │ : ││ ├────>┤УУ оп.1││ y2 │ Опера- │ : │
│ Опера- │ └──>┤│дешиф-│ └───────┘├───>┤ ├─────┘
│ │команда ││ │ ┌───────┐│ . │ ционное│xs
│ тивная ├────────\│ратор ├────>┤УУ оп.2││ . │ │
│ ├────────/│ │ . └───────┘│ . │ ├───>z1
│ │ ││ │ . : │ . │ устрой-│ .
│ память │ ││команд│ . ┌───────┐│ yn │ │ .
│ │ ││ ├────>┤УУ оп.k│├───>┤ ство │ .
│ │ │└──────┘ └───────┘│ │ ├───>zm
└────────┘ └──────────────────────┘ └─A────A─┘
│....│
Рис.8.4. u1 ul
Операцию, подлежащую исполнению в процессоре, называют командой. С помощью дешифратора код команды можно преобразовать в сигналы, производящие включения устройств, которые управляют выполнением соответствующих операций.
При этом возникает возможность записывать алгоритм сложной задачи в виде последовательности команд, которая будет соответствовать последовательности таких выполняемых простых операций, как умножение, деление и др. Такая последовательность команд образует ПРОГРАММУ, хранимую в памяти. Считывая последовательно из памяти команды и исполняя их в процессоре можно решить сложную задачу.
7.5. СИНТЕЗ УПРАВЛЯЮЩЕГО УСТРОЙСТВА НА ОСНОВЕ ПРОГРАММИРУЕМОЙ ЛОГИКИ.
Выше показано, что выполнение операций в МП осуществляется в виде последовательности выполняемых микрокоманд. Можно предусмотреть, отличающийся от принципа схемной логики, способ формирования в управляющем устройстве управляющих сигналов, под действием которых в операционном устройстве выполняются микрокоманды.
Управляющие сигналы y1...yn на выходе управляющего устройства в каждом тактовом периоде имеют уровни логических 0 и 1. Таким образом, каждой микрокоманде на выходе управляющего устройства соответствует некоторая кодовая комбинация. Такие кодовые комбинации, называемые микрокомандами, можно хранить в управляющей памяти. Последовательность микрокоманд, предназначенную для выполнения некоторой операции, называют микропрограммой. При этом выполнение операции сводится к выборке из управляющей памяти микрокоманд микропрограммы и выдаче с их помощью управляющих сигналов y1...yn в операционное устройство.
В управляющей памяти можно хранить много микропрограмм, предназначенных для выполнения различных операций. По выбранной из оперативной памяти команде в управляющей памяти находится соответствующая команде микропрограмма. Далее путем последовательного считывания микрокоманд найденной микропрограммы и их выполнения в операционном устройстве реализуется предусматриваемая командой операция.
Такой способ реализации операций называется МИКРОПРОГРАММНЫМ способом, а построенное на этом принципе устройство - управляющим устройством с ПРОГРАММИРУЕМОЙ ЛОГИКОЙ. |
На рисунке 8 изображена структурная схема МП с управляющим устройством, построенным на принципе программируемой логики. Функции блока микропрограммного управления (БМУ) сводятся к определению адреса очередной микрокоманды (МК) в управляющей памяти (УП). Поступающая из оперативной памяти (ОП) команда содержит адрес первой микрокоманды той микропрограммы, которая реализует предусматриваемую командой операцию. Таким образом решается проблема поиска в УП микропрограммы, соответствующей данной команде. Адреса всех последующих микрокоманд определяются в БМУ следующим образом.
........................
:Управляющее устройство:
:┌─────────────┐ : поле УП ┌─────────────┐
:│ Управляющая ├───────:──────────\│ Операционное│
:│ память ├───────:─┐ ┌──────/│ устройство │
:└─────────────┘ : │ │ └─────┬─┬─────┘
: /\ : │ │ │ │
: ││ : │ │ │ │признаки,
: ││ : │ │ │ │условия
:┌─────┴┴──────┐/──────:─┘ │поле адреса │ │
:│ Блок │\──────:─┐ │ │ │
:│ микро- │/──────:─┘ │поле УСП │ │
:│программного │\──────:───┘ │ │
:│ управления │/──────:─────────────────┘ │
:└─────────────┘\──────:───────────────────┘
: /\ :
: ││ :
........................
││ команда из ОП Рис.8.5.
Рассмотрим формат микрокоманды.
┌──────┬─────────────┬─────────────┐
│поле │поле условных│поле управля-│
│адреса│ переходов │ющих сигналов│
└──┬─┬─┴────┬─┬──────┴─────┬┬──────┘
/──┘ │ │ │ ││
\────┘ │ │ ││
к БМУ │ │ \/
/───────────┘ │ к ОУ
\─────────────┘ Рис.8.6.
В формате микрокоманды предусматривается поле адреса, которое содержит адрес очередной микрокоманды. Таким образом, считав из управляющей памяти микрокоманду, по содержимому ее поля адреса узнаем адрес следующей МК, но так можно получить адрес МК при отсутствии в алгоритме разветвлений, т.е. условных переходов (УсП). Для реализации условных переходов в микрокоманде можно предусмотреть поле условных переходов, в котором указывается имеет ли место условный или безусловный переход, и в случае условного перехода - на значение каких условий следует ориентироваться при определении адреса очередной МК.
Пусть поле условных переходов построено следующим образом: Один из разрядов поля указывает вид перехода (например: 0 - безусловный переход; 1 - условный переход).
Для каждого условия в поле условного перехода имеется разряд, указывающий участие данного условия в определении адреса. Если условный переход осуществляется по некоторому условию, то формирование адреса очередной МК будем осуществлять замещением младшего разряда содержимого поля адреса текущей МК значением соответствующего условия. Такую операцию называют МОДИФИКАЦИЕЙ АДРЕСА.
Поле управляющих сигналов используется для подачи управляющих кодов в операционное устройство.
7.6. ПРИМЕР ПОСТРОЕНИЯ МИКРОПРОГРАММЫ.
Построим микропрограмму для выполнения рассмотренной выше
операции умножения. Выберем формат микрокоманды:
│ Поле адреса │поле услов-│Поле управляющих сигналов │
│ 4 разряда │ных перех. │ 7 разрядов │
┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
│ │ │ │ │ П │ x1│ x2│ │ │ │ │ │ │ │
└───┴───┴───┴───┴───┴───┴───┴───┴───┴───┴───┴───┴───┴───┘
4-х разрядное поле адреса позволяет обращаться в любую ячейку управляющей памяти с 16 ячейками.
Поле условных переходов содержит 3 разряда: разряд П, наличие 1 в котором указывает на то, что имеет место условный переход; разряды x1 и x2, наличие 1 в которых определяет условие, по которому происходит условный переход.
Поле управляющих сигналов содержит 7 разрядов и обеспечивает выдачу 7 различных микроопераций.
─────────── Для хранения составляе-
( S T A R T )
─────┬───── мой микропрограммы использу-
┌1───────┴────────┐
│ ОУ: Y1 │ ем ячейки управляющей памяти
└─────────┬───────┘
┌───────────>┤ с нарастающими адресами
│ / \
│ 2───── ────── 1 0000; 0001; 0010; ... Ориен-
│ < БМУ:УсП по x2 >──┐
│ ────── ────── │ тируясь на схему алгоритма
│ \ / ────┴────
│ 0 │ ( S T O P ) (в командах) построим схему
│ / \ ─────────
│ 3───── ────── алгоритма в микрокомандах.
│ ┌──< БМУ:УсП по x1 >
│ │ 0 ────── ──────
│ │ \ /
│ │ 1 │
│ │ ┌4───────┴────────┐
│ │ │ ОУ: Y2 │
│ │ └────────┬────────┘
│ └─────────>┤
│ ┌5───────┴────────┐
│ │ ОУ: Y3 │
│ └────────┬────────┘
└────────────┘ Рис.8.7.
.
Адрес упр.пам. Содержимое ячейки (микрокоманда)
┌── 0 0 0 0 МК1 (МК ОУ:Y1; МК БМУ:БП)
│
└─> 0 0 0 1 <─┐ МК2 (МК ОУ: -; МК БМУ:УсП по x2)
┌────────────┘ │
├─>x2=0────> 0 0 1 0 │ МК3 (МК ОУ: -; МК БМУ:УсП по x1)
│ ┌───┘ │
└─>x2=1──┼─> 0 0 1 1 │ МК6 ( продолжение )
┌────────┘ ┌───┘
├─>x1=0────> 0 1 0 0 <─┐ МК5 (МК ОУ:Y3; МК БМУ:БП)
│ │
└─>x1=1────> 0 1 0 1 ──┘ МК4 (МК ОУ:Y2; МК БМК:БП)
Микропрограмма приведена в таблице 1.
┌──────┬──────────────────────────────────────────────┬─────┐
│ │ М и к р о к о м а н д а │ │
│адрес ├──────────────────┬───────────────────────────┤ │
│ │ МК БМУ │ МК ОУ │ │
│ячейки├──────┬───────────┼───┬───┬───┬───┬───┬───┬───┤ │
│ │ поле │поле услов.│ │ │ │ │ │ │ │ │
│ │адреса│перехода │ y1│ y2│ y3│ y4│ y5│ y6│ y7│ │
│ │ ├───┬───┬───┤ │ │ │ │ │ │ │ │
│ │ │ П │ x1│ x2│ │ │ │ │ │ │ │ │
├──────┼──────┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼─────┤
│ 0000 │ 0001 │ 0 │ x │ x │ 0 │ 0 │ 0 │ 1 │ 0 │ 0 │ 0 │ МК1 │
│ │ │ │ │ │ │ │ │ │ │ │ │ │
│ 0001 │ 0010 │ 1 │ 0 │ 1 │ 0 │ 0 │ 0 │ 0 │ 0 │ 0 │ 0 │ МК2 │
│ │ │ │ │ │ │ │ │ │ │ │ │ │
│ 0010 │ 0100 │ 1 │ 1 │ 0 │ 0 │ 0 │ 0 │ 0 │ 0 │ 0 │ 0 │ МК3 │
│ │ │ │ │ │ │ │ │ │ │ │ │ │
│ 0011 │ - │ - │ - │ - │ - │ - │ - │ - │ - │ - │ - │ МК6 │
│ │ │ │ │ │ │ │ │ │ │ │ │ │
│ 0100 │ 0001 │ 0 │ x │ x │ 1 │ 1 │ 0 │ 0 │ 1 │ 0 │ 1 │ МК5 │
│ │ │ │ │ │ │ │ │ │ │ │ │ │
│ 0101 │ 0100 │ 0 │ x │ x │ 0 │ 0 │ 1 │ 0 │ 0 │ 0 │ 0 │ МК4 │
└──────┴──────┴───┴───┴───┴───┴───┴───┴───┴───┴───┴───┴─────┘
.
9. ОРГАНИЗАЦИЯ ОДНОКРИСТАЛЬНЫХ 8 - РАЗРЯДНЫХ МИКРОПРОЦЕССОРОВ
9.1. ОБЩИЕ СВЕДЕНИЯ О МП К580
Микросхема КР580ВМ80А представляет собой функционально законченный однокристальный параллельный 8 - разрядный микропроцессор архитектуры Фон-Неймана, с управляющим устройством, построенным по принципу схемной логики. Изготовлен по n-МОП технологии, содержит около 5 тыс. транзисторов. БИС микропроцессора реализована на кремниевом кристалле размером около 30 мм2 , заключенном в корпус с 40 выводами. Длина слова микропроцессора - 8 разрядов. Тактовая частота МП до 2 МГц. Уровни напряжения питания +5, -5, +12 В. Применяется в качестве центрального процессора в устройствах обработки данных и управления.
МП К580 имеет раздельные 16 - разрядный канал адреса и 8-разрядный канал данных. Канал адреса обеспечивает прямую адресацию внешней памяти с общей емкостью до 64 Кбайт, 256 устройств ввода и 256 устройств вывода.
8 -разрядное арифметическо-логическое устройство микропроцессора обеспечивает выполнение арифметических и логических операций над двоичными данными, представленными в прямом, дополнительном и двоично - десятичном кодах.
Организация МП К580 отмечена следующими основными особенностями:
- трехшинной структурой с шинами данных, адреса и управления;
- магистральным принципом связей, реализованным в виде связывающей основные узлы МП двунаправленной шиной данных, имеющей разрядность, равную длине слов, обрабатываемых МП;
- наличием регистровой памяти, образованной программно - доступными общими и специализированными регистрами, а также регистрами временного хранения;
- наличием средств организации стековой памяти ;
- наличием 16 - разрядной шины адреса, обеспечивающей возможность прямой адресации любого байта в памяти емкостью 64 КБайт;
- наличием операций над двухбайтными словами, что обеспечивается специальными командами, тандемными передачами;
- использованием трех форматов команд и разнообразных способов адресации, позволивших при коротком 8 – разрядном слове иметь достаточно гибкую систему команд;
- возможностью реализации векторного многоуровневого приоритетного прерывания путем подключения к МП специальной дополнительной БИС контроллера прерываний;
- возможностью реализации в МП режима прямого доступа к памяти путем подключения специальной дополнительной БИС контроллера прямого доступа;
- наличием эффективных средств работы с подпрограммами и обработки запросов прерываний.
.
9.2. СТРУКТУРА МП К580.
/\
││ ШД (8)
\/
┌──────────┐ ┌─┬──────┐
│ Буфер │ │ │ │ СБР
│ ШД │ │ │Сброс │<────
└──────────┘ │ ├──────┤ Ф1
/\ │ │ │<────
││ │С│Синх- │ Ф2
\/ │Х│рони- │<────
┌──────────────────────────────────────┐ │Е│зация │Синхро
│ Внутренняя шина данных 8 │ │М│ ├────>
└─────────────────────────────────────┐│ │А├──────┤
/\ /\ /\ /\ /\ ││ │ │ │Готов
││ 8 ││ 8 ││ 8 ││ 8 ││ 8 ││ 8 │У│Готов-│<────
\/ \/ \/ ││ \/ \/ │П│ность,│ Жду
┌───┐┌───┐┌───┐ ││ ┌───────────┐ ┌────┐ │Р│ожида-├─────>
│ А ││ Т ││ F │ ││ Мультиплексор │ РК │ │А│ние │ (ОЖ)
├ ─ ┤└┬─┬┘└┬──┘ ││ ├─────┬─────┼─┐ └─┬┬─┘ │В├──────┤
│ А'│ │ │ │ A ││ │ W │ Z │ │ ││ │Л│ │ ЗПДП
└┬─┬┘ │ │ │ │ ││ ├─────┼─────┤ │ ││ │Е│Управ-│<─────
│ │ │ │ V │ ││ │ B │ C │ │ \/ │Н│ление │ РПДП
│ │ │ └\┌──┴──┐││ ├─────┼─────┤С│┌───────┐ │И│ ПДП ├─────>
│ │ └──/│ │││ │ D │ E │Е││Первич-├─>│Я├──────┤
│ │ \ АЛУ ├┘│ ├─────┼─────┤Л││ный уп-│ │ │Управ-│ ЗПР
│ │ / ├─┘ │ H │ L │Е││равляю-│ │М│ление ├─────>
│ └─────\│ │ ├─────┴─────┤К││щий │<─┤П│преры-│ РПР
└───────/└─┬───┘ │ УС (SP) │Т││автомат│ │ │ванием│<─────
│ A ├───────────┤О│└──┬───┬┘ │С│ │
│ │ │ СК (PC) │Р│ │...│ │И├──────┤
V │ ├───────────┤ │ │ │ │С│Управ-│
┌──┴┐ │ ИНК/ДЕК │ │ │ │ │Т│ление │
│ ДК│ ├───────────┼─┘ │ │ │Е│шиной:│
└───┘ │ РА │ │ │ │М│ │ ЧТ
└────┬──┬───┘ │ │ │О│Чтение├─────>
\ / <────┘ │ │Й│ │ __
┌─────\/────┐ Управля-│ │ │Запись│ ЗП
│Буфер ША │ ющие │ │ │ o─────>
└────┬──┬───┘ сигналы │ │ │ │
\ / <────────┘ │ │ │
ША (16) \/ └─┴──────┘
Рисунок 9.1. Структура однокристального 8 – разрядного
микропроцессора КР580ИК80
МП имеет три шины: 8 - разрядную двунаправленную ВНУТРЕННЮЮ шину данных (ШД), 16 - разрядную шину адреса (ША) и шину управления (ШУ).
Внутренняя ШД является магистралью, по которой могут обмениваться данными все подключенные к ней блоки и узлы МП. Таким образом, узлы МП, подсоединенные к ШД разделяют эту шину во времени.