Технология памяти Direct Rambus


Революция грядет. Верхи (процессор) не хотят, а низы (память) не могут жить дальше в таком бардаке. Нужно или делать процессоры помедленнее, или память побыстрее. С первым проблема — Интел не согласен. Так что выбора нет. Придется что-то делать с памятью.

Как так случилось? Да просто: процессоры, как выяснилось, развиваются гораздо быстрее, чем за ними поспевает RAM. Предвыборка, распараллеливание выполнения операций, конвейерные структуры — все это раскочегарило процессора так, что у них болше времени уходит на ожидание готовности памяти, чем на сам процесс вычислений.

Спасает кеш, но это тоже не панацея. Во-первых, он дорог, причем цена растет нелинейно при увеличении объема — с ростом кеша увеличивается процент брака, а это делает проц дороже. Кеш второго уровня — уже не совсем то, что первого, он работает на частоте шины процессора, а она ныне тоже не блещет. Далее, кеш никак не спасает от операций, которые не отличаются локальностью обращений к памяти, или от обработки массивов, тривиально не укладывающихся в размер кеша. Никакой кеш не поможет и при обсчетах потоковой информации — будь то оцифровка звука ли, видеоввод, роутинг сетевого трафика. Bus-master, управление шиной силами внешних устройств, вообще идет мимо кеш-подсистемы процессора, прямо в память, причем большие потоки информации "мимо" процессора все равно ограничивают его производительность, так как мешают ему обращаться к памяти.

В общем, сегодняшняя подсистема RAM не удовлетворяет потребностей компьютера ни с какиой позиции. И главное — не меняя архитектуры, ее, конечно, можно ускорить. Процентов на 20-30. А нужно бы — раз в 5-10.

Что тут делать? И какие проблемы мешают ускорению памяти?

Проблем — вагон.

Во-первых, есть предел повышения частоты, на которой может работать память. При существующей технологии на считывание содержимого ячейки памяти нужно порядка 10 наносекунд, что не позволяет поднять частоту обращения выше 100Мгц.

Во-вторых, увеличение разрядности памяти (включение ячеек параллельно, чтобы получить за одно считывание больше байт) создает свои проблемы - как электрические (придется делать дикого размера микросхемы управления — по 200-300 ножек на корпус), так и бытового характера. Чем больше разрядность, тем большими шагами можно наращивать память, что неудобно с точки зрения потребителя. Представляете, как тяжко пришлось бы покупателям, если бы модули SIMM выпускались только шагами по 32 мегабайта? Или если бы их пришлось ставить в машину не парами, а минимум - четверками?

В общем, я к чему клоню — компания Rambus поглядела на все эти напряги, и решила, что пора перепроектировать систему памяти в принципе. Отказаться от сегодняшней методики управления чипами, и сделать все с нуля, поумнее.

Сразу скажем — ей удалось. Хотя риск был велик — в основном, риск того, что за Rambus-ом не пойдут, и новый стандарт не приживется. Ан, пошли. Правда, еще не прижился, но производить новую память (модуль такой памяти, сделанный по технологии Direct Rambus,   называется RIMM) принялись несколько крупнейших фирм, включая известнейшего памятестроителя Kingston и толстяка айбиэма.

RIMM

Новая технология отличается от старой решительно всем — только вот на вид почти точно такая же, как всем известные DIMM-ы. С этим вообще тяжко — что тут изменишь? Микросхемы да контакты. Это снаружи. А внутри — прорва изменений. Direct Rambus вобрал в себя почти все новшества памятестроения, совместив их в аккуратно и вдумчиво спроектированной схеме.

Новая схема

  • Общается с контроллером по мультиплексированной 800-мегагерцовой шине, что резко снижает необходимое число контактов и энергопотребление интерфейсных схем
  • Использует полностью параллельное соединение разъемов под модули SIMM, что гарантирует временное согласование сигналов, сколько бы модулей не было вставлено. Отсюда — возможность работы на 800 Мгц.
  • Адресует модули независимо, что резко увеличивает число независимых банков памяти, а значит, позволяет выполнять частично перекрывающиеся во времени обращения чаще.
  • Позволяет делать конвейерные выборки из памяти, причем передача адреса может выполняться одновременно с передачей данных. Отсюда - возможность сильного перекрытия запросов к памяти во времени. Контроллер может передать в память до 4-х запросов (причем возможно перемежать считывание и запись), которые будут выполнены последовательно.

Итого, на практике контроллер может выжать из шины памяти 95% ее максимальной теоретической производительности, которая равна 1.6 гигабайта в секунду (800мгц, два байта за такт). Правда, на сегодня пиковая производительность реальных схем — 600 мегабайт в секунду, но это уже очень хорошо. А запас в гигабайт в секунду карман не тянет. Не успеешь глазом моргнуть, как новые процессоры, интеллектуальные дисковые и графические контроллеры выжрут его до корки, и попросят добавки.

Определенной проблемой новой технологии является притормаживание перехода на нее компании Intel. Гигант не торопится переключаться на RIMM-ы, объясняя это необходимостью плавного перехода. Как именно задержка обеспечивает плавность — мне не совсем ясно, но, безусловно, эволюционные подходы — неизбежны, иначе можно целую отрасль во грех ввести. Если завтра все начнут делать материнские платы под RIMM-s, куда производители денут выпускающиеся мощным потоком DIMM-s и SIMM-s? Тем не менее, переход на RIMM-ы можно считать предопределенным.

В других областях — от видеоконтроллеров до спец-компьютеров и встроенных систем RIMM-ы тоже делают первые шаги. К примеру, TI и S3 уже лицензировали технологию Direct Rambus, а значит, без работы ей не умереть.

Предполагается, что в персональных компьютерах Direct Rambus RIMMs будут применяться в следующем году, к 2000-му году займут порядка 30, а в 2001-м и все 50% рынка.

В качестве примера на сайте rambus приведено описание 128-мегабайтного RIMM-а. (Смотреть его рекомендую только электронщикам) Насколько я понимаю из оного описания, минимальный размер модуля на описанных там тараканах — 16 мегабайт. Оно и правильно — какой смысл нынче иметь вышеупомянутых мегабайт менее 16-ти…




Дополнительно

iXBT BRAND 2016

«iXBT Brand 2016» — Выбор читателей в номинации «Процессоры (CPU)»:
Подробнее с условиями участия в розыгрыше можно ознакомиться здесь. Текущие результаты опроса доступны тут.

Нашли ошибку на сайте? Выделите текст и нажмите Shift+Enter

Код для блога бета

Выделите HTML-код в поле, скопируйте его в буфер и вставьте в свой блог.