Архитектура системы Архитектура набора команд Распределение функций, реализуемых системой, между ее уровнями.

Презентация:



Advertisements
Похожие презентации
Лекция 6. Способы адресации в микропроцессорных системах.
Advertisements

Процессор – это блок, предназначенный для автоматического считывания команд программы, их расшифровки и выполнения.
АРХИТЕКТУРА СОВРЕМЕННЫХ ЭВМ Лекция 2: Типовое устройство компьютера ВМиК МГУ им. М.В. Ломоносова, Кафедра АСВК Чл.-корр., профессор, д.ф.-м.н. Королёв.
Общая структура и состав персонального компьютера.
Архитектура современных персональных компьютеров Подготовил студент группы 11ИнфБ122 Зайцев Д.
Архитектура ЭВМ (лекция 7) проф. Петрова И.Ю. Курс Информатики.
Машинная команда Энциклопедия учителя информатики Газета «Первое сентября»
Автономная память – внешние носители Внешняя память – HDD Оперативная память – DRAM (Dynamic RAM) => SDRAM => DDR => DDR2 Кэш, регистры – внутренняя память.
Процессор Процессор является "мозгом" компьютера. Он осуществляет выполнение программ.
Процессор В ПК устройством, которое обрабатывает все виды информации (числовую, текстовую, графическую, видео- и звуковую), является МИКРОПРОЦЕССОР или.
Структурная схема компьютера Взаимодействие устройств компьютера.
Структурная схема компьютера Взаимодействие устройств компьютера.
Магитстрально- модульное построение компьютера. архитектурой ЭВМ называется описание структуры и принципов работы компьютера без подробностей технической.
Системы с несколькими конвейерами В процессорах Intel конвейер появился только начиная с 486 модели. Но уже в Pentium-е было два конвейера из 5 стадий:
АРХИТЕКТУРА КОМПЬЮТЕРА При рассмотрении компьютерных устройств принято различать их архитектуру и структуру. Архитектурой компьютера называется его описание.
Организация памяти. Иерархии памяти Идея иерархической (многоуровневой) организации памяти заключается в использовании на одном компьютере нескольких.
Иерархия памяти в компьютере. Кэш-память Процессоры работают быстрее чем память! При обращении процессора к памяти из-за разницы в скорости работы процессору.
Архитектура персонального компьютера Подготовила урок учитель математики средней общеобразовательной школы 8 с углубленным изучением отдельных предметов.
Компьютер – универсальная техническая система обработки информации Информатика. 10 класс.
Архитектура персонального компьютера… Презентация ученицы 9 «Б» класса Никулиной Дарьи.
Транксрипт:

Архитектура системы Архитектура набора команд Распределение функций, реализуемых системой, между ее уровнями

Нужно договориться об определении границ между уровнями

Определяем интерфейсы вычислительной системы пользователь системный программист системный разработчик разработчик интегральных схем

Более строгое определение понятие АРХИТЕКТУРЫ СИСТЕМ, по-видимому, приведено у Э.А.Якубайтиса [Якубайтис Э.А. Архитектура вычислительных сетей. М.: Статистика, с., ил.]: - "АРХИТЕКТУРА СИСТЕМЫ является емким понятием, включающем три важнейших вида взаимосвязанных структур: ФИЗИЧЕСКУЮ, ЛОГИЧЕСКУЮ и ПРОГРАММНУЮ. Кроме того, анализируя другие аспекты архитектуры, часто рассматривают структуры административного управления, обслуживания и ремонта. Каждая из этих структур определяется набором элементов и характером их взаимосвязи. Связь структур друг с другом образует АРХИТЕКТУРУ рассматриваемой СИСТЕМЫ. Элементами ФИЗИЧЕСКОЙ СТРУКТУРЫ являются технические объекты. В зависимости от того, какие задачи решаются, этими объектами могут быть полупроводниковые кристаллы, части вычислительных машин, а также комплексы, составленные из последних. Элементами ЛОГИЧЕСКОЙ СТРУКТУРЫ являются функции, определяющие основные операции. Очень важной характеристикой архитектуры системы является также ее ПРОГРАММНАЯ СТРУКТУРА. Эту структуру образуют взаимосвязанные программы: программы обработки информации, и др. Таким образом, АРХИТЕКТУРА СИСТЕМЫ (вычислительной сети, терминального комплекса, вычислительной машины, полупроводникового кристалла) является концепция взаимосвязи большого числа различного типа элементов. Она в основном характеризуется переплетением ФИЗИЧЕСКОЙ, ЛОГИЧЕСКОЙ И ПРОГРАММНОЙ СТРУКТУР этой системы".

