Функціональна організація і система команд процесора

Розробка мікропроцесора - найбільш важливий етап розробки ЕОМ. Складання команд, наближених до структури і функціонування процесорних пристроїв, принципи їх побудови і зв'язок з оперативною і регістровою пам'яттю. Опис структурної схеми процесора.

Рубрика Программирование, компьютеры и кибернетика
Вид курсовая работа
Язык украинский
Дата добавления 21.10.2012
Размер файла 49,6 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

ЗМІСТ

ВСТУП

1. ФУНКЦІОНАЛЬНА ОРГАНІЗАЦІЯ ПРОЦЕСОРА

1.1 Опис команди "І безпосереднє"

1.2 Складання з нормалізацією

1.3 Завантаження і перевірка

1.4 Завантаження PSW

2. СИНТЕЗ ОПЕРАЦІЙ

2.1 Вибірка команди

2.2 Реалізація команди "І безпосереднє"

2.3 Реалізація команди "Складання з нормалізацією"

2.4 Реалізація команди "Завантаження і перевірка"

2.5 Реалізація команди "Завантаження PSW"

3. ОПИС СТРУКТУРНОЇ СХЕМИ ПРОЦЕСОРА

3.1 Процесор

3.2 Оперативна пам'ять

3.3 Регістрова пам'ять

3.4 Слово стану процесора

3.5 Мікрооперації і логічні умови

4. СИНТЕЗ АВТОМАТА, ЩО УПРАВЛЯЄ

4.1 Розмітка граф схеми

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

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

4.4 Опис структурної і електричної принципової схеми автомата, що управляє

ВИСНОВОК

ВСТУП

Даний курсовий проект присвячений розробці мікропроцесора, що виконує деякий набір команд. Для наближення до структури і функціонування реальних процесорних пристроїв були дані команди і принципи роботи із зовнішніми пристроями аналогічні реально існуючому процесору IBM/370. Розробка процесора - це один з найбільш важливих етапів розробки ЕОМ в цілому. Попри те, що для функціонування модулів пам'яті і інших зовнішніх по відношенню до процесора пристроїв байдужа внутрішня структура процесора, важливо брати до уваги при виборі набору пристроїв найбільш характерні типи даних оброблювані процесором, типи команд, призначення і функції зовнішніх виводів процесора. В даному випадку, оскільки команди процесора можуть мати довжину 16 або 32 розряди, то бажано використати пам'ять, що дозволяє прочитувати одночасно не менше 32 розрядів. Подібний вибір структури пам'яті добре стикується і з найбільш характерними форматами даних, з якими працює процесор. В даному випадку не позбавлений сенсу був і вибір пам'яті з можливістю вибірки 64-розрядних слів, оскільки процесор працює і з 64-розрядними словами, але оскільки така розрядність використовується тільки в одній з мікрооперацій, а дані при цьому знаходяться в регістровій пам'яті, то при цьому 64-розрядна пам'ять використовувалася б виключно для вибірки команд, а магістраль велику частину часу простоювала. Таким чином, була вибрана структура процесора, що має 32-розрядну зовнішню і 32-розрядну внутрішню структуру.

При виборі структури регістрової пам'яті враховувалося, то що одночасно не використовуються регістри з плаваючою точкою і регістри загального призначення, тому можливе їх об'єднання в одну регістрову пам'ять. Відмінність у форматі при цьому не є проблемою, оскільки регістри з плаваючою точкою при цьому представляються у вигляді двох 32-розрядних регістрів. Це не призводить до зменшення продуктивності системи, як було відмічено раніше, магістраль є 32-розрядною і, все одно, треба робити прочитування регістра з плаваючою комою за два звернення до регістрової пам'яті, а конвеєрний спосіб зв'язку з нею дозволив робити це прочитування за три машинні такти.

1. ФУНКЦІОНАЛЬНА ОРГАНІЗАЦІЯ ПРОЦЕСОРА

Процесор повинен виконувати наступні команди:

Складання з нормалізацією

Завантаження і перевірка

