Компютърна памет. Видове

Компютърна памет. Видове.

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

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

  • Капацитет:
    Това е максималният брой информационни единици, които могат да се съхраняват в дадена памет. Прието е измерването да става в основната адресируема единица - байт и неговите производни: kB, MB, GB, TB (терабайт, EB (екзабайт) или в основната организационна единица -дума (W);

  • Плътност:
    Това е количеството информация, която може да се запише на единица площ или обем от паметта. Тази характеристика изразява технологичната страна на процеса на записване и възможностите за съхраняване на повече информация върху по-малка площ от запаметяващата среда;

  • Метод за достъп:
    Тази характеристика на паметта представя начина, по който се осъществява достигане до мястото на съхраняване на дадена информация в конкретната памет.

В зависимост от конкретните параметри на тези основни характеристики, различните памети намират своето място в общата системна памет, като се оформят йерархични нива. Въвеждането на йерархия в компютърната памет е свързано с отношението на ЦП към нея, както и с организацията на процесорния достъп до информацията.

Така се оформят следните две основни групи компютърна памет, представени на Фиг.15: основна (първична) памет (ОП+СОП+ПП) и допълнителна (вторична) памет (БВП + ВП).

  1. Основна - първична памет
    Това е паметта, с която централния процесор може да работи директно. Тази памет служи за съхраняване на всички изпълнявани в дадения момент от КС програми, обработваните от тези програми данни и необходимите за управление на използваните изчислителни процеси системни програми и микропрограмно осигуряване.

  2. Допълнителна - вторична памет:
    Това е паметта, която съдържа голям обем информация, но за нейното използване (на необходимата в конкретния случай информация) от ЦП е необходимо тази информация да бъде прехвърлена в основната памет.

Видове компютърна памет
Фиг.15. Видове компютърна памет

Дефинирането на двете нива на системната (компютърната) памет е свързано и с различните стойности на конкретните параметри на основните й характеристики.

Основната - първичната памет

oсигурява изчислителния процес и компютърната обработка на процесора, което изисква високо бързодействие, съвместимо (близко) с това на ЦП. Тук като най-подходящи се явяват буферната памет и кеш-паметта (CACHE MEMORY), наричана последната още свръхоперативна памет - СОП. Тази СОП е с ограничен капацитет. В основната (първичната) памет се включва и оперативната памет- ОП на КС, наричана още вътрешна (главна) памет. Тази оперативна памет е с по-малко бързодействие само в сравнение със СОП. В състава на оперативната (вътрешната, първичната) памет влиза и постоянната памет (ПП), в която се съхранява необходимото микропрограмно осигуряване. Това са всички микроинструкции за реализация на управлението на процесите в КС. Тази ОП е от полупроводников тип с максимално бързодействие на изграждащите я интегрални схеми тип RAM.

Допълнителната - вторичната памет

е изградена за съхраняване на възможно най-висок обем информация за по-дълго време, включително архивиране. Основният стремеж тук е висок капацитет с приоритет пред бързодействието. Основен елемент тук е буферната външна памет - БВП, изградена от магнитно дисково устройство. Последното е сравнително бързодействащо спрямо останалите външни памети - ВП, в които се включват: запаметяващо устройство (ЗУ) с магнитен диск/дискета, ЗУ с оптичен диск, FLASH-памет и др. достъпът до ВП, като правило, изисква повече време в сравнение с достъпа до БВП.

Йерархия на компютърната памет
Фиг.16. Йерархия на компютърната памет

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

Въведената йерархия може да се представи с пирамидата на Фиг.16: нарастването на капацитета на отделните видове памети е в посока към основата на пирамидата, а нарастването на бързодействието на тези видове памети е в посока към върха на пирамидата.

2. SRAM, DRAM, ROM, PROM, EPROM, EEPROM, FLASH-памет - принцип на действие, характеристики, приложения.

В състава на системната (компютърната) памет влизат различни ЗУ, които могат да се класифицират по няколко признака:

2.1. По метода на достъп:

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

2.1.1. Памети с произволен достъп (Random Access Memory - RAM):

Времето за достъп (tД) при тях не зависи от разположението на информацията върху носителя, т..е. tД = const. Това време зависи само от технологията на изработване (производство) на тези полупроводникови памети;

2.1.2. Памети с последователен достъп:

При тези памети времето за достъп (tД) се явява функция на разстоянието L - за да се достигне до необходимото в даден момент място от информационния носител, е необходимо да се премине през всички позиции между текущото положение на устройството за запис/четене и търсената информация;

2.1.3. Памети с цикличен достъп:

Движението на информационния носител в тези памети е такова, че една и съща позиция от него периодически ще преминава под устройството за запис/четене - т.е. имаме ротационно движение на информационния носител. Ако пълното завъртане на дадена позиция става за време tзав, то времето за достъп винаги ще е по-малко от него, т.е.: 0 ≤ tД ≤ tзав, като tД ще зависи от текущото разположение на устройството за запис/четене спрямо информационния носител.

2.2. По начина на търсене на информацията:

По този признак паметите се делят на:

2.2.1. Адресируеми памети:

При тях търсенето на информацията се осъществява по зададен адрес на нейното разположение върху носителя на ЗУ. По този начин се оформя адресно пространство, които характеризира капацитета на съответната памет;

2.2.2. Асоциативни памети:

При този вид памети информацията се търси по част от нейното съдържание - асоциативен признак. Заедно с това търсене се извършва паралелно сравняване на указаното поле за всички записи (думи -W) в запомнящата среда.

2.3. По технологичен признак и начин на запис/четене:

По този признак паметите се делят на:

2.3.1. SRAM - Static Random Access Memory:

Статична памет с произволен достъп за запис и четене. Това е полупроводникова памет, изградена с основна клетка памет - тригер. Използва се в свръхбързодействащи буферни памети - “Cache-памети, като част от ОП на КС;

2.3.2. DRAM - Dynamic Random Access Memory:

Динамична памет с произволен достъп за запис/четене. Това също е полупроводникова памет. Тази памет е изградено с основна клетка памет - кондензатор, реализиран технологично като p-n преход или полупроводников MOS слой. Използва се в свръхбързодействащата Cache-памет на ЦП, а също така като основна част от неговата ОП;

2.3.3. ROM - Read-Only Memory:

Памет само четене. Това също е полупроводникова памет. Използва се за постоянна памет -ПП на ЦП. За разлика от RAM, тези памети са енергонезависими и са удобни за трайно съхраняване на управляващи програми и микропрограми. Постоянните памети се изграждат от интегрални схеми (ИС) тип ROM. Всяка ИС притежава адресни входове Аi, чрез които се задава адрес за прочитане на група от “n” бита и информационни изходи Di за прочетените данни. Съществуват следните разновидности ROM:

2.3.3.1. EPROM - Erasable Programmable ROM:

Разновидност на памет тип ROM: изтриваема програмируема памет само за четене. Изтриването на записаната върху нея информация се извършва чрез осветяване на полупроводниковия кристал с ултравиолетова светлина, след което електрически се записва новата информация в специално устройство - програматор, включено към един от стандартните интерфейси на КС;

2.3.3.2. EEPROM - Electrically Erasable Programmable ROM:

Електрически изтриваема и програмируема полупроводникова памет;

2.3.3.3 FLASH-памет:

Това е разновидност на енергонезависима препрограмируема памет тип EEPROM в съвременните КС. Монтира се на дънната платка (Main Board) и върху тази полупроводникова памет се презаписват чрез външен носител нови версии на BIOS (Basic Input-Output System), без да се снема предназначената за целта (във всички досегашни модели КС) интегрална схема ROM (една от нейните разновидности) за изтриване и запис върху програматор на новата версия BIOS. Понастоящем с тази технология се ползвам широко разпространението, с обем вече до 8 Gbytes преносими външни памети с възможност за презапис върху тях от порядъка на 10 000 пъти.

Появява през 1988 г. Реализира се върху полупроводникови чипове по планарна технология. Произвеждат се два основни типа флаш памет: NOR (логика NOT OR) и NAND (логика NOT AND). И в двата типа памет като елементарни клетки за съхранение на информацията се използват полеви транзистори. Типичната флаш памет използва един бит на елементарна клетка - технология SBC (Single Bit per Cell). Понастоящем се използва технологията MLC (Multi level Cell), която позволява запомняне на няколко бита в една клетка от паметта. Реализира се върху печатка платка (затова може да се срещне и под наименованието FLASH карта), върху която са монтирани две интегрални схеми - едната представлява самата полупроводникова памет тип EEPROM, а другата представлява контролера за връзка с КС.

FLASH-паметта може да бъде прочетена произволен брой пъти, но записването в нея е ограничено (обикновено около 10 000 пъти). Причината е, че за извършването на запис е необходимо отначало да се изтрие участъкът от паметта, а участъкът може да издържи само ограничен брой изтривания. Тъй като изтриването става на цели участъци, не е възможно да се замени само един бит или байт, без да се изтрие целият участък (това ограничение се отнася за най-популярния тип флаш памет - NAND).

Предимството на флаш паметта пред RAM и DRAM паметите е нейната енергонезависимост - при изключване на захранването съдържанието на паметта се запазва. Предимството й пък пред дисковите устройства тип CD и DVD е отсъствието на електромеханични части. Затова флаш паметта е компактна, евтина (като се отчете стойността на устройствата за четене и запис при посочените) и предоставя по-бърз достъп.

Недостатък в сравнение с твърдите дискове е относително малкият обем: обемът на най-големите FLASH карти е около 8гигабайта. Работата по увеличаване на обема продължава.

Благодарение на компактността, евтината цена и липсата на нужда от захранване, FLASH-паметта се използува широко във вид на флаш карти в портативни устройства, работещи с батерии — цифров фотоапарат и видеокамера, цифров диктофон, MP3-плейър, PDA и др. Във формата на USB флаш карта (FLASH карта с изведен стандартен интерфейс за USB порт) пък се използва за съхранение на информация в КС. Вграденото програмно осигуряване в различни мрежови и периферни устройства (рутери, принтери, скенери) също все по-често се записва на този тип памет.

3. Организация на паметта – виртуална памет, сегментиране, странициране, CACHE-памет.

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

При съвременното развитие на компютърните системи, двете понятия - свръхоперативна памет (СОП) и буферна памет (БП) се покриват все повече във функционалното си предназначение. Основната им задача е една и съща - да осигурят бързодействие при достъп до информацията, съгласувано с това на процесора. Има разлика само в начина на достъп до данните - с формиране на адрес - при СОП или автоматичен избор - при БП.

  • СОП е разгледана в края на тази точка;
  • БП (буферните памети) са безадресни памети, които изпълняват аналогична роля, но с автоматично формиране на адреса на данните. Типичен пример за безадресна памет е стековата памет. При нея операциите запис/четене се осъществяват само с клетката, която е връх на стека - Top of Stack (TOS). Съдържанието на TOS се променя автоматично след всяка операция:

    • при запис всички данни се преместват навътре (PUCH), като на върха се записва новата дума;
    • при четене всички данни се преместват нагоре (PULL), като „изтласкват” съдържанието на клетката от върха - TOS, към шината за данни.

3.1.1. Организация на оперативната памет (ОП):

При ОП дължината на прочетената дума може да се регулира чрез броя на свързаните към обща адресна шина входове Аi. За увеличаване на адресното пространство може да се използва вход CS (Chip Select), чрез който се управлява избора на част от конфигурираната ОП. Така се получава пример от 2 кВ с организация 2048 думи по 1 байт.

По аналогичен начин могат да се конфигурират постоянни (ПП) и оперативни (ОП) памети с различен капацитет и организация на адресируемите обекти: байт, дума, поле. В този смисъл, при организацията на основната (първичната, главната) памет може да се оформи желаното адресно пространство, което се определя от размера на адресната шина и начина на формиране на физическия адрес. Това адресно пространство се разпределя между отделните области по предназначение. Например, при процесорите P6 се оперира с капацитет 64 GB, като всеки байт има свой 9-разряден физически адрес: от 000000000h до FFFFFFFFFh. В такава една памет могат да се съхраняват 8-разрядни байтове (B), 16-разрядни думи (W), 32-разрядни двойни думи (DW) и 64-разрядни четворни думи (FW). Думите заемат 2 съседни байта, респективно 4 и 8 байта за DW и FW. При тази организация младшият байт се разполага в клетка с по-малък адрес. За адрес на думата се използва адресът на младшия байт.

3.2. Виртуална памет:

Основната (първичната) памет на компютърната система представлява физическата памет на всички активни процеси, но е недостатъчна за пълното им зареждане. Така тази физическа памет се разширява със свободната памет на дисковите устройства. При този процес само активната част на програмите, изпълнявани в даден момент от процесора се оставя във физическата памет, като координацията се осъществява от ОС (операционната система) на КС. Механизмът се нарича виртуална памет и се прилага винаги при мултипрограмиране с времеделене. Това понятие - виртуална памет, представлява такава организация на компютърната (системната) памет, която позволява независимост на потребителските приложения от физическата адресация на инструкции и данни в паметта на компютърната система (компютърната-системната памет). Това се постига чрез използване на два подхода при организацията на адресирането на това голямо адресно пространство: стрaнична организация на паметта и сегментна организация на паметта.

3.3. Сегментация на паметта:

Сегментната организация на паметта се реализира чрез разделяне на адресното пространство на отделни сегменти, характеризиращи се с определени атрибути: разположение, размер, тип, защита, като размерът на всеки от сегментите може да бъде различен. В системната памет на „P6” например, могат да се поддържат до 8 192 сегмента с размер до 4GB всеки, което осигурява възможност за ползване до 64ТВ виртуална памет.

3.4. Стрaнично управление на паметта.

Стрaничната организация на паметта я разделя на равни по обем информационни блокове, които се характеризират със свой начален адрес на страницата. Тези адреси се съхраняват в памет на страниците, като достъпът до тях се извършва чрез старшата част от виртуалния адрес и след това чрез присъединено адресиране се определя физическият адрес на клетка от страницата. При процесорите „P6” размерът на страниците е строго фиксиран и може да бъде 4кВ, 2МВ, 4В и т.н.

3.5. CACHE-памет

беше споменато по-горе, тази памет - Cache-памет, се нарича свръхоперативна памет - СОП и е предназначена за временно съхраняване на информацията (данни, инструкции, адреси) в ЦП. Тя има много високо бързодействие. Или с други думи, това е паметта с най-високо бързодействие в цялата системна (компютърна) памет на КС. Технологично се изпълнява като регистрова памет (с регистри с директна адресация) тип DRAM. Тази Cache-памет съхранява необходимата за работата на ЦП информация за няколко последователни стъпки от алгоритъма на изчислението във всеки един момент от работата на КС. Логически, мястото на СОП е между ЦП и по-бавната от нея ОП, като капацитетът на СОП обикновено не надхвърля няколко процента от този на ОП. Когато ЦП търси инструкция (команда) или операнд, първо се проверява СОП (ако има такава). При наличие на търсената информация в СОП, тя се извлича максимално бързо за дадената компютърна система- с тактовата честота на процесора. Ако такава информация липсва в СОП, тя се извлича от ОП и заедно с това се записва (копира) в Cache-паметта. Ефективността на концепцията за такава памет се осигурява от два принципа, установени статистически:

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

При организацията на Cache-паметите се прилагат два подхода:

  • Direct Mapped - директно отражение. При него всяка зона от ОП разполага със съответстващо място в Cache-паметта, което позволява търсените данни от дадена зона да бъдат лесно открити. Недостатъкът е, че при голям брой операции за четене/запис в ограниченото пространство от СОП е възможно препълване на тази памет (СОП);
  • Асоциативна организация на Cache-паметта. При нея търсенето се осъществява по част от самата информация, на базата на паралелно сравнение между задаван асоциативен признак и едноименните полета от думи в запаметяващата среда. Този подход позволява да се избегне препълването, но по-трудно се открива информация в повече от една зона на ОП. Това е по-ефективния подход (метод).

4. Управление на паметта.

4.1. Сегментиране:

За достъп до клетките на сегментната памет се използва съставен логически адрес, който се състои от селектор, задаващ базовия адрес - началото на сегмента и относителен адрес на клетката - байт или дума в сегмента. Параметрите на сегмента се описват със структура от 8 байта, която се нарича дескриптор и се състои от граница на сегмента, базов адрес и правила за достъп до този сегмент.

Адресиране при сегментна организация
Фиг.17. Адресиране при сегментна организация

4.2. Стрaнично управление на паметта:

Тези адреси се съхраняват в памет на страниците, като достъпът до тях се извършва чрез старшата част от виртуалния адрес и след това чрез присъединено адресиране се определя физическият адрес на клетка от страницата. При процесорите „P6” размерът на страниците е строго фиксиран и може да бъде 4кВ, 2МВ, 4В и т.н. Тук следва да въведем и понятието каталог (или папка- Folder). Това е списък от обединени в една група файлове. Състои се от начало на каталог (задава се от служебен регистър за управление 3 - CR3) и указател на страница. Както и особеността за микропроцесорите на Intel, в които са установени четири нива на привилегии - Privilege Level (PL). За целта са организирани четири стека, всеки обслужващ съответното ниво:

Адресиране при стрaнична организация
Фиг.18. Адресиране при стрaнична организация

Коментари: