logo
RAM-диск на SDRAM памяти под управлением микроконтроллера

3.3 Выбор модуля памяти

Современные модули памяти имеют шину данных разрядностью 1, 4 или 8 байт Кроме основных информационных бит, модули могут иметь дополнительные контрольные биты с различной организацией:

Модули без контрольных бит (non Parity) имеют разрядность 8, 32 или 64 бита и допускают независимое побайтное обращение с помощью отдельных для каждого байта линий CAS#.

Модули с контролем паритета (Parity) имеют разрядность 9, 36 или 72 бита и также допускают независимое побайтное обращение, контрольные биты по обращению приписаны к соответствующим байтам.

Модули с генератором паритета (Fake Parity, Parity Generator, Logical Parity) также допускают независимое побайтное обращение, логические генераторы паритета по чтению приписаны к соответствующим байтам. Действительного контроля памяти они не обеспечивают.

Модули с контролем по схеме ЕСС имеют разрядность 36, 40, 72 или 80 бит. Обычно они допускают побайтное обращение к информационным битам, но контрольные биты у них привязаны к одному или нескольким сигналам CAS#, поскольку ЕСС подразумевает обращение сразу к целому слову.

ECC-Optimized -- модули, оптимизированные под режим ЕСС. От обыч-ных ЕСС модулей они отличаются тем, что могут не обеспечивать побайтное обращение и к информационным битам.

ECC-on-Simm (EOS) -- модули со встроенной схемой исправления ошибок. Каждый байт модуля имеет встроенные средства контроля и исправления ошибок, работающие прозрачно. Для системы модули функционируют как обычные паритетные -- в случае обнаружения неисправимой ошибки они генерируют ошибочный бит паритета. Эти модули обеспечивают отказоустойчивость по памяти (Kill Protected Memory) для системных плат поддерживающих только контроль паритета.

Набор сигналов SIMM-модуля в основном совпадает с сигналами одиночных микросхем динамической памяти. Для автоматической идентификации наличия и типа установленного модуля применяются различные методы, основанные на считывании конфигурационной информации с модуля (параллельная или последовательная идентификация) или «исследовании» свойств модуля во время начального тестирования по включении питания.

Новейшие модули памяти - DIMM-168 первого и второго поколения и SO DIMM-144 используют последовательную идентификацию (Serial Presence Detection). На модуль устанавливается микросхема специальной энергонезависимой памяти с последовательным доступом по двухпроводному интерфейсу I2C, хранящая исчерпывающую конфигурационную информацию.

Модули выпускаются для напряжения питания 3,3 и 5 В. Вид модулей и сочетания ключей представлен на рис. 3.6. Толщина модулей с микросхемами в корпусах SOJ не превышает 9 мм, в корпусах TSOP -- 4 мм.

Рисунок 3.6 Модули DIMM: a -- вид модуля, б-- ключи для модулей первого поколения, в -- ключи для модулей второго поколения

Проанализировав имеющиеся разновидности DRAM наиболее подходящими для использования в RAM-диске является SDRAM на модуле DIMM второго поколения. Этот выбор объясняется тем, что SDRAM память обладает встроенным контролером которой разгружает нагрузку микроконтроллера, а также максимально возможный объём модулей DIMM является самым большим по сравнению с другими модулями.

Обращения к модулю SDRAM осуществляются через контроллер SDRAM.

Запись в регистры контроллера SDRAM осуществляются в следующем порядке:

на шину данных устанавливаются данные;

адресный сигнал регистра А[3:5] устанавливается в 1;

на защелку А2 подается импульс.

Обмен данных SDRAM осуществляется в следующем порядке:

произведя предварительную установку регистров адреса и управления контроллера произвести цикл чтения;

нужно считать их во внутренние регистры контроллера;

Синхронизация осуществляется для всех банков через сигнал II. Перевод банков памяти в режим саморегенерации осуществляется через регистры управления контроллера. Соответствие сигналов шины данных сигналам модуля SDRAM приведено в таблице 3.2.

Таблица 3.2 Соответствия сигналов шины данных сигналам SDRAM

Сигнал SDRAM

Биты регистра

Примечание

CAS

A6

Сигнал использует отдельную линию контроллера

RAS

A7

Сигнал использует отдельную линию контроллера

WE

A3 0

DQMB[0:7]

A3 [1:3]

Биты преобразуются из двоичного кода в десятичный

S[0:3]

A3 [4:5]

Биты преобразуются из двоичного кода в десятичный

A[0:ll]

A4[0:7] A5[O:3]

CKE[O:1]

A5 [4:5]

При низком уровне переводит банки в режим саморегенерации

B[0:l]

A5 [6:7]

3.4 Выбор ЖКИ

В качестве жидкокристаллического модуля выберем MT-16S2D, который состоит из БИС контроллера управления и ЖК панели. Контроллер управления аналогичен HD44780 фирмы HITACHI и KS0066 фирмы SAMSUNG. Модуль выпускаются в двух вариантах: со светодиодной подсветкой и без нее. Символы отображаются в матрице 5x8 точек. Модуль позволяет отображать 2 строки по 16 символов в каждой. Между символами имеются интервалы шириной в одну отображаемую точку. Каждому отображаемому на ЖКИ символу соответствует его код в ячейке ОЗУ модуля. Модуль содержит два вида памяти - кодов отображаемых символов и пользовательского знакогенератора, а также логику для управления ЖК панелью.

Модуль позволяет:

работать как по 8-ми, так и по 4-х битной шине данных (задается при инициализации);

принимать команды с шины данных;

записывать данные в ОЗУ с шины данных;

читать данные из ОЗУ на шину данных;

читать статус состояния на шину данных;

запоминать до 8 изображений символов, задаваемых пользователем;

выводить мигающий (или не мигающий) курсор двух типов;

управлять контрастностью и подсветкой;

модуль имеет встроенный знакогенератор.

Модуль содержит ОЗУ для хранения данных (DDRAM), выводимых на ЖКИ. Адреса отображаемых на ЖКИ символов распределены в соответствии с рис. 3.7

Рисунок 3.7 Распределение ОЗУ выводимых на индикатор данных