Завантаження PSW

1.1 Опис команди "І безпосереднє"

NI

D1

(B1),

I2 (SI)

9416

I2

B1

D1

0 8

16

20

31

Порозрядний логічний твір (И) першого і другого операндів поміщається на місце першого операнда.

Операнди обробляються як логічні величини, що не мають внутрішньої структури, і до відповідних біт застосовується операція логічного І. У біті результату встановлюється 1, якщо у відповідних бітах обох операндів містяться одиниці, інакше - встановлюється 0.

У разі команди NC поля операндів обробляються зліва направо. Якщо операнди перекриваються, результат виходить таким, начебто операнди оброблялися побайтно, кожен байт результат записувався в пам'ять відразу ж після вибірки потрібного байта операнда.

1.2 Складання з нормалізацією

AER

R1,

R2 (RR, короткі операнди)

3A16

R1

R2

0 8

12

15

Другий операнд складається з першим операндом, і нормалізована сума поміщається в осередок першого операнда.

Складання двох чисел з плаваючою точкою полягає у вирівнюванні характеристик і складанні мантис. Характеристики обох операндів порівнюються, і мантиса операнда з меншою характеристикою зрушується управо; при кожному зрушенні на шістнадцятиричну цифру робиться збільшення характеристики цього операнда на 1. Зрушення триває до тих пір, поки характеристики обох операндів не стануть рівними.

Якщо операнд зрушений управо під час вирівнювання, то найлівіша шістнадцятирична цифра поля, висуненого за межі розрядної сітки, зберігається в якості додаткової цифри. Вважається, що операнд, який не піддався зрушенню, має додаткову молодшу цифру, рівну 0. Якщо вирівнююче зрушення не робиться, то вважається, що обидва операнди розширені молодшими шістнадцятиричними нулями. Потім робиться складання алгебри мантис для отримання проміжної суми.

При складанні коротких операндів мантиса проміжної суми складається з 7 шістнадцятиричних цифр і, можливо, цифри перенесення. Якщо перенесення має місце, сума зрушується управо на одну цифру, і характеристика збільшується на 1.

Після складання проміжна сума зрушується вліво так, щоб отримати нормалізоване число, за умови, що мантиса не дорівнює 0. У молодші шістнадцятиричні позиції, що звільнилися, записуються нулі, а характеристиці зменшується на число одиниць, рівне числу зрушень, потім мантиса проміжної суми усікається так, щоб отримати мантису результату потрібної довжини.

Знак суми визначається за правилами алгебри, за винятком випадку, коли усі цифри мантиси проміжної суми дорівнюють 0. У цій ситуації встановлюється позитивний знак.

Якщо перенесення із старшої позиції мантиси проміжної суми характеристики нормалізованої суми перевищує число 127, то фіксується особливий випадок переповнювання порядку. Операція завершується шляхом формування характеристики, яка на 128 менше дійсного значення, і відбувається програмне переривання із-за переповнювання порядку. При цьому результат буде нормалізованим, а знак і мантиса зберігають правильні значення. У разі команди складання для розширених операндів (AXR) зберігається також правильне значення характеристики молодшої частини.

Якщо характеристика нормалізованої суми менше 0, а мантиса не дорівнює 0, має місце особливий випадок зникнення порядку. Якщо біт маски зникнення порядку дорівнює 1, операція завершується шляхом формування характеристики, яка на 128 більше дійсного значення. Результат нормалізується, а знак і мантиса зберігають правильні значення. Потім відбувається програмне переривання із-за зникнення порядку. Якщо зникнення порядку має місце, а біт маски зникнення порядку дорівнює 0, то програмне переривання не відбувається. Замість цього операція завершується шляхом формування результату, рівного істинному 0.У разі команди складання для розширених операндів зникнення порядку не фіксується, якщо характеристика молодшої частини менше 0, а характеристика старшої частини більше або рівна 0.

