41
АРХИТЕКТУРА СОВРЕМЕННЫХ ЭВМ Лекция 6: Уровень архитектуры набора команд ВМиК МГУ им. М.В. Ломоносова, Кафедра АСВК Чл.-корр., профессор, д.ф.-м.н. Королёв Л.Н., Ассистент Волканов Д.Ю.

АРХИТЕКТУРА СОВРЕМЕННЫХ ЭВМ Лекция 6dimawolf/ArchEVM/Lection06.pdfАРХИТЕКТУРА СОВРЕМЕННЫХ ЭВМ Лекция 6: Уровень

  • Upload
    others

  • View
    16

  • Download
    0

Embed Size (px)

Citation preview

Page 1: АРХИТЕКТУРА СОВРЕМЕННЫХ ЭВМ Лекция 6dimawolf/ArchEVM/Lection06.pdfАРХИТЕКТУРА СОВРЕМЕННЫХ ЭВМ Лекция 6: Уровень

АРХИТЕКТУРА СОВРЕМЕННЫХ ЭВМ

Лекция 6: Уровень архитектуры набора команд

ВМиК МГУ им. М.В. Ломоносова, Кафедра АСВК

Чл.-корр., профессор, д.ф.-м.н. Королёв Л.Н.,

Ассистент Волканов Д.Ю.

Page 2: АРХИТЕКТУРА СОВРЕМЕННЫХ ЭВМ Лекция 6dimawolf/ArchEVM/Lection06.pdfАРХИТЕКТУРА СОВРЕМЕННЫХ ЭВМ Лекция 6: Уровень

2

План лекции

• Регистры

• Виды адресации

• Примеры команд

• Прерывания

Page 3: АРХИТЕКТУРА СОВРЕМЕННЫХ ЭВМ Лекция 6dimawolf/ArchEVM/Lection06.pdfАРХИТЕКТУРА СОВРЕМЕННЫХ ЭВМ Лекция 6: Уровень

3

Уровни архитектуры

• Цифровой логический уровень

• Уровень микроархитектуры

• Уровень архитектуры набора команд

• Уровень операционной системы

• Уровень ассемблера

Page 4: АРХИТЕКТУРА СОВРЕМЕННЫХ ЭВМ Лекция 6dimawolf/ArchEVM/Lection06.pdfАРХИТЕКТУРА СОВРЕМЕННЫХ ЭВМ Лекция 6: Уровень

4

Уровень архитектуры набора команд

The ISA level is the interface between the compilers and the hardware.

Page 5: АРХИТЕКТУРА СОВРЕМЕННЫХ ЭВМ Лекция 6dimawolf/ArchEVM/Lection06.pdfАРХИТЕКТУРА СОВРЕМЕННЫХ ЭВМ Лекция 6: Уровень

5

Модели памяти

Page 6: АРХИТЕКТУРА СОВРЕМЕННЫХ ЭВМ Лекция 6dimawolf/ArchEVM/Lection06.pdfАРХИТЕКТУРА СОВРЕМЕННЫХ ЭВМ Лекция 6: Уровень

6

Регистры Pentium 4

Page 7: АРХИТЕКТУРА СОВРЕМЕННЫХ ЭВМ Лекция 6dimawolf/ArchEVM/Lection06.pdfАРХИТЕКТУРА СОВРЕМЕННЫХ ЭВМ Лекция 6: Уровень

7

Регистры UltraSPARC III

The UltraSPARC III’s general registers.

Page 8: АРХИТЕКТУРА СОВРЕМЕННЫХ ЭВМ Лекция 6dimawolf/ArchEVM/Lection06.pdfАРХИТЕКТУРА СОВРЕМЕННЫХ ЭВМ Лекция 6: Уровень

8

Память и регистры в 8051

Page 9: АРХИТЕКТУРА СОВРЕМЕННЫХ ЭВМ Лекция 6dimawolf/ArchEVM/Lection06.pdfАРХИТЕКТУРА СОВРЕМЕННЫХ ЭВМ Лекция 6: Уровень

9

Типы данных в Pentium 4

Page 10: АРХИТЕКТУРА СОВРЕМЕННЫХ ЭВМ Лекция 6dimawolf/ArchEVM/Lection06.pdfАРХИТЕКТУРА СОВРЕМЕННЫХ ЭВМ Лекция 6: Уровень

10

Типы данных в UltraSPARC III

Page 11: АРХИТЕКТУРА СОВРЕМЕННЫХ ЭВМ Лекция 6dimawolf/ArchEVM/Lection06.pdfАРХИТЕКТУРА СОВРЕМЕННЫХ ЭВМ Лекция 6: Уровень

11

Типы данных в 8051

Page 12: АРХИТЕКТУРА СОВРЕМЕННЫХ ЭВМ Лекция 6dimawolf/ArchEVM/Lection06.pdfАРХИТЕКТУРА СОВРЕМЕННЫХ ЭВМ Лекция 6: Уровень

12

Возможные форматы команд