Американский математик венгерского происхождения Джон фон Нейман. Разработал основные принципы архитектуры современных ЭВМ, в том числе принцип хранимой программы (помещение программы, как и данных, в память компьютера) и принцип двоичного представления информации в компьютере (эти два пункта отсутствовали в структуре аналитической машины Беббиджа, в остальном совпадавшей с машиной фон Неймана). Джон фон Нейман Янош Лайош Нейман родился старшим из трёх сыновей в состоятельной еврейской семье в Будапеште, бывшем в те времена городом Австро- Венгерской империи. еврейскойБудапештеАвстро- Венгерской империи

Первая печатная работа Неймана «О расположении нулей некоторых минимальных полиномов» увидела свет в 1921 году. Вскоре он окончил гимназию и поступил в Высшую техническую школу в Цюрихе, где изучал химию, и одновременно на математический факультет Будапештского университета, который окончил в 1926 году, получив степень доктора философии и диплом инженера-химика в Цюрихе. Свои математические исследования Нейман продолжил в университетах Гёттингена, Берлина и Гамбурга, они были связаны с квантовой физикой и теорией операторов. В этот же период молодой ученый выполнил основополагающие работы по теории множеств, теории игр и математическому обоснованию квантовой механики и написал ряд статей по данным направлениям. Нейману принадлежит строгая математическая формулировка принципов квантовой механики и доказательство эргодической гипотезы в математической статистике. Его труд «Математические основы квантовой механики» (1932) считается классическим учебным пособием. В 1930-х годах он опубликовал ряд работ по кольцам операторов, положив начало так называемой алгебре Неймана, которая впоследствии явилась одним из главных инструментов для квантовых исследований. Основные научные работы Неймана посвящены функциональному анализу, его приложениям к вопросам классической и квантовой механики. Более 150 трудов ученого посвящены проблемам физики, математики и ее практическим приложениям, теории игр и компьютерной теории, теории топологических групп и метеорологии.

Архитектура компьютера Джон фон Нейман предложил следующие ключевые элементы архитектуры компьютера: - для хранения последовательности команд и данных специальное устройство - память. - процессор (центральное обрабатывающее устройство), который должен был управлять всеми функциями компьютера. Помимо этого, Нейман предложил реализовать в компьютере возможность передачи управления от одной программы к другой. Возможность хранить в памяти компьютера разные наборы команд (программы), приостанавливать выполнение одной программы и передавать управление другой, а затем возвращаться к исходной, значительно расширяла возможности программирования для вычислительных машин.

8 Машина Фон Неймана

Итак, выделим 3 основных признака фон Неймановской архитектуры память состоит из последовательности ячеек памяти с адресами; хранение команд программы и обрабатываемых ими данных - на одинаковых принципах (с точки зрения обработки сообщений); программа выполняется покомандно, в соответствии с их порядком. УУ – централизовано.

Фон Неймановская архитектура. Гарвардская архитектура split cache

11 Архитектура с прямым доступом к памяти

12 Архитектура с независимым каналом ввода-вывода

Архитектура компьютера - шина данных, по которой собственно и будет передана необходимая информация; - шина управления, регулирующая этот процесс (например, один из сигналов на этой шине позволяет компьютеру различать между собой адреса памяти и устройств ввода/вывода). В современных ПК для связи основных устройств компьютера между собой используется специальная информационная магистраль, называемая шиной. Шина состоит из трех частей: - шина адреса, на которой устанавливается адрес требуемой ячейки памяти или устройства, с которым будет происходить обмен информацией;

14 Материнская Плата 1. Pentium 4 socket P Support chip 3. Memory sockets 4. AGP connector 5. Disk interface 6. Gigabit Ethernet 7. Five PCI slots 8. USB 2.0 ports 9. Cooling technology 10. BIOS

Регистры –сверхбыстрая память внутри процессора, предназначенная прежде всего для хранения промежуточных результатов вычисления.процессора Регистры подразделяют на: Регистры общего назначения (для арифметических и логических операций): 1)Арифметические регистры 2)Индексные регистры 3)Сегментные регистры Регистры управления (для управления порядком исполнения программы) Регистры состояния (отображение состояния процессора) Регистры специального назначения (векторные регистры, регистры MMX/SSE) Например: EAX, EBX, ECX, EDX, EBP, ESI, EDI, ESP – название 32-битныx регистров общего назначения на платформе x86 AX, BX, CX, DX 16-битные AH, AL, BH, BL, CH, CL, DH, DL 8-битные (половинки 16-ти битных регистров) например, AH - high AX - старшая половинка 8 бит AL - low AX - младшая половинка 8 бит IP, SP – (instruction pointer, stack pointer) – регистры счетчика команд и указатель стека Регистр флаговРегистр флагов EFLAGS содержит текущее состояние процессора Flags (ZF, CF) – флаг нуля, флаг переноса и т.п. MM0, MM1 – регистры MMX