Якщо мантиса проміжної суми, включаючи додаткову цифру, дорівнює 0, має місце особливий випадок втрати значущості. Якщо біт маски втрати значущості дорівнює 1, то характеристика проміжної суми не міняється і стає характеристикою результату. Нормалізація не робиться, і відбувається програмне переривання із-за втрати значущості.

Якщо біт маски втрати значущості дорівнює 0, програмне переривання не відбувається; Замість цього формується результат, рівний істинному 0.

Ознака результату:

0 - Мантиса результату дорівнює 0;

1 - Результат менше 0;

2 - Результат більше 0;

Програмні переривання:

Операція (якщо в цій установці відсутній засіб обробки чисел з плаваючою точкою або у разі команди AXR відсутній засіб обробки чисел з плаваючою точкою підвищеної точності)

Специфікація;

Переповнювання порядку;

Зникнення порядку;

Втрата значущості.

1.3 Завантаження і перевірка

LTR

R1,

R2 (RR)

1216

R1

R2

0 8

12

15

Другий операнд без зміни поміщається на місце першого операнда. Поля R1 і R2 повинні визначати регістри 0,2,4 або 6; інакше фіксується особливий випадок специфікації.

Ознака результату:

0 - результат дорівнює 0;

1 - результат менше 0;

2 - результат більше 0;

Програмні переривання відсутні.

1.4 Завантаження PSW

LPSW D2(S)

8216

/////////

B2

D2

0 8 16 20 31

Подвійне слово з області, вказаної адресою другого операнда, заміщає поточне PSW.

Якщо в новому PSW заданий режим BC, то при завантаженні PSW вміст позиції 16-33 нового PSW не зберігається. Коли надалі PSW записується в пам'ять. Ці позиції містять новий код переривання і код довжини команди.

Робиться тимчасова відміна поєднання. Виконання операції в процесорі затримується до тих пір, поки не буде завершені попередні доступи цього процесора в основну пам'ять по відношенню до інших каналів і процесором.

До тих пір, поки виконання цієї команди не буде завершено, доступ до подальших команд і їх операндом не робиться.

Операнд має бути розташований на границі подвійного слова; інакше розпізнається особливий випадок специфікації і операція пригнічується і тоді, коли має місце особливий випадок захисту або адресації.

Біти 8-15 команд ігноруються.

Ознака результату визначається вмістом відповідного поля нового PSW.

Програмне переривання:

Привілейована операція;

2. СИНТЕЗ ОПЕРАЦІЙ

2.1 Вибірка команди

Перед виконанням будь-якої команди треба рахувати її з пам'яті в регістр команд РК. Адреса прочитуваної команди задається в лічильнику адреси команди СЧАК, що є бітами 40.62 із слова стану програми PSW. З пам'яті одночасно прочитуються 32 розряди - Регістр ОП, адреса якого знаходиться в Адресному регістрі ОП. Оскільки довжина команди може дорівнювати 16 або 32 розрядам, то за одне звернення до пам'яті може бути лічена одна або дві команди або одна команда і частина наступної.

Щоб не робити повторне прочитування, розряди РОП(16:31) можуть запам'ятати у буферному регістрі БР. Для того, щоб визначити, чи знаходиться у БР корисна інформація, використовується тригер переходів ТП, одиничне значення якого означается, що інформація у БР не може бути використана для формування нової команди. Якщо ТП=0, то вміст БР може бути використаний для формування нової команди.

Якщо вибирана команда має формат RR, перше півслово, що є командою, передається на РК, а розряди (16:31) зберігаються на БР. При цьому СЧАК збільшується на "1".

Якщо вибирана команда розпочинається з другого півслова і має довжину в слово, то на РК розряди(0:15) передаються розряди (16:31) РОП, СЧАК збільшується на "2" і відбувається повторне звернення до ОП. Розряди (0:15) РОП передаються на РК (16:31).

Функціональна мікропрограма вибірки команди приведена на рис. 1 у додатку 1. Після вибірки команда знаходиться в РК. Її КОП ми по черзі порівнюємо з Копами наших команд, як тільки вони співпадуть йдемо на виконання. Якщо такого Копа немає, то викликається програмне переривання.

