LINUX.ORG.RU

Минимальный модуль памяти

 ,


0

1

Интересует, есть ли минимально допустимый размер модуля памяти? Например, что если сделать на базе FPGA совместимый DDR2/3/4 модуль памяти, который будет сообщать, что доступно лишь 64/128 килобайта памяти? Это как-то может зависеть от конкретного BIOS-а. Будет ли он нормально приниматься системой? Возможно в самом стандарте памяти прописаны какие-то лимиты по объемам...

Допустим, это невозможно, тогда возможно ли как-то указать, чтобы операционная система использовала полноценный модуль для операционной системы, а на имитацию продолжался лишь «хвост» диапазона? Тогда можно было бы имитировать бОльший объем, но при чтении он бы возвращал нули. Возможно это зависит от того, в какой слот засунуть.

Спрашивал на спец форумах по ПЛИС, но уверенных ответов мне не попалось, всё же это дики изврат. Впрочем, можно для начала опробовать это с каким-то микроконтроллером, у которого поддерживается DDR2 интерфейс, если такие есть.

★★★★★

Последнее исправление: I-Love-Microsoft (всего исправлений: 2)

Честно сказать , не знаю что и сказать . Давно меня так не развлекали . Аватарка как-бы намекает , конечно . Практическая необходииомть в этом есть ? Или проверка дяди Билли ?

anonymous
()
Ответ на: комментарий от anonymous

Да, я извращенец и не лечусь. Это исключительно вопрос любопытства - вопрос даже не смогу ли я такое сделать на FPGA, опыт мне такое позволит поднять, вопрос - возможно ли в принципе. Не факт что я буду это делать, но...

I-Love-Microsoft ★★★★★
() автор топика

Думается мне, что это можно проверить только экспериментальным путем.

anonymous
()

чисто физических ограничений на минимальный объём я не вижу, зато могут быть какие-то программные (какую именно операционку будешь пытаться запустить?) «имитировать бОльший объем, но при чтении он бы возвращал нули» так делать нельзя - ведь операционная система начнёт подгружать свои части в этот хвост и как только попытается их использовать тут-то она и застрянет

SakuraKun ★★★★★
()

Для чего? Ядру можно ограничить память параметром при загрузке.

anonymous
()
Ответ на: комментарий от SakuraKun

Linux естественно. И вроде много лет назад я читал что у Linux появилась тогда опция ядра чтобы при старте она проверяла оперативку и метила страницы памяти в таблице, которые являются сбойными. Либо таблица внешняя, либо на лету генерится. Разумеется, некая минимальная область на несколько мегабайт при этом должна быть работоспособной.

Есть у ядра Linux и опция, которая возможно актуальна лишь для ARM процессоров, где указывается диапазон памяти, который можно задействовать для операционной системы. Может это и поможет, зато потом, из драйвера видимо, можно дотянуться до полного объема памяти. И тогда такие обращения к «имитатору памяти» можно отмечать светодиодом, чтобы убедиться что реально к нему запросы поступали, что удалось достучаться.

Это интересная задача. Как известно, в РФ не раз делали контроллеры памяти в различных процессорах с поддержкой DDR2/3/4, но пытались ли делать модули памяти?

I-Love-Microsoft ★★★★★
() автор топика
Ответ на: комментарий от registrant

Я всегда что-то начинаю делать без осязаемой применимости, потом это становится моей работой или подработкой. В конце концов, такие задачи подкачивают искпу. Один финн 10 лет делал мини-паровоз в масштабе, и таки сделал, топит дровами, одного человека тянет :)

Хочу весной такую платку развести (когда закончу текущие проекты) в форме DIMM-модуля DDR2/3 или 4, скорее 2. Это не очень сложно развести, но вот имитировать корректное содержимое SPD-памяти, корректно реагировать на сигналы - вот это наверное трудно будет, но SignalTap/ChipScope или своя поделка поможет отладить это надеюсь. Сроков нет.

I-Love-Microsoft ★★★★★
() автор топика
Ответ на: комментарий от I-Love-Microsoft

в РФ не раз делали контроллеры памяти в различных процессорах с поддержкой DDR2/3/4, но пытались ли делать модули памяти?

да, пытались, и сейчас делают, нашёл интересную презентацию про импортозамещение - http://www.vipforum.ru/upload/iblock/e72/e72d17d03a94d33815f3f9edab315f13.pdf , страница 12 . правда объём модуля оперативки небольшой - 32 мегабита (4 МБ), 16 чипов по 2 мегабита или 32 чипа по 1 мегабиту, и это по всей видимости не DDR

SakuraKun ★★★★★
()
Ответ на: комментарий от SakuraKun

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

I-Love-Microsoft ★★★★★
() автор топика
Последнее исправление: I-Love-Microsoft (всего исправлений: 1)
Ответ на: комментарий от I-Love-Microsoft

Хочу весной такую платку развести (когда закончу текущие проекты) в форме DIMM-модуля DDR2/3 или 4, скорее 2.

модуль представляет из себя печатную плату с напаянными чипами памяти. этих чипов много именно для объема, ты же собираешься этот самый объем с неведомой целью ограничить. если тебе не нужен большой объем, то ставишь 1 чип памяти и не сношаешься с разводкой адресных и командных линий. делать ddr и вообще sdram маленького объема - на кой черт, если их для объема и придумали? не нужен объем - ставь sram, быстрее доступ все равно не сделаешь. так что на вопрос ты не ответил.

registrant ★★★★★
()
Ответ на: комментарий от registrant

Скорость не важна. Будет важен факт владения интерфейсом памяти со стороны модуля. Хотя возможно DDR7 уже будет на базе оптоволоконных линий, и этот интерфейс устареет.

I-Love-Microsoft ★★★★★
() автор топика
Ответ на: комментарий от I-Love-Microsoft

Скорость не важна. Будет важен факт владения интерфейсом памяти со стороны модуля.

ты объясни, зачем использовать интерфейс, заточенный под большие объемы и высокие частоты для малого объема?

registrant ★★★★★
()

Вопрос в том, как будет трактовать стандарт контроллёр памяти. например, стандарт JEDEC для DDR2 не предусматривает числа банком меньше 4х и объёма банка менее 16Мб, тем не менее, формально SPD позволяет прошить в себя однострочную одностолбцовую однобанковую память.

redgremlin ★★★★★
()
Ответ на: комментарий от registrant

Действительно, зачем знать, лучше не знать!

anonymous
()
Ответ на: комментарий от redgremlin

Спасибо, полезная инфа, но я еще не изучал стандарт с этой стороны. Поставить 4 дешевых ПЛИС не есть проблема.

I-Love-Microsoft ★★★★★
() автор топика
Ответ на: комментарий от SakuraKun

По крайней мере, я знаю чела, который на ПЛИС сделал контроллер DDR2 полностью своей разработки, и ему не показалось это чудовищно сложным, но гемора хватило. Другой знакомый сделал приемник HDMI-сигнала на голой ПЛИС и я видел это в работе. Еще один чел сделал физический уровень SATA на голой ПЛИС и это уже много лет работает в изделии. Это не может не вдохновлять.

Но да, сразу DIMM-модуль может оказаться трудноват, очевидно, ведь даже сам единичный модуль памяти это жесть. Поэтому я сразу написал, что план - подключить ПЛИС вместо модуля DDR2 к какому-нибудь микроконтроллеру, либо вообще к другой такой же ПЛИС через ее штатный контроллер памяти.

I-Love-Microsoft ★★★★★
() автор топика
Последнее исправление: I-Love-Microsoft (всего исправлений: 2)
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.