Разлика помеѓу преработките на „Сметачко памтење“

Одземени 9 бајти ,  пред 6 месеци
с
Правописна исправка, replaced: кои што → коишто using AWB
с
с (Правописна исправка, replaced: кои што → коишто using AWB)
Во рамките на целиот КС се употребуваат различни типови меморија. На пример во контролната единица постојат регистри што претставуваат RАМ мемории, додека микро програмите си реализирани преку [[ROM меморија]]. Аритметичко-логичката единица користи RОМ шеми за реализација на брза аритметика и заокружување. Кеш меморијата и главната меморија се реализирани како [[RAM меморија]].<ref>http://en.wikipedia.org/wiki/Random-access_memory</ref>
 
RОM мемориите се обично поевтини и побрзи од RАМ мемориите, за разлика од SАМ мемориите што се најбавни и најскапи. Користењето на мемориите во различни делови на КС ја градат мемориската хиерархија од регистри, преку кеш и примарната меморија до секундарна меморија.
 
Постојат ограничен број регистри, најчесто до 64, затоа што испитувањата покажуваат дека со денешната дека со денешната технологија постои големо забрзување на алгоритмите и зголемување на перформансите на системот со скок од 16 на 32 регистри. Скокот од 32 на 64 регистри знацително ја услознува хардверската организација и делумно го забавува системот поради адресирање регистри и воведување на големи патеки помеѓу регистрите.
 
* Систем дизајнерите се стрмата да ги конфигурираат главните мемории со цел да се добие најголем пропусен опсег за најниска цена.
 
* Корисниците и дизајнерите на софтвер треба да дизајнираат шеми што користата помала примарна меморија.
Користењето примарна меморија е проследено со идентификација на пристапот во форма на читање или запис, како и со односот на ефективниот пропусен опсег кон обликот на податоците или адресите. Полињата обично се пристапуваат секвенцијално, слично како и програмите, иако инструкциите за скок го менуваат педоследот на пристап. Можна е појава и на пристап во случаен редослед.
 
* Интерфејс кон надворешниот свет. Пристапот е остварен преку регистрите МАR и МDR. Надворесниот свет за меморијата на процесорот, контролната единица и влезно-излезните единици. Понекогаш интерната меморија може да се организира со различна големина од процесорскиот збор или магистралата на податоци. На пример, процесорскиот збор може да е 32 битен, магистралата 16 битна а меморијата 8 битна. Потребен е посебен хардвер за составување и разложување на бајтови во потребните зборови, којшто се имплементира во (MCU).
 
* Хардверски интергритет на податоци. Се остварува преку битови на парност. Мемориската контролна еденица МCU ги тестира зборовите како при прием на податоците, така и при испорака кон надворешниот свет. Ако се појави грешка се презема соодветната акција генерирајќи прекин, за да се обнови приемот на податоци. Во случај на код што овозможува детекција и корекција на податоците, се презема акција на поправка.
 
* Управување со меморијата. Тоа е една од најважните улоги на МCU. Освен стандардната шема на адресирање и пристап се користи техника на крање циклуси. Циклусите се крадат од процесорот кога постои влезно-излезна операција или пак проточноста во преземањето податоци на самата меморија. Доколку меморијата е значително побавна и ја зазма податочната магистрала, може да го закочи процесорот во неговата нормална работа.
 
* Заштита на меморијата. Се остварува преку ситем на заклучување со брава и клуч или постапка на проверка и поставување. Заштитата е нужна активност со цел да се обезбеди правилна работа на меморијата.
 
* Локално адресирање. Повеќе паралелни преклопени мемориски единици можат да делат една МCU. Постојат ситуации кога во системот постојат повеќе единици, како на пример, 4 МCU со 8 мемориски единици. Кога меморискиот и процесорскиот збор се со различна големина, тогаш постојат нови типови на проблеми како избор на вистинскиот бајт во меморискиот збор што треба да се пренесе во процесорот.
 
* Управување со кеш меморијата. Ова опфаќа комплетна реализација на префрлање блокови од и назад во примарната меморија, правило на адресирање итн.
 
Како што кеш меморијата се користи како метода за овозможување брз пристап, така главната меморија меже да се однесува како кеш меморија за секундарна меморија, обично имплементирана како магнетен диск. Оваа техника се нарекува [http://en.wikipedia.org/wiki/Virtual_memory виртуелна меморија].
Постојат две главни мотивации за виртуелната меморија можноста за ефикасно делење на меморијата помеѓу повеќе програми и отстранување на тешкотиите за програмирање поради малото ограничено количество на главната меморија.
Другата мотивација е да им се овозможи на корисничките програми да зафаќаат повеќе меморија отколку што навистина има главната меморија. Порано програмерите ја одредувале поделбата на програмата на делови кои штокоишто во текот на извршувањето на програмата се сместувале во главната меморија и се обновувале во секундарната под контрола на корисничката програма. Поради тоа програмирањето претставува голем проблем. Виртуелната меморија, пак од друга страна, автоматски управува со дво нивовска хиерархија преставена со главната меморија и секундарната меморија.
За секоја програма се дефинира адресен простор односно одреден број на мемориски локации резервирани за таа програма. Со тоа се врши заштита на програмите една од друга и на оперативен систем од програмите. Виртуелната меморија го овозможува пренесувањето на адресниот простор за секоја програма. Концептот на работа на виртуелната меморија и на кеш меморијата е ист, но се користат различни термини. Така блок во виртуелната меморија се нарекува страница, а активноста што доведува до непогодување генерира грешка на страницата.
Процесорот создава виртуелна адреса која со помош на хардверот и софтверот се преведува во физичка адреса во главната меморија. Виртуелната меморија исто така го поедноставува начинот на кој се записуваат програмите во меморијата, бедејќи врши релокација. Тоа значи дека мемориските страници се сместуваат на различни места во меморијата, т.е. за да се смести една програма или една податотека не е потребно да се бара континуиран слободен дел од меморијата туку се бараат празни односно непополнети мемориски страници во физичката меморија. За оваа активност порано бил потребен додатен хардвер или специјална подршка на оперативниот систем која што виртуелната меморија ја спроведува.
Таа ги содржи дури и оние страници што не се присутни во меморијата. На секоја програма и соодветствува табела на страници која го мапира виртуелниот адресен простор во физичка меморија. Позицијата на табелата на страници во меморијата се означува со помош на регистар кој покажува кон почетокот на табелата и кој се нарекува регистар на табелата на страници. Начинот на кој се формира физичката адреса со помош на регистарот на табелата на страници и табелата на страници е прикажано на сликата. Со помош на битот за валидност се означува дали страницата е во меморијата или не. Ако страницата е во меморијата тогаш во табелата се содржи бројот на физичката страница, а во споротива настанува грешка на страница. Бидејќи табелата ги содржи мапирањата за секоја можна страница нема потреба од ознака бит.
Освен техниката за полно асоцијативната реализација на виртуелната меморија теориски постојат и други техники за мапирање на блок од подолно во погорно мемориско ниво. Ограничено асоцијативна техника е онаа која што може страницата да ја мапира во одредено множество на страници, а дирекно мапирана страница се одредува со точно одредување каде може да се мапира секоја страница. Овие две техники не се приметуваат кај виртуелната меморија поради зголемениот трансвер на податоци помеѓу дискот и меморијата.
 
 
== Паралелни и кеш мемории ==
 
 
Кеш и паралелните мемории имаат цел да го зголемат пропусниот опсег на главната меморија. И двете употребуваат додатен хардвер. Успесноста од нивната примена зависи од регуларноста на адресните облици при изведување на програмите. Природно е да се постави прасањето која техника овозможува поголем пропусен опсег.
 
{{Нормативна контрола}}
 
[[Категорија:Сметачи]]