2.2 Реалізація команди "І безпосереднє"

У команді "І безпосереднє " явно даний другий операнд, довжина якого 1 байт - це поле I2. Другий операнд знаходиться в ОП. Його адреса обчислюється наступним способом: з РП за адресою В1 витягається РОН який складається зі зміщенням D1.В результаті отримуємо адресу операнда в ОП. Залежно від останніх 2-х бітів адреси витягаємо відповідний байт і проводимо операцію "І безпосереднє". Потім результат записуємо на місце 1-го операнда і робимо запис отриманого регістра в пам'ять. Ознака результату встановлюється у відповідності вищеописаної умови.

Блок-схема алгоритму показана на малюнку 2.

2.3 Реалізація команди "Складання з нормалізацією"

Для реалізації команди "Складання з нормалізацією" були використані наступні елементи. Тригера SA, SB, які служать для зберігання знаку (модернізований код); тригер DS використовується як прапор переповнювання при складанні. Чотирирозрядні регістри DOPA і DOPB, де зберігаються додаткові цифри для відповідних операндів. Операнди знаходяться в регістровій пам'яті по адресах R1 і R2 відповідно. При витяганні операндів перевіряється коректність завдання адрес. Для зручності операнди розбиті по полях: РА і РВ - поля характеристик, МА і МВ - поля мантис. Програма реалізується відповідно до опису - підрозділ 1.2. Схема алгоритму програми представлена на малюнку 3.

2.4 Реалізація команди "Завантаження і перевірка"

При виконанні цієї команди перевіряється коректність завдання адрес R1 і R2. Відповідно до завдання встановлюється ознака результату.

2.5 Реалізація команди "Завантаження PSW"

Операнд знаходиться в ОП. Його адреса обчислюється наступним способом: з РП за адресою В2 витягається РОН який складається зі зміщенням D2.В результаті отримуємо адресу операнда в ОП. Витягаємо регістр і записуємо його в PSW(0:31), потім збільшуємо на 1-у і записуємо регістр в PSW(32:63).

процесор команда оперативний регістровий

3. ОПИС СТРУКТУРНОЇ СХЕМИ ПРОЦЕСОРА

3.1 Процесор

Процесор складається з наступних основних частин:

· 32-розрядній магістралі М;

· 32- розрядного регістра Z для сполучення з магістраллю;

· 32- розрядного ALU

· 32-розрядних регістрів А, В;

· Тригери DS, SA, SB;

· 4- розрядних регістрів DOPA, DOPB;

· 16-розрядного буферного регістра БР і 32-розрядного регістра команд РК;

· 64- розрядного PSW;

· Тригера переходу ТП;

· Формувачів кодів ФК1-ФК6;

· Різних схем порівняння, мультиплексорів і ліній зв'язку.

Крім того, для роботи процесора потрібні РП і ОП, які можуть знаходитися усередині процесора або підключатися у вигляді зовнішніх пристроїв.

Магістраль процесора служить для зв'язку РП і ОП з внутрішніми регістрами. РП підключена до М через регістр РРП. ОП підключена до М через регістр РОП. Z служить для зв'язку РРП і РОП з регістрами процесора. БР і РК пов'язані з М безпосередньо. ALU служить для виконання різних операцій і для зв'язку між внутрішніми регістрами.

3.2 Оперативна пам'ять

У оперативній пам'яті місткістю 256 кілобайт зберігаються 32 - розрядні слова. Слово читається і записується в оперативну пам'ять тільки цілком за одне звернення до ОП. Адреса слова, до якого робиться звернення, вказується на регістрі адреси основної пам'яті АОП. Довжина регістра АОП дорівнює _, де _- емність ОП в словах. Слово інформації, яке записується або читається з ОП, розмішається в регістрі РОП. Операція в ОП збуджується сигналами читання з основної пам'яті ЧТОП і записи в основну пам'ять ЗПОП. Момент закінчення операції в ОП відзначається сигналом _. Оскільки цикл основної пам'яті має тривалість велику такту роботи процесора, то повинна забезпечуватися синхронізація роботи процесора і оперативної пам'яті за рахунок вершин графа мікропрограми, що чекають.

