Ші дәріс. Тақырыбы: Оперативтік жады (RAM). Статикалық (SRAM) және динамикалық (DRAM) типтегі есте сақтау құрылғылары
Оперативті жады – компьютер процессоры үшін жұмыс столы болып келеді. Онда жұмыс кезінде деректер мен программалар сақталынады. Оперативті жады көбінесе уақытша сақтау қоры ретінде қарастырылады, өйткені деректер мен программалар онда компьютер қосылып тұрған кезде ғана немесе өшіру кнопкасын (reset) басқанға дейін ғана сақтаулы болады. Өшіруге дейін өзгертулер жасалған барлық деректерді әрдайым есте сақтайтын есте сақтау құрылғысында (көбінесе ол қатты диск) сақтап қою керек. Электр қорегін қайтадан жаңадан қосқан кезде сақталған ақпарат жадыға қайтадан жүктелінеді.
Оперативті есте сақтау құрылғысын кейде өзіндік қолжетімді есте сақтау құрылғысы деп атайды. Бұл оперативті жадыдағы ақпараттарды қолдану олардың жадыда орналасу ретіне тәуелді болмауын білдіреді. Компьютердің жадысы туралы сөз болғанда көбінесе оперативті жадыны, процессормен қолданылатын жадының микросхемаларын және активті программалар мен деректер сақталынатын модульдерді қарастырады. Сонымен қатар жады термині сыртқы есте сақтау құрылғыларына да қатысты болады, мысалы дискілер.
Оперативті жадыда процессор бірнеше группалы проводниктерімен жалғанған. Оларды негізгі үш шина: командалық шина, адрестік шина, берілгендер шинасы деп атайды.
Бірнеше жылдар ішінде RAM (Random Access Memory) анықтамасы жай аббревиатурадан динамикалық оперативті жадының (Dynamic RAM — DRAM) микросхемасынан құралатын және программаны орындау үшін процессорды пайдаланатын жадының негізгі жұмыс кеңістігін білдіретін терминге айналды. DRAM микросхемасының қасиеттерінің бірі деректерді динамикалық сақтау болып табылады. Тағы да ескеретін жағдай, мәліметтер оперативті жадыда тек қана егерде компьютер іске қосылып тұрғанда ғана сақталады. Ол біріншіден оперативті жадыға ақпаратты бірнеше рет сақтау мүмкіндігін және екіншіден деректерді әрбір 15мс(миллисекунд) сайын тұрақты түрде жаңадан өңдеу мүмкіндігін береді. Сонымен қатар әрдайым жаңадан өңдеуді қажет етпейтін статикалық оперативті жады (Static RAM — SRAM) бар. Ескеретіні ондағы ақпараттар тек электр қорегі қосылып тұрған кезде ғана сақталынып тұрады.
Оперативті жады термині көбінесе тек қана жүйенің жадысының құрылысын құрайтын микросхемаларды ғана емес, сонымен бірге логикалық кескін және орналастыру ұғымын білдіреді. Логикалық кескін – жадының адрестерін факті түрінде (фактический) орнатылған микросхемалардың көмегімен көрсету тәсілі. Орналастыру – белгілі бір типті ақпараттарды (берілгендер мен бұйрықтар) жүйенің жадысының нақты адресі бойынша орналастыру.
Адамдар көбінесе оперативті жадыны дискідегі жадымен шатыстырады және де жадының екі түрінің де сыйымдылығы бірдей өлшем бірлігімен беріледі - мега-немесе гигабайтпен. Оперативті жады мен дискінің жадысының арасындағы байланысты келесі мысалмен түсіндіруге болады.
Мысалы, бір офисті елестетіңіз, онда бір адам картотекада сақталынатын ақпаратты өңдеп жүрсін. Біздің осы мысалда картотекасы бар шкаф жүйенің қатты дискісінің ролін атқарады, онда деректер мен программалар ұзақ уақытқа дейін сақталынады. Жұмыс столы сол моментте қызметкер ақпаратты өңдеп отыратын жүйенің оперативті жадысын білдіреді, оның жұмысы процессордың жұмысына ұқсас болады. Ол жұмыс столында орналасқан кез келген документке тікелей қолжетімді болып келеді. Бірақ та нақты бір документ жұмыс столында орналасқанға дейін оны шкафтан тауып алу керек. Офисте шкафтар қаншалықты көп болса, соншалықты онда документтерді сақтауға болады. Егер жұмыс столы үлкен болса, онда бірнеше документтермен қатар жұмыс жасауға болады.
Жүйеге тағы да қатты дискіні қосу офисте документтерді сақтау үшін тағы да бір шкаф қондырған сияқты болады, ал компьютер үлкен көлемді ақпараттарды тұрақты түрде сақтай алады. Жүйедегі оперативті жадыны ұлғайту үлкен жұмыс столын орнатқандай болады, ал компьютер болса үлкен көлемді программалармен және деректермен бір уақытта жұмыс жасай алады.
Сонымен қатар, офисте документтерді сақтау мен компьютерде файлдарды сақтаудың арасында айырмашылық бар: файл оперативті жадыға жүктелген кезде, оның копиясы әлі де қатты дискіде сақталынады. Назар аударыңыздар: файлдарды әрдайым оперативті жадыда сақтау мүмкін емес болғандықтан, жадыға жүктелгеннен кейінгі өзгерістер жасалған файлдар қатты дискіде компьютер өшірілгенге дейін сақталынуы керек. Егер өзгеріс жасалған файл сақталмаса, онда файлдың бастапқы копиясы қатты дискіде өзгеріссіз қалады.
Программамен жұмыс жасаған кезде ондағы деректер оперативті жадыда сақталынады. Оперативті жадының (RAM) микросхемаларын кейде энергияға тәуелді жады деп те атайды: өйткені компьютерді өшірген кезде онда сақталынатын деректер алдын ала дискте немесе басқа да сыртқы есте сақтау құрылғысында сақталынып қоймаса жойылып кетеді. Ондай әрекетті болдырмас үшін кейбір қосымшалар деректердің резервті көшірмесін жасайды.
Компьютерлік программаның файлдары оны жіберу кезінде оперативті жадыға жүктелінеді. Поцессор жадыда сақталынатын программалық-реалданған командаларды орындайды және олардың нәтижелерін сақтайды. Оперативті жады текстік редактормен жұмыс кезінде қолданылған клавиштердің кодтарын және математикалық операциялардың көлемін сақтайды. Сақтау (Save) командасын орындау кезінде оперативті жады құрамындағы деректер жиыны файл түрінде қатты дискіде сақталынады.
Физикалық тұрғыдан жүйенің оперативті жадысы жалпы жүйелік платаға қосылатын микросхемалардан құралған микросхемалар немесе модульдердің жиынын білдіреді. Бұл микросхемалар мен модульдердің қасиеттері әр түрлі болу мүмкін және дұрыс жұмыс жасау үшін олар өздері орнатылатын жүйемен сәйкес болуы керек.
Қазіргі кезде жадының жаңа типтері жылдам өндіріліп жатыр және жаңа компьютерлерге ескі типті жадыны орнату ықтималдығы біршама аз болып келеді. Сондықтан жүйелік платаны ауыстырар кезінде оның жадысын да ауыстыруға тура келеді. Осыған байланысты орнатылатын жады типін таңдау кезінде болашақта модернизация немесе ремонт жасау үшін шығынды азайту үшін жақсылап ойланып, есептеу керек.
Қазіргі кезде компьютерлерде есте сақтау құрылғыларының үш негізгі түрі қолданылады.
ROM (Read Only Memory). Тұрақты есте сақтау құрылғысы – ТЕСҚ (ПЗУ), деректерді жазу операциясын орындай алмайды.(не способное выполнять операцию записи данных)
DRAM (Dynamic Random Access Memory). Өздігінше таңдау реті бар (произвольным порядком выборки) динамикалық есте сақтау құрылғысы.
SRAM (Static RAM).Статикалық есте сақтау құрылғысы.
ROM (Read Only Memory) немесе ПЗУ (тұрақты есте сақтау құрылғысы) типті жадыларда деректерді тек сақтауға болады, оларды өзгертуге келмейді. Сондықтан осындай жадылар тек оқу үшін ғана қолданылады. ROM- ды сонымен қатар көбінесе энергияға тәуелді деп те атайды, себебі оған жазылатын кез келген деректер электр қорегі өшірілген кезде сақталынады. Сондықтан ROM - ға дербес компьютерді жіберу, қосу бұйрықтары орнатылады, яғни жүйені жүктеуді жүзеге асыратын бағдарламалық қамсыздандыру.
ROM және оперативті жады - ұғымдары қарама қарсы ұғымдар емес. Шындығында ROM жүйенің оперативті жадысының бір бөлігін білдіреді. Басқаша айтқанда, оперативті жадының адрестік кеңістігінің бір бөлігі осы ROM үшін алынып қойылады (отводится). Ол операциялық жүйені жүктейтін бағдарламалық қамсыздандыруды сақтау үшін қажет.
Негізгі BIOS коды жүйелік платадағы ROM микросхемаларында орналасқан, бірақ адаптерлер платасында сонымен қатар аналогтық микросхемалар да болады. Олардың құрамында енгізу және шығару базалық жүйесінің қосымша подпрограммалары мен нақты платаға, әсіресе алғашқы жүктеудің бастапқы этабында активтелуі керек платалар үшін, мысалы видеоадаптер үшін керекті драйверлері бар. Жалпы алғашқы жүктеудің бастапқы этабында драйверлерді қажет етпейтін платаларда ROM болмайды, өйткені олардың драйверлері кейінірек алғашқы жүктелу процесі кезінде қатты дискіден жүктеліне алады.
Қазіргі кезде көптеген жүйелерде Flash-жадысы формасының бірі қолданылады, ол (Electrically Erasable Programmable Read-only Memory — EEPROM) электронды- программаланатын тұрақты есте сақтау жадысы деп аталады. Flash-жадысы шынымен де энергияға тәуелді және қайта жазылатын болып келеді, ол қолданушыларға ROM-ды, жүйелік платалардың программалық-аппараттық құрылғыларын және т.б компоненттерді (видеоадаптерлер, SCSI платалары, перифериялық құрылғылар және т.б.) оңай модификациялауға рұқсат береді.
SRAM кэш-жадысы.
Басқалардан өзгеше жадының типі бар - ол статикалық оперативті жады (Static RAM - SRAM). Оның динамикалық жадыдан ерекшелігі ол өзінің құрамындағы мәліметтерді сақтау үшін периодты түрде регенерация жасауды қажет етпейді. Динамикалық оперативті жадыдан тағы бір ерекшелігі SRAM жоғары дәрежеде жылдам әрекет ете алады және де қазіргі кездегі процессорлердегідей жиілікте жұмыс жасай алады.
Бірінші релейлік компьютерлердің жадысы табиғаты бойынша статикалық болды және ұзақ уақыт бойы практика жүзінде ешқандай өзгерістерге ұшырамады, тек қана қарапайым базасы ғана өзгерді: реленің орнына электронды лампа, кейіннен транзистормен, TTL- және CMOS- микросхемаларымен ығыстырылып тасталды, бірақ оның негізгі түпнұсқасы өзгермеді. Кейінірек шығарылған динамикалық жады да жылдамдығы бойынша статикалық жадымен теңестіріле алмады.
Статикалық оперативті жадының (SRAM - Static Random Access Memory) микросхемасының ядросы жалпы триггерлердің жиынын, екі тұрақты сипатта болатын бірі логикалық нолге сәйкес келетін, ал келесісі логикалық бірге сәйке келетін логикалық құрылғыны ұсынады. Басқаша айтқанда, әрбір триггер бір бит ақпаратты сақтайды, ол динамикалық жадының ұяшық санына тең болады.
Триггердің конденсаторға қарағанда артықшылықтары бар. Олар
а). Триггердің жағдайы тұрақты болады және қорек көзі болмаған кезде де ұзақ уақыт сақталына алады, ал конденсатор болса периодты түрде қалпына келтіріп отыруды қажет етеді.
ә). Триггер мизерлі инертті болып келеді, бірнеше ГГц жиілікте де проблемаларсыз жұмыс жасай береді, ал конденсатор болса 75-100 МГц -те жұмыс жасауын бәсеңдетеді.
Триггерлердің кемшілігіне олардың қымбаттылығын және ақпаратты сақтаудағы төменгі тығыздықта болуын жатқызуға болады. Егер динамикалық жадының ұяшығын жасау үшін бір ғана транзистор мен конденсатор жеткілікті болса, статикалық жадының ұяшығын жасау үшін минимум төрт , ал орташа алты сегіз транзистор керек, сондықтан статикалық жадының мегабайты аз дегенде бірнеше есе қымбат болады.
Бірақта SRAM конструкциясында әрбір битті сақтау үшін алты транзистордан тұратын кластер қолданылады. Транзисторларды ешбір конденсаторларсыз қолдану оларды регенерация жасауды қажет етпейді (егер ешқандай конденсатор болмаса, онда зарядтар да жойылмайды.). Электр қорынан қорек келіп тұрған кезінде статикалық жады сақталынып тұрған деректерді білетін болады. Олай болса SRAM микросхемалары бүкіл жүйелік жады үшін қолданылмайды. Жауабы қарапайым.
Динамикалық оперативтік жадымен салыстырғанда SRAМ- ның жылдам әрекет етуі біршама жоғары, бірақ оның тығыздығы төмен әрі бағасы біршама үлкен болып келеді. Тығыздығының аз болуы SRAM- ның габаритының үлкен болуын білдіреді, сонымен қатар ақпараттың сыйымдылығы біршама аз болады. Транзистлердің көптеген сандары мен олардың кластерленіп орналасуы тек қана SRAM микросхемаларының габаритын үлкейтіп қана қоймайды, сонымен қатар технологиялық процестердің бағасын DRAM микорсхемаларына арналған аналогты парамертлерімен салыстырғанда біршама жоғарлатады. Мысалы DRAM модулінің сыйымдылығы 64 Мбайт немесе одан жоғары болуы мүмкін, ал сол кезде SRAM модулінің сыйымдылығы дәл сондай көлемінде 2 Мбайтты құрайды, SRAM габариттері орташа алғанда динамикалық оперативті жадының көлемінен 30 есе асып түседі, оның бағасы туралы да дәл солай айтуға болады. Осының барлығы SRAM типті жадыны дербес компьютерде оперативті жады ретінде қолдануа мүмкіндік бермейді.
Құрастырушылар бұған қарамастан бәрі бір осы SRAM типті жадыны PC- тің тиімділігін (эффективтілігін) арттыру үшін қолданады. Бірақ бағасының ұлғайып кетуін болдырмас үшін үлкен жылдамдықтағы SRAM типті жадынының шағын көлемі қондырылады, ол кэш-жады ретінде қолданылады. Кэш-жадылар процессордың тактілік жиілігіне тең немесе оған жақын тактілік жиіліктерде жұмыс жасайды. Сонымен қатар осы жады процессормен оқу мен жазуды жүргізуде қолданылады. Оқу операциясы кезінде деректер төменгі жылдамдықта әрекет етіп оперативті жадыдан, яғни DRAM-нан алдын ала алынып жоғары жылдамдықтағы кэш - жадыға жазылынып қояды. Осыған дейін динамикалық оперативті жадының қолжетімділік уақыты 60 нс аз емес болды(ол 16 МГц тактілік жиілікке сәйкес келеді). Қолжетімділік уақытын наносекундтан мегагерцқа айналдыру үшін келесі формула қолданылады:
1/наносекунд ? 1000 = МГц.
Кезекті түрде кері есептеу мынадай формуламен есептеледі:
1/МГц ? 1000 = наносекунд
Дербес компьютер процессоры 16 МГц және одан төменгі тактілік жиілікте жұмыс жасаған кезде, DRAM жүйелік плата мен процессормен синхрондала алынатын, сондықтан кэш керек болмады. Бірақ процессор тактілік жиілігі 16 МГц тан жоғарлаған кезде, процессормен DRAM- ды синхрондеу мүмкін болмады, нақты сол кезден бастап құрап шығарушылар дербес компьютерлерде SRAM - ды қолдана бастады.
Дербес компьютерлерде кэш жады деп аталатын үлкен жылдамдықтағы буферлер қолданылады. Ол SRAM микросхемелары негізінде құрылған және процессормен тікелей мәліметтермен алмасып отырады. Кэштың жылдам әрекет етуі процессордыкымен салыстырылып отырады және кэштың контроллері процессордың деректерге деген қажеттілігін алдын ала біліп, кэш жадыға керекті деректерді алдын ала енгізіп, орнықтырып отырады. Сонда процессормен жады адресі берілгенде деректер жылдам әрекет ететін кэштан жіберілуі мүмкін.
Кэш жадының эффективтілігі сәйкестілік коэффициентімен немесе тиімділік коэффициентімен беріледі. Сәйкестілік коэффициенті кэшқа тиімді қарау (обращение) санының оның жалпы қарау санына қатысымен анықталады. Нақты түсу - ол оқиға болып саналады, процессорға керекті деректер оперативты жадыдан алдын ала алынып кэшқа есептелініп қояды, әйтпесе нақты түсу кезінде процессор деректерді кэш жадыдан есептеуі мүмкін.
Егер контроллер кэшқа берілген абсолютті адрестер бойынша керекті деректерді алдын ала қарастырып қоймаса, онда кэшті тиімсіз қарастыру болып табылады. Сол жағдайда керекті деректер кэшқа алдын ала алынбағандықтан оларды процессор жылдам жұмыс жасайтын кэштан емес, баяу жұмыс жасайтын оперативты жадыдан іздестіре бастайды. Процессор оперативты жадыдан деректерді есептеп жатқанда оған біраз уақытқа “күтуге” тура келеді, өйткені оперативті жадының тактілік жиілігі процессордыкінен біршама аз болады.
Егер кристалға кірістірілген кэш жадысы бар процессор 2000МГц жиілікте жұмыс жасаса, онда процессор циклының және интегралды кэш жадының ары қарай жұмыс жасауы мұндай жағдайда 0,5 нс қа тең болады, сол кезде оперативты жадының циклының жұмыс жасауы алты есе үлкен болады, яғни ақпаратты жіберетін екі еселік жылдамдықтағы жады(Double Data Rate — DDR) үшін шамамен 3 немесе 6 нс болады. Осыдан жадының тактілік жиілігі 333 МГц болады.
Осыдан, егер 2 ГГц тактілік жиіліктегі процессор оперативті жадыдан деректерді есептейтін болса, оның жұмыс жасау жиілігі алты есе азаяды, ол 333 МГц тең болады. Бұл баяулық (замедление) күту периодымен түсіндіріледі (wait state). Егер процесс күту жағдайында болса, онда бүкіл цикл (такт) бойы ешқандай операция орындалмайды. Процессор оперативты жадыдан деректердің келіп түсуін күтетін болады. Сондықтан кэш жады осындай баяулықты қысқартады және компьютердің жұмыс жасауын түгелімен тездетеді.
Оперативті жадыдан деректерді процессордың алып, өңдеу кезіндегі уақытты азайту үшін, қазіргі дербес компьютерде кэш жадының екі түрі қарастырылады: бірінші деңгейдегі кэш жады (L1) және екінші деңгейдегі кэш жады (L2). Бірінші деңгейдегі кэш жады орнықтырылған (встроенный) деп аталады немесе ішкі кэш деп аталады. Ол процессорға тікелей орнықтырылған және процессордың микросхемасының бір бөлігі болып келеді. Барлық процессорларда бірінші деңгейдегі кэш жады процессордың микросхемасына интегралданады.
Екінші деңгейдегі кэш жады екіншілік немесе сыртқы кэш деп аталады. Ол процессордың микросхемасынан тыс орнатылады. Алғашқыда ол жүйелік платада орнатылатын болған. Егер кэш жады жүйелік платада орнатылса, ол оның жиілігінде жұмыс жасайды.
Бұрынғы компьютерлердің эффективтілігін арттыру үшін Pentium II/III және Athlon процессорларының негізінде екінші деңгейдегі кэш жадылар процессордың бір бөлігі болып келеді. Бұл кэш жады процессордың орталығынан тыс болса да, ол өзі жеке микросхема ретінде процессордың ішкі корпусында орнатылады. Сондықтан Pentium III және Athlon процессорлары үшін жүйелік платасында ешқандай кэш жады болмайды: Pentium III және Athlon процессорларының соңғы модельдерінде екінші деңгейдегі кэш жады процессордың микросхемасының бір бөлігі болып келеді және үлкен жиіліктерде әрекет етеді. Itanium процессорларында өндіргіштікті жоғарылату үшін кэш жадының үш деңгейі қолданылады.