Автор работы: Пользователь скрыл имя, 18 Февраля 2013 в 15:57, курсовая работа
Оперативная память является одним из важнейших элементов компьютера. Именно из нее процессор берет программы и исходные данные для обработки, в нее он записывает полученные результаты. Название «оперативная» эта память получила потому, что она работает очень быстро, так что процессору практически не приходится ждать при чтении данных из памяти или записи в память.
Введение …………………………………………………………………………………………………………
3
Глава 1. Как работает память?
1.1 Элементная база логики ………………………………………………….....................................
5
1.2 Быстродействие и производительность памяти…………………………………………………
5
Глава 2. Чипы памяти
2.1 Память типа DRAM……………………………………………………………………………..
7
2.2.1 FPM……………………………………………………………………………………………..
9
2.2.2 EDO ………………………………………………….…………………………………………
10
2.2.3 BEDO……………………………………………….…………………………………………...
12
2.2.4 VRAM ……………………………………………………………………………………….....
13
2.2.5 SDRAM …………………………………………………………………………………………
13
2.2.6 Enhanced SDRAM ……………………………………………………………………………
15
2.2.7 SGRAM …………………………………………………………………………………………
15
2.2.8 DDR SDRAM ………………………………………………………………………………….
15
2.2.9 RDRAM ………………………………………………………………………………………...
17
2.2 Память типа SRAM ………………………………………………………………………………
18
Глава 3. Разъёмы:
3.1 DIP ………………………………………………………………………………………………….
20
3.2 SIPP ………………………………………………………………………………………………...
21
3.3 SIMM, DIMM и RIMM………………………………………………………………………….....
21
Глава 4. Сравнительная характеристика основных типов памяти
23
Глава 5. Что нас ждёт в будущем?
5.1 FeRAM……………………………………………………………………………………………...
25
5.2 Голографическая память……………………………………………………………………….....
29
5.3 Молекулярная память……………………………………………………………………………..
31
5.4 Наноструктуры…………………………………………………………………………………….
33
Заключение……………………………………………………………………………………………………….
35
Список литературы………………………………………………………………………………………..……..
36
Условимся измерять максимально достижимое быстродействие памяти по скорости последовательного считывания ячеек. Конечно, это будет несколько идеализированная характеристика, ощутимо завышающая реальную производительность, но тут не обходится без тонкостей.
Современные модули памяти имеют несколько независимых банков и потому могут обрабатывать более одного запроса одновременно. Таким образом, несмотря на то, что выполнение каждого отдельно взятого запроса по-прежнему будут занимать весьма внушительное время, запросы могут следовать непрерывно. А раз так, непрерывно будут приходить и ответы.
Теоретически все так и есть, но на практике возникает множество затруднений. Основной камень преткновения - фундаментальная проблема зависимости по данным. Рассмотрим следующую ситуацию. Пусть ячейка N 1 хранит указатель на ячейку N 2, содержащую обрабатываемые данные. До того, как мы получим содержимое ячейки N 1, мы не сможем послать запрос на чтение ячейки N 2, поскольку, еще не знаем ее адрес. Следовательно, производительность памяти в данном конкретном случае будет определяться не пропускной способностью, а ее латентностью, т.е. полным временем доступа к одной ячейке.
Причем, описываемый случай отнюдь не является надуманным, скорее наоборот. Это типичная ситуация. Базовые структуры данных имеют ярко выраженную зависимость по данным, т.к. объединяют свои элементы именно посредством указателей, что сводит на нет весь выигрыш от параллелизма. Большинство функции штатных библиотек Си/Си++ также имеют зависимость по данным и не могут обрабатывать их параллельно.
Маскировать латентность позволяют лишь очень немногие алгоритмы, да и то не без помощи специальных команд предвыборки. Команды предвыборки, во-первых, отсутствуют в микропроцессорах Pentium младшего поколения. Во-вторых, они чрезвычайно аппаратно зависимы и требуют реализовать код как минимум в двух вариантах отдельно для процессоров Pentium и отдельно для процессоров K6/K7, причем, реализация для PentiumIII будет весьма не оптимальна для Pentium4 и, соответственно, наоборот. Наконец, в-третьих, команды предвыборки до сих пор не поддерживаются ни одним оптимизатором, и вряд ли будут поддерживаться в ближайшем будущем. Ручная же оптимизация слишком сложна и трудоемка, чтобы стать массовой.
Короче говоря, теоретическая пропускная способность памяти, заявленная производителями, совсем не то же самое, что и реальная производительность. Отбросив параллелизм (который все равно не ускоряет работу подавляющего большинства существующих на данный момент приложений) попробуем подсчитать максимально достижимую пропускную способность при обработке зависимых данных. Используем для этого следующую формулу:
здесь: C - пропускная способность (Мегабайт/c), N - разрядности памяти (бит), T - полное время доступа (нс.).
Сравнив полученные результаты с теоретической пропускной способностью (см. рис. 4.1), мы увидим, что, во-первых, расхождение между ними чрезвычайно велико и к тому же неуклонно увеличивается по мере совершенствования памяти. Во-вторых, при обработке зависимых данных эффективная производительность SDRAM и DDR-SDRAM практически неразличима, а Direct RDRAM и вовсе идет на уровне памяти начала девяностых. Причем, фактическая производительность всех типов памяти будет еще ниже, чем рассчитанная по формуле (1). Это объясняется тем, что, во-первых, современные процессоры обмениваются с памятью не отдельными ячейками, а блоками по 32 и ли 128 байт (в зависимости от длины кэш-линеек), вследствие чего издержки на хаотичный доступ чрезвычайно велики. Во-вторых, приведенная выше формула не учитывает ни латентности контроллера памяти, ни штрафа за асинхронность, ни времени регенерации памяти, ни...
Фактически, разница в реальной и заявленной производительности отличается приблизительно в десять раз для DDR-SDRAM и в пятьдесят для Direct-Rambus.
Откуда же такая разница? А всё
дело в том, что разработчики аппаратного
обеспечения перегнали
Как минимум потребуется
Короче говоря, "официальная" пропускная способность - это абстракция чистейшей воды, интересная скорее с маркетинговой точки зрения, но абсолютно бесполезная для конечного пользователя...
Рис.4.1 Максимально достижимая
пропускная способность основных типов
памяти при наличии зависимости по данным
и при отсутствии таковой.
Заключение
В этой курсовой работе были раскрыты нюансы оперативной памяти. Мы убедились, что эта память является одним из важнейших компонентов компьютера. Ведь именно от нее во многом зависит быстродействие компьютера, а также программное обеспечение, которое мы сможем использовать на нем. Не следует забывать и о том, что быстродействие оперативной памяти не зависит напрямую от её частоты, а скорее от структуры.
В настоящее время разработано
много видов оперативной
Итак подведём итоги сравнения оперативной памяти:
Память DRAM:
Преимущества:
Недостатки:
Память SRAM:
Преимущества:
Недостатки: