Главная | Обратная связь | Поможем написать вашу работу!
МегаЛекции

Слово состояния процессора

 

Слово-состояние процессора PSW содержит информацию о состоянии процессора. В связи с ограниченным набором команд используются не все разряды. Разряды 16-31 содержат код ошибки, вызвавшей программное прерывание. В данном случае используют

разряды 28-31. Разряды 32-33 хранят информацию о длине последней выполнившейся команды. В разряды 34-35 записывается признак результата. Разряды 36-39 хранят маску прерываний. Разряды 40-63 используются для хранения адреса команды. ФК1 используется для формирования кода длины ошибки. ФК2 - кода длины команды, ФК3 - признака результата, ФК4 - адреса памяти, ФК5 и ФК6 - для формирования некоторого кода при выполнении унарных операций.

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

При написании микропрограмм надо учитывать набор имеющегося оборудования. Для облегчения определения необходимого оборудования вначале пишем микропрограмму для самой большей по затратам оборудования команды. Ей является команда с плавающей запятой. Команда сравнения двух операндов с плавающей запятой. числа представляются в коротком формате.

 

± Характеристика  Мантисса

 0           1            7            8           31

 

Отрицательные числа изображаются в прямом коде. Характеристика Х равна порядку числа, увеличенному на 64, и представляет значения порядка в диапазоне от -64 до +63. Набор символов (_=) обозначает присвоение переменной в начале машинного такта, а набор символов (: =) обозначает присвоение переменной в конце такта.

Структурная схема процессора (операционная часть) приведена в приложении 2.

Микрооперации и логические условия

 

Перечень всех микроопераций показан в таблице 2.

Перечень всех логических условий показан в таблице 3.

 

Перечень микроопераций таблица 2

Y ОПЕРАЦИЯ Y ОПЕРАЦИЯ
Y1 PSW (28: 31): =01012 Y45 MA. DOPA: =1110. MA
Y2 PSW (28: 31): =01102 Y46 A (0): =1
Y3 AOП: =СЧАК+1 Y47 MA. DOPA: =A (11: 31)
Y4 ЧТОП Y48 SA. MA: =SA. MA+DOPA (0)
Y5 PK (0: 15): =БР Y49 PSW (28: 31): =11002
Y6 СЧАК: =СЧАК+1 Y50 MA: =0001. A (8: 27)
Y7 M_=РОП Y51 PSW (34: 35): =nA (0). A (0)
Y8 Z: =M Y52 PA: =6410
Y9 PK (0: 15): =Z (0: 15) Y53 PSW (28: 31): =11102
Y10 БР: =M (16: 31) Y54 Z: =A
Y11 PK (16: 31): =M (0: 15) Y55 РРП: =M
Y12 ТП: =0 Y56 M_=Z
Y13 ТП: =1 Y57 PSW (32: 33): =112
Y14 БР: =M (16: 31) Y58 A: =0..0. D2
Y15 РК: =Z Y59 АРП: =0. B2
Y16 PSW (32: 33): =012 Y60 PSW (32: 33): =102
Y17 APП: =0. R2 Y61 A: =A+Z
Y18 ЧТРП Y62 ОАП: =A (12: 29)
Y19 M_=РРП Y63 A (12: 29): =A (12: 29) +1
Y20 ЗПРП Y64 PSW (0: 31): =B
Y21 АРП: =0. R1 Y65 PSW (32: 63): =B
Y22 A: =Z Y66 PSW (28: 31): =00012
Y23 PSW (34: 35): =102 Y67 A: =0..0. D1
Y24 PSW (34: 35): =002 Y68 АРП: =0. B1
Y25 PSW (34: 35): =012 Y69 B (0: 7): =I2
Y26 АРП: =1. R1 Y70 B: =B (0: 7) &Z (0: 7). Z (8: 31)
Y27 DOPA: =0 Y71 A (0: 7): =B (0: 7) &Z (0: 7)
Y28 DOPB: =0 Y72 B: =Z (0: 7). B (0: 7) &Z (8: 15). Z (15: 31)
Y29 APП: =1. R2 Y73 A (0: 7): =B (0: 7) &Z (8: 15)
Y30 SA: =Z (0) Y74 B: =Z (0: 15). B (0: 7) &Z (16: 23). Z (24: 31)
Y31 DS: =0 Y75 A (0: 7): =B (0: 7) &Z (16: 23)
Y32 B: =Z Y76 B: =Z (0: 23) B (0: 7) &Z (24: 31)
Y33 SB: =Z (0) Y77 A (0: 7): =B (0: 7) &Z (24: 31)
Y34 B: =A Y78 Z: =B
Y35 SB: =SA Y79 РОП: =M
Y36 PA: =PA+1 Y80 ЗПОП
Y37 MA. DOPA: =0000. MA Y81 АОП: =4016
Y38 MA. DOPA: =nMA. nDOPA+1 Y82 Z: =PSW (0: 31)
Y39 MB. DOPB: =nMB. nDOPB+1 Y83 Z: =PSW (32: 63)
Y40 DS. SA. A (0). MA. DOPA: = Y84 АОП: =4116
  : =SA. A (0). MA. DOPA+ Y85 АОП: =10416
  SB. B (0). MB. DOPB Y86 PSW (32: 63): =Z
