Главная | Обратная связь | Поможем написать вашу работу!
МегаЛекции

Страничный режим, расслоение банков

Ещё одна разновидность архитектуры оперативной памяти компьютера - это её разбивка на отдельные секции. В современных процессорах, например, такая операция специально оптимизирована: для считывания нескольких подряд идущих слов памяти достаточно передать адрес первого, а не всех требуемых слов. Соответственно уменьшается число передач данных по шине, к тому же, чем больше слов пересылается за один раз (так называемый пакетный режим), тем больше выигрыш. Сделано это в первую очередь для ускорения обменов «память - кэш». Для ускорения работы памяти в пакетном режиме были разработаны различные «хитрые» способы хранения информации: страничный режим, расслоение банков, быстрый страничный режим (FPM) и т. д.

Большая скорость доступа к ограниченным областям памяти является особенностью некоторых специфических микросхем, которые позволяют некоторому объёму, но не всей памяти, быть считанному без цикла ожидания. Этот подход требует специальных RAM микросхем, которые делят свои адреса по страницам. Эта технология получила название режима страничного доступа. Эти специальные микросхемы обеспечивают очень быстрый доступ в одном из двух направлений их организаций. Если требуется чтение или запись информации, хранящейся на определённой странице памяти, и предыдущая команда по работе с памятью использовала информацию с той же страницы, цикла ожидания не требуется. Однако при переходе с одной страницы на другую циклы ожидания неизбежны

Следующая интересная технология, названная interleavid memory, очень похожа на ОЗУ страничного режима. Она существенно повышает скорость обращения к памяти, но не имеет ограничений по страничной разбивке. При использовании этой технологии вся оперативная память разбивается на два или большее число банков. Последовательность битов хранится в разных банках, поэтому микропроцессор обращается то к одному, то к другому банку при чтении этой последовательности. Во время обращения к одному банку, другой реализует цикл обновления, и поэтому процессору не приходится ждать. И только, если микропроцессору приходится читать несмежные биты, статус ожидания неминуем, но вероятность его появления уменьшается.

         Наиболее типовая реализация этой технологии представляется разбивкой оперативной памяти на два банка, А следовательно, вероятность возникновения ожидания - 50%..Четырёхбанковая организация уменьшает эту вероятность до 25%.

         Так как данная технология не требует применения специальных микросхем памяти, она является наиболее удобной для повышения скорости системы. Кроме того она может совмещаться с ОЗУ страничного режима, что ещё больше увеличивает оперативность.

 

Память типа  FPM DRAM использовалась долгие годы, а банки оказались настолько удачным решением, что используются в современной памяти по умолчанию, что оговорено в стандарте (например так сделано в SDRAM).Всё это позволяло увеличивать быстродействие на несколько процентов, однако скорость работы нужно было повысить в несколько раз.

Ситуация усугубилась после появления процессора Pentium. Применение 64-разрядной шины памяти, работающей на частоте 66 МГц, повышало быстродействие обменов с памятью в четыре раза, по сравнению с наиболее часто используемой в компьютерах предыдущего поколения 32-рзрядной шиной на частоте 33-МГц. Однако для этого нужна была такая малость, как увеличение быстродействия самих модулей ОЗУ по меньшей мере в те же четыре раза.

 Появление памяти типа EDO, являющейся дальнейшим усовершенствованием FPM, увеличило скорость работы всего лишь в полтора раза. Однако этого было недостаточно. Разработка более быстрого стандарта BEDO так и не была завершена. Память типа EDO сегодня достаточно активно применяется в компьютерах на базе процессоров семейства Pentium и даже временами продаётся в новых системах. Тем не менее, она считается безнадёжно устаревшей. Ведь кроме низкой на сегодняшний день скорости работы, для всех упомянутых типов оперативной памяти существует и такая проблема как их не способность работать на частотах выше 66 МГц. Точнее, их можно заставить работать на более высокой частоте, но лишь увеличивая циклы задержки. Проблема эта носит принципиальный характер из-за деталей реализации их асинхронной электрической схемы. А внешняя частота центральных процессоров (и, следовательно, частота системных плат) давно перешла этот барьер. Первой официально использующей частоту 75 МГц была фирма Cyrix, ныне же процессоры Intel и AMD работают на внешней частоте 100МГц.

 

SDRAM: день сегодняшний

 

