
Как контроллер памяти отображает линейный адрес, выданный процессором, в схему адресации SDRAM? Я думаю, это что-то вроде:
0x0 - ранг 1, банк 0, строка 0, столбец 0
0x8 - ранг 1, банк 0, строка 0, столбец 1
.
.
.
(строка 0 макс.)
0xn - ранг 1, банк 0, строка 1, столбец 0
0xn+8 ранг 1, банк 0, строка 1, столбец 1
.
.
.
(банк 0 макс.)
0xm ранг 1, банк 1, строка 0, столбец 0
0xm+8 ранг 1, банк 1, строка 0, столбец 1
и т. д.
Данные (слова) разбросаны по всем 8 микросхемам на модуле памяти, как тего (т.е. при записи слова в ранг 1, банк 0, строка 0: LSByte записывается в IC0 банк 0, строка 0, столбец 0, LSByte + 1 в IC1, банк 0, строка 0, столбец 0 ... MSByte в IC7, банк 0, строка 0, столбец 0)?
решение1
Это зависит от того, как был сконструирован конкретный модуль. Общая строка должна быть 64 бита, но она может быть распределена по 8x 8-битным чипам или 4x 16-битным чипам и т. д. Эта конфигурация зависит от производителя и не видна ЦП.