Z=f(x), където x- входни данни; z


Тема 25: CDL - ЛИПСВА СИМУЛАЦИЯ



страница5/5
Дата23.03.2017
Размер0.81 Mb.
#17599
1   2   3   4   5

Тема 25: CDL - ЛИПСВА СИМУЛАЦИЯ


За симулиране на работата на операционни устройства и блокове от процесори използват специализирани езици от високо ниво и съответните им моделиращи системи за универсални компютри. Такава симулираща система е CDL. Езика съдържа описателни средства от високо ниво, чрез които се задават изпълнимите оператори в модела. Езиковите средства за описание на модела са различни. Константите в CDL са двоични до 32 разреда, шестнадесетични до 8 разреда и десетични до 4 разреда. Операционните символи са специфични и някои от тях са .EQ. - ‘равно’, .LT. - ‘по-малко’, .GT. - ‘по-голямо’ и други. Чрез основните декларации в езика е възможно описанието на функционалните елементи на моделираното устройство с помощта на запазените имена в езика:

- Регистър:

REGISTER, <име> {(m-n)}

където m и n са десетични константи. При пропускането им се разбира едноразреден регистър - тригер.

- Под регистър (именована част на регистър) - чрез декларацията се присвоява подиме на част от вече деклариран регистър:

SUBREGISTER, <име> {(m-n)}=<име> - <име>

- Памет с произволен достъп - при описанието и трябва предварително да е дефиниран адресен регистър:

REGISTER, <име на адресен регистър> (m-n)

MEMORY, <име> (<име на адресен регистър>)=<име>(m1-n1, m2-n2)

където с (m1-n1) е означен броят на думите в паметта, а с (m2-n2) - тяхната разредност. Разрядността на адресния регистър трябва да позволява адресирането на зададения брой думи в паметта.

- Логическа схема (мрежа) - описва едни- или многоизходна комбинационна логическа схема с входове, които са предварително описани като регистри или изходи на други логически схеми:

TERMINAL, <име> (m-n)= <израз>

като в израза се използват операционните символи.

- Дешифратор:

DECODER, <име> (m-n)=<име на регистър>

като е необходимо да се посочи името на предварително деклариран регистър със съответната разредност, който захранва входовете на дешифратора.

- Тактов генератор - използва се за деклариране на едно- или многофазен генератор на тактови сигнали, като с n е означен броят на фазите минус единица:

CLOCK, <име>

- Генератор на единични импулси - използва се за генериране на единичен импулс с означеното активно ниво еднократно в модела:

SWITCH, <име> (<активно ниво>)

Етикетите служат за управление на изпълнението на операторите в модела, като в даден такт на симулирането се изпълняват тези оператори, чийто етикет е активен. Изпълнимите оператори служат за описание на действието на операционната част на симулираното устройство и биват безусловни и условни. Безусловния оператор представлява израз, с помощта на който се описват логическите, функционалните и аритметичните операции над съдържанията на функционалните блокове, при което в израза се използват операционните символи. Условния оператор може да се записва в два формата:

IF (<условие>) THEN (<списък от оператори>)

IF (<условие>) THEN (<списък от оператори>) ELSE (<списък от оператори>)

където в условието се използват операциите за отношение. За управление на симулирането се използва операцията SIM, а за инициализиране на регистрите се използват операциите LOAD и SWITCH, за управление на извеждането на резултатите от симулирането - OUTPUT.


ТЕМА 26

CISC (Complex Instruction Set Computer) - тук процесорите са фирмуерно, инструкциите при CISK имат разнообразни формати и обширен списък значително повече от 100 инструкции, техниките за адресиране са в зависимост от процесора са от 12 до 24, регистрите са общи, и са от порядъка на 8 - 24, имат и общ кеш. Инструкционният цикъл е в рамките на 2-15 CPI.