Большинство проблем, связанных с низким быстродействием подсистемы оперативной памяти, позволяет решить память SDRAM. Первоначально разработанная для видеокарт (как замена дорогой двухпроводной VRAM), она оказалась отличным решением и для высокопроизводительных персональных компьютеров. С одной стороны, высокое быстродействие модулей памяти SDRAM и способность работать на высоких частотах наконец-то дали производителям компьютеров систему ОЗУ, удовлетворяющую сегодняшним требованиям к быстродействию. С другой стороны, использование всё той же элементной базы позволило достичь всего этого без повышения цены на готовые изделия.

Итак, в основе SDRAM лежат всё те же микросхемы стандартной DRAM. Каким же образом достигается увеличение быстродействия? Основных особенностей, по сравнению с классической памятью, три: чередование, пакетно - конвейерный режим и синхронизация работы с центральным процессором.

Чередование или расслоение банков достаточно известный способ работы. Сущность его в следующем. Если два последовательных обращения к памяти происходят к одним и тем же микросхемам, то второе запрошенное слово (или двойное слово - особой разницы здесь нет) будет получено только через время, равное полному циклу памяти. Связано это с довольно многими факторами, следующими из схемотехники DRAM. При обычном однобанковом устройстве модуля памяти, каждое последующее слово можно получать лишь через 50 нс. после предыдущего, а то и реже. Если разбить память на отдельные области (банки), то при последовательном доступе одно слово будет выдаваться первым банком, а следующим банком - второе и т. д. К тому моменту, когда снова нужно будет обратиться к первому банку, пройдет полный цикл и он будет готов выдать данные без задержки. Теоретически, при достаточно быстрой работе шины ускорение работы прямо пропорционально числу банков памяти. На практике это не достижимо: существуют накладные расходы, кроме того, программа может обращаться к памяти не последовательно, а к произвольным ячейкам, что легко сводит все преимущества расслоения на нет. Однако, в большинстве случаев деление на банки работает.

В модулях SDRAM используются четыре банка. Пакетный режим работы памяти сходен с алгоритмами в кэш - памяти. Суть его в том, что при обращении к ячейке с каким либо адресом, автоматически генерируется пакет данных, включающих как эту, так и несколько последующих ячеек. В результате при обращении к ним, память сразу же, без задержек, готова выдать требующуюся информацию. Естественно, что пакетно - конвейерный режим повышает эффективность расслоения банков: практически всегда контроллер ОЗУ производит обращение по смежным адресам, не зависимо от желания процессора. Другой вопрос, что такое повышение эффективности работы может оказаться мнимым: считанные из памяти данные так и останутся невостребованными процессором.

Два этих типа ускорения работы применялись уже давно и в настоящее время стали стандартными. А вот еще одна отличительная особенность SDRAM по сравнению с другими типами оперативной памяти стала действительно новшеством. Речь идёт о синхронизации работы с центральным процессором.

 Раньше системы памяти функционировала асинхронно, поэтому, запросив из нее какие - либо данные процессор был вынужден входить в холостой цикл для того, чтобы их дождаться, так как время ожидания было неизвестным, и это не позволяло заниматься другой работой. Благодаря синхронизации деятельность памяти и процессора, последний всегда «знает», через сколько тактов он получит необходимые данные. Если результат обращения к памяти нужен не сразу, ЦП может выполнить некоторые команды вместо того, чтобы просто прекращать работу. Соответственно, возрастает эффективность работы современных процессоров, что повышает производительность всей вычислительной системы.

 У синхронности работы есть и другая отличительная особенность: теперь контроллер оперативной памяти всегда заранее «знает», через сколько тактов процессору понадобятся данные из памяти, что позволяет ему оптимизировать свою работу. Именно синхронную (по отношению к процессору) работу новой памяти обычно рассматривают как основную ее особенность, что заложено в названии: Synchronous DRAM.

  

 

Истинная скорость работы

Совокупное использование синхронизации работы, расслоения банков и пакетно-конвейерного режима способствует значительно (в несколько раз) ускорению работы системы памяти. Кроме того, SDRAM в состоянии работать без циклов задержки на частоте до 100 МГц, а наиболее качественные модули - до 125 МГц (на практике достигается до 133 МГц). Таким образом, время цикла памяти SDRAM составляет 7 - 10 нс. Существует мнение, что указываемое в спецификациях время цикла соответствует времени доступа. Считают, что у памяти SDRAM с частотой 100 МГц время доступа равно 10 нс., и она всегда работает в 5 раз быстрее, а у EDO DRAM - 50 нс. На самом деле это не так. И те и другие модули имеют полное время доступа 50 нс., то есть при обращении по случайному адресу данные будут получены именно через это время для обоих модулей памяти. При последовательном обращении второе слово модуль EDO выдаст через 20 нс., а модуль SDRAM - через 10 нс. Очевидно двукратное ускорение. При четырёх последовательных обращениях (наиболее распространённый случай) модулю EDO для выполнения запроса потребуется

