Развитие на компютърната архитектура- Част 1

- Секция Компютри
     Исторически погледнато, за класически архитектурен стил имаме основание да говорим още от 1946 г., когато за първи път Джон фон Нойман постулира принципи за изграждане на цифрова машина, работеща по програма. Да си ги припомним:
· принцип на програмното управление;
· принцип на съхраняването на програми в паметта.
 
Независимо от развитието на технологията на производство и на програмирането през всичките близо 60 години, тези принципи остават същите (разбира се допълнени), и днес продължават да бъдат ръководно начало. Ще се опитаме да ги резюмираме от архитектурна гледна точка на фона на хронологичното развитие на архитектурните поколения. При това се предлага една формална етапност по архитектурни поколения, за които са характерни две особености:
 
· тя отразява не толкова фактическото положение, колкото определящите за даден момент тенденции на развитие, игнорирайки съзнателно както редица изпреварили времето си концепции, така и прояви на архитектурен "атавизъм";
· тя съвпада само отчасти с популярната етапност на елементната база по поколения, която не отразява появата на фундаментални допълнения, например, да се разглежда компютъра не като машина, а като система, което е довело до важно разширение на принципите на класическата организация - мултипрограмирането и системното управление.
 
Първо поколение компютри (1945-1954). В най-чист вид принципите на фон Нойман са реализирани именно в това поколение.
Ламповата технология, която е на разположение по това време, изисква опростени функции и налага оформянето на изчислителната машина като едно устройство с три основни функционални блока: управляващо устройство (УУ), аритметично-логическо устройство (АЛУ) и памет (П) - фиг.2-1. Периферията се състои обикновено от пулт за управление и устройство за цифров печат. Комуникацията между регистрите и блоковете е директна. Въвеждането (извеждането) на информацията става чрез АЛУ. В определен момент в машината се намира само една програма.
 
Опростената организация резултира в двете архитектурни форми - команда и операнд със статични формати, равни на машинната дума. Динамичните формати също са два - с фиксирани полета, изразяващи съответно:
· команда с код на операцията и три адреса (два за операндите и един за резултата);
· число с фиксирана запетая (при нужда се използуват мащабни коефициенти).
Командите са неразличими от операндите и могат да се обработват като тях, като освен това са единственото средство за връзка - субект (програмист) > машина.


Фиг.2-1. Обобщена структура на компютър от първо поколение.
Наборът команди включва само основните аритметични и логически операции и предаване на управлението по адрес (безусловен и условен).
 
И от този кратък преглед могат да се обобщят основните характеристики на класическата архитектура:
 
а) линейна организация на паметта и централизирано управление;
б) организация на информацията, идентична с тази на паметта - идентификация чрез адресен граф;
в) фиксиран набор от команди;
г) фиксирани статични и динамични формати;
д) определеност на връзката, операция - операнд, изразяваща се в:
- безусловно присъствие в командите на код на операция и на операнд (или адрес на операнд);
- динамична определеност на типа на операндите чрез кода на операцията т.е. зависимост на операцията от операнда.
е) неявна приемствена определеност.
Програмирането на компютрите първоначално се осъществява на машинен език, т.е. чрез записване на данните и командите в двоичен код, а по късно (след 1951 г.) и на асемблерен език.
 
Второ поколение компютри (1955-1964). То е свързано с повишаване на технологичното ниво, в следствие на въвеждането на транзисторите в схемотехниката, повишаване на обема на феритната памет, разширяване на кръга от средства за вход/изход, въвеждане на външни запомнящи устройства и начално използуване на програмните езици. Обобщената структура на компютъра от второ поколение е дадена на фиг.2-2.
 
Основна разлика между тази структура и представената на фиг.2-1 е, че тук въвеждането/извеждането на информацията става без участието на АЛУ, което води до повишаване на производителността на компютъра, благодарение на съвместяването по време на входно/изходните и на изчислителните операции. Но същевременно от устройството за вход/изход се изисква да прави контрол на информацията при въвеждане/извеждане. Конфигурацията на компютъра остава твърда и той все още работи в еднопрограмен режим. Важен момент при това поколение е разделянето на информацията на оперативна и дългосрочна и от там на запомнящите устройства - на оперативни (вътрешни) и външни. Последното се стимулира от въвеждането на външни запомнящи устройства: магнитни ленти и магнитни барабани.


Фиг.2-2 Обобщена структурна схема на компютър от второ поколение.

Налице са числа с плаваща и фиксирана запетая, т.е. различимост на данните по тип. Статичните формати са още с дължина на машинната дума, динамичните - също фиксирани и обхватът, и точността на представяне на числата са определени от разрядността на компютъра.
Нов елемент е възможността за описание на линейни структури от данни, което става чрез индексни регистри. Тяхното присъствие, както и увеличеният обем оперативна памет прави неудобна триадресната команда. Компютрите от това поколение имат дву- и даже едноадресни команди. Така се появяват модифицираните команди, т.е. кода на операцията трябва да отразява едни и същи действия с цел:
 