RISC(Reduced Instruction Set Computer) управлението е хардуерно организирано, формата на инструкциите е регистров, а списъка е съкратен < 100, техниките за адресиране са в рамките на 3-5, имат разделен КЕШ, а общите регистри са от 32-128 GPR. Работят на тактова честота 75-300 MHz, инструкционният им цикъл е много малък, по-малък от 1.5 CPI.

С цел да се повиши бързодействието на КС, с навлизането на процесори от поколение i486 се въвежда и кеширане на данни и специална високоскоростна памет използвана за тази цел. Тази памет се нарича КЕШ. Тя служи за да може процесорът и не само той да записва най-използваните инструкции в нея, като чрез това се ограничава обръщането до основната памет, която е значително по-бавна. Тази кеш се дели на два вида:

Кеш памет от 1 ниво L1 (Level 1) - основно за пръв път се използва при процесори 486, тази памет се намира в процесора, като по този начин работи на неговата честота и е обща при 486 и разделена при 586 >.

Кеш памет от 2 ниво L2 (Level 2) - това е външна памет. в системите базирани на P6 се използва като обща. Това е един вид разширение на L1 кеша.

Ето и таблична характеристика на системните шини, и обема на адресираната памет от различните процесори на основата на Intel.



CPU

Data bus

Address bus

памет

8088

8 bit

20 bit

2^20=1M

8086

16 bit

20 bit

2^20=1M

80286

16 bit

24 bit

2^24=16M

80386DX

32 bit

32 bit

2^32=4G

..486DX2

32 bit

32 bit

2^32=4G

Pentium

64 bit

32 bit

2^32=4G



Тема 27: CISC/RISK Intel x86 микропроцесори

С навлизането на кеша, Intel Corp. представят на пазара няколко основни класа процесори базирани на L1 и L2:



- Pentium - възможност за управление до 4 GB памет 16к L1 разделен КЕШ, и 512 L2 с тактова честота 60…130 MHz.

-Pentium Pro - P6 2^36 GB памет, 16к L1 разделен КЕШ, и 1 MB L2 с тактова честота 200 MHz.

- Pentium II - P2 архитектура подобна на Р6, с включени мултимедийни хардуерни инструкции, наречени MMX, с включен L1 и L2 КЕШ, като този път L2 кеша работи на пълната честота на процесора достигат честота 400 МHz.

- Pentium II CELERON - с намален обем L2 кеш, в сравнение с горният с цел намаляване на цената.

- Pentium II Xeon - L2 кеша работи на половината от честотата на процесора.

- Merced - Този процесор не се базира на системи х86, като за съвместимост има хардуерно емулиране на този процесор, с паралелна архитектура (EPIC), с тактова честота от порядъка на 600-1000 MHz.

Има няколко режима на работа процесора които могат да се разделят по следният начин:

- Защитен режим (Protected Mode) - това е единственият режим на работа на процесорите >80286, в който са достъпни всички инструкции + 32 битово адресиране.

- Реален режим (Real Address Mode) - този режим поддържа програмната среда на процесор I86 с няколко разширения, даващи възможност за превключване в защитен режим и в системен режим на управление. 16 битово адресиране.

- Виртуален режим (Virtual Mode) - в защитен режим процесорът поддържа и квази режим, който му позволява да изпълнява програми за I86 в защитен режим и в многозадачна среда. Това е подрежим на защитен режим има виртуално адресиране, може и в 16 и в 32 битово адресиране.

- Системен режим (System Manigment Mode) - характерен за стандартната архитектура на процесори от фамилията i386.



SuperScalar архитектура, в Pentium 1, двоен инстукционен 10 фазен конвейр; 32 битова адресна шина; 64 битова шина за данни; възможност за 2 процесора;

DinamicExecute, в Pentium pro/2/3, троен инстукционен 12 фазен конвейер; 36 битова адресна шина; технология за разпознаване на инструкционните преходи;

