Karh09 9

9. Микроархитектура, микрокод и микропрограмиране.


страницата се нуждае от дописване/преглеждане


Дефиниции

Въпреки, че неправилното използване на термина „микропрограмиране” с идеята за „програмиране на микрокомпютър” е навлязла широко в днешния начин на неговото използване, микропрограмирането е нещо съвсем различно. Микропрограмирането е системна техника в реализирането на управляващата логика на централния процесор на компютъра. Това е форма на запазена програмна логика която замества липсата на контрол при хардуера.
Централния процесор в компютъра е съставен от data path(информацията) и control unit (управляващо устройство). Data path-а включва регистри, функционални блокове като АЛУ, интерфейсни единици за основната памет и/или входно изходни шини и вътрешно процесорни шини. Управляващото устройство установява сериите от стъпки които функционалните блокове трябва да предприемат по време на изпълнението на видима от потребителя инструкция, или мАкроинструкция(load, add, store…).
untitled30.JPG

Всяка стъпка в изпълнението на една макроинструкция е трансфер на информация във функционалните блокове на централния процесор. Управляващите сигнали установяват сигнали към устройствата дали да подават или приемат информация. Тези контролни сигнали идентифицират микрооперациите необходими за всеки регистров трансфер и се подават от управляващото устройство. Една макроинструкция е изпълнена от генерирането на групи от контролни сигнали (микрооперации) които се подават с определена последователност във определено време.
Когато контролните сигнали са директно имплементирани с логически врати или програмирани с логически масив, управляващото устройство се казва че е hardwired. Като алтернатива, в микропрогрмирано управляващо устройство, контролните сигнали които предстои да бъдат използвани се съхраняват заедно в контолна дума, която се нарича микроинструкция. Колекцията от контролни думи които имплементират една инструкция се нарича микропрограма и микропрограмите се съхраняват в управляваща памет(control store).
untitled31.JPG
http://www.cs.clemson.edu/~mark/uprog.html - допълнителна информация за любознателните

Микроархитектура на централния процесор:

untitled32.JPG

И тук се сблъскваме с проблема за паметта в която се съхраняват микроинструкциите(ROM). Тя трябва да бъде много бърза, което пък от своя страна занчи, че тя става много скъпа. За да намалим нейния обем можем да подходим по два начина. Първия от тях е да намалим височината и(ако си представяме тази памет като матрица с наредени последователните инструкции подадени от микропрограмата, а колоните са различните видове контролни сигнали които може да подава микроинструкцията, като за всяка микроинструкция имаме еденица само в колоните които трябва да се изпълнят, има и една колона която съдържа номера на следващата инструкция). Втория начин е да намалим ширината като премахнем колоната с номера на следващата инструкция.
Пробелмът с микропрограмния контрол е, че се увеличават тактовете за инструкция.

(тук може да се дописват много глупости които не смятам за необходими)

Unless otherwise stated, the content of this page is licensed under Creative Commons Attribution-NonCommercial-ShareAlike 3.0 License