Y41 SA. A (0). MA. DOPA: = Y87 АОП: =10510
  : =SA. A (0). MA. DOPA+1 Y88 PSW (0: 31): =M
Y42 SA: =0    
Y43 A (0): =0    
Y44 MA. DOPA: =0001. MA    

 

Перечень логических условий таблица 3

X Логическое условие x Логическое условие
X1 PSW (63) X19 SB
X2 СЧАК (0: 5) =0 X20 DS
X3 ТП X21 SA+A (0)
X4 СЧАК (22) X22 PA=0
X5 Z (16: 17) X23 A (8: 11) =0
X6 Z (0: 1) =0 X24 MA=0
X7 ZOП X25 PSW (39)
X8 КОП=1216 X26 КОП=8216
X9 R1 (0) +R1 (3) X27 B2=0
X10 R2 (0) +R2 (3) X28 B2 (3)
X11 A (1: 31) X29 A (29: 30) =0
X12 A (0) X30 A (0: 5)
X13 A (0: 7) X31 КОП=9416
X14 БР (0: 1) =0 X32 B1=0
X15 КОП=0A16 X33 B1 (30
X16 Z (1: 7) >PA X34 A (30)
X17 PB - PA=0 X35 A (31)
X18 SA    

Синтез управляющего автомата

 

Для синтеза управляющего автомата было получено следующее задание: управляющий автомат должен иметь одно поле Логических условий - Х, один укороченный адрес - А и поля Yi для микроопераций.

Разметка граф схемы

 

Разметка осуществляется следующим образом: операционный блок и логическое условие представляются одним состоянием - Pi, где i изменяется от 0 до 50 (по заданию). Если между операционным блоком и логическим условием есть разветвления, то операционный блок и логическое условие размечаются как два различных состояния - Рi и Pi+1 соответственно.

Разметка ограничена количеством состояний (по заданию) - их должно быть 50. На размеченной ГСА все микрокоманды заменены на yi, а логические условия на xi. полученная ГСА изображена в приложении 1.

Разбиение микроопераций по полям и кодирование логических условий

 

Принцип разбиения заключается в следующем: yi расположенные в одном операционном блоке записываются в разные поля. Поэтому количество полей в данном примере равно 5. В каждом поле включается микрооперация y0 (отсутствие микроопераций в состоянии). В таблице 4 показано разбиение по полям и кодировка yi.


Разбиение по полям таблица 4

  Y1     Y2     Y3     Y4     Y5  
  Операция Код   Операция Код   Операция Код   Операция Код   Операция Код
  Y0 0000   Y0 0000   Y0 000   Y0 000   Y0 000
  Y7 0001   Y6 0001   Y10 001   Y11 001   Y12 001
  Y1 0010   Y4 0010   Y8 010   Y15 010   Y21 010
  Y2 0011   Y9 0011   Y13 011   Y14 011   Y31 011
  Y3 0100   Y18 0100   Y26 100   Y17 100   Y29 100
  Y5 0101   Y22 0101   Y36 101   Y20 101   Y43 101
  Y19 0110   Y38 0110   Y32 110   Y27 110   Y46 110
  Y28 0111   Y47 0111         Y30 111      
  Y24 1000   Y41 1000                  
  Y25 1001   Y44 1001                  
  Y35 1010   Y23 1010                  
  Y37 1011   Y40 1011                  
  Y39 1100   Y45 1100                  
  Y33 1101   Y16 1101                  
  Y43 1110                        

В выбранном нами участке схемы применяются лишь 20-ть логических условий. В таблице 5 представлена их кодировка, где добавлены сигналы "1" и "0".

 

Логические условия таблица5

X Код X Код x Код
“0” 00000 X8 01000 X16 10000
X1 00001 X9 01001 X17 10001
X2 00010 X10 01010 X18 10010
X3 00011 X11 01011 X19 10011
X4 00100 X12 01100 X20 10100
X5 00101 X13 01101 “1” 11111
X6 00110 X14 01110    
X7 00111 X15 01111    

Прошивка МПЗУ

 

Для прошивки МПЗУ необходимо подсчитать, сколько разрядов надо выделить для РАМК. У нас 50 состояний и возможно появится пару БП, поэтому n =] ln2 (60) [=6. В поле команды адрес укорочен на один бит: А (0: 4). После того как мы разбили микрооперации на поля и закодировали логические условия, команда имеет следующий вид:

 

Y1 Y2 Y3 Y4 Y5 X A

 0           3 7  10         13          16 21          26

 

Прошивка МПЗУ производится по следующим правилам.

1) Если в состоянии Рi есть операционный блок и (или) логическое условие, то их коды вписываются в соответствующие поля.