Команда – минимальное действие, которое может совершить процессор над данными в адресуемой памяти. Команда состоит из кода операции и набора операндов. Различают одноадресные команды (один операнд), двух адресные команды и трехадресные команды. Различают: Команды передачи данных (например, MOV ) Арифметические операции ( ADD, SUB ) Логические операции ( OR, AND ) Операции сдвига ( SHL, SHR ) Операции ввода-вывода ( IN, OUT ) Команды управления ( JMP, CALL ) Команды ветвления и цикла ( JC, JZ, REP ) Специальные команды ( EMMS, MOVQ, управление кэшем и т.п.)

18 Шаги выполнения команды Считывание следующей команды из памяти в регистр команд Изменение указателя на следующую команду Дешифровка команды Если команда использует данные из памяти, загрузка этих данных, иначе обращаемся в регистр Запуск команды Запуск следующей команды

19 Системы команд Существует два подхода к конструированию процессоров. Первый состоит в том, чтобы придумать как можно больше разных команд и предусмотреть как можно больше разных режимов адресации. Процессоры такого типа называются CISC-процессорами, от слов Сomplex Instruction Set Computers. Это, в частности, Intel 80x86 и Motorola Противоположный подход состоит в том, чтобы реализовать лишь минимальное множество команд и режимов адресации, процессоры такого типа называются RISC-процессорами, от слов Reduced Instruction Set Computers. Примеры RISC-процессоров: DEC Alpha, Power PC, Intel Itanium. Казалось бы, CISC-процессоры должны иметь преимущество перед RISC-процессорами, но на самом деле все обстоит строго наоборот. Дело в том, что простота набора команд процессора облегчает его конструирование, в результате чего удается достичь следующих целей:

все команды выполняются исключительно быстро, причем за одинаковое время, т.е. за фиксированное число тактов работы процессора; значительно поднимается тактовая частота процессора; намного увеличивается количество регистров процессора и объем кэш-памяти; удается добиться ортогональности режимов адресации, набора команд и набора регистров. Это означает, что нет каких-либо выделенных регистров или режимов адресации: в любых (или почти любых) командах можно использовать произвольные регистры и режимы адресации независимо друг от друга. Следует отметить, что к памяти могут обращаться лишь команды загрузки слова из памяти в регистр и записи из регистра в память, а все арифметические команды работают только с регистрами; простота команд позволяет эффективно организовать их выпол- нение в конвейере (pipeline), что значительно ускоряет работу программы.

Вычислительная система (ВС) – есть работающая во времени совокупность функциональных систем (ФУ). ФУ простое, если никакая последующая операция не может быть выполнена раньше, чем закончится предыдущая. ФУ конвейерное задано цепочкой простых ФУ. Элементарное ФУ – есть ступени конвейера. Число ступеней – длина конвейера Конвейер – очередь команд, которая позволяет выбирать и выполнять следующие инструкции вместе с текущей. Конвейер характеризуется своей глубиной или количеством ступеней конвейера. Каждая ступень конвейера выполняет одну микрооперацию.

22 Параллелизм на уровне команд Глубина конвейера d = 5 Количество операндов n = 9 время выполнения 9-ти команд в 5-ти ступенчатом конвейере время выполнения 9-ти команд без конвейера

23 Параллелизм на уровне команд Максимальный эффект применение конвейер дает прирост производительности выраженный формулой (n * d) / (n + d), где n – количество операндов, загружаемых в конвейер, d – глубина конвейера.

25 Конвейер в Pentium двухпотоковая суперскалярная организация, допускающая параллельное выполнение пары простых команд; наличие двух независимых двухканальных множественно-ассоциативных кэшей для команд и для данных, обеспечивающих выборку данных для двух операций в каждом такте; динамическое прогнозирование переходов; конвейерная организация устройства плавающей точки с 8 ступенями; двоичная совместимость с существующими процессорами семейства 80x86.

26 Конвейер в Pentium II

27 Параллелизм на уровне процессора An array of processor of the ILLIAC IV type.

28 Параллелизм на уровне битов

29 Иерархия памяти A five-level memory hierarchy.

30 Иерархия оперативной памяти

Кэш центрального процессора разделён на несколько уровней. Для универсальных процессоров до 3. Самой быстрой памятью является кэш первого уровня L1-cache. L1 кэш работает на частоте процессора, и, в общем случае, обращение к нему может производиться каждый такт (зачастую является возможным выполнять даже несколько чтений/записей одновременно). Латентность доступа обычно равна 24 тактам ядра. Объём обычно невелик не более 128 КБ.тактЛатентность Вторым по быстродействию является L2-cache кэш второго уровня. В современных многоядерных процессорах кэш второго уровня, находясь на том же кристалле, является памятью раздельного пользования при общем объёме кэша в 8 МБ на каждое ядро приходится по 2 Мб. Обычно латентность L2 кэша, расположенного на кристалле ядра, составляет от 8 до 20 тактов ядра. Кэш третьего уровня наименее быстродействующий и обычно расположен отдельно от ядра ЦП, но он может быть очень внушительного размера более 32 МБ. L3 кэш медленнее предыдущих кэшей, но всё равно значительно быстрее, чем оперативная память. В многопроцессорных системах находится в общем пользовании.