Page 13: АРХИТЕКТУРА СОВРЕМЕННЫХ ЭВМ Лекция 6dimawolf/ArchEVM/Lection06.pdfАРХИТЕКТУРА СОВРЕМЕННЫХ ЭВМ Лекция 6: Уровень

13

Формат команд Pentium 4

Page 14: АРХИТЕКТУРА СОВРЕМЕННЫХ ЭВМ Лекция 6dimawolf/ArchEVM/Lection06.pdfАРХИТЕКТУРА СОВРЕМЕННЫХ ЭВМ Лекция 6: Уровень

14

Формат команд UltraSPARC III

The original SPARC instruction formats.

Page 15: АРХИТЕКТУРА СОВРЕМЕННЫХ ЭВМ Лекция 6dimawolf/ArchEVM/Lection06.pdfАРХИТЕКТУРА СОВРЕМЕННЫХ ЭВМ Лекция 6: Уровень

15

Форматы команд в 8051

The 8051 instruction formats.

Page 16: АРХИТЕКТУРА СОВРЕМЕННЫХ ЭВМ Лекция 6dimawolf/ArchEVM/Lection06.pdfАРХИТЕКТУРА СОВРЕМЕННЫХ ЭВМ Лекция 6: Уровень

16

Адресация

• Неявная (IADD)

• Непосредственная (MOV R1, 4)

• Прямая (MOV R1, FULL_ADDR)

• Регистровая (MOV R1, R2)

• Косвенная регистровая (MOV R1, [R2])

• Индексная (MOV R1, A[R2])

• Относительная индексная (MOV R1, A[R2+R3])

• Стековая (SADD)

Page 17: АРХИТЕКТУРА СОВРЕМЕННЫХ ЭВМ Лекция 6dimawolf/ArchEVM/Lection06.pdfАРХИТЕКТУРА СОВРЕМЕННЫХ ЭВМ Лекция 6: Уровень

17

Виды адресации в рассматриваемых архитектурах

Page 18: АРХИТЕКТУРА СОВРЕМЕННЫХ ЭВМ Лекция 6dimawolf/ArchEVM/Lection06.pdfАРХИТЕКТУРА СОВРЕМЕННЫХ ЭВМ Лекция 6: Уровень

18

Управление циклами

For ( I = 0; i<n; i++) {операторы}

Page 19: АРХИТЕКТУРА СОВРЕМЕННЫХ ЭВМ Лекция 6dimawolf/ArchEVM/Lection06.pdfАРХИТЕКТУРА СОВРЕМЕННЫХ ЭВМ Лекция 6: Уровень

19

Команды ввода-вывода

• Программируемый ввод-вывод с активным ожиданием

• Ввод-вывод с управлением по прерываниям

• Ввод-вывод с прямым доступом к памяти

Page 20: АРХИТЕКТУРА СОВРЕМЕННЫХ ЭВМ Лекция 6dimawolf/ArchEVM/Lection06.pdfАРХИТЕКТУРА СОВРЕМЕННЫХ ЭВМ Лекция 6: Уровень

20

Регистры устройств

Page 21: АРХИТЕКТУРА СОВРЕМЕННЫХ ЭВМ Лекция 6dimawolf/ArchEVM/Lection06.pdfАРХИТЕКТУРА СОВРЕМЕННЫХ ЭВМ Лекция 6: Уровень

21

DMA доступ

Page 22: АРХИТЕКТУРА СОВРЕМЕННЫХ ЭВМ Лекция 6dimawolf/ArchEVM/Lection06.pdfАРХИТЕКТУРА СОВРЕМЕННЫХ ЭВМ Лекция 6: Уровень

22

Инструкции The Pentium 4 (1)

Page 23: АРХИТЕКТУРА СОВРЕМЕННЫХ ЭВМ Лекция 6dimawolf/ArchEVM/Lection06.pdfАРХИТЕКТУРА СОВРЕМЕННЫХ ЭВМ Лекция 6: Уровень

23

Инструкции The Pentium 4 (2)

Page 24: АРХИТЕКТУРА СОВРЕМЕННЫХ ЭВМ Лекция 6dimawolf/ArchEVM/Lection06.pdfАРХИТЕКТУРА СОВРЕМЕННЫХ ЭВМ Лекция 6: Уровень

24

Инструкции The Pentium 4 (3)

Page 25: АРХИТЕКТУРА СОВРЕМЕННЫХ ЭВМ Лекция 6dimawolf/ArchEVM/Lection06.pdfАРХИТЕКТУРА СОВРЕМЕННЫХ ЭВМ Лекция 6: Уровень

25

Инструкции The Pentium 4 (4)

.

Page 26: АРХИТЕКТУРА СОВРЕМЕННЫХ ЭВМ Лекция 6dimawolf/ArchEVM/Lection06.pdfАРХИТЕКТУРА СОВРЕМЕННЫХ ЭВМ Лекция 6: Уровень

26

The UltraSPARC III Инструкции (1)