2) Поле А - это укороченное значение РАМК на 1 бит. В нем указывается адрес перехода по "0", укороченный на единицу, на следующее состояние.

3) Последний бит адреса равен значению Xi, поэтому за состоянием, куда мы переходим по "0", должно следовать состояние, куда мы переходим по "1". Если

такие состояния уже описаны, то записываем безусловный переход.

4) При отсутствии в состоянии логического условия, последний бит адреса кодируется "0" либо "1", в зависимости от того где мы разместили следующее состояние.

5) Алгоритм вычисления РАМК представлен на рисунке 1.


Рис.1. Алгоритм вычисления РАМК.

 

Следуя вышеизложенным правилам проведем прошивку ПЗУ (таблица 6).

 

Прошивка МПЗУ таблица 6

РАМК Y1 Y2 Y3 Y4 Y5 X A

P (t)

P (t+1)
000000 0000 0000 000 000 000 00001 00001 P0

P3

000001 0110 0101 010 111 011 10000 10101 P29

P31

000010 0000 0000 000 000 000 00010 00010 P3

P1

000011 0011 0000 000 000 000 00000 00000 P2

P0

000100 0010 0000 000 000 000 00000 00000 P1

P0

000101 0000 0000 000 000 000 00011 00011 P4

P7

000110 0000 0000 000 000 000 00100 00100 P7

P5

000111 0110 0000 010 101 010 00000 10010 P33

P34

001000 0100 0010 000 000 000 11111 00101 P5

P6

001001 0101 0001 000 000 000 01101 00110 P8

P10

001010 0001 0001 010 000 000 00100 00111 P9

P14

001011 0000 0000 000 000 000 00111 00101 P6

P9

001100 0000 0000 000 000 000 00010 01000 P10

БП1

001101 0000 0000 000 000 000 00111 01100 P20

P24

001110 0000 0000 000 000 000 00101 01010 P14

P9

001111 0000 0000 000 000 000 00110 01011 P17

P19

010000 0000 0000 000 000 000 00000 00010 БП1

P1

010001 0100 0010 000 000 000 11111 01001 P11

P12

010010 0001 0001 0001 001 001 11111 00110 P13

P20

010011 0000 0000 000 000 000 00111 01001 P12

P13

010100 0000 0011 000 000 000 00000 00110 P15

P10

010101 0000 0011 011 000 000 11111 00110 P16

P20

010110 0000 0011 000 011 001 11111 00110 P19

P20

010111 0000 0001 011 010 000 11111 00110 P18

P20

011000 0000 0000 000 000 000 01000 01101 P24

БП2

011001 0000 0000 000 000 000 01110 10000 P21

P22

011010 0000 0000 000 000 000 00000 00000 БП2

P0

011011 0000 0000 000 000 000 00000 01110 P25

P28

011100 0111 0100 100 110 101 01001 01111 P27

P28

011101 0011 1101 000 000 000 00000 00000 P26

P0

011110 0110 0100 010 000 101 11111 00000 P28

P29

011111 0000 0000 000 000 000 11111 01110 БП3

P26

100000 0000 0000 000 000 000 01001 10001 P22

P32

100001 0011 1101 000 000 000 00000 00000 P23

P0

100010 1111 1101 000 100 000 11111 00011 P32

P33

100011 0000 0000 000 000 000 11111 10000 БП4

P23

100100 0000 0101 000 000 000 01011 10011 P34

P35

100101 0000 0000 000 000 000 10000 10110 P39

P40

100110 0000 0000 000 000 000 01010 10100 P35

P36

100111 1001 0000 000 000 000 00000 00000 P38

P0

101000 0000 1010 000 000 000 00000 00000 P36

P0

101001 1000 0000 000 000 000 00000 00000 P37

P0

101010 1001 0101 101 000 100 11111 10010 P31

P39

101011 1110 0000 110 000 000 11111 10010 P30

P39

101100 1001 0000 101 000 000 11111 10010 P40

P39

101101 0000 0000 000 000 000 10001 10111 P41

P43

101110 0000 0000 000 000 000 10010 11000 P43

P45

101111 1100 0000 000 000 000 00000 10111 P42

43

110000 0000 1011 000 000 000 10011 11001 P45

P47

110001 1100 0000 000 000 000 00000 11000 P44

P45

110010 0000 0000 000 000 000 10100 11010 P47

P48

110011 0000 0000 000 101 000 00000 11001 P46

P47

110100 0000 0000 000 000 000 00000 00000 P48

P0

110101 0000 0000 000 000 000 10001 11011 P49

P50

110110 0000 1001 101 000 110 00000 00000 P50

P0

110111 1110 1100 101 000 111 00000 00000 P52

P0

                     

Поделиться:





Воспользуйтесь поиском по сайту:



©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...