Структура кэша и основной памяти Кэш промежуточный буфер с быстрым доступом, содержащий копию той информации, которая хранится в памяти с менее быстрым доступом, но с наибольшей вероятностью может быть оттуда запрошена. Доступ к данным в кэше идёт быстрее, чем выборка исходных данных из медленной памяти или их перевычисление, что делает среднее время доступа короче. Всего имеется M=2^n/K блоков С

33 Виды кэш-памяти Кэш с прямым отображением Полностью ассоциативный кэш Частично ассоциативный кэш

Принципы размещения блоков в кэш-памяти определяют три основных типа их организации: Если каждый блок основной памяти имеет только одно фиксированное место, на котором он может появиться в кэш-памяти, то такая кэш-память называется кэшем с прямым отображением (direct mapped). Это наиболее простая организация кэш-памяти, при которой для отображение адресов блоков основной памяти на адреса кэш-памяти просто используются младшие разряды адреса блока. Таким образом, все блоки основной памяти, имеющие одинаковые младшие разряды в своем адресе, попадают в один блок кэш-памяти, т.е. (адрес блока кэш-памяти) =(адрес блока основной памяти) mod (число блоков в кэш- памяти) Если некоторый блок основной памяти может располагаться на ограниченном множестве мест в кэш-памяти, то кэш называется множественно-ассоциативным (set associative). Обычно множество представляет собой группу из двух или большего числа блоков в кэше. Если множество состоит из n блоков, то такое размещение называется множественно-ассоциативным с n каналами (n-way set associative). Для размещения блока, прежде всего, необходимо определить множество. Множество определяется младшими разрядами адреса блока памяти (индексом): (адрес множества кэш-памяти) =(адрес блока основной памяти) mod (число множеств в кэш-памяти) Если некоторый блок основной памяти может располагаться на любом месте кэш-памяти, то кэш называется полностью ассоциативным (fully associative).

35 Кэш -> ОП Сквозная запись Отложенная запись сквозная запись (write through, store through) - информация записывается в два места: в блок кэш-памяти и в блок более низкого уровня памяти. запись с обратным копированием (write back, copy back, store in) - информация записывается только в блок кэш-памяти. Модифицированный блок кэш-памяти записывается в основную память только когда он замещается. Для сокращения частоты копирования блоков при замещении обычно с каждым блоком кэш-памяти связывается так называемый бит модификации (dirty bit). Этот бит состояния показывает был ли модифицирован блок, находящийся в кэш-памяти. Если он не модифицировался, то обратное копирование отменяется, поскольку более низкий уровень содержит ту же самую информацию, что и кэш-память.

Алгоритм вытеснения Если список свободных буферов пуст, то выполняется алгоритм вытеснения буфера. Алгоритмов вытеснения существенно влияет на производительность кэша. Существуют следующие алгоритмы: LRU (Least Recently Used) вытесняется буфер, неиспользованный дольше всех;LRU MRU (Most Recently Used) вытесняется последний использованный буфер; LFU (Least Frequently Used) вытесняется буфер, использованный реже всех;LFU ARC (англ.) (Adaptive Replacement Cache) алгоритм вытеснения, комбинирующий LRU и LFU, запатентованный IBM.ARCангл.LRULFUIBM Применение того или иного алгоритма зависит от стратегии кэширования данных. LRU наиболее эффективен, если данные гарантированно будут повторно использованы в ближайшее время. MRU наиболее эффективен, если данные гарантированно не будут повторно использованы в ближайшее время. В случае, если приложение явно указывает стратегию кэширования для некоторого набора данных, то кэш будет функционировать наиболее эффективно.

Ключевые параметры кэш-памяти: 1. Размер блока (слота) – до 4 кб (обычно страница памяти) 2. Время попадания (hit time) – 1-4 такта 3. Потери при промахе (miss penalty) – 8 – 32 тактов 4. Доля промахов (miss rate) – 1% - 20% 5. Размеры кэш-памяти – 128Кб – 16Мб

Автономная память – внешние носители Внешняя память – HDD Оперативная память – DRAM (Dynamic RAM) => SDRAM => DDR => DDR2 Кэш, регистры – внутренняя память процессора Иерархия запоминающих устройств Быстрая память небольшого объема Медленная память большого объема

