Основи на количествения дизайн и анализ

Компютърна и комуникационна техника Лекция

Основи на структурния дизайн и анализ в компютърните архитектури

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

Компютърната архитектура (КА) представлява съвкупност от количествени и качествени характеристики, свързани с конкретната реализация на дадена компютърна система и отразява взаимовръзката между апаратните и програмните елементи при тяхната съвместна работа в зависимост от приложението им.

Джон фон Нойман (28.12. – 08.02.) е добре познат компютърен учен, който през 1945 г. разработва общ модел на компютърна система. Той и неговите колеги реализират идеите му и създават работеща система, наречена EDVAC, която влиза в действие през 1952. Неговата революционна архитектура се оказала ефективна и досега остава основа на всички компютърни системи за обща употреба. За бъдещия компютър представите на фон Нойман са „не просто като за мощно пресмятащо устройство, а като универсален инструмент за научни изследвания, с практически неограничени възможности за решаване на задачи с алгоритмичен характер“. Класическият архитектурен модел на фон Нойман е базова концепция за изграждане на универсални специализирани компютри и се основава на следните принципи:

адресируема системна памет;
фиксирани формати за данни и инструкции;
разделяне на управлението от изпълнение на операциите;
изпълнение на операциите в АЛУ като операндите се съхраняват временно в регистри;
управлението е на базата на съхранявана в паметта програма и анализ на признаците.
ПЪРВИ ПРИНЦИП: Компютърът е електронно устройство и всички операции в него се извършват от електронни схеми, изградени на основата на електронни лампи, транзистори и интегрални схеми.
ВТОРИ ПРИНЦИП: Компютрите, изградени с електронни елементи, трябва да работят с двоична, а не с десетична бройна система.
ТРЕТИ ПРИНЦИП: Компютърът е програмно управляемо устройство. Програмата, която управлява работата се съхранява в паметта на машината, заедно с междинните числови резултати.