3.3 Регістрова пам'ять

Регістрова пам'ять застосовується для збільшення швидкодії процесора. РП складається з регістрів загального призначення (РОН) і регістрів з плаваючою комою (РПЗ). Рони використовуються в якості індекс регістрів, базових регістрів, а також для зберігання слів і півслів, що беруть участь в операціях з фіксованою комою. Рони є 32 - розрядні регістри і адресуються числами від 0 до 15. Для звернення до РОНам в командах будь-якого формату відводиться чотирирозрядне поле R.

При виконанні операцій з плаваючою комою один або обидва операнди можуть розташовуватися на РПЗ. Всього використовується чотири регістри завдовжки 8 байтів з адресами 0,2,4,6 відповідно.

Рони і РПЗ структурно об'єднані в 24-регістрову пам'ять РП, регістри 0-15 є Рони, а інші 8 регістрів використовується для зберігання чотирьох восьмибайтних слів. Довжина регістра РП дорівнює 32 розрядам. Адреса регістра вказується на 5-розрядному регістрі АРП. Операнд, який записується або читається з РП, поміщається на регістр РРП. Читання і запис слова ініціюються відповідно сигналами ЧТРП і ЗПРП.

Для зберігання поточної інформації використовується РК. Дані з нього можуть поступати на АРП і на ALU.

3.4 Слово стану процесора

Слово-стан процесора 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.

3.5 Мікрооперації і логічні умови

Перелік усіх мікрооперацій показаний в таблиці 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

4. СИНТЕЗ АВТОМАТА КОТРИЙ УПРАВЛЯЄ

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

4.1 Розмітка граф схеми

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

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

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

Принцип розбиття полягає в наступному: 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

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

Для прошивки МПЗУ необхідно підрахувати, скільки розрядів потрібно виділити для РАМК. У нас 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

4.4 Опис Структурної і Електричної принципової схеми автомата, що управляє

Пристрої, використані для реалізації мікропрограм можна розбити таким чином: DС1, DC2 дешифратори 4 на 16; DС3, DC4, DC5 дешифратори 3 на 8, МЅ - мультиплексор з 24 в 1; ПЗП (0:26) - для зберігання форматів команд; РАМК(0:5) - адресний регістр, для звернення до осередків ПЗП. Вхідні дані - логічні умови Х, вихідні - безліч кодованих У. Структурна схема автомата, що управляє, приведена в додатку 2.

При побудові принципової електричної схеми використані серії КР155 і КР556. З серії КР556 вибирається для запам'ятовування слів мікропрограми 3 ПЗП КР556РТ17 місткістю 16 кілобайт. Усі інші елементи: мультиплексори, дешифратори, інвертори і регістр адреси ПЗП вибрані з серії КР155. Мікросхеми цієї серії - це малопотужні, швидко діючі, цифрові, інтегральні мікросхеми, призначені для організації високошвидкісного обміну і обробки цифрової інформації тимчасового і електричного узгодження сигналів в обчислювальних системах. Мікросхеми серії КР155 в порівнянні з відомими серіями логічних ТТЛ мікросхем мають мінімальне значення твору швидко дії на розсіювану потужність.

Принципова електрична схема побудована на основі структурної схеми автомата, що управляє, і приведена в графічному застосуванні 3.

ВИСНОВОК

В ході виконання курсового проекту я вивчив принципи побудови процесорних пристроїв і принципи їх зв'язку з іншими пристроями, такими як оперативна пам'ять і регістровий пристрій, що запам'ятовує.

По своїй структурі операційна частина процесора ближче до структури М-автомата, в якому усі регістри пов'язані між собою через АЛУ. У цьому процесорі таким чином пов'язані регістри що безпосередньо беруть участь в арифметичних операціях, хоча і між не якими їх них є безпосередній зв'язок.

Така структура дозволила значно спростити операційний автомат.