50 + 3 х 20 = 110 нс., модулю SDRAM соответственно

 

50 + 3 х 10 = 80 нс.

 

Можно заметить, что никакого пятикратного роста нет - быстродействие SDRAM выше примерно на 50 % и полностью пропадает при большом числе обращений по случайным адресам.

 Впрочем, сегодня разговоры о том, что SDRAM безусловно быстрее, чем любые другие типы оперативной памяти, вполне уместны: если для EDO не существует в природе (а если и существует, то в продаже не появлялись) модули со временем доступа меньшим, чем упомянутые 50 нс., то для SDRAM время цикла 10 нс. отнюдь не предел. Сейчас наибольшее распространение получают микросхемы с временем цикла 8 и даже 7 нс. Время доступа для них равно уже не 50, а 40 нс., благодаря чему получается значительный выигрыш по сравнению с EDO. Если вернуться к нашему примеру, то SDRAM с частотой 125 МГц. на считывание четырёх слов затратит

 40 + 3 х 8 = 64 нс. впрочем, с такой скоростью может не справиться системная шина, официально пока не работающая с частотами больше 100 МГц.)

 

 

Прогресс технологии

      

С современными задачами SDRAM в принципе справляется неплохо. Однако уже в ближайшее время её возможностей может оказаться недостаточно. Во-первых, это касается скорости её работы, которую неплохо бы увеличить уже сегодня. А во-вторых, важно дальнейшее повышение рабочей частоты, хотя это становится очевидным не сразу. Дело в том, что повышать внутреннюю частоту центрального процессора путём увеличения множителя занятие не благодарное: на определённом этапе может появиться более дорогой процессор, чем существующая модель, но при этом практически не повышающий быстродействие системы (которое зависит не только от скорости работы процессора, но и от частоты работы материнской платы). В этой связи очень показательна ситуация с компьютером на базе Intel Pentium 166 и 200. В своё время их стоимость отличалась в значительной степени, а по части производительности системы разрыв получался порядка 5%. Линию Pentium II пока спасает встроенный кэш второго уровня, но надолго ли его хватит? Скорее всего, недавно выпущенный Pentium II 500 станет последним в ряду процессоров с внешней частотой 100 МГц. это косвенно подтверждает и Intel, объявив, что для новых процессоров разрабатывается шина с частотой 200 МГц. а возможностей классической SDRAM уже недостаточно.

       Один из выходов в применении разработанной компанией Samsung памяти типа Double Data Rate SDRAM, называемой также SDRAM II. Ныне она уже стандартизирована ассоциацией и поддерживается некоторыми чипсетами. Благодаря отдельным косметическим улучшениям, данная память способна работать на частоте 200 МГц и обеспечивает в два раза большую производительность, чем SDRAM.

Ещё более производительной будет память SLDRAM. Она работает не с четырьмя, а с шестнадцатью банками и поддерживает частоту до 400 МГц. впрочем, это лишь проект, проводимый группой из двенадцати крупнейших производителей DRAM. Выход новой памяти на рынок ожидается в ближайшее время, пока имеются лишь образцы. Межотраслевой стандарт отсутствует.

 

Поскольку процессоры некоторых архитектур уже перешагнули барьер в 1 ГГц повышение в будущем тактовой частоты обеспечиваемой SLDRAM даже до 400 МГц, будет не достаточно необходимо по меньшей мере 600 МГц. Пропускная способность 400 Мбайт/с тоже невелика: до сих пор, разрабатываются новые микросхемы памяти, все пытаются угнаться по быстродействию за процессорами, но ни о каком запасе скорости на пару-тройку лет развития и речи нет, а потребность в этом уже ощущается.

В общем обычные микросхемы DRAM просто не способны работать в необходимом сейчас режиме, поэтому нужен переход на новую технологию, которая уже предложена фирмой Rambus и называется RDRAM. У неё масса весьма существенных отличий от обычной памяти. Первоначальный вариант RDRAM, применённый в графических рабочих станциях ещё в 1995 году. По возможностям (600 МГц частота и 600 Мбайт/с пропускная способность) обгоняет SLDRAM, который ещё год придётся ждать.