Устройство и принципы функционирования оперативной памяти Оперативная память персональных компьютеров сегодня, как и десять лет тому назад, строится на базе относительно недорогой динамической памяти - DRAM (Dynamic Random Access Memory). Модуль оперативной памяти микросхемы памяти матрица памяти ячейка памяти

Устройство ячейки динамической памяти

Чувствительный усилитель (sense amp), подключенный к каждому из столбцов матрицы, реагируя на слабый поток электронов, устремившихся через открытые транзисторы с обкладок конденсаторов, считывает всю страницу целиком. Это обстоятельство настолько важно, что последняя фраза вполне заслуживает быть выделенной курсивом. Именно страница является минимальной порцией обмена с ядром динамической памяти. Чтение/запись отдельно взятой ячейки невозможно! Действительно, открытие одной строки приводит к открытию всех, подключенных к ней транзисторов, а, следовательно, - разряду закрепленных за этими транзисторами конденсаторов. регенерация памяти в компьютерах XT/AT регенерация оперативной памяти осуществлялась по таймерному прерыванию каждые 18 мс через специальный канал DMA

Разобравшись с устройством и работой ядра памяти, перейдем к рассмотрению ее интерфейса. В первую очередь выделим среди них линии адреса и линии данных. Линии адреса, как и следует из их названия, служат для выбора адреса ячейки памяти, а линии данных - для чтения и для записи ее содержимого. Необходимый режим работы определяется состоянием специального вывода Write Enable (Разрешение Записи). Низкий уровень сигнала WE готовит микросхему к считыванию состояния линий данных и записи полученной информации в соответствующую ячейку, а высокий, наоборот, заставляет считать содержимое ячейки и "выплюнуть" его значения в линии данных. Совмещение выводов микросхемы увеличивает скорость обмена с памятью, но не позволяет осуществлять чтение и запись одновременно. Размещенные внутри кристалла процессора микросхемы кэш-памятина количество ножек не скупятся и беспрепятственно считывают ячейку во время записи другой).

Столбцы и строки матрицы памяти тем же самым способом совмещаются в единых адресных линиях. В случае квадратной матрицы количество адресных линий сокращается вдвое, но и выбор конкретной ячейки памяти отнимает вдвое больше тактов, ведь номера столбца и строки приходится передавать последовательно. Адресное пространство ЭВМ графически может быть изображено прямоугольником, одна из сторон которого представляет разрядность адресуемой ячейки (слова) процессора, а другая сторона - весь диапазон доступных адресов для этого же процессора. Диапазон доступных адресов процессора определяется разрядностью шины адреса системной шины. При этом минимальный номер ячейки памяти (адрес) будет равен 0, а максимальный определяется из формулы M = 2 n - 1. Для шестнадцатиразрядной шины это будет (64 К). В качестве адресов традиционно используются числа из диапазона от 0 до 2 k - 1 со значением к, достаточным для адресации всей памяти компьютера. Память состоит из 2 k адресуемых элементов. Например, использование 24-разрядных (как в процессоре 80286) адресов позволяет адресовать 2 24 ( ) элементов памяти. Обычно это количество адресуемых элементов обозначается как 16 Мбайт (1 Мбайт = 2 20 = байт, адресное пространство 8086 и 80186). Поскольку у процессоров Pentium и их аналогов 32-разрядные адреса, им соответствует адресное пространство в 2 32 байт, или 4 Гбайт.

44

Причем, возникает неоднозначность, что именно в данный момент находится на адресной линии: номер строки или номер столбца? А, быть может, и вовсе не находится ничего? Решение этой проблемы потребовало двух дополнительных выводов, сигнализирующих о наличии столбца или строки на адресных линиях и окрещенных RAS (от row address strobe - строб адреса строки) и CAS (от column address strobe - строб адреса столбца) соответственно. В спокойном состоянии на обоих выводах поддерживается высокий уровень сигнала, что говорит микросхеме: никакой информации на адресных линиях нет и никаких действий предпринимать не требуется. Задержка между подачей номера строки и номера столбца на техническом жаргоне называется "RAS to CAS delay" (tRCD). Задержка между подачей номера столбца и получением содержимого ячейки на выходе - "CAS delay" (или tCAC), а задержка между чтением последней ячейки и подачей номера новой строки - "RAS precharge" (tRP).