NetBurst –от Pentium 4, хиперконвейрна технология;подобрен кеш; подобрена технология за разпознаване на преходите

EPIC-пълен паралеризъм на ниво инструкции; усъвършенствана технология за предсказване;

Тема 28: Регистров модел

Регистрите основно се делят на няколко типа:

- Базови регистри, които от своя страна се делят на: регистри с общо предназначение, указатели на инструкцията, регистър на флаговете и сегментни регистри;

- Системни регистри, делящи се на: управляващи регистри и адресни регистри;

- Регистри с плаваща запетая, делят се на: регистри за данни, дума на признака (tag word), дума за състояние, указатели за инструкция и данни, и регистър на управляваща дума;

- Регистри за настройка и тестване.

32 битовите регистрите от базовия тип са: EAX, EBX, ECX, EDX, ESI, EDI, EBP, ESP. 16 битови регистри са AX, BX, CX, DX, SI, DI, BP, SP.

- Сегментни регистри са CS, SS, DS, ES, FS, GS.

Формата на различните инструкции е различен в зависимост от типа на инструкцията. Те биват:

- регистър - регистър;

- регистър - памет;

- памет - регистър;

- памет - памет;

- регистър - непосредствен операнд;

- памет - непосредствен операнд.

Също така формата на инструкциите се дели на 16 и 32 битов. 16 битовия формат има следния вид:



Op. code

Mod-reg-r/m

Displacement

Immediate

1-2b

0-1b

0-1 b

0-2b

А 32 битовия формат e:

Address size = 0-1b; Operand size = 0-1b; Opcode = 1-2b; Mod-reg-r/m = 0-1b; Scaled Index = 0-1 b; Displacement = 0-4b; Immediate = 0–4b;

Префикса дефиниращ операциите има следните особености - repeat (0-1 байта), operand size (0-1 байта), address size (0-1 байта), segment override (0-1 байта), lock (блокиране на шината към паметта). Главния код на операцията opcode (1-2В) съдържа признаците d (direction - посока) и w (word - дума). Спецификатора на адреса е съставен от полетата mod-reg-r/m (mode register register/memory, 0-1B), s-I-b (scale index base, 0-1B), disp (displacement, 0-4B). Непосредствения операнд е imm (immediate, 0-4B).

Техниките за адресиране в инструкциите са няколко вида:

- Неявно адресиране. Изпълнява се при безадресни инструкции, при които липсват операнди.

- Регистрово адресиране - при инструкции, операндите на които се намират в някои от регистрите с 8, 16 и 32 битов формат.

- Непосредствено адресиране - непосредствения операнд с дължина 8, 16 или32 бита се намира в края на самата инструкция като константа.

- Адресиране на входа/изхода - 64 кВ входно/изходно пространство се указва чрез линеен адрес без намесата на сегментирането и пейджинга. Входно/изходните портове са достъпни чрез инструкциите IN и OUT с непосредствена 8 битова константа (т.нар. фиксиран порт или съдържание на регистъра DX - променлив порт). Източник или приемник на входно/изходните инструкции е винаги акумулаторът EAX/AX/AL.



Адресиране в паметта:

1) пряко (абсолютно) - отместването се задава чрез константа като непосредствен операнд.

2) Стеково, записът на PUSH и четенето POP от стека се изпълнява през т.нар. връх на стека (stack top). Областта на стека се дефинира чрез стековия елемент SS, а върхът - чрез указателя ESP/SP.

3) базово (косвено), отместването се намира в регистър

4) базово с изместване: към отместването в регистър се прибавя или изважда константа

5) базово с индекс – към базовия регистър се прибавя индексен регистър

6) индексно с мащабиране – отместването в индексния регистър се умножава с константа преди да се прибави към базовия регистър

7) базово-индексно с изместване


ТЕМА 29: Реален режим

Организация на паметта:



пряко достъпна:

1. Конвенционална памет (Conven­tional memory) -> 0¸640Kb

2. Горен дял на паметта (Upper memory) – 640¸1024Kb - достъпна чрез драйвери

3. Висока памет (High Memory Area) - 1024¸1088Kb (с активиране на адресна шина А20)

4. Допълнителна (Extended Memory) - за 286+ драйвер за стандарта XMS

5. Разширена (Expanded Memory), за 86+ драйвер за стандарта EMS <32Mb

Основното предназначение на реалния режим е подготовката на процесора за работа в режима на защита. Размера на адресите и операндите е 16b. Адресирането в реален режим става чрез сегмент и отместване в него. Размера на сегмента е 64Kb. Макс. адресируемо пространство е 1Mb. Адресът е 20-разреден. Получава се чрез изместване на сегментния регистър наляво с 4 разреда и добавяне на отместването. Допуска се припокриване на сегментите за по-добро използване на паметта. В реален режим странициране не се използва, така че физическият адрес е = на линейният.

Прекъсванията в R режим се обработват (обслужват) с помощта на вектори разположени на постоянни адреси от 000h до 3FFh. Тази област е с размер 1 Kb. Съдържа 4 байтов вектор за всяко от възможните прекъсвания от 0 до 255.

В микропроцесора 80486 прекъсванията са:

-апаратни – предизвикват се от външни източници и могат да бъдат маскируеми и немаскируеми

-вътрешни – предизвикват се от процесора при изпълнение на някоя инструкция. Това прекъсване винаги се повтаря при повторно изпълнение на инструкцията, която го е предизвикала.

За всяко прекъсване на 80486 трябва да се изпрати осем разреден вектор за идентифициране на прекъсването.

Маскируемото апаратно прекъсване изпраща 8 разреден вектор към микропроцесора по време на цикъла за разпознаване на прекъсването. Немаскируемото използва вътрешно формиран вектор.



Маск - прекъсване се предизвиква от сигнал на входа INTR на процесора. Разпознаването на този сигнал може да стане само при разрешение по програмен път- флаговият бит за прекъсване IF е зареден с 1.

Немаск - прекъсване се използва като високоприоритетно прекъсване. Например изключване от захранването.

Ако едновременно възникнат няколко прекъсвания, те се обслужват в => ред:

1. Прекъсвания от инструкцията INT и при особени случаи

2. Прекъсване при стъпков режим

3. Немаскируемо прекъсване

4. Прекъсване при превишен сегмент при разширение на процесора

5. Маскируемо прекъсване

Обработката на прекъсване включва запазване на флаговете, запазване на адреса на възврат и зареждане на регистъра за кодовия сегмент и на указателя на инструкциите с адреса на подпрограмата за обслужване на прекъсването.


ТЕМА 30: Защитен режим


32b адресиране – Адресирането се изп-ва в Р-режим, когато се изпълнява 32b код, странично преобразуване на адреса и функциониране на механизма за защита на паметта.

При адресиране се използва сегментиране, като чрез сегменти се отделят части от паметта.

Физическия адрес се формира чрез сумиране на сегментния косвен селектор (от дескрипторна таблица) с т.нар. ефективен адрес (ЕА). Селектора сочи дескриптор от специална таблица: 64 descriptor = (16 (selector)) едно от полетата на който представлява базовия адрес на сегмента.

PM организации на паметта:

1. Странична; 2. Сегментна; 3. Сегментно-странична; 4. Физическа

Дескрипторни таблици (3 типа)

- глобална дескрипторна таблица (GDT) – подредено разпределение на сегментните дескриптори, намира се в глобалното адресно пространство

- локална дескрипторна таблица (LDT) – съдържа само дескриптори свързани с дадената задача

- дескрипторна таблица на прекъсванията (IDT) – таблица, съдържаща дескриптори, показващи 1 от максимум 256 програми за обслужване на прекъсванията.

Всяка от таблиците се разполага в паметта и има размер от 8Kb до 64 Kb. Мястото и размерът на таблиците се задават със специален регистър за всяка от тях.