В1997 году появилась улучшенная спецификация Concurrent RDRAM - по скорости она аналогична предыдущей, однако показывает хорошие результаты даже на маленьких блоках. Благодаря отличным характеристикам новой памяти, её лицензировало огромное количество производителей. уже сей час она применяется в мощных игровых приставках и многих платах расширения для РС. Данный проект получил поддержку Intel ещё в 1996 году. В следующем году фирма Rambus продемонстрирует новое улучшение RDRAM, которое называется Direct RDRAM. Память этого типа будет способна работать на частоте до 800 МГц, обеспечивая быстродействие 1,6 Гбайта/с для однобанкового модуля и 3,2 Гбайта для двухбанкового. Пока память типа Rambus не стандартизирована на высоком уровне, но этого вполне можно ожидать.

Микросхемы и модули

     Выше речь шла о разнообразных чипах памяти. Именно они определяют основные характеристики собственно ОЗУ. Много лет назад, когда только начали появляться РС, память в компьютеры устанавливалась непосредственно теми же микросхемами. Разрядность микросхемы всего один бит, а ширина шины всего 8 бит плюс ещё девятый для контроля чётности. Значит, микросхемы нужно было вставлять по 9 штук сразу, а места они занимали очень много. Впрочем, тогда это было не столь уж важно: редко кто из пользователей расширял память компьютера, да и возможностей для такого расширения было не много. Потом уже стали применять модули памяти. Хотя было предложено несколько их вариантов, однако на долгое время закрепиться удалось лишь модулям типа SIMM - с однорядными печатными контактами. Первое время они имели разрядность 8 бит и 30 контактов. В результате вы 16- разрядных компьютерах они использовались парами, а в 32- разрядных четвёрками. Долгое время работали только с ними, затем им на смену появились 32- разрядные 72- контактные модули. Для владельцев распространённых тогда «четвёрок» они стали просто спасением: устанавливать или менять нужно было не более одного модуля. Такой тип модулей памяти «дожил» и до появления Pentium, и даже активно применялся в компьютерах этого класса. Однако теперь модули SIMM пришлось вставлять парами.

       Спустя некоторое время конструкторы решили, что они впустую расходуют достаточно большую площадь модуля. Несмотря на то, что SIMM официально называется однорядным, контакты у него с обеих сторон платы, но только соединены электрически. Раньше это требовалось делать из-за невысокого качества травления используемых печатных плат. Сейчас же подобное расположение контактов- просто рудимент. Первыми контакты с двух сторон разъединили разработчики ноутбуков подобных компактных устройств, где важно было сэкономить побольше места для установки максимального числа компонентов. Так появились модули типа SO DIMM двух типов: «короткие» (половинка от SIMM, по длине, 32 разряда, 36 контактов с каждой стороны - практически сложенный вдвое стандартный SIMM) и «длинные» (64 - разрядные). Модули SO DIMM до сих пор практически не стандартизированы, чего не скажешь о модулях DIMM. Последние являются 64 - разрядными, имеют 168 контактов и становятся всё более распространёнными - в компьютерах линии Pentium II, например, есть только разъёмы для DIMM, и нет для SIMM.

       Информация о том, что модули DIMM значительно лучше SIMM, неверна. Единственное превосходство двухрядных модулей над однорядными - это удобство установки: SIMM в современные компьютеры устанавливаются парами, а DIMM - по одному. В остальном же, если на них установлены схожие микросхемы, дающие одинаковый суммарный объём памяти, они абсолютно идентичны: модуль EDO DIMM объёмом 64 Мбайт и временем доступа 60 нс., ничуть не лучше двух модулей EDO SIMM с тем же временем доступа по 32 Мбайт каждый. Другое дело, что, например, SDRAM в виде SIMM просто не выпускается.

Модули RIMM (с памятью типа RDRAM) внешне похожи на стандартные DIMM. Основные отличия - в микросхемах. Впрочем, никто из пользователей РС пока не обращал на них внимание, да и не будет до тех пор, пока эта память не начнёт поддерживаться производителями чипсетов и системных плат.

 

Контроль чётности.

 

