Мы поможем в написании ваших работ!
ЗНАЕТЕ ЛИ ВЫ?
|
Устройство перепрограммируемого ПЗУ
Структура ЗУ типа 2D
Запоминающие устройства типа 2D. Организация ЗУ типа 2D обеспечивает двухкоординатную выборку каждого ЗЭ ячейки памяти. Основу ЗУ составляет плоская матрица из ЗЭ, сгруппированных в 2* ячеек по п разрядов. Обращение к ячейке задается ^-разрядным адресом, выделение разрядов производится разрядными линиями записи и считывания. Структура ЗУ типа 2D приведена на рис. 4.5. Адрес (^-разрядный) выбираемой ячейки i поступает на схему адресного формирователя АдрФ, управляемого сигналами чтения Чт и записи Зап. Основу АдрФ составляет дешифратор с 2к выходами, который при поступлении на его входы адреса формирует сигнал для выборки линии i, при этом под воздействием сигналов Чт и Зап из АдрФ выдается сигнал, настраивающий ЗЭ i-й линии либо на считывание (выдачу сигнала состояния), либо на запись. Выделение разряда j в i-м слове производится второй координатной линией. При записи по линии j от усилителя записи УсЗап поступает сигнал, устанавливающий выбранный для записи 33;, в состояние 0 или 1. При считывании на усилитель считывания УсСч по линии / поступает сигнал о состоянии 3.9;,. Используемые здесь ЗЭ должны допускать объединение выходов для работы на общую линию с передачей сигналов только от выбранного ЗЭ. Такое свойство типично для современных ЗЭ и в дальнейшем всякий раз подразумевается. Таким образом, каждая адресная линия выборки ячейки передает три значения сигнала: выборка при записи, выборка при считывании и отсутствие выборки. Каждая разрядная линия записи передает в ЗЭ записываемый бит информации, а разрядная линия считывания — считываемый из ЗЭ бит информации. Линии записи и считывания могут быть объединены в одну при использовании ЗЭ, допускающих соединение выхода со входом записи. Совмещение функций записи и считывания на разрядной линии широко используется в современных полупроводниковых ЗУ. Запоминающие устройства типа 2D являются быстродействующими и достаточно удобными для реализации. Однако ЗУ типа 2D неэкономичны по объему оборудования из-за наличия в них дешифратора с 2к выходами. В настоящее время структура типа 2D используется в основном в ЗУ небольшой емкости.
Структура ЗУ типа 2.5D
Запоминающие устройства типа 2.5D. В ЗУ этого типа при считывании состояния /-го разряда i-й ячейки положение ЗЭ(/-в ЗМ определяется тремя координатами (две координаты для выборки и одна для выходного сигнала), а при записи в ЗЭ,, — двумя координатами. Считывание при этом осуществляется так же, как и в ЗУ типа 3D, а запись сходна с записью в ЗУ типа 2D. Запоминающий массив ЗУ типа 2,5D можно рассматривать как состоящий из отдельных ЗМ для каждого разряда памяти: ЗМо, ЗМь • • •, ЗМ;,..., ЗМ..1. Структура одноразрядного ЗУ дана на рис. 4.7, а. Код адреса г'-й ячейки памяти, как и в ЗУ 3D, разделяется на две части: i' и i", каждая из которых отдельно дешифрируется. Адресный формирователь АдрФ выдает сигнал выборки на линию i', разрядно-адресный формирователь /-го разряда РАдрФ — на линию i". При считывании оба сигнала, являющиеся сигналами выборки для считывания, опрашивают ЗЭ, выходной сигнал которого поступает на УсСч разряда /. Работает ЗУ в этом случае так же, как и ЗУ типа 3D. При записи АдрФ выдает сигнал выборки для записи, а РАдрФ выдает по линии I" сигнал записи 0 или 1 в зависимости от назначения входного информационного сигнала /-го разряда ВхИнФ,. На остальных линиях РАдрФ! не появляются сигналы записи, и состояния всех ЗЭ, кроме ЗЭ, лежащего на пересечении линий I' и i", не меняются. Из ЗМ отдельных разрядов формируется ЗМ всего ЗУ согласно схеме на рис. 4.7, б. Наиболее экономичным по расходу оборудования ЗУ оказывается в том случае, если число выходных линий АдрФ и всех РАдрФ равно, т.е. если r= (k— r) log2 п (рис. 4.7, б). Недостатком ЗУ типа 2,5 D является то, что сигналы на линиях РАдрФ должны иметь четыре значения: чтение, запись О, запись 1 и отсутствие записи (хранение). Для ЗЭ с разрушающим считыванием сигналы чтения и записи 0 совпадают и потребуются лишь три значения сигнала. В связи с этим ЗУ типа 2,5D используется для ЗЭ с разрушающим считыванием. Для построения современных полупроводниковых ЗУ из ЗЭ с неразрушающим считыванием используется структура ЗУ с двухкоординатным выделением ЗЭ и мультиплексированием выходных сигналов при считывании. Такие ЗУ будем называть ЗУ типа 2D-M.
Структура ЗУ типа 2D-M
Запоминающие устройства типа 2D-M. Запоминающие элементы таких ЗУ имеют два входа и один выход (рис. 4.8, а). При наличии хотя бы одного пустого сигнала ~ на входах ЗЭ при записи находится в режиме хранения (как в ЗУ 3D). Сигнал чтения Чт опрашивает состояние ЗЭ (так же как и в ЗУ типа 2D). Сигналы записи Зап и Зап О устанавливают ЗЭ в состояние О, а Зап и Зап1 — в состояние 1 (так же, как и в ЗУ типов 2D и 2,5D). Обычно у запоминающих элементов ЗУ типа 2D-M выход объединяется со входом записи, как это показано для ЗЭ на рис. 4,8, б. Структура одноразрядного ЗУ типа 2D-M представлена на рис. 4.8, в. Как и в ЗУ типа 2,5 D, код адреса г'-й ячейки разделяется на две части: i' и i", одна из которых поступает на АдрФ, а другая — на разрядно-адресный коммутатор РАдрК. Если на АдрФ и РАдрК не приходит сигнал обращения к памяти Обр, то на их выходных линиях не возникают действующие на ЗЭ сигналы и все ЗЭ находятся в режиме хранения. При наличии сигнала Обр выполняется считывание или запись в зависимости от значения сигнала Чт/Зап. При считывании АдрФ выдает по линии /' сигнал выборки для считывания, по которому со всех ЗЭ линии i' сигналы их состояний поступают на РАдрК. Коммутатор РАдрК мультиплексирует эти сигналы и передает на выход ИнфВых сигнал с линии i". При записи АдрФ выдает по линии i' сигнал выборки для записи. Коммутатор РАдрФК в зависимости от значения ИнфВх выдает сигнал записи 0 или 1 на линию i" и сигналы, не воздействующие на ЗЭ, в остальные линии. В результате запись производится только в ЗЭ, лежащий на пересечении координатных линий i' и i"', причем i'/i" = L Построив схему, аналогичную схеме на рис. 4.7, б, получим ЗУ для 2к п-разрядных ячеек. Наиболее экономична такая схема при r= (k— r) log2 п. Структура типа 2D-M наиболее удобна для построения полупроводниковых ЗУ и широко используется в настоящее время как в оперативных, так и в постоянных ЗУ.
Структура ЗУ типа 3D
Запоминающие устройства типа 3D. Некоторые ЗЭ имеют не один, а два конъюнктивных входа выборки. В этом случае адресная выборка осуществляется только при одновременном появлении двух сигналов. Использование таких ЗЭ позволяет строить ЗУ с трехкоординатным выделением ЗЭ. Запоминающий массив ЗУ типа 3D выполнен в виде пространственной матрицы, составленной из п плоских матриц, представляющих собой ЗМ для отдельных разрядов ячеек памяти. Запоминающие элементы для разряда сгруппированы в квадратную матрицу из \2к рядов по ~\j2k ЗЭ в каждом. Структура матрицы /-го разряда в ЗУ типа 3D представлена на рис. 4.6. Для адресной выборки ЗЭ задаются две его координаты в 3Mj. Код адреса i-й ячейки памяти разделяется на старшую и младшую части (i' и I"), каждая из которых поступает на свой адресный формирователь. Адресный формирователь АдрФ1 выдает сигнал выборки на линию ?, а АдрФ2 — на линию i". В результате в 3Mj оказывается выбранным ЗЭ, находящийся на пересечении этих линий (двух координат), т. е. адресуемый кодом i=i'/i". Адресные формирователи управляются сигналами Чт и Зап. и в зависимости от них выдают сигналы выборки для считывания или записи. При считывании сигнал о состоянии выбранного ЗЭ поступает по /'-й линии считывания к УсСч (третья координата ЗЭ). При записи в выбранный ЗЭ будут занесены 0 и 1 в зависимости от сигнала записи в /-и разряд, поступающего по /-й линии от УсЗап (третья координата ЗЭ при записи). Для полупроводниковых ЗУ, как отмечалось выше, характерно объединение в одну линию разрядных линий записи и считывания. Для построения «-разрядной памяти используется п матриц рассмотренного вида. Адресные формирователи при этом могут быть общими для всех разрядных ЗМ. Запоминающие устройства типа 3D более экономичны, чем ЗУ типа 2D. Действительно, сложность адресного формирователя с m входами пропорциональна 2т. Поэтому сложность двух адресных формирователей ЗУ типа 3D, пропорциональная 2'2*/2, значительно меньше сложности адресного формирователя ЗУ типа 2D, пропорциональной 2*. В связи с этим структура типа 3D позволяет строить ЗУ большего объема, чем структура 2D. Однако ЗЭ с тремя входами, используемыми при записи, не всегда удается реализовать.
Конвейеризация - способ обеспечения параллельности выполнения команд. В зависимости от типа команды и способа адресации, время выполнения команды сильно варьируется. Дольше всего выполняются этапы, связанные с обращением к памяти. На рисунках показаны блоки и конвейер команд гипотетического процессора, имеющего пять блоков исполнения команд и соответственно пять этапов (ступеней). Изображены выполняемые команды, номера тактов и этапы выполнения команд. На первом такте считывается первая команда. На втором, пока декодируется первая команда, считывается вторая. На пятом такте в процессоре одновременно находятся пять команд, каждая в своем узле. Конвейеризация увеличивает пропускную способность процессора (количество команд, завершающихся в единицу времени), но она не сокращает время выполнения отдельной команды. Имеются некоторые накладные расходы на конвейеризацию, возникающие в результате несбалансированности задержки на каждой его ступени. Частота синхронизации (такт синхронизации) не может быть выше, чем время, необходимое для работы наиболее медленной ступени конвейера. Конвейер не всегда представляет собой линейную цепочку этапов. В ряде ситуаций оказывается выгодным, когда функциональные блоки соединены между собой не последовательно, а в соответствии с логикой обработки. Отдельные блоки в цепочке могут пропускаться, а другие - образовывать циклические процедуры. Это позволяет с помощью одного конвейера вычислять более одной функции.
Буферизация (от англ. buffer) — метод организации обмена, в частности, ввода и вывода данных в компьютерах и других вычислительных устройствах, который подразумевает использование буфера для временного хранения данных. При вводе данных одни устройства или процессы производят запись данных в буфер, а другие — чтение из него, при выводе — наоборот. Процесс, выполнивший запись в буфер, может немедленно продолжать работу, не ожидая, пока данные будут обработаны другим процессом, которому они предназначены. В свою очередь, процесс, обработавший некоторую порцию данных, может немедленно прочитать из буфера следующую порцию. Таким образом, буферизация позволяет процессам, производящим ввод, вывод и обработку данных, выполняться параллельно, не ожидая, пока другой процесс выполнит свою часть работы. Поэтому буферизация данных широко применяется в многозадачных ОС.
Буферизация по принципу своего построения бывает прозрачная (пример — кэширование диска на запись, когда процессы или устройства не подозревают о существовании процедуры буферизации между ними), и непрозрачная, когда сторонам для совершения обмена требуются знания о буфере. Наглядный пример. С бумажными почтовыми отправлениями совершается инкапсуляция в мешки с почтой, далее в вагоны поездов, автомобили и прочие транспортные средства. Отправитель же и получатель обязаны знать только один уровень буферизации — почтовые ящики. Остальные уровни прозрачны для пользователя.
Термины «прозрачная» и «непрозрачная» буферизация не совсем удачны, поскольку могут несколько сбивать с толку. В качестве более удачных можно было бы предложить термины, соответственно, «невидимая» и «видимая буферизация».
Политика кэширования
Пакетный режим
Режим пакетной передачи (burst mode) предназначен для ускорения операций пересылки строк кэша. Этот режим появился в процессорах 486. Строка кэша процессора 486 имеет длину 16 байт, следовательно, для ее пересылки требуется четыре 32-разрядных шинных цикла. Для пересылки 32-байтной строки кэша Pentium* требуется тоже четыре такта, поскольку разрядность передач составляет 64 бита. Использование кэша предполагает, что строка должна в нем присутствовать целиком. Пакетный цикл (burst cycle) оптимизирован именно для операций обмена внутреннего кэша с оперативной памятью. В этом цикле адрес и сигналы идентификации типа шинного цикла выдаются только в первом такте пакета, а в каждом из последующих тактов могут передаваться данные, адрес которых уже не пересылается по шине, а вычисляется из первого адреса по правилам, известным процессору и контроллеру памяти. Пакетные циклы связаны только с кэшируемой памятью, при этом кэшируемость памяти подразумевает и поддержку пакетного режима. Один пакетный цикл не может пересекать границу строки кэша. Специфический порядок следования адресов в пакетном цикле определяется начальным адресом пакета. Порядок чередования (interleaving) адресов, который иллюстрирует табл. 8.1, в пакетном цикле характерен для всех процессоров Intel и совместимых с ними, начиная с 486. Он оптимизирован для двухбанковой организации памяти, подразумевающей чередование банков, используемых в соседних передачах пакетного цикла. С точки зрения памяти, у каждой микросхемы во время пакетного цикла могут изменяться только два младших бита адреса (независимо от разрядности шины данных процессора). Данный порядок чередования поддерживает любая память с пакетным режимом: динамическая память BEDO DRAM, SDRAM, RDRAM и статическая память Sync Burst SRAM, РВ SRAM. Процессоры других семейств (например, Power PC) используют линейный (linear) порядок адресов в пакете. Микросхемы пакетной памяти обычно имеют входной сигнал или бит в регистре режима, задающий порядок следования адресов (линейный или с чередованием) для конкретного применения. Длина пакетного цикла может быть фиксированной или программируемой и составлять 2, 4 или 8 передач.
Чередование адресов
Тайминг памяти
Тайминги - временные задержки сигнала. Тайминги измеряют в наносекундах (нс). Мера таймингов – такт. В описании оперативной памяти они указываются в виде последовательности чисел (CL5-5-4-12 или просто 9-9-9-24), где по порядку указываются следующие параметры: CAS Latency – задержка между командой чтения и доступностью к чтению первого слова. RAS to CAS Delay (RCD) - задержка между сигналами RAS (Row Address Strobe) и CAS (Column Address Strobe), этот параметр указывает интервал между доступами на шину контроллером памяти сигналов RAS# и CAS#. RAS Precharge Time (RP) – время повторной выдачи (период накопления заряда) сигнала RAS# – через какое время контроллер памяти будет способен снова выдать сигнал инициализации адреса строки. DRAM Cycle Time Tras/Trc – суммарный показатель быстродействия модуля памяти Если в описании указан только один параметр CL8, то она означает только первый параметр – CAS Latency. Многие материнские платы, при установке на них модулей памяти, устанавливают для них не максимальную тактовую частоту. Одна из причин – это отсутствие прироста производительности при повышении тактовой частоты, ведь при повышении частоты повышаются рабочие тайминги. Конечно, это может повысить производительность в некоторых приложениях, но и понизить в других, а может и вообще никак не повлиять на приложения, которые не зависят от задержек памяти или от пропускной способности. Для примера. Модуль памяти Corsair установленный на материнскую плату M4A79 Deluxe будет иметь такие тайминги: 5-5-5-18. Если увеличить тактовую частоту памяти до DDR2-1066, тайминги увеличатся и будут иметь следующие значения 5-7-7-24. Модуль памяти Qimonda при работе на тактовой частоте DDR3-1066 имеет рабочие тайминги 7-7-7-20, при увеличения рабочей частоты до DDR3-1333 плата устанавливает тайминги 9-9-9-25. Как правило, тайминги прописаны в SPD и для разных модулей могут отличаться. Модуль памяти A-Data с тактовой частотой DDR3-1333 устанавливает тайминги 9-9-9-24, при понижении рабочей частоты до DDR3-1066 тайминги уменьшаются всего лишь до значений 8-8-8-20.
Регенерация DRAM
Динамическая память любого типа, в отличие от статической, даже при подаче питающих напряжений не обладает способностью хранить свою информацию сколь угодно долго. Состояние элементарной ячейки динамической памяти определяется наличием или отсутствием заряда на конденсаторе, и этот заряд подвержен утечке. Поэтому для сохранения данных в динамической памяти ее ячейки необходимо периодически подзаряжать, что и составляет суть процесса регенерации. Как это происходит, чуть ниже. При выполнении операции чтения регенерация выполняется автоматически. Полученные на усилителе сигнала данные тут же записываются обратно. Считается, что такой алгоритм позволяет уменьшить число требуемых регенераций и увеличить быстродействие. Но это совершенно не так! Считывается ли информация из памяти или нет, "частота" регенерации при этом не меняется. Она либо вообще не регулируется (нет соответствующих опций в "BIOS Setup"), либо является строго фиксированной после соответствующиих установок.
Память FPM DRAM
Временная диаграмма, приведенная на рис. 7.1, может быть модифицирована для случая последовательного обращения к ячейкам, принадлежащим к одной строке матрицы. В этом случае адрес строки выставляется на шине только один раз и сигнал RAS# удерживается на низком уровне на время всех последующих циклов обращений, которые могут быть как циклами записи, так и чтения. Такой режим обращения называется режимом быстрого страничного обмена FPM (Fast Page Mode), или просто режимом страничного обмена (Page Mode), его временная диаграмма приведена на рис. 7.2. Понятие «страница» на самом деле относится к строке (row), а состояние с низким уровнем сигнала RAS# называется «открытой страницей». Преимущество данного режима заключается в экономии времени за счет исключения фазы выдачи адреса строки из циклов, следующих за первым, что позволяет повысить производительность памяти. Режим FPM поддерживает и самая обычная асинхронная память, называемая стандартной (Std).
|
|
Память EDO DRAM
Память EDO DRAM (Extended или Enhanced Data Out) содержит регистр-защелку (data latch) выходных данных, что обеспечивает некоторую конвейеризацию работы для повышения производительности при чтении. Регистр «прозрачен» при низком уровне сигнала CAS#, а по его подъему фиксирует текущее значение выходных данных до следующего его спада. Перевести выходные буферы в высоко-импедансное состояние можно либо подъемом сигнала ОЕ# (Output Enable), либо одновременным подъемом сигналов CAS# и RAS#, либо импульсом WE#, который при высоком уровне CAS# не вызывает записи (в PC управление по входу ОЕ# практически не используют). Временная диаграмма работы с EDO-памятью в режиме страничного обмена приведена на рис. 7.3; этот режим иногда называют гиперстраничным режимом обмена НРМ (Hyper Page mode). Его отличие от стандартного заключается в подъеме импульса CAS# до появления действительных данных на выходе микросхемы. Считывание выходных данных может производиться внешними схемами вплоть до спада следующего импульса CAS#, что позволяет экономить время за счет сокращения длительности импульса CAS#. Время цикла внутри страницы уменьшается, повышая производительность в страничном режиме на 40%.
| Рис. 7.3 Страничный режим считывания EDO DRAM (HPM)
| Установка EDO DRAM вместо стандартной памяти в неприспособленные для этого системы может вызвать конфликты выходных буферов устройств, разделяющих с памятью общую шину данных. Скорее всего, этот конфликт возникнет с соседним банком памяти при чередовании банков. Для отключения выходных буферов EDO-памяти внутри страничного цикла обычно используют сигнал WE#, не вызывающий записи во время неактивной фазы CAS# (рис. 7.4, кривая а). По окончании цикла буферы отключаются лишь по снятию сигнала RAS# (рис. 7.4, кривая 6).
| Рис. 7.4 Управление выходным буфером EDO DRAM
|
Память BEDO DRAM
В памяти BEDO DRAM (Burst EDO) кроме регистра-защелки выходных данных, стробируемого теперь по фронту импульса CAS#, содержится еще и внутренний счетчик адреса колонок для пакетного цикла. Это позволяет выставлять адрес колонки только в начале пакетного цикла (рис. 7.5), а во 2-й, 3-й и 4-й передачах импульсы CAS# только запрашивают очередные данные. В результате удлинения конвейера выходные данные как бы отстают на один такт сигнала CAS#, зато следующие данные появляются без тактов ожидания процессора, чем обеспечивается лучший цикл чтения. Задержка появления первых данных пакетного цикла окупается повышенной частотой приема последующих. BEDO-память применяется в модулях SIMM-72 и DIMM, но поддерживается далеко не всеми чипсетами.
| Рис. 7.5 Страничный режим считывания BEDO DRAM
| Вышеперечисленные типы памяти являются асинхронными по отношению к тактированию системной шины компьютера. Это означает, что все процессы инициируются только импульсами RAS# и CAS#, а завершаются через какой-то определенный (для данных микросхем) интервал. На время этих процессоров шина памяти оказывается занятой, причем в основном ожиданием данных.
|
Особенности SDRAM
Микросхемы синхронной динамической памяти SDRAM (Synchronous DRAM) представляет собой конвейеризированные устройства. По составу сигналов интерфейс SDRAM близок к обычной динамической памяти: кроме входов синхронизации здесь есть мультиплексированная шина адреса, линии RAS#, CAS#, WE# (разрешение записи) и CS# (выбор микросхемы) и линии данных (табл. 7.3). Все сигналы стробируются по положительному перепаду синхроимпульсов, комбинация управляющих сигналов в каждом такте кодирует определенную команду. С помощью этих команд организуется та же последовательность внутренних сигналов RAS и CAS, которая рассматривалась и для памяти FPM. Данные для первой передачи пакета записи устанавливаются вместе с командой WR. Данные для остальных передач пакета передаются в следующих тактах. Первые данные пакета чтения появляются на шине через определенное количество тактов после команды. Это число, называемое CAS Latency (CL), определяется временем доступа ТСАС и тактовой частотой. Остальные данные пакета выдаются в последующих тактах. Временные диаграммы работы SDRAM приведены на рис. 7.6. Здесь показана команда записи WR, за которой следует команда чтения RD из той же страницы, предварительно открытой командой ACT. Далее страница закрывается командой PRE. Длина пакета 2, CL = 3. Регенерация (цикл CBR с внутренним счетчиком адреса регенерируемой строки) выполняется по команде REF, которую можно вводить только при состоянии покоя (idle) всех банков. Микросхемы SDRAM оптимизированы для пакетной передачи. У них при инициализации программируется длина пакета (burst length=l, 2, 4, 8 элементов), порядок адресов в пакете (wrap mode: interleave/linear — чередующийся/линейный) и операционный режим. Пакетный режим может включаться как для всех операций (normal), так и только для чтения (Multiple Burst with Single Write). Этот выбор позволяет оптимизировать память для работы либо с WB, либо с WT-кэшем. Обратим внимание, что внутренний счетчик адреса работает по модулю, равному запрограммированной длине пакетного цикла (например, при burst length=4 он не позволяет перейти границу обычного четырехэлементного пакетного цикла).
Для памяти SDRAM ключевыми параметрами являются: * допустимая тактовая частота; * CL (Cas Latency) — число скрытых тактов (2 или 3); * TRCD — задержка RAS-CAS, выраженная в тактах (2 или 3); * TRP — время предварительного заряда RAS; * TRC — минимальное время цикла обращений к строкам одного банка; * ТАС — время задержки появления данных на выходе относительно фронта синхросигнала.
Память DDR SDRAM
Память DDR SDRAM представляет собой дальнейшее развитие SDRAM. Как и следует из названия (Dual Data Rate — удвоенная скорость данных), у микросхем DDR SDRAM данные внутри пакета передаются с удвоенной скоростью — они переключаются по обоим фронтам синхроимпульсов (рис. 7.7). На частоте 100 МГц DDR SDRAM имеет пиковую производительность 200 Мбит/с на вывод, что в составе 8-байтных модулей DIMM дает производительность 1600 Мбайт/с. На высоких тактовых частотах (100 МГц) двойная синхронизация предъявляет очень высокие требования к точности временных диаграмм. Для повышения точности синхронизации предпринят ряд мер. * Сигнал синхронизации микросхемы подается в дифференциальной форме по двум линиям CLK и CLK# (Differential clock inputs). Это позволяет снизить влияние смещения уровней на точность определения момента синхронизации — дифференциальный приемник срабатывает в момент равенства уровней напряжения. * Для синхронизации данных в интерфейс введен новый двунаправленный стробирующий сигнал DQS. Стробы генерируются источником данных: при операциях чтения DQS генерируется микросхемой памяти, при записи — контроллером памяти (чипсетом). При чтении фронты и спады этого сигнала точно центруются в моменты смены данных, приемник должен стробировать данные с небольшой задержкой относительно переключений DQS. При записи фронты и спады центруются точно посередине окна действительности данных и масок DQМ. * Для синхронизации DQS с системной тактовой частотой (CLK) микросхемы имеют встроенные схемы DLL (Delay Locked Loop) для автоподстройки задержки сигнала DQS относительно CLK. Эта схема работает наподобие фазовой автоподстройки и способна выполнять синхронизацию (обеспечивать совпадение фронтов DQS и CLK) лишь в некотором ограниченном диапазоне частот синхронизации. Есть микросхемы DDR SDRAM с возможностью отключения схем DLL; для этого они имеют дополнительный расширенный регистр режима. Отключение DLL необходимо при снижении тактовой частоты (в целях энергосбережения). При отключенной схеме DLL стробы DQS не привязаны к синхросигналу CLK, и у разных микросхем, работающих в одной системе, они будут иметь разные частоты. В отличие от обычных микросхем SDRAM, у которых данные для записи передаются одновременно с командой, в DDR SDRAM данные для записи (и маски DQM) подаются с задержкой на один такт (write latency). Значение CAS Latency может быть и дробным (CL=2, 2,5, 3). В перспективе ожидается появление микросхемы DDR-II SDRAM, в которой обмен будет на четырехкратной частоте синхронизации.
Память DDR2, DDR3 SDRAM.
Как и DDR SDRAM, DDR2 SDRAM использует передачу данных по обоим срезам тактового сигнала, за счёт чего при такой же частоте шины памяти, как и в обычной SDRAM, можно фактически удвоить скорость передачи данных (например, при работе DDR2 на частоте 100 МГц эквивалентная эффективная частота для SDRAM получается 200 МГц). Основное отличие DDR2 от DDR — вдвое большая частота работы шины, по которой данные передаются в буфер микросхемы памяти. При этом, чтобы обеспечить необходимый поток данных, передача на шину осуществляется из четырёх мест одновременно. Итоговые задержки оказываются выше, чем для DDR. Внешнее отличие модулей памяти DDR2 от DDR — 240 контактов (по 120 с каждой стороны) Микросхемы памяти DDR2 производятся в новом корпусе типа BGA (FBGA). Напряжение питания микросхем: 1,8 В Потребляемая мощность: 247 мВт Интерфейс ввода-вывода: SSTL_18 Burst Length: 4/8 Prefetch Size: 4-bit Новые функции: ODT, OCD Calibration, Posted CAS, AL (Additive Latency)
Совместимость
DDR2 не является обратно совместимой с DDR, поэтому ключ на модулях DDR2 расположен в другом месте по сравнению с DDR и вставить модуль DDR2 в разъём DDR, не повредив последний (или первый), невозможно. Существуют переходники для установки модулей DDR2 в слоты DDR[1], но их можно рассматривать скорее как технологический курьез. Дело в том, что для функционирования такого переходника необходим контроллер памяти, обладающий способностью работать как с памятью типа DDR, так и DDR2 — например, Intel 915 Express.
------------------------------------
DDR3 SDRAM (англ. double-data-rate three synchronous dynamic random access memory — синхронная динамическая память с произвольным доступом и удвоенной скоростью передачи данных, третье поколение) — это тип оперативной памяти, используемой в вычислительной технике в качестве оперативной и видеопамяти. Пришла на смену памяти типа DDR2 SDRAM.У DDR3 уменьшено на 15% (точный процент)[1][2]) потребление энергии по сравнению с модулями DDR2, что обусловлено пониженным (1,5 В, по сравнению с 1,8 В для DDR2 и 2,5 В для DDR) напряжением питания ячеек памяти.[2] Снижение напряжения питания достигается за счёт использования 90-нм (вначале, в дальнейшем 65-, 50-, 40-нм) техпроцесса при производстве микросхем и применения транзисторов с двойным затвором Dual-gate (что способствует снижению токов утечки).
Микросхемы памяти DDR3 производятся исключительно в корпусах типа BGA.
Модули DIMM с памятью DDR3, имеющие 240 контактов, не совместимы с модулями памяти DDR2 электрически и механически. Ключ расположен в другом месте, поэтому модули DDR3 не могут быть установлены в слоты DDR2, сделано это с целью предотвращения ошибочной установки одних модулей вместо других и их возможного повреждения вследствие несовпадения электрических параметров. В переходный период производители выпускали материнские платы, которые поддерживали установку и модулей DDR2, и DDR3, имея соответствующие разъёмы (слоты) под каждый из двух типов, но одновременная работа модулей разных типов не допускалась.
DDR RDRAM
Память RDRAM (Rambus DRAM) имеет синхронный интерфейс, существенным образом отличающийся от вышеописанного. Запоминающее ядро этой памяти построено на все тех же КМОП-ячейках динамической памяти, но пути повышения производительности интерфейса совершенно иные. Подсистема памяти (ОЗУ) RDRAM состоит из контроллера памяти, канала и собственно микросхем памяти. По сравнению с DDR SDRAM, при той же производительности RDRAM имеет более компактный интерфейс и большую масштабируемость. Разрядность ОЗУ RDRAM (16 байт) не зависит от числа установленных микросхем, а число банков, доступных контроллеру, и объем памяти суммируются по всем микросхемам канала. При этом в канале могут присутствовать микросхемы разной емкости в любых сочетаниях. Запоминающее ядро микросхем имеет многобанковую организацию — 64-мегабитные микросхемы имеют 8 банков, 256-мегабитные - 32 банка. Каждый банк имеет собственные усилители считывания, благодаря чему в микросхеме может быть активировано несколько банков. Для сокращения числа усилителей применяют и их разделение (совместное использование) парой смежных байт, что накладывает ограничения на их совместную активацию (до активации банка его смежник должен быть заряжен). Разрядность ядра 16 байт — 128 или 144 (с контрольными разрядами) бит. Ядро работает на 1/8 частоты канала, взаимодействие с ядром осуществляется по внутренним сигналам RAS и CAS. В современных RDRAM применяются ячейки памяти с временем доступа 40-53 нс. Канал RDRAM (Rambus Channel) представляет собой последовательно-параллельную шину. Такая организация позволяет ограничить количество линий интерфейса, что, в свою очередь, позволяет упорядочить разводку проводников ради повышения частоты передачи сигналов. Небольшое количество сигналов дает возможность выровнять задержки распространения сигналов по разным линиям и применить сверхбыстродействующие интерфейсные схемы. Тактовая частота канала до 400 МГц, стробирование информации осуществляется по обоим фронтам синхросигнала. Таким образом, пропускная способность одной линии составляет 800 Мбит/с. Канал состоит из 30 основных линий с интерфейсом RSL (Rambus System Logic) и 4 вспомогательных линий КМОП, используемых для инициализации микросхем.
Организация канала RDRAM
Канал разделен на три независимые шины: 3-битная шина строк ROW[2:0], 5-битная шина колонок COL[4:0] и двухбайтная (2x9 бит) шина данных DQA[8:0] и DQB[8:0]. Дополнительный бит байта данных (имеется не у всех микросхем RDRAM) может использоваться для контроля достоверности. По каждой шине информация передается пакетами, занимающими 4 такта (8 интервалов) синхронизации (10 нc). Пакет содержит 8 элементов; пакет строк имеет емкость 24 бит, колонок — 40 бит и данных — 16 байт по 8 или 9 бит. Высокая производительность шины управления (строк и колонок) позволяет отказаться от пакетных (в терминологии BEDO и SDRAM) передач и упростить протокол шины. Память может одновременно обслуживать до четырех транзакций на полной скорости передачи данных. Транзакции чтения приведены на рис. 7.9, по виду они аналогичны транзакциям SDRAM с тем лишь отличием, что за время одного такта (SDRAM) передается пакет. Пакет ROW для второй транзакции пропущен, поскольку страницу оставили открытой. Транзакция чтения со стороны контроллера представляет собой петлю: он посылает пакеты ROWA и COLC, которые за некоторое время достигают целевой микросхемы и ею обрабатываются за время ТСАС. Далее микросхема отвечает пакетом данных, которому для достижения контроллера также требуется некоторое время. Пакетам для путешествий к дальним микросхемам и от них требуется больше времени, чем для путешествий к ближним, и эта разница оказывается большей, чем длительность периода синхронизации. Для того чтобы контроллер получал ответ на транзакцию чтения от любой микросхемы через одно и то же число тактов, у микросхем памяти устанавливают разную задержку данных относительно пакетов COLC. Группы соседних микросхем, у которых программируется одинаковая задержка, называют доменами синхронизации. В канале может быть несколько доменов синхронизации.
Память VC RAM
Идея архитектуры памяти с виртуальными каналами (VirtualChannel Memory Architecture, не путать с виртуальной памятью!) заключается в помещении между массивом запоминающих ячеек и внешним интерфейсом микросхемы памяти набора канальных буферов. При этом операции обмена данными разделяются на два процесса: «фасадный» обмен данными с каналами и «тыловой» обмен между каналами и массивом запоминающих ячеек. Оба процесса выполняются по командам со стороны внешнего интерфейса почти независимо друг от друга. Архитектура виртуальных каналов приложима к памяти любого типа, включая ПЗУ и флэш-память, но наиболее интересна она в приложении к динамической памяти — VC DRAM. Устройство VC DRAM рассмотрим на примере микросхем емкостью 128 Мбит, на которых строятся выпускаемые модули DIMM VC DRAM. По интерфейсу (составу и уровням сигналов) микросхемы и модули VC DRAM аналогичны обычным микросхемам SDRAM, но отличаются системой команд. Микросхемы имеют такую же внешнюю организацию по 4,8 или 16 бит данных, но совершенно иную внутреннюю архитектуру. Они имеют две матрицы (два банка) запоминающих ячеек размером 8К х 8К, то есть каждая строка имеет объем 8К бит и состоит из четырех сегментов размером по 2К бит. Между матрицами и внешним интерфейсом имеется 16 канальных буферов, каждый объемом 2К бит. За одно обращение к матрице выполняется параллельная передача 2К бит данных между одним из буферов и сегментом выбранной строки. Это «тыловой» обмен реализуют команды PRF (Prefetch — чтение массива в буфер) и RST (Restore — сохранение буфера в массиве), в которых микросхеме указывается номер банка, номер сегмента и номер канала. Предварительно командой ACT должна быть активирована требуемая
|