В этой статье показано, что DDR4 SDRAM имеет примерно в 8 раз большую пропускную способность DDR1 SDRAM. Но время от установки адреса столбца до момента доступности данных уменьшилось только на 10% (13,5 нс). Быстрый поиск показывает, что время доступа самое быстрое асинхронное. SRAM (18 лет) 7 нс. Почему время доступа к SDRAM так медленно уменьшается? Причина экономическая, технологическая или фундаментальная?
22
Ответы:
Это потому, что проще и дешевле увеличить пропускную способность DRAM, чем уменьшить задержку. Чтобы получить данные из открытого ряда оперативной памяти, необходим нетривиальный объем работы.
Адрес столбца должен быть декодирован, мультиплексоры выбирают, какие строки для доступа должны быть обработаны, и данные должны перемещаться через микросхему в выходные буферы. Это занимает немного времени, особенно с учетом того, что микросхемы SDRAM изготавливаются по процессу, предназначенному для высоких плотностей плунжера, а не для высоких логических скоростей. Чтобы увеличить пропускную способность, скажем, с помощью DDR (1, 2, 3 или 4), большая часть логики может быть расширена или передана по конвейеру и может работать с той же скоростью, что и в предыдущем поколении. Единственное, что должно быть быстрее - это драйвер ввода-вывода для выводов DDR.
В отличие от этого, чтобы уменьшить задержку, нужно ускорить всю операцию, что намного сложнее. Скорее всего, части плунжера должны быть изготовлены по процессу, аналогичному таковому для высокоскоростных процессоров, что существенно увеличит стоимость (высокоскоростной процесс дороже, плюс каждый чип должен пройти 2 разных процесса).
Если вы сравните кэш-память ЦП с ОЗУ и жестким диском / твердотельным накопителем, существует обратная зависимость между объемом хранилища и быстродействием хранилища. L1 $ очень быстрый, но может содержать только от 32 до 256 КБ данных. Причина, по которой он так быстр, в том, что он маленький:
По мере продвижения вверх по иерархии каждый параметр хранилища увеличивается по объему, но также увеличивается по площади и удаляется от устройства, использующего его, что означает, что устройство должно работать медленнее.
источник
C_Elegans дает одну часть ответа - это сложно уменьшить общую задержку цикла памяти.
Другая часть ответа заключается в том, что в современных иерархических системах памяти (с несколькими уровнями кэширования) пропускная способность памяти оказывает гораздо более сильное влияние на общую производительность системы, чем задержка памяти , и именно на этом были сосредоточены все последние усилия по разработке.
Это верно как для общих вычислений, где многие процессы / потоки выполняются параллельно, так и для встроенных систем. Например, в работе с HD-видео, которую я выполняю, меня не волнуют задержки порядка миллисекунд, но мне нужно несколько гигабайт в секунду пропускной способности.
источник
У меня не так много идей, но я ожидаю, что это немного всего.
экономического
Для большинства компьютеров / телефонов скорость более чем достаточна. Для более быстрого хранения данных был разработан SSD. Люди могут использовать видео / музыку и другие задачи, требующие большой скорости, в (почти) реальном времени. Таким образом, нет необходимости в большей скорости (за исключением конкретных приложений, таких как прогноз погоды и т. Д.).
Другая причина заключается в обработке очень высокой скорости ОЗУ, требуются быстрые процессоры. И это связано с большим потреблением энергии. Поскольку тенденция их использования в устройствах с батарейным питанием (например, в мобильных телефонах) не позволяет использовать очень быструю оперативную память (и процессоры), что делает ее экономически нецелесообразной.
технический
С уменьшением размера микросхем / микросхем (теперь уровень нм) скорость возрастает, но незначительно. Чаще всего он используется для увеличения объема оперативной памяти, которая необходима сложнее (также экономическая причина).
основополагающий
В качестве примера (оба являются схемами): самый простой способ получить большую скорость (используется SSD) - это просто распределить нагрузку по нескольким компонентам, таким образом, скорость «обработки» также возрастает. Сравните, используя 8 USB-накопителей, считывающих данные одновременно и объединяющих результаты, вместо того, чтобы считывать данные с 1 USB-накопителя друг за другом (это занимает в 8 раз больше времени).
источник