Как уже было сказано выше, большинство параметров ОЗУ зависит от используемых микросхем памяти, а отнюдь не от модулей, в составе которых они продаются. Правда, существуют некоторые характеристики именно модулей, не применимые к микросхемам. В первую очередь стоит разобраться с контролем четности. Идея проста: при записи каждого байта данных в память вычисляется сумма всех бит по модулю два, а полученное значение заноситься в дополнительный, девятый по счету, бит. При чтении производится та же операция, и полученное значение сравнивается с хранимым. Если где-то один из битов изменился, генерируется исключение и работа останавливается с выдачей соответствующего сообщения.

 Такой механизм был разработан ввиду невысокой надёжности в первых микросхемах оперативной памяти. Предназначен он вовсе не для того, чтобы можно было использовать сбойные микросхемы, а для того, чтобы пользователь в случае частого возникновения ошибок заменил неисправные чипы на нормальные. Однако со временем надёжность интегральных схем возросла, и в результате подобный контроль стал практически не нужен.

Вместе с тем применяемые операционные системы стали многозадачными, и в некоторых случаях использование модулей с чётностью стало не только ненужным, но и вредным. Досадно, когда из-за ошибки в какой-нибудь утилите для Рабочего стола, пропадают результаты работы всех приложений, включая нужные и важные для работы. В связи с этим в персональных компьютерах массового назначения память с четностью просто перестала применяться более того, многие современные чипсеты контроль четность просто не поддерживают.

Совсем другое дело серверы. В них память с контролем четность не просто применяется, а еще и реализует более хитрый алгоритм, называемый ЕСС. Суть его в том, что ошибка в одном бите не только обнаруживается, но и исправляется, а двойная ошибка (то есть когда неверными оказываются два бита) определяется. Всё это очень важно для серверов, однако совершенно бесполезно для обычных владельцев РС: вероятность ошибки в современной оперативной памяти ничтожно мала, да и большого урона причинить не может, а тратить крупные суммы неизвестно на что не стоит.

 

Маркировка модулей памяти.

 

Пользователь персонального компьютера легко может определить тип и основные характеристики модулей памяти, всего лишь прочитав маркировку. Гораздо труднее сделать это компьютеру, у которого глаз, как известно, нет. В результате для идентификации памяти прибегают к специальным приёмам. В модулях типа SIMM для этой цели использовались специальные площадки резисторов (назывались они PRD). Наличие или отсутствие резисторов в определённых позициях задавало основные характеристики модуля (например, время доступа).

Впрочем, большинство применяемых контроллеров памяти и, соответственно, материнских плат, не реагировали на наличие или отсутствие PRD. У модулей памяти типа DIMM гораздо больше важных параметров. Для их хранения обычно применяется устанавливаемая на плате специальная микросхема EEPROM, называемая SPD (Serial Presence Detect). Ее объем (256 бит) достаточен не только для хранения основных параметров, но и для записи информации о производителе и т.п.

 Производители памяти первое время игнорировали требования стандарта, однако через некоторое время материнские платы фирмы Intel  для Pentium II стали отказываться работать с памятью без SPD. Впрочем, цена микросхем SPD просто копеечная (доля процента от стоимости самого модуля), так что теперь память без неё почти не встречается. Хотя многие платы спокойно работают и без SPD, но экономить 1-2 доллара смысла нет, особенно с учетом возможности последующей модернизации компьютера. Следует учесть, что стандарт РС 100, описывающий память для шины с частотой 100 МГц (применяемый в последних моделях Intel, и AMD), обязательно требует наличия микросхемы SPD.

Стандарт РС 100.

 

Данный стандарт, как было отмечено выше, описывает все тонкости работы оперативной памяти, способной функционировать на частоте 100 МГц. Обладатель такой памяти проблем с новыми материнскими платами иметь не будет. Данные спецификации занимают порядка 70 страниц, включая детальное описание программирования EEPROM. Из основных требований упомянем обязательность точной маркировки.

 Сейчас большинство выпускаемых чипов SDRAM имеют (согласно маркировке) время цикла 10 нс., что позволяет производителям заявлять об их работе на частоте 100 МГц. По утверждению Intel, данные микросхем не являются РС 100 - совместимыми. Пришлось разрабатывать микросхемы со временем цикла 8 нс., их работа на 100 МГц гарантирована. Собранные на них модули способны работать и на более высоких частотах до 125 МГц (большая часть материнских плат на чипсете Intel 440ВХ поддерживают частоты больше 100 МГц).

 

Поделиться:





Воспользуйтесь поиском по сайту:



©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...