Ричард Хэмминг Ричард Уэсли Хэмминг (11 февраля 1915, Чикаго 7 января 1998, Монтеррей) американский математик, работы которого в сфере теории информации оказали существенное влияние на компьютерные науки и телекоммуникации. Основной вклад т. н. код Хэмминга, а также расстояние Хэмминга. Хэмминг родился в Чикаго. Он получил степень бакалавра в Чикагском университете в 1937 году. Затем он продолжил образование в Университете Небраска и в 1939 году получил там степень магистра. В 1942 году он защищает диссертацию в университете Иллинойс и становится доктором философии. Некоторое время числится профессором в Университете Луисвилль, где прерывает работу для участия в Манхэттенском проекте в В рамках этого проекта Хэмминг занимается программированием одного из первых электронных цифровых компьютеров для расчета решения физических уравнений. Цель программы состояла в том, чтобы выяснить, не приведет ли взрыв атомной бомбы к возгоранию атмосферы. Ответ оказался отрицательным, вследствие чего было принято решение об её использовании. В период с 1946 по 1976 года Хэмминг работал в Bell Labs, где сотрудничал с Клодом Шенноном. 23 июля 1976 года он переехал в Монтеррей и возглавил там научные исследования в области вычислительной техники в Высшем военно-морском училище. Скончался 7 января 1998 года в возрасте 82 лет. В его честь Институт инженеров по электротехнике и электронике учредил медаль, которой награждаются ученые, внесшие значительный вклад в теорию информации медаль Ричарда Хэмминга.11 февраля1915Чикаго7 января1998Монтеррей американскийматематиктеории информациикомпьютерные наукителекоммуникациикод Хэммингарасстояние ХэммингаЧикагобакалавраЧикагском университетеУниверситете Небраскамагистрауниверситете Иллинойсдоктором философии Университете ЛуисвилльМанхэттенском проекте 1945программированиемкомпьютероватомной бомбыатмосферыBell LabsКлодом Шенноном23 июля1976 годаМонтеррейвычислительной техникиВысшем военно-морском училище7 январяИнститут инженеров по электротехнике и электронике медаль Ричарда Хэмминга

48 Код Хэмминга

OR Интервал Хэмминга d = 3

Контроль чётности (a) Кодирование 1100 (b) Добавление Контроля Чётности (c) Суммы одинаковы - 2 (d) Ошибка в AC 4 бит данных 3 бит четности Единственный способ исправить ошибку – возвратить значение 0 биту в секторе АС

DRAM (Dynamic Random Access Memory) один из видов компьютерной памяти с произвольным доступом Конструктивно память DRAM состоит из «ячеек» размером в 1 или 4 бит, в каждой из которых можно хранить определённый объём данных. Совокупность «ячеек» такой памяти образуют условный «прямоугольник», состоящий из определённого количества строк и столбцов. Один такой «прямоугольник» называется страницей, а совокупность страниц называется банком. Весь набор «ячеек» условно делится на несколько областей.бит В микросхемах памяти, выпускаемых вплоть до середины девяностых, все три задержки (RAS to CAS Delay, CAS Delay и RAS precharge) в сумме составляли порядка 200 нс., что соответствовало двум тактам в 10 мегагерцовой системе и, соответственно, двенадцати - в 60 мегагерцовой. С появлением Intel Pentium 60 (1993 год) и Intel 486DX4 100 (1994 год) возникла потребность в совершенствовании динамической памяти - прежнее быстродействие уже никого не устраивало. Задержка между подачей номера строки и номера столбца "RAS to CAS delay" (tRCD). Задержка между подачей номера столбца и получением содержимого ячейки на выходе - "CAS delay" (или tCAC), задержка между чтением последней ячейки и подачей номера новой строки "RAS precharge" (tRP).

Первой ласточкой стала FPM-DRAM - Fast-Page Mode DRAM (Память быстрого страничного режима), разработанная в 1995 году. Основным отличием от памяти предыдущего поколения стала поддержка сокращенных адресов. Если очередная запрашиваемая ячейка находится в той же самой строке, что и предыдущая, ее адрес однозначно определяется одним лишь номером столбца и передача номера строки уже не требуется. За счет чего это достигается? Обратимся к диаграмме, изображенной на рис.4. Смотрите, в то время как при работе с обычной DRAM (верхняя диаграмма) после считывания данных сигнал RAS дезактивируется, подготавливая микросхему к новому циклу обмена, контроллер FPM-DRAM удерживает RAS в низком состоянии, избавляясь от повторной пересылки номера строки.

Ситуация, когда запрашиваемая ячейка находится в открытой строке, называется "попаданием на страницу" (Page Hit), в противном случае говорят, что произошел промах (Page Miss). Поскольку, промах облагается штрафными задержками, критические к быстродействию модули должны разрабатываться с учетом особенностей архитектуры FPM-DRAM, так что абстрагироваться от ее устройства уже не получается. Возникла и другая проблема: непостоянство времени доступа затрудняет измерение производительности микросхем памяти и сравнение их скоростных показателей друг с другом. В худшем случае обращение к ячейке составляет RAS to CAS Delay + CAS Delay + RAS precharge нс., а в лучшем: CAS Delay нс. Хаотичное, но не слишком интенсивное обращение к памяти (так, чтобы она успевала перезарядиться) требует не более RAS to CAS Delay + CAS Delay нс.

К середине девяностых среднее значение RAS to CAS Delay составляло порядка 30 нс., CAS Delay - 40 нс., а RAS precharge - менее 30 нс. (наносекунд). Таким образом, при частоте системной шины в 60 МГц (т.е. ~17 нс.) на открытие и доступ к первой ячейки страницы уходило около 6 тактов, а на доступ к остальным ячейкам открытой страницы - около 3 тактов. Схематически это записывается как 6-3-x-x и называется формулой памяти. Формула памяти упрощает сравнение различных микросхем друг с другом, однако для сравнения необходимо знать преобладающий тип обращений к памяти: последовательный или хаотичный. Например, как узнать, что лучше: 5-4-x-x или 6- 3-x-x? В данной постановке вопрос вообще лишен смысла. Лучше для чего? Для потоковых алгоритмов с последовательной обработкой данных, бесспорно, предпочтительнее последний тип памяти, в противном случае сравнение бессмысленно, т.к. чтение двух несмежных ячеек займет не 5-5-х-х и, соответственно, 6-6-х-х тактов, а 5+RAS precharge-5+RAS precharge-x-x и 6+RAS prechange-6+RAS prechange-x-x. Поскольку время регенерации обоих микросхем не обязательно должно совпадать, вполне может сложиться так, что микросхема 6- 3-x-x окажется быстрее и для последовательного, и для хаотичного доступа. Поэтому, практическое значение имеет сравнение лишь вторых цифр - времени рабочего цикла. Совершенствуя ядро памяти, производители сократили его сначала до 35, а затем и до 30 нс., достигнув практически семикратного превосходства над микросхемами прошлого поколения.

Между тем тактовые частоты микропроцессоров не стояли на месте, а стремительно росли, вплотную приближаясь к рубежу в 200 МГц. Рынок требовал качественного нового решения, а не изнуряющей борьбы за каждую наносекунду. Инженеров вновь отправили к чертежным доскам, где (году эдак в 1996) их осенила очередная идея. Если оснастить микросхему специальным триггером-защелкой, удерживающим линии данных после исчезновения сигнала CAS, станет возможным дезактивировать CAS до окончания чтения данных, подготавливая в это время микросхему к приему номера следующего столбца. Взгляните на диаграмму рис. 4: видите, у FPM низкое состояние CAS удерживается до окончания считывания данных, затем CAS дезактивируется, выдерживается небольшая пауза на перезарядку внутренних цепей, и только после этого на адресную шину подается номер колонки следующей ячейки. В новом типе памяти, получившем название EDO- DRAM (Extend Data Output), напротив, CAS дезактивируется в процессе чтения данных параллельно с перезарядкой внутренних цепей, благодаря чему номер следующего столбца может подаваться до завершения считывания линий данных.

Продолжительность рабочего цикла EDO-DRAM (в зависимости от качества микросхемы) составляла 30, 25 и 20 нс., что соответствовало всего двум тактам в 66 МГц системе. Совершенствование производственных технологий сократило и полное время доступа. На частоте 66 МГц формула лучших EDO- микросхем выглядела так: 5-2-x-x. Простой расчет позволяет установить, что пиковый прирост производительности (в сравнении с FPM-DRAM) составляет около 30%, однако, во многих компьютерных журналах тех лет фигурировала совершенно немыслимая цифра 50%, - якобы настолько увеличивалась скорость компьютера при переходе с FPM на EDO. Это могло быть лишь при сравнении худшей FMP-DRAM с самой "крутой" EDO-памятью, т.е. фактически сравнивались не технологии, а старые и новые микросхемы.

Двукратное увеличение производительности было достигнуто лишь в BEDO-DRAM (Burst EDO). Добавив в микросхему генератор номера столбца, конструкторы ликвидировали задержку CAS Delay, сократив время цикла до 15 нс. После обращения к произвольной ячейке микросхема BEDO автоматически, без указаний со стороны контроллера, увеличивает номер столбца на единицу, не требуя его явной передачи. По причине ограниченной разрядности адресного счетчика (конструкторы отвели под него всего лишь два бита) максимальная длина пакета не могла превышать четырех ячеек (22=4). Забегая вперед, отметим, что процессоры Intel и Pentium в силу пакетного режима обмена с памятью никогда не обрабатывают менее четырех смежных ячеек за раз. Поэтому, независимо от порядка обращения к данным, BEDO всегда работает на максимально возможной скорости и для частоты 66 Мгц ее формула выглядит так: , что на ~40% быстрее EDO-DRAM! Все же, несмотря на свои скоростные показатели, BEDO оказалась не конкурентоспособной и не получила практически никакого распространения. Просчет состоял в том, что BEDO, как и все ее предшественники, оставалась асинхронной памятью. Это накладывало жесткие ограничения на максимально достижимую тактовую частоту, ограниченную (75) мегагерцами. Действительно, пусть время рабочего цикла составляет 15 нс. (1 такт в 66 MHz системе). Однако, поскольку "часы" контроллера памяти и самой микросхемы памяти не синхронизованы, нет никаких гарантий, что начало рабочего цикла микросхемы памяти совпадет с началом такового импульса контроллера, вследствие чего минимальное время ожидания составляет два такта. Вернее, если быть совсем точным, рабочий цикл микросхемы памяти никогда не совпадает с началом тактового импульса.