Page 27: АРХИТЕКТУРА СОВРЕМЕННЫХ ЭВМ Лекция 6dimawolf/ArchEVM/Lection06.pdfАРХИТЕКТУРА СОВРЕМЕННЫХ ЭВМ Лекция 6: Уровень

27

The UltraSPARC III Инструкции (2)

Page 28: АРХИТЕКТУРА СОВРЕМЕННЫХ ЭВМ Лекция 6dimawolf/ArchEVM/Lection06.pdfАРХИТЕКТУРА СОВРЕМЕННЫХ ЭВМ Лекция 6: Уровень

28

The UltraSPARC III Инструкции (3)

Page 29: АРХИТЕКТУРА СОВРЕМЕННЫХ ЭВМ Лекция 6dimawolf/ArchEVM/Lection06.pdfАРХИТЕКТУРА СОВРЕМЕННЫХ ЭВМ Лекция 6: Уровень

29

The UltraSPARC III Инструкции (4)

Page 30: АРХИТЕКТУРА СОВРЕМЕННЫХ ЭВМ Лекция 6dimawolf/ArchEVM/Lection06.pdfАРХИТЕКТУРА СОВРЕМЕННЫХ ЭВМ Лекция 6: Уровень

30

The UltraSPARC III Инструкции (5)

Page 31: АРХИТЕКТУРА СОВРЕМЕННЫХ ЭВМ Лекция 6dimawolf/ArchEVM/Lection06.pdfАРХИТЕКТУРА СОВРЕМЕННЫХ ЭВМ Лекция 6: Уровень

31

The UltraSPARC III Инструкции (6)

Some simulated UltraSPARC III instructions.

Page 32: АРХИТЕКТУРА СОВРЕМЕННЫХ ЭВМ Лекция 6dimawolf/ArchEVM/Lection06.pdfАРХИТЕКТУРА СОВРЕМЕННЫХ ЭВМ Лекция 6: Уровень

32

8051 Инструкции (1)

The 8051 Instruction set.

Page 33: АРХИТЕКТУРА СОВРЕМЕННЫХ ЭВМ Лекция 6dimawolf/ArchEVM/Lection06.pdfАРХИТЕКТУРА СОВРЕМЕННЫХ ЭВМ Лекция 6: Уровень

33

8051 Инструкции (2)

The 8051 Instruction set.

Page 34: АРХИТЕКТУРА СОВРЕМЕННЫХ ЭВМ Лекция 6dimawolf/ArchEVM/Lection06.pdfАРХИТЕКТУРА СОВРЕМЕННЫХ ЭВМ Лекция 6: Уровень

34

8051 Инструкции (3)

The 8051 Instruction set.

Page 35: АРХИТЕКТУРА СОВРЕМЕННЫХ ЭВМ Лекция 6dimawolf/ArchEVM/Lection06.pdfАРХИТЕКТУРА СОВРЕМЕННЫХ ЭВМ Лекция 6: Уровень

35

8051 Инструкции (4)

The 8051 Instruction set.

Page 36: АРХИТЕКТУРА СОВРЕМЕННЫХ ЭВМ Лекция 6dimawolf/ArchEVM/Lection06.pdfАРХИТЕКТУРА СОВРЕМЕННЫХ ЭВМ Лекция 6: Уровень

36

8051 Инструкции (5)

The 8051 Instruction set.

Page 37: АРХИТЕКТУРА СОВРЕМЕННЫХ ЭВМ Лекция 6dimawolf/ArchEVM/Lection06.pdfАРХИТЕКТУРА СОВРЕМЕННЫХ ЭВМ Лекция 6: Уровень

37

Процедуры (1)

Page 38: АРХИТЕКТУРА СОВРЕМЕННЫХ ЭВМ Лекция 6dimawolf/ArchEVM/Lection06.pdfАРХИТЕКТУРА СОВРЕМЕННЫХ ЭВМ Лекция 6: Уровень

38

Сопрограммы (2)

Page 39: АРХИТЕКТУРА СОВРЕМЕННЫХ ЭВМ Лекция 6dimawolf/ArchEVM/Lection06.pdfАРХИТЕКТУРА СОВРЕМЕННЫХ ЭВМ Лекция 6: Уровень

39

Прерывания

example.

Page 40: АРХИТЕКТУРА СОВРЕМЕННЫХ ЭВМ Лекция 6dimawolf/ArchEVM/Lection06.pdfАРХИТЕКТУРА СОВРЕМЕННЫХ ЭВМ Лекция 6: Уровень

40

Проблемы Pentium 4

• CISC-архитектура

• Ориентирована на 2-х адресные команды

• Мало регистров

• Команды не выполняются подряд

• Неточное предсказание переходов

• Спекулятивное выполнение

• Ограничение размера программ в 4Гб

Page 41: АРХИТЕКТУРА СОВРЕМЕННЫХ ЭВМ Лекция 6dimawolf/ArchEVM/Lection06.pdfАРХИТЕКТУРА СОВРЕМЕННЫХ ЭВМ Лекция 6: Уровень

41

Спасибо за внимание!