Автор: Пользователь скрыл имя, 22 Февраля 2012 в 20:14, курсовая работа
Хотя память значительно подешевела, модернизировать приходится ее намного чаще, чем несколько лет назад. В настоящее время новые типы памяти разрабатываются намного быстрее, и вероятность того, что в новые компьютеры нельзя будет устанавливать память нового типа, как никогда велика.
От количества установленной в компьютере оперативной памяти напрямую зависит возможность, какими программами вы сможете на нем работать. При недостаточном количестве оперативной памяти многие программы либо вовсе не будут работать, либо станут работать крайне медленно.
Введение
3
Глава 1. Как работает память?
1.1 Элементная база логики
5
1.2 Быстродействие и производительность памяти
6
Глава 2. Чипы памяти
2.1 Память типа DRAM
8
2.2 Память типа SRAM
19
Глава 3. Разъёмы:
3.1 DIP
22
3.2 SIPP
22
3.3 SIMM, DIMM и RIMM
23
Глава 4. Сравнительная характеристика основных типов памяти
26
Заключение
28
Список литературы
Недостатком можно посчитать придуманные производителем режимы управления питанием модулей. Если напряжение питания 2,5 В стало практически стандартом для всех новых технологий памяти DRAM, то режимы работы Асtive (активный), Standby (ожидания), NAP ("спящий") и PowerDown (отключение питания) - собственное изобретение Rambus. Самое интересное, что микросхема, не обменивающаяся в текущий момент данными с контроллером, автоматически переводится в режим ожидания, иначе возможен перегрев системы, так как тактовые частоты весьма высоки. На переключение же из режима Standby в активное состояние требуется 100 нс.
Хочется отметить, что реальная пропускная способность RDRAM существенно ниже заявленных Rambus значений. После появления системного набора Intel 820 с поддержкой DR DRAM были проведены сравнительные тесты с другими типами памяти. Оказалось, что на большинстве реальных задач RDRAM уступает даже SDRАМ, работающим на частоте 133 МГц. В значительной мере это объясняют более узкой шиной данных канала Rambus (16 бит) по сравнению с 64-битной шиной SDРАМ. С появлением чипсета VIА Ароllo Рго2бб, поддерживающего DDR DRАМ, картина для Rambus и Intel становится вовсе безрадостной.
Существует тип памяти, совершенно отличный от других - статическая оперативная память (Static RAM – SRAM). Она названа так потому, что, в отличии от динамической оперативной памяти, для сохранения ее содержимого не требуется периодической регенерации. Но это не единственное ее преимущество. SRAM имеет более высокое быстродействие, чем динамическая оперативная память, и может работать на той же частоте, что и современные процессоры.
Время доступа SRAM не более 2 нс, это означает, что такая память может работать синхронно с процессорами на частоте 500 МГц или выше. Однако для хранения каждого бита в конструкции SRAM используется кластер из 6 транзисторов. Использование транзисторов, без каких либо конденсаторов означает, что нет необходимости в регенерации. Пока подается питание, SRAM будет помнить то, что сохранено.
Рис.2.2.1 Ячейка SRAM
Микросхемы SRAM не используются для всей системной памяти потому, что по сравнению с динамической оперативной памятью быстродействие SRAM намного выше, но плотность ее намного ниже, а цена довольно высокая. Более низкая плотность означает, что микросхемы SRAM имеют большие габариты, хотя их информационная емкость намного меньше. Большое число транзисторов и кластиризованное их размещение не только увеличивает габариты SRAM, но и значительно повышает стоимость технологического процесса по сравнению с аналогичными параметрами для микросхем DRAM.
Несмотря на это, разработчики все-таки применяют память типа SRAM для повышения эффективности РС. Но во избежание значительного увеличения стоимости устанавливается только небольшой объем высокоскоростной памяти SRAM, которая используется в качестве кэш-памяти. Кэш-память работает на тактовых частотах, близких или даже равных тактовым частотам процессора, причем обычно именно эта память используется процессором при чтении и записи.
В переводе слово «cache» (кэш) означает «тайный склад», «тайник» («заначка»). Тайна этого склада заключается в его «прозрачности» — адресуемой области памяти для программы он не добавляет. Кэш является дополнительным быстродействующим хранилищем копий блоков информации из основной памяти, вероятность обращения к которым в ближайшее время велика. Кэш не может хранить копию всей основной памяти, поскольку его объем во много раз меньше объема основной памяти. Он хранит лишь ограниченное количество блоков данных и каталог (cache directory) — список их текущего соответствия областям основной памяти. Кроме того, кэшироваться может и не вся оперативная память, доступная процессору: во-первых, из-за технических ограничений может быть ограничен максимальный объем кэшируемой памяти; во-вторых, некоторые области памяти могут быть объявлены некэшируемыми (настройкой регистров чипсета или процессора). Если установлено оперативной памяти больше, чем возможно кэшировать, обращение к некэшируемой области ОЗУ будет медленным. Таким образом, увеличение объема ОЗУ, теоретически всегда благотворно влияющее на производительность, может снизить скорость работы определенных компонентов, попавших в некэшируемую память. В ОС Windows память распределяется, начиная с верхних адресов физической памяти, в результате чего в некэшируемую область может попасть ядро ОС.
При каждом обращении к памяти контроллер кэш-памяти по каталогу проверяет, есть ли действительная копия затребованных данных в кэше. Если она там есть, то это случай кэш-попадания (cache hit) и данные берутся из кэшпамяти. Если действительной копии там нет, это случай кэш-промаха (cache miss), и данные берутся из основной памяти. В соответствии с алгоритмом кэширования блок данных, считанный из основной памяти, при определенных условиях заместит один из блоков кэша. От интеллектуальности алгоритма замещения зависит процент попаданий и, следовательно, эффективность кэширования. Поиск блока в списке должен производиться достаточно быстро, чтобы «задумчивостью» в принятии решения не свести на нет выигрыш от применения быстродействующей памяти. Обращение к основной памяти может начинаться одновременно с поиском в каталоге, а в случае попадания — прерываться (архитектура Look aside). Это экономит время, но лишние обращения к основной памяти ведут к увеличению энергопотребления. Другой вариант: обращение к основной памяти начинается только после фиксации промаха (архитектура Look Through), при этом теряется, по крайней мере, один такт процессора, зато экономится энергия.
Кэш в современных компьютерах строится по двухуровневой, а иногда и трехуровневой схеме.
Первичный кэш, или L1 Cache (Level 1 Cache), — кэш 1 уровня, внутренний (Internal, Integrated) кэш процессоров класса 486 и выше, а также некоторых моделей 386.
Вторичный кэш, или L2 Cache (Level 2 Cache), — кэш 2 уровня. Для процессоров вплоть до Pentium (и аналогичных) это внешний (External) кэш, установленный на системной плате. В Р6 и более мощных процессорах вторичный кэш расположен в одном корпусе с процессором, и для таких процессоров дополнительный кэш на системную плату уже не устанавливается.
Кэшем третьего уровня оказывается кэш, установленный на системной плате с сокетом 7, когда в него устанавливают процессор AMD K6-3, обладающий встроенным двухуровневым кэшем.
Объем первичного кэша невелик (8-128 Кбайт); чтобы повысить его эффективность, для данных и команд часто используется раздельный кэш (так называемая Гарвардская архитектура — противоположность Принстонской с общей памятью для команд и данных). В процессорах Pentium 4 первичный кэш устроен уже иначе.
Кэш-контроллер должен обеспечивать когерентность (coherency) — согласованность данных кэш-памяти обоих уровней с данными в основной памяти при том условии, что обращение к этим данным может производиться не только процессором, но и другими активными (bus-master) адаптерами, подключенными к шинам (PCI, VLB, ISA и т. д.). Следует также учесть, что процессоров может быть несколько, и у каждого может быть свой внутренний кэш.
Контроллер кэша оперирует строками (cache line) фиксированной длины. Строка может хранить копию блока основной памяти, размер которого, естественно, совпадает с длиной строки. С каждой строкой кэша связана информация об адресе скопированного в нее блока основной памяти и ее состоянии. Строка может быть действительной (valid) — это означает, что в текущий момент времени она достоверно отражает соответствующий блок основной памяти, или недействительной. Информация о том, какой именно блок занимает данную строку (то есть старшая часть адреса или номер страницы) и о ее состоянии, называется тегом (tag) и хранится в связанной с данной строкой ячейке специальной памяти тегов (tag RAM). В операциях обмена с основной памятью обычно строка участвует целиком (несекторированный кэш), для процессоров 486 и выше длина строки совпадает с объемом данных, передаваемых за один пакетный цикл (для 486 — это 4x4 = 16 байт, для Pentium — 4 х 8 = 32 байт). Возможен и вариант секторированного (sectored) кэша, при котором одна строка содержит несколько смежных ячеек — секторов, размер которых соответствует минимальной порции обмена данных кэша с основной памятью. При этом в записи каталога, соответствующей каждой строке, должны храниться биты действительности для каждого сектора данной строки. Секторирование позволяет экономить память, необходимую для хранения каталога при увеличении объема кэша, поскольку большее количество бит каталога отводится под тег и выгоднее использовать дополнительные биты действительности, чем увеличивать глубину индекса (количество элементов) каталога.
SRAM различается по принципу работы. Существует три типа:
1. Async SRAM (Asynchronous Static Random Access Memory) - асинхронная статическая память с произвольным порядком выборки;
2. SyncBurst SRAM (Synchronous Burst Random Access Memory) – синхронная пакетная статическая память с произвольным порядком выборки;
3. PipBurst SRAM (Pipelined Burst Random Access Memory) – конвейерная пакетная статическая память с произвольным порядком выборки;
Async SRAM – это устаревший тип памяти, асинхронный интерфейс которой схож с интерфейсом DRAM и включает в себя шины адреса, данных и управления. SyncBurst SRAM – этот тип памяти синхронизирован с системной шиной и лучше всего подходит для выполнения пакетных операций. Ну а интерфейс PipBurst SRAM схож с интерфейсом SyncBurst SRAM, но позволяет получать данные без тактов ожидания.
Глава 3. Разъёмы
3.1 DIP
DIP-корпус —это исторически сама древняя реализация DRAM. DIP-корпус соответствует стандарту IC. Обычно это маленький черный корпус из пластмассы, по обеим сторонам которого располагаются металлические контакты (см. рисунок B.3.1.).
Рис.3.1.1 Стандартный DIP-корпус
Микросхемы динамического ОЗУ устанавливаются так называемыми банками. Банки бывают на 64, 256 Кбайт, 1 и 4 Мбайт. Каждый банк состоит из девяти отдельных одинаковых чипов. Из них восемь чипов предназначены для хранени информации, а девятый чип служит для проверки четности остальных восьми микросхем этого банка.
Чипы памяти бывают одно и четырехразрядными, и иметь емкость 64 Кбит, 256 Кбит, 1 и 4 Мбит. Обозначение разновидностей микросхем памяти в DIP-корпусах показано в таблице.
Следует отметить, что памятью с DIP-корпусами комплектовались персональные компьютеры с микропроцессорами i8086/88, i80286 и, частично, i80386SX/DX. Установка и замена этого вида памяти была нетривиальной задачей. Мало того, что приходилось подбирать чипы для банков памяти одинаковой разрядности и емкости. Приходилось прилагать усилия и смекалку, чтобы чипы правильно устанавливались в разъемы. К тому же необходимо было не разрушить контакты механически, не повредить их инструментом, статическим электричеством, грязью и т.п. Поэтому уже в компьютерах с процессором i80386DX эти микросхемы стали заменять памяти SIPP и SIMM.
3.2 SIPP
Одной из незаслуженно забытых конструкций модулей памяти являются SIPP-модули. Эти модули представляют собой маленькие платы с несколькими напаянными микросхемами DRAM.
Рис.3.2.1 Стандартный SIPP-корпус
SIPP является сокращением слов Single Inline Package. SIPP-модули соединяются с системной платой с помощью контактных штырьков. Под контактной колодкой находятся 30 маленьких штырьков (смотри рисунок B.3.3.), которые вставляются в соответствующую панель системной платы.
Модули SIPP имели определенные вырезы, которые не позволяли вставить их в разъемы неправильным образом. По мнению автора, этот вид модулей лидировал по простоте их установки на системную плату.
В большинстве современных компьютеров вместо отдельных микросхем памяти используются модули SIMM или DIMM, представляющие собой небольшие платы, которые устанавливаются в специальные разъемы на системной плате или плате памяти. Отдельные микросхемы так припаены к плате модуля SIMM или DIMM, что выпаить и заменить их практически невозможно. При появлении неисправности приходится заменять весь модуль. По существу, модуль SIMM или DIMM можно считать одной большой микросхемой.
В РС совместимых компьютерах применяются в основном два типа модулей SIMM: 30-контактные (9разрядов) и 72-контактные (36 разрядов). Первые из них меньше по размерам. Микросхемы в модулях SIMM могут устанавливаться как на одной, так и на обеих сторонах платы. Использование 30-контактных модулей неэффективно, поскольку для заполнения одного банка памяти новых 64-разрядных систем требуется восемь таких модулей.
72-пиновые разъемы SIMM ожидает та же участь, которая несколькими годами раньше постигла их 30-пиновых предшественников: те уже давно не производятся. Им на смену в 1996 г. пришел новый разъем DIMM со 168 контактами, а после и разъем RIMM. Если на SIMM реализовывались FPM и EDO RAM, то на DIMM более современная технология SDRAM. В системную плату модули SIMM необходимо было вставлять только попарно, а DIMM можно выбрать по одному, что связано с разрядностью внешней шины данных процессоров Pentium. Такой способ установки предоставляет больше возможностей для варьирования объема оперативной памяти.
Первоначально материнские платы поддерживали оба разъема, но уже довольно продолжительное время они комплектуются исключительно разъемами DIMM. Это связано с упомянутой возможностью устанавливать их по одному модулю и тем, что SDRAM обладает большим быстродействием по сравнению с FPM и EDORAM.