SDRAM (Synchronous DRAM) – синхронное управление выборкой из памяти. В отличие от других типов DRAM, использовавших асинхронный обмен данными, ответ на поступивший в устройство управляющий сигнал возвращается не сразу, а лишь при получении следующего тактового сигнала. Тактовые сигналы позволяют организовать работу SDRAM в виде конечного автомата, исполняющего входящие команды. При этом входящие команды могут поступать в виде непрерывного потока, не дожидаясь, пока будет завершено выполнение предыдущих инструкций (конвейерная обработка): сразу после команды записи может поступить следующая команда, не ожидая, когда данные окажутся записаны. Поступление команды чтения приведёт к тому, что на выходе данные появятся спустя некоторое количество тактов это время называется задержкой (latency) и является одной из важных характеристик данного типа устройств.асинхронный обментактового сигналаконечного автоматаlatency Циклы обновления выполняются сразу для целой строки, в отличие от предыдущих типов DRAM, обновлявших данные по внутреннему счётчику, используя способ обновления по команде CAS перед RAS.DRAM

DDR SDRAM (от англ. Double Data Rate Synchronous Dynamic Random Access Memory синхронная динамическая память с произвольным доступом и удвоенной скоростью передачи данных). Удвоенная скорость работы достигается за счёт считывания команд и данных не только по фронту, как в SDRAM, но и по срезу тактового сигнала. За счёт этого удваивается скорость передачи данных, не увеличивая при этом частоты тактового сигнала шины памяти. Таким образом, при работе DDR на частоте 100 МГц мы получим эффективную частоту 200МГц (при сравнении с аналогом SDR SDRAM).англ.SDRAM Чтобы обеспечить передачу данных дважды за такт, используется специальная архитектура «2n Prefetch». Внутренняя шина данных имеет ширину в два раза больше внешней. При передаче данных сначала передаётся первая половина шины данных по переднему фронту тактового сигнала, а затем вторая половина шины данных по срезу.

Как и DDR SDRAM, DDR2 SDRAM использует передачу данных по обоим срезам тактового сигнала, за счёт чего при такой же частоте шины памяти, как и в обычной SDRAM, можно фактически удвоить скорость передачи данных (например, при работе DDR2 на частоте 100 МГц эквивалентная эффективная частота для SDRAM получается 200 МГц). Основное отличие DDR2 от DDR - вдвое большая частота работы шины, по которой данные передаются в буфер микросхемы памяти. При этом, чтобы обеспечить необходимый поток данных, передача на шину осуществляется из четырёх мест одновременно. Итоговые задержки оказываются выше, чем для DDR.DDR SDRAM тактового сигнала

Как и DDR SDRAM, DDR2 SDRAM использует передачу данных по обоим срезам тактового сигнала, за счёт чего при такой же частоте шины памяти, как и в обычной SDRAM, можно фактически удвоить скорость передачи данных (например, при работе DDR2 на частоте 100 МГц эквивалентная эффективная частота для SDRAM получается 200 МГц). Основное отличие DDR2 от DDR - вдвое большая частота работы шины, по которой данные передаются в буфер микросхемы памяти. При этом, чтобы обеспечить необходимый поток данных, передача на шину осуществляется из четырёх мест одновременно. Итоговые задержки оказываются выше, чем для DDR.DDR SDRAM тактового сигнала DDR3 SDRAM (англ. double-data-rate three synchronous dynamic random access memory синхронная динамическая память с произвольным доступом и удвоенной скоростью передачи данных, тип 3) это тип оперативной памяти используемой в компьютерах, разработанный как последователь DDR2 SDRAM.англ.оперативной памятикомпьютерахDDR2 SDRAM DDR3 обещает сокращение потребления энергии на 40% по сравнению с модулями DDR2, благодаря применению 90-нм (в дальнейшем 65-нм и 50-нм) технологии производства, что позволяет снизить эксплуатационные токи и напряжения (1,5 В, по сравнению с 1,8 В для DDR2 и 2,5 В для DDR). "Dual-gate" транзисторы будут использоваться для сокращения утечки тока.90-нм65-нм50-нмтоки напряжения