Академический Документы
Профессиональный Документы
Культура Документы
В. В. Гуров
АРХИТЕКТУРА
МИКРОПРОЦЕССОРОВ
Учебное пособие
Интернет-Университет БИНОМ.
Информационных Технологий Лаборатория знаний
www.intuit.ru www.lbz.ru
Москва
2010
У Д К [004.2:004.318](075.8)
Б Б К 32.973.26-02я73-1
Г95
Гуров В. В.
Г95 Архитектура микропроцессоров: Учебное пособие / В.В. Гуров —
М.: Интернет-Университет И н ф о р м а ц и о н н ы х Технологий: Б И Н О М .
Л а б о р а т о р и я з н а н и й , 2010. — 272 с.: ил., табл. — (Основы информа¬
ц и о н н ы х технологий).
I S B N 978-5-9963-0267-3
УДК [004.2:004.318](075.8)
ББК 32.973.26-02я73-1
© Интернет-Университет
Информационных
Технологий,2010
© БИНОМ. Лаборатория
2 0 1 0
ISBN 978-5-9963-0267-3 rimmd^
О проекте
Добро пожаловать в
Интернет-Университет Информационных Технологий!
Анатолий Шкред
anatoli@shkred.ru
Об а в т о р е
4
Лекции
5
Содержание
Предисловие 9
Список с о к р а щ е н и й 268
Литература 270
8
Предисловие
Предисловие
9
Курс Архитектура микропроцессоров
10
Лекция 1 Микропроцессор и его архитектура
11
Курс Архитектура микропроцессоров
12
Лекция 1 Микропроцессор и его архитектура
13
Курс Архитектура микропроцессоров
14
Лекция 1 Микропроцессор и его архитектура
15
Курс Архитектура микропроцессоров
16
Лекция 1 Микропроцессор и его архитектура
17
Курс Архитектура микропроцессоров
18
Лекция 1 Микропроцессор и его архитектура
20
Лекция 1 Микропроцессор и его архитектура
21
Курс Архитектура микропроцессоров
Количество конвейеров/
тактовая частота, МГц
Наличие кэш-памяти
Число транзисторов
Год начала выпуска
ступеней конвейера
Количество команд
в системе команд
Схема обработки
Максимальная
на кристалле
на кристалле
Модель
Регистры
данных
SISD, 32-разряд
1386 1985 275 тыс. 40 нет 220
ФТ ные с ФТ**
SISD,
i486 1989 1,2 млн. 100 да +80-разряд
ФТ, ПТ
ные с ПТ***
Pentium 1993 3,1 млн. 200 -"- 2/5
Pentium
1997 4,5 млн. 233 + SIMD, + 57 4/14
ммх
ФП
9,5 млн.
Pentium III 1999 1400 + SIMD, +КЭШ +128-раз +70 5/11
(28,1 млн.)*
ПЗ L2 рядные SSE
Pentium 4 2000 42 млн. 3800 + 144 9/31
С учетом интегрированной на кристалле кэш-памяти второго уровня L2.
Фиксированная точка.
Плавающая точка.
22
Лекция 1 Микропроцессор и его архитектура
23
Курс Архитектура микропроцессоров
24
Лекция 1 Микропроцессор и его архитектура
25
Курс Архитектура микропроцессоров
26
Лекция 1 Микропроцессор и его архитектура
27
Курс Архитектура микропроцессоров
Л е к ц и я 2. Р е г и с т р о в а я с т р у к т у р а у н и в е р с а л ь н о г о
микропроцессора
28
Лекция 2 Регистровая структура универсального микропроцессора
31 16 15 0
ЕАХ (АН) АХ (AL)
ЕВХ (ВН) ВХ (BL)
ЕСХ (СН) СХ (CL)
EDX (DH) DX (DL)
ESI SI
EDI DI
ЕВР BP
ESP SP
32 •
31 16 15 0
EIP IP
EFLAGS FLAGS
А 32 •
29
Курс Архитектура микропроцессоров
30
Лекция 2 Регистровая структура универсального микропроцессора
А б а з с е г м = (сегментный регистр)*16.
31
Курс Архитектура микропроцессоров
16-селектор 32-смещение
П с м = П + А,
32
Лекция 2 Регистровая структура универсального микропроцессора
С плавающей 4 (1+8+23)
точкой знак-порядок- ±3,37*1035
мантисса FPU
8 (1+11+52) ±1,67*10308
10 (1+15+64) ± 1 1*104932
33
Курс Архитектура микропроцессоров
Системные регистры
34
Лекция 2 Регистровая структура универсального микропроцессора
35
Курс Архитектура микропроцессоров
• D R 4 и D R 5 зарезервированы;
• D R 6 — регистр состояния: показывает текущее состояние М П при
останове в этих точках;
• D R 7 — регистр управления: задает условия останова в контроль¬
ных точках.
Регистры D R 4 и D R 5 не используются.
Регистры тестирования (TR3...TR7) используются при тестировании
к э ш - п а м я т и и буфера ассоциативной трансляции адресов страниц ( T L B ) .
П о мере развития архитектуры микропроцессора их количество расши¬
рилось и дополнилось н о в ы м содержанием. В частности, с п о м о щ ь ю ре¬
гистра TR12 м о ж н о запретить предсказание и трассировку ветвлений, па¬
раллельное в ы п о л н е н и е инструкций и выполнить некоторые другие дей¬
ствия.
36
Лекция 3 Физическая и логическая организация адресного пространства
Л е к ц и я 3. Ф и з и ч е с к а я и л о г и ч е с к а я о р г а н и з а ц и я
адресного пространства
37
Курс Архитектура микропроцессоров
38
Лекция 3 Физическая и логическая организация адресного пространства
39
Курс Архитектура микропроцессоров
40
Лекция 3 Физическая и логическая организация адресного пространства
^ _ f 0 — длина в байтах
\ 1 — длина в страницах
^ _ f 0 — длина в байтах
\ 1 — длина в страницах
41
Курс Архитектура микропроцессоров
4 3 2 1 0
1 1 С R А Сегмент кода
1 0 ED W А Сегмент данных
0 Т и п Системный объект
42
Лекция 3 Физическая и логическая организация адресного пространства
В сегменте кода:
• бит подчинения, или согласования, C (Conforming) определяет д о
полнительные правила обращения, которые обеспечивают з а щ и
ту сегментов программ. П р и C = 1 д а н н ы й сегмент является под
ч и н е н н ы м сегментом кода. В этом случае о н намеренно лишается
защиты по привилегиям. Такое средство удобно для организации,
н пример, подпрогр м м , которые д о л ж н ы быть доступны всем
в ы п о л н я ю щ и м с я в системе задачам. П р и C = 0 — это о б ы ч н ы й
сегмент кода;
• бит считывания R (Readable) устанавливает, м о ж н о ли обращаться
к сегменту только н исполнение или н исполнение и считыв -
ние, н пример, конст нт к к д н н ы х с п о м о щ ь ю префикс з ме¬
н ы сегмента. П р и R = 0 допускается только выборка из сегмента
команд для их выполнения. П р и R = 1 разрешено также чтение
д н н ы х и з сегмент .
Запись в сегмент кода запрещена. П р и любой попытке записи воз¬
н и к ет прогр м м н о е прерыв н и е .
В сегменте данных:
• E D (Expand Down) — бит направления расширения. П р и E D = 1
этот сегмент является сегментом стека и с м е щ е н и е в сегменте
должно быть больше р змер сегмент . П р и E D = 0 — это сегмент
собственно д н н ы х (смещение должно быть м е н ь ш е и л и р вно
р змеру сегмент );
• бит разрешения записи W (Writeable). П р и W = 1 разрешено изме
н е н и е сегмента. П р и W = 0 запись в сегмент запрещена, п р и по¬
пытке з писи в сегмент возник ет прогр м м н о е прерыв ние.
В случае о б р а щ е н и я за операндом смещение в сегменте формирует
ся м и к р о п р о ц е с с о р о м п о режиму адресации операнда, заданному в к о
манде. С м е щ е н и е в сегменте кода извлекается и з регистра — указателя
команд EIP.
Сумм извлеченного из дескриптор н ч льного дрес сегмент и
сформированного смещения в сегменте дает линейный адрес (ЛА).
Если в микропроцессоре используется только сегментное представ
л е н и е адресного пространства, то полученный л и н е й н ы й адрес является
т к ж е и физическим.
Если п о м и м о сегментного используется и страничный механизм о р
ганизации памяти, то линейный адрес представляется в виде двух полей:
старшие разряды содержат номер виртуальной страницы, а младшие —
с м е щ е н и е в стр нице. Преобр зов н и е номер вирту льной стр н и ц ы в
номер физической проводится с п о м о щ ь ю специальных системных таб
лиц: каталога таблиц страниц (КТС) и таблиц страниц (ТС). П о л о ж е н и е
43
Курс Архитектура микропроцессоров
Adress size Operand size КОП Пост байт SIB байт DISP Imm
0..1 байт 0..1 байт 0..2 б и т а П 0..1 байт 0..1 байт 0..4 байта 0..4 байта
6 и т W
Префиксы замены непосредственный операнд
разрядности (может отсутствовать)
адреса и данных
44
Лекция 3 Физическая и логическая организация адресного пространства
Бит размерности D
в дескрипторе сегмента 0 0 0 0 1 1 1 1
П р е ф и к с размерности
операнда* + + + +
П р е ф и к с размерности
адреса* + + + +
Разрядность
операнда(бит)** 16/8 16/8 32/8 32/8 32/8 32/8 16/8 16/8
Примечания:
* + — префикс присутствует;
префикс отсутствует.
** w = l/o
md reg r/m
45
Курс Архитектура микропроцессоров
SS Index Base
r / m постбайта.
SIB-байт имеет следующую структуру (рис. 3.7):
ss
(смещение в сегменте) = [base] + [index] + disp (3.1),
46
Лекция 3 Физическая и логическая организация адресного пространства
47
Курс Архитектура микропроцессоров
48
Лекция 3 Физическая и логическая организация адресного пространства
15 ... 3 2 1 0
Index TI RPL
49
Курс Архитектура микропроцессоров
50
Лекция 3 Физическая и логическая организация адресного пространства
51
Курс Архитектура микропроцессоров
M O V E A X , [ECX+ESI+20h].
E A = (ECX)+(ESI)+20h.
52
Лекция 3 Физическая и логическая организация адресного пространства
53
Курс Архитектура микропроцессоров
V >> у ф
54
Лекция 3 Физическая и логическая организация адресного пространства
г
Таблица
страничного
•
преобразования
m=f(n,p)
Уг Физический адрес \г
т L
Номер физической страницы Смещение в странице
55
Курс Архитектура микропроцессоров
Такты
Страница 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
Динамическое распределение оперативной памяти
ОЗУО АО АО АО DO DO DO СО СО СО С1 С1 С1 С1 С1 С1 С1
1 ВО ВО ВО АО АО АО DO DO DO D1 D1 D1 D1 D1 D1
2 СО СО СО ВО ВО ВО А1 А1 А1 А1 А1 А1 С2 С2
Таблица страничного преобразования для программы А
А 0 0 0 1 1 1
1 - 2 2 2 2 2 2
Таблица страничного преобразования для программы В
В 0 - 1 1 1 - 2 2 2
Таблица страничного преобразования для программы С
С 0 - - 2 2 2 - 0 0 0
1 0 0 0 0 0 0 0
2 2 2
Таблица страничного преобразования для программы D
D 0 - - 0 0 0 - 1 1 1
1 1 1 1 1 1 1
56
Лекция 3 Физическая и логическая организация адресного пространства
57
Курс Архитектура микропроцессоров
31...12 11 109 87 6 5 4 3 2 1 0
Абаз Резерв ОС 0 0 D А PCD PWT U/S R/W Р
58
Лекция 3 Физическая и логическая организация адресного пространства
59
Курс Архитектура микропроцессоров
60
Лекция 3 Физическая и логическая организация адресного пространства
61
Курс Архитектура микропроцессоров
62
Лекция 3 Физическая и логическая организация адресного пространства
B0 B1 B2 Заменяемая строка
0 0 X L0
0 1 X L1
1 X 0 L2
1 X 1 L3
63
Курс Архитектура микропроцессоров
64
Лекция 4 Организация и принципы работы кэш-памяти
65
Курс Архитектура микропроцессоров
рш
строка кэш-памяти
< •
востребованная информация
66
Лекция 4 Организация и принципы работы кэш-памяти
Типы кэш-памяти
67
Курс Архитектура микропроцессоров
ОЗУ
П р и необходимости замещения и н ф о р м а ц и и в к э ш - п а м я т и на н о
вую используется несколько стратегий замещения. Наиболее известными
среди них являются:
1) L R U — замещается строка, к которой дольше всего не было обра
щений;
2) F I F O — замещается самая давняя по пребыванию в к э ш - п а м я т и
строка;
3) Random — замещение проходит случайным образом.
Последний вариант, существенно э к о н о м я аппаратные средства по
сравнению с другими подходами, в ряде случаев обеспечивает и более э ф -
68
Лекция 4 Организация и принципы работы кэш-памяти
69
Курс Архитектура микропроцессоров
70
Лекция 4 Организация и принципы работы кэш-памяти
71
Курс Архитектура микропроцессоров
Р е ж и м р а б о т ы к э ш - п а м я т и определяется п р о г р а м м н о установкой
р а з р я д о в C D (запрет к э ш и р о в а н и я ) и N W (запрет с к в о з н о й з а п и с и ) в
у п р а в л я ю щ е м регистре C R 0 . К э ш и р о в а н и е м о ж н о р а з р е ш и т ь (это с о
с т о я н и е после и н и ц и а л и з а ц и и п р и сбросе), м о ж н о запретить п р и нали¬
ч и и д о с т о в е р н ы х строк (в этом р е ж и м е К П действует к а к быстрое вну¬
т р е н н е е ОЗУ) и л и , н а к о н е ц , к э ш и р о в а н и е может быть п о л н о с т ь ю за¬
прещено.
72
Лекция 4 Организация и принципы работы кэш- памяти
73
Курс Архитектура микропроцессоров
74
Лекция 4 Организация и принципы работы кэш-памяти
75
Курс Архитектура микропроцессоров
76
Лекция 4 Организация и принципы работы кэш-памяти
77
Курс Архитектура микропроцессоров
Л е к ц и я 5. А п п а р а т н ы е с р е д с т в а з а щ и т ы
информации в микропроцессоре
78
Лекция 5 Аппаратные средства защиты информации в микропроцессоре
79
Курс Архитектура микропроцессоров
Наименее
Наиболее
привилегированный
уровень
80
Лекция 5 Аппаратные средства защиты информации в микропроцессоре
81
Курс Архитектура микропроцессоров
82
Лекция 5 Аппаратные средства защиты информации в микропроцессоре
83
Курс Архитектура микропроцессоров
84
Лекция 5 Аппаратные средства защиты информации в микропроцессоре
85
Курс Архитектура микропроцессоров
86
Лекция 6 Мультипрограммный режим работы микропроцессора
Л е к ц и я 6. М у л ь т и п р о г р а м м н ы й р е ж и м р а б о т ы
микропроцессора
87
Курс Архитектура микропроцессоров
Т
к , где T — время занятости устройства q за общее время Гра¬
q
т
боты Э В М ;
L — средняя длина очереди запросов к устройству q:
q
88
Лекция 6 Мультипрограммный режим работы микропроцессора
89
Курс Архитектура микропроцессоров
Т 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
OUT I 1 1|2 2 2| ГП I 4 4 I
Wait YY] ПП
I TI I
T4 I
90
Лекция 6 Мультипрограммный режим работы микропроцессора
Характеристика Км = 1 Км = 2 Км = 3
Время в ы п о л н е н и я программы Т1 9 10 10
- " - Т2 8 13 13
- " - Т3 11 11 19
- " - Т4 8 11 12
91
Курс Архитектура микропроцессоров
31 16 15 0
Селектор возврата 0
ESPO* 4
| SS0* 8
ESP1* С
| SS1* 10
ESP2* 14
| SS2* 18
CR3* 1С
EIP 20
EFLAGS 24
ЕАХ 28
о ЕСХ 2С
EDX 30
ельна
ЕВХ 34
ESP 38
ЕВР зс
Ю ESI 40
О EDI 44
0 0 ...00 ES 48
0 0 ...00 CS 4С
0 0 ...00 SS 50
0 0 . . .00 DS 54
0 0 . . .00 FS 58
0 0 . . .00 GS 5С
0 0 ...00 LDTR* 60
Относительный
0 0 .. .оот 64
адрес БКВВ
Доп. информация для ОС
\ %
1 £ Битовая карта ввода/вывода 11111111
92
Лекция 6 Мультипрограммный режим работы микропроцессора
93
Курс Архитектура микропроцессоров
7 6 5 4 3 2 1 0
и DPL 0 м н В ГП
Рис. 6.4. Байт доступа дескриптора сегмента состояния задачи
Переключение задач
4 " •4 8 •4 ^ •
байт доступа
94
Лекция 6 Мультипрограммный режим работы микропроцессора
95
Курс Архитектура микропроцессоров
96
Лекция 6 Мультипрограммный режим работы микропроцессора
97
Курс Архитектура микропроцессоров
98
Лекция 7 Прерывания и особые случаи
Л е к ц и я 7. П р е р ы в а н и я и о с о б ы е с л у ч а и
99
Курс Архитектура микропроцессоров
100
Лекция 7 Прерывания и особые случаи
101
Курс Архитектура микропроцессоров
IP255 CS
255
х 4
тип 4г/
IPn cs n
2 байта 2 байта
4 •4 •
102
Лекция 7 Прерывания и особые случаи
байт доступа
селектор смещение Р DPL О ТИП резерв
< / 3 2
•
/ 64 бита = 8 байт
CS I г
ETPl Н ^ ^ ^
103
Курс Архитектура микропроцессоров
104
Лекция 7 Прерывания и особые случаи
105
Курс Архитектура микропроцессоров
106
Лекция 7 Прерывания и особые случаи
(рис. 7.7):
107
Курс Архитектура микропроцессоров
108
Лекция 7 Прерывания и особые случаи
л е н н ы й на рис. 7.8.
ЭВМ
109
Курс Архитектура микропроцессоров
Л е к ц и я 8. С т р у к т у р а м и к р о п р о ц е с с о р н о й с и с т е м ы
110
Лекция 8 Структура микропроцессорной системы
111
Курс Архитектура микропроцессоров
112
Лекция 8 Структура микропроцессорной системы
—1
CLK-
ША X X X X
ADS л / \ / \ / \
MR/IOR-
\ /
-< в Ц Г из ЦП > — <в цп>—
113
Курс Архитектура микропроцессоров
114
Лекция 8 Структура микропроцессорной системы
115
Курс Архитектура микропроцессоров
116
Лекция 8 Структура микропроцессорной системы
AEN — i ^ ~ °й
шин
УР п авляет
контроллер ПДП;
\ 0 — шиной управляет МП или другой задатчик.
117
Курс Архитектура микропроцессоров
118
Лекция 8 Структура микропроцессорной системы
119
Курс Архитектура микропроцессоров
120
Лекция 9 Конвейерная организация работы микропроцессора
Команда Такт
1 2 3 4 5 6 7 8 9
i IF ID OR EX WB
i+1 IF ID OR EX WB
i+2 IF ID OR EX WB
i+3 IF ID OR EX WB
i+4 IF ID OR EX WB
121
Курс Архитектура микропроцессоров
^онв = 5 T + (N—1) х T.
122
Лекция 9 Конвейерная организация работы микропроцессора
Количество Время
команд при последовательном при конвейерном
выполнении выполнении
1 100 150
2 200 240
10 1000 420
100 10000 3120
К о н ф л и к т ы в к о н в е й е р е и с п о с о б ы м и н и м и з а ц и и их
в л и я н и я на п р о и з в о д и т е л ь н о с т ь п р о ц е с с о р а
Конфликты — это такие ситуации в конвейерной обработке, которые
препятствуют в ы п о л н е н и ю очередной команды в предназначенном для
нее такте.
К о н ф л и к т ы делятся на три группы:
• структурные,
• по управлению,
• по д а н н ы м .
123
Курс Архитектура микропроцессоров
Команда Такт
1 2 3 4 5 6 7 8 9
i IF ID OR EX WB
i+1 IF ID OR EX EX EX WB
i+2 IF ID OR О О EX WB
i+3 IF ID OR О О EX
i+4 IF ID OR О О
124
Лекция 9 Конвейерная организация работы микропроцессора
Этап Такт
1 2 3 4 5 6 7
IF К1 К2 К3 К4 К5 К6 К7 К8 К7 К9 К7 К10 К11 К12
ID К1 К2 К3 К4 К5 К6 К5 К8 К5 К9 К7 К10
OR К1 К2 К3 К4 К3 К6 К3 К8 К5 К9
EX К 1 К2 К1 К4 К 1 К6 К3 К8
WB К2 К4 К 1 К6
125
Курс Архитектура микропроцессоров
126
Лекция 9 Конвейерная организация работы микропроцессора
127
Курс Архитектура микропроцессоров
128
Лекция 9 Конвейерная организация работы микропроцессора
\ i
1
IF
2
ID RO
3 4
EX
5
WB
(
i+l IF ID (RO: EX
/
чтение неверного результата
129
Курс Архитектура микропроцессоров
Очередь команд
—
АЛУ 1 АЛУ 2
130
Лекция 9 Конвейерная организация работы микропроцессора
131
Курс Архитектура микропроцессоров
2) Rc = C .
3) Ra = Rb + Rc.
4) A = Ra.
Очевидно, в ы п о л н е н и е к о м а н д ы (3) должно быть приостановлено
до тех пор, пока н е станет доступным поступающий и з памяти операнд C .
Для данного простейшего примера компилятор н и к а к н е может
улучшить ситуацию, однако в ряде более общих случаев о н может реорга¬
низовать последовательность команд так, чтобы избежать приостановок
конвейера.
Пусть, например, имеется последовательность операторов:
А = B + С;
D = E — F.
В этом случае компилятор может сгенерировать следующую после¬
довательность команд, выполнение которой н е приведет к приостановке
конвейера:
1) Rb = B .
2) Rc = C .
3) Re = E .
4) Ra = Rb + Rc.
5) R f = F.
6) A = Ra.
7) R d = Re — Rf.
8) D = R d .
Заметим, что использование разных регистров для первого и второ
го компилируемого оператора было достаточно важным для реализации
такого правильного планирования. В частности, если переменная e была
бы загружена в тот ж е самый регистр, что b или c, такое планирование н е
было бы корректным. В общем случае планирование конвейера может
потребовать увеличенного количества регистров.
Для простых конвейеров стратегия планирования на основе базовых
блоков вполне удовлетворительна, однако когда конвейеризация стано
вится более интенсивной и действительные задержки конвейера растут,
требуются более сложные алгоритмы планирования.
Зачастую зависимость п о д а н н ы м н е является необходимой — просто
так уж повелось у программистов: ч е м меньше переменных (и регистров в
программах на ассемблере) использует программа — тем лучше. В резуль¬
тате зачастую получается, что вся программа использует один-два регист¬
ра с зависимостью по д а н н ы м чуть л и н е в каждой паре команд.
Устранение к о н ф л и к т о в , с в я з а н н ы х с л о ж н ы м и в з а и м о з а в и с и м о
с т я м и д а н н ы х , часто в о з м о ж н о путем переименования регистров (regis
ter renaming). Суть этого м е х а н и з м а заключается в следующем. Про¬
цессоры, использующие переименование регистров, фактически име-
132
Лекция 9 Конвейерная организация работы микропроцессора
ют б о л ь ш е в о с ь м и р е г и с т р о в , о п р е д е л я е м ы х архитектурой х86 и л и I A -
32. П р и э т о м если к а к о й - л и б о к о м а н д е требуется и с п о л ь з о в а т ь ре¬
гистр, п р о ц е с с о р д и н а м и ч е с к и ставит в соответствие этому логическо¬
му (архитектурному) регистру о д и н из более м н о г о ч и с л е н н ы х физиче¬
с к и х регистров. Если другая к о м а н д а пытается обратиться к тому ж е
л о г и ч е с к о м у регистру, п р о ц е с с о р для п р е д о т в р а щ е н и я к о н ф л и к т а мо¬
жет поставить ему в соответствие другой ф и з и ч е с к и й регистр. Такие
п е р е и м е н о в а н и я действуют, п о к а к о м а н д ы п р о д в и г а ю т с я по конвейе¬
рам.
Таким образом, каждый раз, когда команда прямо или косвенно п и
шет в регистр, ей выделяется н о в ы й ф и з и ч е с к и й регистр. В М П имеется
таблица отображения логических (видимых программисту) регистров на
физические (видимые только процессору). Когда команде выделяется н о
вый ф и з и ч е с к и й регистр, таблица обновляется: логический регистр, на
который ссылалась команда, ставится в соответствие выделенному физи¬
ческому регистру (табл. 9.5).
133
Курс Архитектура микропроцессоров
134
Лекция 10 Структура и особенности архитектуры микропроцессора Pentium 4
Л е к ц и я 10. С т р у к т у р а и о с о б е н н о с т и а р х и т е к т у р ы
микропроцессора Pentium 4
135
Курс Архитектура микропроцессоров
136
Лекция 10 Структура и особенности архитектуры микропроцессора Pentium 4
137
Курс Архитектура микропроцессоров
138
Лекция 10 Структура и особенности архитектуры микропроцессора Pentium 4
139
Курс Архитектура микропроцессоров
140
Лекция 10 Структура и особенности архитектуры микропроцессора Pentium 4
141
Курс Архитектура микропроцессоров
64
1 операнд х 64 разряда
32 32
2 операнда х 32 разряда
16 16 16 16
4 операнда х 16 разрядов
8 операндов х 8 разрядов
79 64 63
ST0 ммхо
ST1 ММХ1
ST7 ММХ7
Блок регистров F P U
142
Лекция 10 Структура и особенности архитектуры микропроцессора Pentium 4
8 8 8 8 8 8 8 8
В7 В6 В5 В4 ВЗ В2 В1 ВО операнд 1
D7 D6 D5 D4 D3 D2 D1 DO
16 16 16 16
вз В2 В1 во операнд 1
D3 | D2 | D1 | DO | операнд 2
143
Курс Архитектура микропроцессоров
8 8 8 8 8 8 8 8
-2 3 4 -5 1 3 5 -6 операнд 1
3 -1 2 4 -2 1 6 -7 операнд 2
3 3 4 4 1 3 6 -6 результат
127 0
ХММО
ХММ1
ХММ7
144
Лекция 10 Структура и особенности архитектуры микропроцессора Pentium 4
32 32 32 32
ВЗ В2 В1 ВО операнд 1
D3 | D2 | D1 | DO | операнд 2
145
Курс Архитектура микропроцессоров
146
Лекция 11 Основные направления развития архитектуры микропроцессоров
8 0 - я д е р н ы й п р о ц е с с о р от ф и р м ы Intel
147
Курс Архитектура микропроцессоров
148
Лекция 11 Основные направления развития архитектуры микропроцессоров
149
Курс Архитектура микропроцессоров
поле предиката
150
Лекция 11 Основные направления развития архитектуры микропроцессоров
151
Курс Архитектура микропроцессоров
А р х и т е к т у р а м и к р о п р о ц е с с о р а Itanium
152
Лекция 11 Основные направления развития архитектуры микропроцессоров
4 •4 •4 >\4 •
, 6 ,7 ,7 ,7
< 1 4
•
коп Предикат R1 R2 R3
153
Курс Архитектура микропроцессоров
154
Лекция 11 Основные направления развития архитектуры микропроцессоров
155
Курс Архитектура микропроцессоров
156
Лекция 12 Микропроцессоры с RISC-архитектурой
157
Курс Архитектура микропроцессоров
158
Лекция 12 Микропроцессоры с RISC-архитектурой
Коммутатор C I U
л А Л
г г
]ч с и
] "Сэш Кэш Кэш М гтт
L2 L2 L2
л А Л А
1Г
^ К другим
£ микросхемам
>мсм-мсм
159
Курс Архитектура микропроцессоров
цессорных систем на его основе. В числе этих средств порты каналов, на¬
прямую связывающих Power4 с другими процессорами внутри так н а з ы
ваемого микросхемного модуля (Multi-Chip Module — M C M ) , канал вво
да-вывода (шина G X ) , интегрированный контроллер ш и н ы оперативной
памяти и к э ш а третьего уровня, разделяемого всеми процессорами M C M .
К а ж д ы й двухъядерный процессор Power4 упакован в керамический муль
типроцессорный модуль вместе с тремя другими М П . Такой микросхем
н ы й модуль M C M , содержащий четыре М П Power4, в итоге объединяет
восемь процессоров.
Структура ядра М П Power4 представлена на рис. 12.2.
160
Лекция 12 Микропроцессоры с RISC- архитектурой
161
Курс Архитектура микропроцессоров
162
Лекция 12 Микропроцессоры с RISC- архитектурой
163
Курс Архитектура микропроцессоров
164
Лекция 13 Многопроцессорные и многомашинные вычислительные системы
165
Курс Архитектура микропроцессоров
166
Лекция 13 Многопроцессорные и многомашинные вычислительные системы
167
Курс Архитектура микропроцессоров
168
Лекция 13 Многопроцессорные и многомашинные вычислительные системы
169
Курс Архитектура микропроцессоров
170
Лекция 13 Многопроцессорные и многомашинные вычислительные системы
171
Курс Архитектура микропроцессоров
I
о о
у Узлы
Высокоскоростная магистраль
или коммутатор
172
Лекция 13 Многопроцессорные и многомашинные вычислительные системы
173
Курс Архитектура микропроцессоров
Транспьютеры
174
Лекция 13 Многопроцессорные и многомашинные вычислительные системы
175
Курс Архитектура микропроцессоров
176
Лекция 13 Многопроцессорные и многомашинные вычислительные системы
177
Курс Архитектура микропроцессоров
178
Лекция 14 Архитектура однокристального микроконтроллера
179
Курс Архитектура микропроцессоров
Позиция Мнемоника
Функция
в регистре бита
4 RS1
Н о м е р рабочего банка регистров
3 RS0
1 — Н е используется
180
Лекция 14 Архитектура однокристального микроконтроллера
Организация памяти
181
Курс Архитектура микропроцессоров
182
Лекция 14 Архитектура однокристального микроконтроллера
Память программ
В зависимости от м о д и ф и к а ц и и , различные т и п ы Б И С М К - 5 1 и м е
ют разное распределение внутренней и внешней памяти программ (см.
табл. 14.1), оставляя неизменной максимально допустимую общую е м
кость в 64 Кбайт. Память программ адресуется с п о м о щ ь ю 16-разрядной
адресной ш и н ы с использованием счетчика команд (program counter —
P C ) , который вырабатывает 16-разрядные адреса. Она имеет байтовую
организацию и доступна только для чтения.
Обращение к внутренней или в н е ш н е й памяти программ происхо¬
дит автоматически с применением аппаратных средств М К . П р и этом в
зависимости от состояния управляющего входа D E M A микроконтролле
ра вся память трактуется либо к а к только в н е ш н я я (при D E M A = 0), либо
как внутренняя, з а н и м а ю щ а я младшие адреса адресного пространства, и
в н е ш н я я , з а н и м а ю щ а я адреса от старшего адреса внутренней памяти
8000h до максимально допустимого F F F F h . С точки зрения программис
та имеется только один массив памяти программ емкостью 64 Кбайт.
183
Курс Архитектура микропроцессоров
Система команд
184
Лекция 14 Архитектура однокристального микроконтроллера
Логическг е инструкци] i
A N L A,byte Dir,Ind,Reg,Imm 1 A=A&byte
A N L byte,A Dir 1 byte= byte&A
A N L byte,#data Dir 2 byte= byte&#data
CLR A Аккумулятор 1 A=00h
CPL A Аккумулятор 1 A
A= (A)
O R L A,byte Dir,Ind,Reg,Imm 1 A = A v byte
O R L byte,A Dir 1 byte= byte v A
O R L byte,#data Dir 2 byte= byte v #data
RL A Аккумулятор 1 A = ( A ) I I C T на 1бит
RLC A Аккумулятор 1 A = ( A ) I J C T на 1бит
через С
RR A Аккумулятор 1 A = ( A ) J C n на 1бит
RRC A Аккумулятор 1 A = ( A ) J C n на 1бит
через С
SWAP A Аккумулятор 1 A(7...4) <=> A(3...0)
X R L A,byte Dir,Ind,Reg,Imm 1 A = A ~ byte
X R L byte,A Dir 1 byte= byte ~ A
X R L byte,#data D i r 2 byte= byte ~ #data
И н с т р у к щ и передачи д а н н ых во внутрен тей памяти данных
M O V A,src Dir,Ind,Reg,Imm 1 A=src
M O V dest, A Dir,Ind,Reg 1 dest=A
M O V dest, src Dir,Ind,Reg,Imm 1 dest=src
MOV DPTR,
#data Imm 2 DPTR=data
P U S H src Dir 2 SP=SP+1; @SP=src
P O P dest Dir 2 dest=@SP; SP=SP-1
X C H A,byte Dir,Ind,Reg 1 A <=> byte
X C H D A,@Ri Ind 1 A <=> @Ri
Инструкции пер едачи данных, исп ользующие вн е ш н ю ю память данных
M O V X A,@Ri 2 A=@Ri
M O V X @Ri,A 2 @Ri=A
M O V X A,@DPTR 2 A=@DPTR
M O V X @DPTR,A 2 @DPTR=A
Инструкции передачи данных , используюп (ие память программ
M O V C A,@A+
DPTR 2 A=@(A+DPTR)
M O V C A,@A+
PC 2 A=@(A+PC)
Булевы ш с т р у к ц и и
A N L C,bit bit 2 C = C & bit
185
Курс Архитектура микропроцессоров
A
A N L C,/bit bit 2 C = C & bit
CLR C Битовый 1 C=0
аккумулятор
C L R bit bit 1 bit=0
A
CPL C Битовый 1 C= C
аккумулятор
A
C P L bit bit 1 bit= bit
J C rel 2 Переход, если C=1
J N C rel 2 Переход, если C=0
JB bit,rel bit 2 Переход, если bit=1
J N B bit,rel bit 2 Переход, если bit=0
J B C bit,rel bit 2 Переход, если bit=1;
bit=0
M O V C,bit bit 2 C=bit
M O V bit,C bit 2 bit=C
O R L C,bit bit 2 C = C v bit
O R L C,/bit bit 2 C = C v "bit
SETB C Битовый 1 C=1
аккумулятор
S E T B bit bit 1 bit=1
Инструкции без условных пер еходов
C A L L adr 2 Вызов подпрограммы
1 1
A C A L L adr переход на ± 2 байт
1 6
L C A L L adr переход на ± 2 байт
J M P adr 2 PC=adr
1 1
A J M P adr переход на ± 2 байт
1 6
L J M P adr переход на ± 2 байт
8
S J M P adr переход на ± 2 байт
J M P @A+DPTR 2 PC=A+DPTR
NOP 1 Пустая команда
RET 2 Возврат из подпрограм¬
мы
RETI 2 Возврат из обработчика
прерывания
Инструкции условных переходов
C J N E A,byte,rel Dir,Imm 2 Переход, если A^byte
C J N E byte, Ind,Reg 2 Переход, если
#data,rel byte*#data
D J N Z byte,rel Dir,Reg 2 byte=byte-1; переход,
если byte*0
186
Лекция 14 Архитектура однокристального микроконтроллера
Примечания
1. Режимы адресации:
• D i r — п р я м а я (регистры с п е ц и а л ь н ы х ф у н к ц и й или п а м я т ь
данных);
• Ind — косвенная (допустима только относительно регистров R0
и R 1 ; в символической записи команды обозначается @R0 или
@R1 соответственно);
• Reg — прямая к регистрам;
• Imm — непосредственная (в символической записи команды
начинается с #);
• bit — прямоадресуемый бит (в битовой памяти или регистрах
специальных ф у н к ц и й ) ;
• C — битовый аккумулятор (бит C Y в регистре состояния PSW);
• запись «byte» в графе «Мнемоника» означает, что операнд в
этом поле может адресоваться с п о м о щ ь ю любого режима адре¬
сации из указанных в графе «Режимы адресации»;
• в командах, допускающих прямую, но не регистровую адреса
ц и ю , может указываться регистр общего назначения, однако
при трансляции команды в м а ш и н н о е представление его номер
будет в этом случае представлен не трех-, а 8-разрядным двоич
н ы м кодом, соответствующим прямому адресу этого регистра в
памяти данных; некоторые Ассемблеры требуют для таких к о
манд указания в я в н о м виде номера регистра в виде прямого ад
реса я ч е й к и памяти данных.
2. Действия:
• В инструкции M U L A B производится перемножение содержи
мого аккумулятора A и дополнительного аккумулятора B. Стар
ш и е разряды произведения помещаются в аккумулятор A , а
младшие — в регистр B .
• В инструкции D I V A B содержимое аккумулятора A нацело де
лится на содержимое регистра B. Частное помещается в акку
мулятор A , а остаток — в регистр B. Операнды рассматривают
ся как целые числа без знака.
• & — конъюнкция.
• v — дизъюнкция.
• © — «исключающее И Л И » .
А
• — логическое «НЕ».
• Ц С Л — циклический сдвиг влево.
187
Курс Архитектура микропроцессоров
188
Лекция 14 Архитектура однокристального микроконтроллера
189
Курс Архитектура микропроцессоров
Позиция Мнемоника _
в регистре бита ужвдя
7 EA Запрет прерывания от всех источников
6 — Н е используется
5 — Н е используется
4 ES Запрет прерывания от последовательного порта
190
Лекция 14 Архитектура однокристального микроконтроллера
Позиция Мнемоника
Функция
в регистре бита
7 — Н е используется
6 — Н е используется
5 — Н е используется
4 PS Приоритет прерывания от последовательного
порта
3 PT1 Приоритет прерывания от таймера/счетчика T / C 1
191
Курс Архитектура микропроцессоров
Блок таймеров/счетчиков
192
Лекция 14 Архитектура однокристального микроконтроллера
193
Курс Архитектура микропроцессоров
Позиция Мнемоника Ф у н к ц и я я
у ц
в регистре бита
7 GATE1 Разрешение управления Т / С 1 от внешнего
входа IT1:
1
0 — управление запрещено
— управление разрешено
6 C/T1 0 — работа Т / С 1 в режиме таймера
1 — - работа Т / С 1 в режиме счетчика внешних
событий
5 M1.1 Н о мер режима работы Т / С 1
4 M0.1 (00 — режим 0, 11 — режим 3)
3 GATE0 Ф у н к ц и и аналогичны битам 7-5, но для Т / С 0
2 C/T0
1 M1.0
0 M0.0
194
Лекция 14 Архитектура однокристального микроконтроллера
195
Курс Архитектура микропроцессоров
196
Лекция 14 Архитектура однокристального микроконтроллера
197
Курс Архитектура микропроцессоров
198
Лекция 14 Архитектура однокристального микроконтроллера
Позиция Мнемоника
Функция
в регистре бита
0 RxD Вход последовательного порта
1 TxD Выход последовательного порта
2 INT0 Вход запроса внешнего прерывания 0
3 INT1 Вход запроса внешнего прерывания 1
4 T0 Счетный вход таймера/счетчика 0
199
Курс Архитектура микропроцессоров
Позиция Мнемоника
Функция
в регистре бита
7 SM0 Биты определения
6 SM1 режима работы
5 SM2 Бит разрешения многопроцессорной работы
4 REN Бит разрешения приема последовательных
данных
3 TB8 9-й бит передаваемых данных в режимах 2 и 3
2 RB8 9-й бит принимаемых данных в режимах 2 и 3
1 TI Флаг прерывания передатчика
0 RI Флаг прерывания приемника
200
Лекция 14 Архитектура однокристального микроконтроллера
201
Курс Архитектура микропроцессоров
202
Лекция 15 Построение микропроцессорных систем
203
Курс Архитектура микропроцессоров
О
А# D Q
0
1
2
3
D 4
5
6
7
8
с
Г/П К1113ПВ1 гд
204
Лекция 15 Построение микропроцессорных систем
205
Курс Архитектура микропроцессоров
; Ввод и н ф о р м а ц и и по готовности
.ORG 0H
A J M P Start ; на начало программы
.ORG 0BH
A J M P Int_TC0 ; на обработчик прерывания Т / С 0
206
Лекция 15 Построение микропроцессорных систем
. O R G 30H
Start: MOV IE,#00000010b ; разрешение прерываний от Т / С 0
MOV TCON,#0 ; сброс флагов, останов Т / С 0
MOV P0,#00011111b
MOV P1,#01100000b
MOV P2,#00000000b
MOV TMOD,#00000010b ; Т / С 0 в режим 2
MOV TL0,#6 ; настройка Т / С 0 на 250 м к с
MOV TH0,#6
CLR A
MOV R0,#6 ; количество опросов датчика
MOV R1,#250
;2=0
MOV R2,#16
SETB TR0 ; запуск T / C 0
SETB EA ; разрешение всех прерываний
; Генерация сигнала на выходе P2.7
Cycle: S E T B P2.7 ; P2.7 = 1
MOV R3,#100
Delay1: D J N Z R3,DELAY1 ; задержка на t = 200 м к с
CLR P2.7 ; P2.7 = 0
MOV R3,#3 ; Задержка на T—t = 600 м к с
Delay2: MOV R4,#100
D J N Z R4,$
D J N Z R3,Delay2
A J M P Cycle ; возврат на ц и к л генерации сигнала
; Обработчик прерываний от таймера
Int_TC0: C L R TR0 ; останов таймера
D J N Z R1,Out_Int ; подсчет количества входов в обработчик
MOV R1,#250
D J N Z R2,Out_Int
MOV R2,#16
Opros: CLR P1.6 ; запуск А Ц П
JB P1.5,$ ; ожидание готовности данных
ADD A,P0
SETB
MOV
P1.6
R5,#5
;2 2
; гашение А Ц П
= + D;
D J N Z R5,$
D J N Z R0, Opros ; проверка о к о н ч а н и я опроса
MOV B,#6 ; вычисление среднего значения
DIV AB
ANL P2,#11100000b
2/
; вывод результата
; Dср = n
207
Курс Архитектура микропроцессоров
ORL P2,A
SETB P2.5 ; строб записи в ВУ
CLR P2.5
CLR A ; восстановление параметров цикла
MOV R0,#6
Out Int: SETB TR0 ; запуск таймера
RETI ; выход и з обработчика
.END
208
Лекция 15 Построение микропроцессорных систем
MOV P1,#01000000b
MOV P2,#00000000b
MOV TMOD,#00000010b
MOV TL0,#6
MOV TH0,#6
MOV R0,#6 ; количество опросов датчика
MOV R1,#250
MOV R2,#16
MOV R6,#0 ;регистр для хранения максимума
S E T B TR0 ; запуск T / C 0
SETB EA ; разрешение всех прерываний
; Генерация сигнала на выходе P2.7
Cycle: S E T B P2.7 ; P2.7 = 1
MOV R3,#100
Delay1: D J N Z R 3 , D E L A Y 1 ; задержка на t = 200 мкс
CLR P2.7 ; P2.7 = 0
M O V R3,#3 ; Задержка на T—t = 600 м к с
Delay2: M O V R4,#100
D J N Z R4,$
D J N Z R3,Delay2
A J M P Cycle ; возврат на ц и к л генерации сигнала
; Обработчик прерываний от таймера
Int_TC: C L R TR0 ; останов таймера
D J N Z R1,Out_Int ; подсчет количества входов в обработчик
MOV R1,#250
D J N Z R2,Out_Int
MOV R2,#16
CLR P1.6 ; запуск А Ц П
MOV R5,#15
M1: D J N Z R5,M1 ;задержка на преобразования сигнала
M O V A,R6 ; сравнение с текущим максимумом
CLR C
S U B B A,P0
JNB A.7,M2
MOV R6,P0 ; замена текущего максимума
M2: S E T B P1.6 ; гашение А Ц П
MOV R5,#5 ; задержка на гашение А Ц П
M3: D J N Z R5,M3
D J N Z R0,Out_Int ;проверка окончания опроса
M O V A,R6
ANL P2,#11100000b ;вывод результата
209
Курс Архитектура микропроцессоров
ORL P2,A
CLR P2.5 ;строб записи в ВУ
SETB P2.5
MOV R6,#0 ;восстановление параметров цикла
MOV R0,#6
Out_Int: S E T B TR0 ;запуск таймера
RETI ;выход и з обработчика
.END
D MUX A#D - РО Р2
SMC
стр
0 1 0 0 D
| Датчик 0| 1 2 1 1
2 2 3
leg
2 2
3 3 4 3
D 3
4 4 Л_ 4 4 ft X "
5 5 5...7 5 С
6 t
7 Р1
1
А 1 РЗ
0 2 0,1
INTO
1 3...5 2
Г/П
2 К590КН6 К1113ПВ1 6 К1816ВЕ51 3...7
И з м е н е н и я п о с р а в н е н и ю с р и с . 15.3 к а с а ю т с я введения в М П С
аналогового мультиплексора и п о д к л ю ч е н и я выхода готовности д а н
н ы х А Ц П к о входу запроса в н е ш н е г о п р е р ы в а н и я I N T 0 (вход 2 порта
P3) м и к р о к о н т р о л л е р а . Здесь же следует обсудить н а с т р о й к у п р е р ы в а
н и я п о этому входу. К а к отмечалось в ы ш е , в н е ш н и е п р е р ы в а н и я мик¬
р о к о н т р о л л е р а могут быть н а с т р о е н ы на установку флага запроса л и б о
210
Лекция 15 Построение микропроцессорных систем
; Ввод п о прерыванию
.ORG 0H
AJMP Start ; на начало программы
.ORG 3
AJMP Int INT0 ; на обработчик INT0
.ORG 30H
Start: MOV IE,#00000001b ; разрешение прерываний от INT0
MOV TCON,#00000001b ; сброс флагов, INT0 по срезу
MOV P0,#00011111b
A C A L L INIT
SETB EA ; разрешение всех прерываний
M: AJMP M ; фоновая задача
; Обработчик прерываний от INT0
Int_INT0: M O V A,R6 ; сравнение с текущим м и н и м у м о м
CLR C
SUBB A,P0
JB A.7,M1
MOV R6,P0
M1: SETB P1.6 ; гашение А Ц П
MOV R5,#5 ; задержка на гашение
DJNZ R5,$
DJNZ R3,M2 ; проверка опроса всех датчиков
ANL P2,#11100000B ; вывод результата
211
Курс Архитектура микропроцессоров
MOV A,R4
ORL P2,A
CLR P2.5 ; строб записи в ВУ
SETB P2.5
A C A L L INIT
RETI
M2: INC R2 ; А
др = А
др + 1
A C A L L INIT1
RETI ; выход из обработчика
; начальные установки
INIT: MOV R2,#11000000b ; R2<2...0> = <номер датчика>
MOV R6,#00011111b ; регистр для хранения минимума
MOV R3,#6 ; количество датчиков
INIT1: MOV P1,R2 ; выдача номера датчика
CLR P1.6 ; запуск А Ц П
RET
.END
212
Лекция 15 Построение микропроцессорных систем
213
Курс Архитектура микропроцессоров
214
Лекция 15 Построение микропроцессорных систем
215
Курс Архитектура микропроцессоров
216
Лекция 16 Процессоры цифровой обработки сигналов
N_ i —j 2nkn
Xne N 161
Xk=Yu ( )
n=0
N _ i jlnkn
k = 0
k
А А
x=Asm{2nt/T+q>)
Т Ф ЪТ Ф
\ 2 со 4 со СО
Ф Т Ф \ / t
со 4 со
А
217
Курс Архитектура микропроцессоров
х=А$т(^ + Ф ) (16.3)
х = Re COS(2JC/T) — I m sin(2jc/T),
2 2
(р = Arctg —\,А = VRe + Im (16.6)
N—\ е
(16-7)
• . ^ г ^ к • (2пкп\ Im / 2пкп\
к 1
+ г Х[— s m ( — ) - ^ c o s ( — ) ]
А; = 0
218
Лекция 16 Процессоры цифровой обработки сигналов
х 3
х 2
х х
х 0
IT 2J ЗТ 4J 51
N N N N N
X N
цах интервалов.
В результате прямого дискретного преобразования Фурье могут быть
получены N значений для Х согласно (16.1).
к
N- 1
Rei, / 2пкп\ Im k . / 2пкп\ п
х =f(t ) = X [
п n N
к=0 (16.8)
219
Курс Архитектура микропроцессоров
х[к+1]
Умножи
тель
г а,
т Умножи
¥ тель Y[k]
+ •
X
т Умножи
¥ тель
Циклический
буфер
220
Лекция 16 Процессоры цифровой обработки сигналов
221
Курс Архитектура микропроцессоров
222
Лекция 16 Процессоры цифровой обработки сигналов
223
Курс Архитектура микропроцессоров
225
Курс Архитектура микропроцессоров
226
Лекция 16 Процессоры цифровой обработки сигналов
227
Курс Архитектура микропроцессоров
228
Лекция 16 Процессоры цифровой обработки сигналов
229
Курс Архитектура микропроцессоров
230
Лекция 16 Процессоры цифровой обработки сигналов
231
Курс Архитектура микропроцессоров
232
Лекция 16 Процессоры цифровой обработки сигналов
И м е е т с я в о з м о ж н о с т ь по н у ж н о м у с о б ы т и ю ( н а п р и м е р , «по п е р и
оду») генерировать запрос п р е р ы в а н и я и в процедуре о б с л у ж и в а н и я
TBCTR
233
Курс Архитектура микропроцессоров
Ц и ф р о в о й с и г н а л ь н ы й п р о ц е с с о р ADSP BF561
234
Лекция 16 Процессоры цифровой обработки сигналов
235
Курс Архитектура микропроцессоров
236
Лекция 16 Процессоры цифровой обработки сигналов
237
Курс Архитектура микропроцессоров
238
Лекция 17 Методы и средства отладки микропроцессорных систем
239
Курс Архитектура микропроцессоров
240
Лекция 17 Методы и средства отладки микропроцессорных систем
241
Курс Архитектура микропроцессоров
О с о б е н н о с т и к о н т р о л я и о т л а д к и МПС на р а з л и ч н ы х
этапах жизненного цикла
Рассмотренные особенности тестирования и отладки м и к р о п р о ц е с
сорных систем по-разному преломляются на различных этапах их суще
ствования.
Этап разработки является наиболее ответственным, трудоемким и
требует высокой к в а л и ф и к а ц и и разработчиков, так к а к о ш и б к и , допу¬
щ е н н ы е на этом этапе, обычно обнаруживаются л и ш ь на стадии испыта
н и я законченного образца и требуют длительной и дорогостоящей пере¬
работки всей системы.
Одной из главных задач этого этапа является распределение ф у н к
ц и й , в ы п о л н я е м ы х м и к р о п р о ц е с с о р н о й системой, между ее аппаратной
и программной частями. Максимальное использование аппаратных
средств упрощает разработку и обеспечивает в ы с о к о е быстродействие
системы в целом, н о сопровождается, к а к п р а в и л о , увеличением с т о и
мости и потребляемой м о щ н о с т и . В то ж е время увеличение удельного
веса п р о г р а м м н о г о обеспечения позволяет сократить ч и с л о устройств
системы, ее стоимость, повышает возможность адаптации с и с т е м ы к
н о в ы м условиям п р и м е н е н и я , но приводит к увеличению необходимой
емкости п а м я т и , с н и ж е н и ю быстродействия, увеличению сроков п р о е к
тирования.
П р о ц е с с п е р е р а с п р е д е л е н и я ф у н к ц и й между а п п а р а т н о й и п р о
г р а м м н о й ч а с т я м и М П С н о с и т и т е р а ц и о н н ы й характер. К р и т е р и е м
в ы б о р а здесь я в л я е т с я в о з м о ж н о с т ь м а к с и м а л ь н о й р е а л и з а ц и и з а д а н
н ы х ф у н к ц и й п р о г р а м м н ы м и с р е д с т в а м и п р и условии о б е с п е ч е н и я
з а д а н н ы х п о к а з а т е л е й ( б ы с т р о д е й с т в и я , э н е р г о п о т р е б л е н и я , стоимо¬
сти и т. д . ) .
С точки зрения контроля и диагностики М П С д а н н ы й этап имеет сле¬
дующие особенности:
• отсутствуют отработанные тестовые программы: проектирование
аппаратной части М П С всегда идет параллельно с разработкой
программ, а иногда и аппаратуры для ее тестирования и отладки;
построение тестовых программ и анализ результатов производят
ся разработчиком вручную на основании его представлений о
принципах работы и структуре разрабатываемой системы;
• существует большая вероятность появления нескольких неис¬
правностей одновременно; здесь могут присутствовать неисправ¬
ности, связанные как с дефектами электронных компонентов, так
и с о ш и б к а м и монтажников и программистов;
• связанная с предыдущим положением неопределенность причи¬
н ы неисправности: отказы в аппаратуре или о ш и б к и в программе;
242
Лекция 17 Методы и средства отладки микропроцессорных систем
243
Курс Архитектура микропроцессоров
244
Лекция 17 Методы и средства отладки микропроцессорных систем
Внутрисхемный эмулятор
245
Курс Архитектура микропроцессоров
246
Лекция 17 Методы и средства отладки микропроцессорных систем
Платы р а з в и т и я
ПЗУ-мониторы
247
Курс Архитектура микропроцессоров
Э м у л я т о р ПЗУ
248
Лекция 17 Методы и средства отладки микропроцессорных систем
Логический анализатор
249
Курс Архитектура микропроцессоров
Сигнатурный анализатор
250
Лекция 17 Методы и средства отладки микропроцессорных систем
JTAG-эмулятор
251
Курс Архитектура микропроцессоров
252
Лекция 17 Методы и средства отладки микропроцессорных систем
253
Курс Архитектура микропроцессоров
254
Лекция 17 Методы и средства отладки микропроцессорных систем
255
Курс Архитектура микропроцессоров
256
Лекция 18 Методы и средства оценки производительности микропроцессоров
257
Курс Архитектура микропроцессоров
MIPS и MFLOPS
258
Лекция 18 Методы и средства оценки производительности микропроцессоров
Тестовые п р о г р а м м ы
259
Курс Архитектура микропроцессоров
Тесты SPECcpu
260
Лекция 18 Методы и средства оценки производительности микропроцессоров
401.bzip2 Си Сжатие
403.gcc Си Компилятор С и
261
Курс Архитектура микропроцессоров
262
Лекция 18 Методы и средства оценки производительности микропроцессоров
263
Курс Архитектура микропроцессоров
264
Лекция 18 Методы и средства оценки производительности микропроцессоров
265
Курс Архитектура микропроцессоров
266
Лекция 18 Методы и средства оценки производительности микропроцессоров
267
Курс Архитектура микропроцессоров
Список сокращений
268
Список сокращений
269
Курс Архитектура микропроцессоров
Литература
270
Литература
271
Учебное издание
Гуров В а л е р и й В а л е н т и н о в и ч
АРХИТЕКТУРА МИКРОПРОЦЕССОРОВ
Учебное пособие
1
Подписано в печать 25.12.2009. Формат 60x90 / . 1 6
ООО «ИНТУИТ.ру»
Интернет-Университет Информационных Технологий, www.intuit.ru
Москва, Электрический пер., 8, стр.3.
E-mail: admin@intuit.ru, http://www.intuit.ru