У М-автоматі можливе виконання тільки однієї мікрооперації за один машинний такт, а цей процесор дозволив значно нейтралізувати це обмеження за рахунок введення деяких безпосередніх зв'язків і за рахунок розрядності АЛУ в два рази розрядність одного внутрішнього регістра загального призначення, що перевищує, що дозволило використати АЛУ, як єдине ціле при виконанні мікрооперацій над 64-розрядними операндами або як два незалежних АЛУ при роботі з 32-розрядними операндами. Крім того, одночасно з виконанням арифметико-логічних операцій можлива вибірка даних з оперативної або регістрової пам'яті, установка ознак результату і не яких інших дій за рахунок безпосереднього зв'язку з магістраллю регістрів, не пов'язаних з виконанням арифметико-логічних операцій.

Размещено на Allbest.ru


Подобные документы

  • Схема суперскалярної організації процесора. Вплив залежності між даними на роботу суперскалярного процесора. Апаратний паралелізм – це міра здатності процесора отримувати переваги із паралелізму на рівні команд. Запуск команд у суперскалярному процесорі.

    реферат [34,9 K], добавлен 08.09.2011

  • Реалізація програми на мові асемблера для процесора i8086. Регістрова структура процесора. Використання сегментних регістрів для апаратної підтримки найпростішої моделі сегментованої пам'яті. Формування арифметичних прапорців. Система команд процесора.

    контрольная работа [240,5 K], добавлен 27.02.2013

  • Розробка структурної схеми. Опис основних елементів мікропроцесора. Вибір підходящої структури процесорного елемента та його опис. Реалізація пристрою управління. Розробка мікропрограми та загальний алгоритм виконання процесором команди SBR Rm, B.

    контрольная работа [83,6 K], добавлен 04.06.2009

  • Функціонування мікрокомп’ютерів з шинною організацією. Системні локальні шини. Організація та структура пам’яті. Базова система введення-виведення. Режими роботи процесора I80286. Програмна модель процесора. Регістри процесора та умови програмування.

    курсовая работа [326,1 K], добавлен 06.06.2013

  • Отримання показників процесора за допомогою програми EVEREST Ultimate 2006. Приклад отриманих характеристик: властивості ЦП, виробник та завантаження. Набори команд та інструкцій, з якими працює процесор. Властивості та виробник графічного процесора.

    лабораторная работа [19,5 K], добавлен 16.12.2010

  • Трансп’ютер - мікрокомп'ютер із власною внутрішньою пам'яттю й каналами для з'єднання з іншими трансп’ютерами. Структура центрального процесора. Система команд трансп’ютера і їхнє виконання. Організація пам'яті трансп’ютера, диспетчеризація процесів.

    реферат [140,8 K], добавлен 30.03.2011

  • Принципи роботи команд мікросхеми 24LC08: читання, запису даних. Опис і блок-схеми програми і підпрограм, що обслуговує пристрій. Вибір середовища програмування і розробка програми, яка забезпечує можливість демонстрації команд. Проведення тестування.

    курсовая работа [114,2 K], добавлен 08.12.2011

  • Команди умовних і безумовних переходів в програмах, скорочення накладних витрат переходу, черга команд і технологія розгалуження із суміщенням. Основи конвеєризації, конвеєрна обробка команд у комп'ютері та збільшення пропускної здатності процесора.

    реферат [39,5 K], добавлен 19.06.2010

  • Складання багаторівневого списку за допомогою редактора Word, їх класифікація та різновиди. Порядок побудови діаграми по даних таблиці, структурної схеми, математичних формул. Графічне супроводження інформації. Структура інтерфейсу користувача Windows.

    контрольная работа [372,5 K], добавлен 09.05.2010

  • Концепція суперскалярної організації процесорів. Ознаки повноцінного суперскалярного процесора в моделі Pentium Pro. Етапи протікання процесу виконання програми в Pentium II. Вузли добування і розшифровки команд. Конвеєр обробки команд розгалуження.

    реферат [59,8 K], добавлен 08.09.2011

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.