ЧЕТВЪРТИ ПРИНЦИП: Компютърът трябва да изпълнява инструкциите последователно, една след друга, след прочитането им от паметта. Универсалността на фон ноймановите компютри се явява в това, че за смяна на програмата в паметта не е необходима промяна на схемите на свързване на компонентите на компютъра, а може единствено да се смени програмата, записана в паметта. Компютърът се разделя на две основни части – централен процесор и оперативна памет.
АЛУ - Аритметично-Логическо Устройство АЛУ, което понастоящем е основен елемент на централния процесор, има 2 входа за операнди и изход за резултат от извършената операция над операндите. Операциите на АЛУ-то се кодират като двоични числа (числото се нарича код на операцията), ако е нужно - разширяват се с данни и се получава една машинна инстукция. Операцията, която се изпълнява над операндите, се подава от БУ - блок за управление, познат още като УУ - Управляващо устройство. АЛУ изпълнява всички аритметични и логически функции – събиране, изваждане, умножение, деление и сравняване на две числа (А>В, А≥В, А=В, А≠В, А≤В, А<В). От бързодействието на това устройство зависи скоростта на изчислителния процес. При по-старите микрокомпютри времето за изпълнение на една инструкция се измерва в милисекунди, а при новите - в нано- или пикосекунди. АЛУ е изградено от логически елементи (gates - "порти") с различни функции: изключващо или, или, не, не-или, не-и и други. АЛУ е комбиниран компаратор (сравнител) с пълен суматор. Важна характеристика на АЛУ е разредност - броят на битовете, постъпващи едновременно на входовете му, или колко бита е размерът на един операнд. Обичайните разредности биват от 2 до 64 и повече бита. Разрядността на процесора е равна също на размера на шината на входа и на големината на машинната дума (последователност от битове, които машината може да "прочете" наведнъж и да ги подаде на някой вход на АЛУ). Последователността от инструкции, записани в паметта, представлява програма на машинен език, което всъщност е програма за АЛУ-то. Възможно е двата операнда да съществуват в самата инструкция чрез своите стойности. Тогава кодът на операцията се отделя, отива в БУ / УУ, а операндите се подават отделно на входовете на АЛУ. Но този вариант не действа особено добре, понеже компютърната програма трябва да може да се изпълнява многократно върху различни данни. Друг начин на задаване е операндите да се разделят от инструкциите. За тази цел се въвежда адресиране на паметта, която дотогава е просто линеен масив. В инструкцията, вместо съдържание на операнда, се подава или адрес на операнда, или сведения за неговото изчисляване. По този адрес от паметта се прочита стойността на операнда. Така при инструкциите имаме адреси, а не стойности на операндите. Новото (в сравнение с предшествениците на АЛУ) е, че инструкциите също се записват в оперативната памет. Това решение, което можем да наречем и принцип, наричаме първи основен принцип на фон Нойман. Принципът гласи: данните и операндите се съхраняват в една и съща оперативна памет и няма логическа разлика между записа на данни и инструкции (всичко е поредица от 1 и 0).
БУ - Блок за Управление Друг основен елемент на ЦП е блокът за управление. Неговите функции са дешифрация , определяне адреса на операндите, адресиране, пресмятане, записване на резултат. В някои архитектури БУ изпълнява и по-сложни задачи.
БР - Блок регистри С разработката на проектите за изчислителни машини се установява, че за бързодействие на АЛУ-то трябва да има достъп до малка и бързодостъпна памет (блок регистри), която се обособява като част от централния процесор. Регистрите може да се разглеждат като "слотове", в които се записва информация. За фон Ноймановия процесор задължително трябва да има програмен брояч (наричан още указател на инструкциите), чиято стойност за по-голяма бързина се пази в регистър. Това е регистърът PC(IP) - Program Counter / Instruction Pointer. В този регистър е записан адресът на инструкцията, която предстои да бъде изпълнена от ЦП. В началото в PC външно трябва да се запише адресът, от който процесорът да изпълни първата инструкция (иначе няма как да се "инициализира" компютърът при включването му). Чрез програмния брояч се извличат толкова байтове, колкото дължината на инструкцията, след което броячът се обновява (увеличава се стойността му) с толкова байтове - тоест преместваме се на следващата инструкция. По този начин регистърът се обновява постоянно, докато програмата работи.
ЦП - Централен Процесор Централният процесор (CPU - Central Processing Unit) обединява АЛУ, УУ, БР и други блокове. Той изпълнява фиксиран краен набор от входови операции и начини на опредляне на адреса на операндите. Основната характеристика на процесора е ширината на АЛУ-то, горе вече казахме какво е това. Първоначално ширината на шината е била колкото една клетка от паметта (8 бита), но с времето процесорите са се развили, налага се за по-голямо бързодействие да четат повече октети (байтове) наведнъж, затова и днес вече имаме широко разпространени 64 битови ЦП, дори 128 битови ВП (видео процесори) и още по-големоразредни процесори.
ОП - Оперативна памет Най-общо казано, паметта е номериран линеен масив от клетки. Големината на клетката е предварително фиксиран брой битове, а номерът й е нейният адрес - цяло положително число. Основна характеристика на паметта е размерът й. Той се измерва в байтове. За по-големите памети се използват производните единици: KB(килобайт) MB(мегабайт), GB(гигабайт), TB(терабайт). Понятието байт е въведено от IBM. Байтът е основната адресируема единица памет. Един байт е 8 бита. Характеристика на паметта е адресната дума. Адресната дума е последователност от битове, в които можем да запишем всеки адрес на клетка от паметта. На фигурата е показано колко големи думи (колко битови думи) са необходими за различните размери памет.
Ако, да речем, адресната дума е с големина 32 бита, то в поле (регистър, променлива и др.) можем да запишем всяко число, което представлява адрес на клетка от паметта, и можем да адресираме клетки по 1 байт до 4GB. Това е нашето адресно пространство. Ако физически имаме повече от клетки памет, то губим всички останали клетки, тъй като не можем да ги адресираме. Така големината на паметта е пряко зависима от размера на машинната дума. Централен процесор с 32 битова дума не може да управлява памет по-голяма от 4 GB. Ако думата е 64 битова, тогава максималната оперативна памет е 16 ЕB. (екзабайт).
Компютърната система (КС) представлява конкретна реализация на избран архитектурен модел, който цели достигане на ефективни стойности за използваемостта на системния ресурс. За всяко едно конкретно приложение се търси оптималност на определени системни характеристики, които позволяват да се повиши производителността на изчисленията и да се намали тяхната стойност, т.е прилагането на конкретна архитектура за определен кръг задачи е целесъобразно тогава, когато има оптималност на съотношението производителност - цена.
В този аспект всяка компютърна система може да се представи като изградена от четири компонента:
Множество на процесорните единици, представляващи едно или няколко процесорни устройства, изграждащи еднородна/разнородна процесорна среда.
Множество на модулите памет, които изграждат системната памет. Независимо от физическата реализация на паметите, те могат да се разглеждат като отделни единици, към които информационния достъп се осъществява по строги правила.
Съвкупност от периферни устройства, които са различни по предназначение и структура и изграждат входно/изходната система, участваща в архитектурния модел.
Свързваща мрежа, която дефинира физическите линии за връзка, формиращи топологията, в която се дефинират логическите канали, т.е свързващата мрежа позволява организирането на логическа връзка между процесите на базата на физически съществуващи връзки.

Развитие на компютърните технологии
Компютърната технология прави невероятен прогрес в последните 65 години от създаването на първият електронен компютър с общо предназначение. Днес за по малко от 500 долара може да се закупи компютър с по-голяма производителност, повече основна памет и повече дисково пространство от тези на компютър, закупен през 1985 г. за 1000 000 долара. Това бързо подобряване е осъществено както от напредъка в технологията използвана за направа на компютрите, така и от иновациите в компютърното проектиране. Въпреки, че технологичните подобрения са постоянни, прогресът реализиран от по-добри компютърни архитектури не е толкова определящ. През първите 25 години на електронните компютри и двата потока имат основни заслуги за постигането на подобрение в производителността от 25% на година. Края на 70-те години на 20 век бележат появата на микропроцесора. Способността му да увеличава производителността в технологията на интегралните схеми води до по-високи скорости на подобрение от порядъка на 35% ръст на година.
Скоростта на растеж, комбинирана с предимствата на масовото производство на микропроцесори води до нарастващия дял на компютърния бизнес, базиран на микропроцесори. В допълнение, две значителни промени в компютърния бранш са причината за по-лесния от преди комерсиален успех на една нова архитектура. Първата причина е виртуалното елиминиране на асемблерните езици за програмиране, което се свежда до нуждата от обектно-кодова съвместимост. Втората причина е създаването на стандартизирани, независими от производителите операционни системи като UNIX и версия Linux, което води до намаляване на цената и риска от появата на нова архитектура.
Тези промени правят възможно развитието на нов набор архитектури с по-прости инст

Преглед на началото - целият файл след изтегляне

Описание

Дисциплина: Компютърни архитектури и организация на компютъра

0 коментара

Все още няма коментари. Бъдете първият, който ще коментира.

За да коментирате, трябва да сте влезли в профила си.

Влезте