Основен формат на атрибутите на сегментните дескриптори



#байт

#бит

поле

Заб.

0-1

6


0-15

0-3


Limit (0-15)

Limit (16-19)



Сегментен размер

2-3

4

7



0-15

0-7


07

Base

Base


Base

Сегмент на база

5

0

1-3


4

5-6


7

А

TYPE


S

DPL


P




6

4

5

6



7

AVL

0

D



G





- атрибути на сегментни дескриптори

*База (32b, Base)

*Размерност (20b, Limit)

*Гранулярност на сегмента (1b, Granularity)

*Дескрипторно ниво на привилегии (2b)

*Присъствие на сегмента на нивото на физичекста песен (1b, Presents)

*Достъпност на сегмента (1b, Accessed)

*Вид сегмент (1b)

*Тип на сегмента (3b, TYPE)

*Подразбрана дължина на операнда (1b)

*Потребителско системно поле (1b)

Странично преобразуване на адресите. Страничното разпределение на паметта (на блокове от 4Кб), което преобразува линеен адрес на Р режим във физически адрес, заедно със защитата на страниците



Тема 31: Микроархитектура на спецпроцесор


ОЩЕ ТРЯБВА

Биполярните разредно разширяеми микропроцесорни ИС (bit - slice mikroprocessors) са предназначени за свързване в паралелни конфигурации на централни процесори за универсални или специализирани ЕИМ с микропрограмна архитектура и променлива дължина на машинната дума. Микропроцесорната фамилия Intel 3000 е реализирана по технологията с диоди на Шотки и е предназначена за универсални и специализирани процесори с микропрограмно управление и дължина на думата 2n. Типичната структура на процесор, изпълнен с ИС от фамилията I3000 има следения вид:



Управляващата микропрограма интерпретира инструкции от по-високо ниво на универсалния процесор; при контролерите управляващите микропрограми реализират необходимите управляващи функции. Изградения по такъв начин 16 битов микропрограмен процесор се характеризира със средно време за изпълнение на междурегистрови операции около 125 ns, което е доста по-бързо отколкото при I8080. Горната на инструкциите е разделен на стандартно поле на инструкциите и допълнително поле. По такъв начин минималната дължина на микроинструкцията е 18 бита. Централния процесорен елемент (ЦПЕ) I3002 е 2 битова процесорна секция, който е реализирана с 28 изводен корпус. ЦПЕ осигурява изпълнението на аритметични, логически и регистрови микрофункции над 2 битови операнди, постъпващи по три шини. Данните от ЦПЕ се изпращат по две изходни шини. Обработваните данни се съхраняват в 11 регистъра на свръхоперативния буфер и акумулатора. Входните управляващи шини на микрофункцията служат за избиране на микрофункцията на аритметично-логическата схема (АЛС), генериране на адрес в сврухоперативния буфер и управление на мултиплексорите. Една от шините е предназначена за маскиране на входовете на АЛС, с което значително се разширяват функциите на ЦПЕ. Стандартните изходи на преноса осигуряват неговото ускоряване при произволна дължина на масива от ЦПЕ.
Каталог: files -> tu files
tu files -> Увод в компютърната графика
tu files -> Xii. Защита и безопасност на ос
tu files -> Електрически апарати
tu files -> Средства за описание на синтаксиса
tu files -> Stratofortress
tu files -> Начало Решаване на проблеми
tu files -> Писане на скриптове за bash шел : версия 2
tu files -> 6Технологии на компютърната графика 1Модели на изображението
tu files -> Body name библиотека global Matrix imports (достъп по име) … var m[N, N] := … end decl., proc … resource f final code imports node, Matrix end name var x: node node; if x … Matrix m[3,4] :=: … end


Сподели с приятели:
1   2   3   4   5




©obuch.info 2024
отнасят до администрацията

    Начална страница