· обработка на различни типове операнди;
· намиране на операнди на различни места - в регистъра (акумулатора) и в паметта.
 
Това означава, че освен модификации на основните операции в командния набор ще участват и нефукционални команди за четене и запис в оперативната памет. Разширените възможности на периферията изискват и съответни команди за автоматично управление на обмена.
През този период се отнасят и първите разработки на езици за програмиране от високо ниво. Това са FORTRAN (1956 г.) и малко по-късно ALGOL (1959 г.).
 
В заключение може да се каже, че независимо от обогатените възможности на компютъра, при това поколение се запазват всички основни класически характеристики на архитектурата.
 
Трето поколение компютри (1965-1984). Третото поколение на класическата архитектура се заражда в началото на 60-те години (1965 г. IBM360/40). Това поколение се свърза с възникването на новата концепция за компютъра като многопрограмна и многоресурсна система.
 
Разглеждането на компютъра като система поставя на преден план проблемите за функционалната специализираност на ресурсите и за междуресурсната комуникация. Тяхното решение от една страна води до концепцията за централна част, включваща централен процесор (ЦП) и оперативна памет (ОП) , и периферна част, включваща входно-изходните устройства и външна памет, разглеждани като периферни устройства (ПУ). Тъй като по отношение информационния трафик, центърът на системата е ОП, а управлението остава централизирано в ЦП, стремежът към оптимизиране на системата при това поколение се изразява в създаването на специализирано устройство за управление на обмена (УУО) - фиг.2-3.
Това устройство осъществява конкретните функции по обмен с периферията и буферирането на информационните потоци. При това в организацията на УУО също може да съществува йерархия (процесори за вход/изход, канали, контролери).
 
В структурно отношение за това поколение е характерно силно изразената възможност за реконфигурация на ПУ и по-слаба (най-често неявна) възможност за изменение на ОП и УУО. Оперативната памет също започва да се комплектова от отделни модули, което спомага за разширяване на гамата от системни конфигурации.


Фиг.2-3. Обобщена структурна схема на компютър от трето поколение
 
Системната организация на ресурсите изисква ново ниво на управление, което поради сложността си не може да бъде само схемно. Така възниква програмното системно управление и неговият схемен атрибут - системата за прекъсване, която става неотменна част от ЦП.
 
Многопрограмната работа изисква нова функция на ЦП - адресното преобразуване - с неговите схемни усложнения. Динамичността на класическите команди и централизмът на управление превръщат получаването на изпълнителните адреси в една от най-времепоглъщащите операции в ЦП.
В това поколение се разширяват възможностите за обработка на числата - освен с фиксирана и плаваща запетая те се представят с различна точност (дължина). Също така се въвежда и символна обработка. Това налага разнообразие във форматите на данните и използуването на информационна единица, неидентична с информационното съдържание на една клетка от паметта. За първи път IBM в серията 360 въвежда информационната единица "байт" и представянето на данните във формат кратен на байта.
 
Развитието на програмните езици и усъвършенстването на технологията на производство спомагат за "изтегляне" на архитектурния компромис нагоре, което се изразява в създаването на богат (по-скоро усложнен) набор от команди, както за обработка на по-разнообразни типове и структури от данни, така и за предаване на управлението по различни условия, и съхраняването, и възстановяването на контекст. Много от командите се дублират и за различните варианти на адресация.
 
Едновременното съществуване на множество програми в системата (включително системните) поставя сериозни проблеми пред организацията и управлението на компютъра. Пример в това отношение е разпределението на паметта. Заменянето на физическото идентифициране на информацията с логическо, е нов момент в архитектурното развитие на компютъра.

Адресация може да бъде:
· проста, когато адресите са ограничени от физическия обем на конкретната памет;
· виртуална, когато адресите не зависят от обема на ОП, а от пространството, организирано като виртуална памет.
 
Адресацията при компютрите от трето поколение внася усложнения в получаването на изпълнителните адреси вследствие необходимост от логическо-физическо адресно преобразуване, но нейното съществуване е резултат от архитектурния компромис на многопрограмните компютри.
 
Като заключение трябва да се добави, че една от характерните особености на третото поколение е концепцията за архитектурна идентичност на различни по-възможности компютри, което осигурява тяхната програмна съвместимост, т.е възниква понятието "семейство". Целите които преследва архитектурата на семейството компютри се състои в представяне пред потребителя на една система, която в зависимост от нуждите и възможностите му, може да има различна производителност, различна проблемна насоченост и естествено различна цена. Това означава единствено решение на архитектурния компромис, което дава възможност за множество локални компромиси на управлението. От тук и основното изискване, което се поставя пред архитектурата на семейството компютри, е тя да бъде достатъчно универсална. Тази универсалност се проявява:
· качествено - да покрива широка приложна област;
· количествено - да обуславя модули с различна производителност и ползването на ресурси с различни технически характеристики и технологическо изпълнение.
 

Въведение в архитектурата- Част 2

 

 






Коментирай свободно: