Диагностические тесты для контроля подсистем памяти

Автор работы: Пользователь скрыл имя, 06 Ноября 2013 в 18:46, курсовая работа

Описание работы

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

Содержание работы

Задание на проектирование и исходные данные.
Теоретический вопрос.
Описание принципа работы исследуемого устройства, включающее структурную схему, временные диаграммы работы и т. д.
Описание рабочих характеристик устройства.
Обозначение в розничной торговле и его расшифровка.
Типовые неисправности устройства.
Методика аппаратной проверки.
Методика программной проверки с сопровождением графическими иллюстрациями окон режимов работы программы диагностики.
Рекомендации к практическому применению курсового проекта.
Графическая часть должна содержать:
Блок-схема аппаратной диагностики;
Блок-схема программной диагностики.
Графические материалы должны быть оформлены с соблюдением требований ЕСКД.

Файлы: 1 файл

курсовая сервис ЭВМ.doc

— 1.47 Мб (Скачать файл)

Ожидается, что первоначально емкость модулей  памяти DDRЗ составит 1 Гбайт, а впоследствии появятся модули памяти емкостью 2 и 4 Гбайт.

Для памяти DDRЗ будет реализована 8-банковая логическая структура, а размер страницы составит 1 Кбайт для чинов с  шиной х4 и х8 и 2 Кбайт для чинов  с шиной х16.

Принципиальное  отличие памяти DDRЗ от DDR2 заключается  в реализации механизма 8n- Рrefeth вместо 4n- Prefeth.

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

По  сравнению с DDR2, память DDRЗ позволяет  обеспечить ту же пропускную способность  при вдвое меньшей частоте  ядра.

Понятно, что в случае реализации архитектуры 8n-Рrefeth длина пакета (Burst Length) данных не может быть менее 8. Поэтому для памяти DDR2 минимальная длина пакета составляет 8.

Конечно, реализация механизма 8n-Рrefeth вместо 4n-Ргefeth это не единственное различие между  памятью DDR и DDR2. Другими нововведениями, реализованными в памяти DDRЗ, являются технология динамического терминирования сигналов (dynamic On-Die Termination ОDT) и новая технология калибровки сигналов.

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

 

2.6 GDDR

 

 

Как известно, оперативная память применяется  для нужд не только центрального процессора, но и графического процессора. В  современных графических видеокартах  используется так называемая графическая  память, микросхемы которой распаиваются на плате графической карты. Аналогично тому, что существуют различные типы оперативной памяти (SDR, DDR, DDR2 и DDR3), графическая память так же бывает разной. Чтобы отличать оперативную память от графической, последнюю снабжают обозначением <<G>>. Так, бывает память 2, GDDRЗ и GDDR4. Несмотря на схожие названия (GDDR2 и DDR2, GDDR3 и DDRЗ), графическая ‚память существенно отличается от оперативной.

Отметим, что впервые графическая память GDDR2 (Graphics Double Data Rate 2) была использована компанией NVIDIA в видеокарте на базе процессора GeForse FХ 5800. В то же время по принципу действия графическая память GDDR2 не имеет ничего общего с памятью DDR2 и в этом смысле более схожа с памятью DDR. В частности, в памяти GDDR2 не используется технология 4n-Ргеfeth, когда буфер ввода-вывода данных работает на удвоенной частоте. От обычной DDR-памяти GDDR2 отличается более высокими тактовыми частотами, требованиями к напряжению и способами терминирования сигналов.

Память GDDRЗ (Graphics Double Data Rate З) была разработана компанией АТI, однако впервые использовалась на видеокартах с графическим процессором NVIDIA GeForse FX 5700 Ultra.

Эта память также не имеет никакого отношения  к DDRЗ и по принципу действия более  схожа с памятью DDR2, отличаясь от нее тактовыми частотами, требованиями к напряжению и способами терминирования сигналов. В памяти GDDR3, как и в DDR2, используется технология 4n-Ргеfeth.

Память GDDR4 (Graphics Double Data Rate, version 4) сегодня широко применяется в видеокартах с процессорами АТI Radeon Х195ОХТХ и Раdeon НD 2600 ХТ. Эта память является своеобразным аналогом DDRЗ в том смысле, что в ней реализован механизм 8n-Prefeth.

 

Проблема  терминирования сигнала

 

Распространение любого сигнала вдоль шины неизбежно  приводит к его частичному отражению от любых неоднородностей вдоль пути распространения. Для того чтобы такого отражения сигнала не происходило, необходимо, чтобы, во-первых, на пути распространения сигнала не было неоднородностей, во-вторых, чтобы сам путь был бесконечным. Понятно, что на практике такие условия нереализуемы, и отражение сигнала всегда присутствует. Отраженный сигнал интерферирует с основным сигналом, что приводит к искажению последнего. Поэтому одной из основных задач является уменьшение отраженного сигнала.

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

В случае памяти DDR2 используется принципиально иной метод терминирования сигналов, получивший название ОDT (Оn-Die-Termination). В данном случае терминальные сопротивления устанавливаются непосредственно на самих модулях памяти, а для того, чтобы предотвратить поглощение сигнала в активном модуле памяти, используется технология отключения терминальных сопротивлений от активных модулей.

Хранение команды  САS в буфере эквивалентно введению дополнительной задержки (Аdditive Latensy, АL), поэтому данный способ известен также  как Аdditive Latensy,AL или способ отложенного  чтения (Рrоsted САS).

В DDR-памяти при операциях записи контроллер может осуществлять запись в любую ячейку в пределах открытой строки, причем задержка записи (Write Latensy,WL) данных относительно сигнала САS (выбора столбца) составляет один такт. В памяти DDR2 задержка записи определяется несколько иначе, она на один такт меньше задержки на чтение (Read Latensy,RL): WL = RL-1T. Если, к примеру, RL = 7, то ‚WL. = 6.

 

 

Организация кэш-памяти

 

Концепция кэш-памяти возникла достаточно рано и  сегодня кэш-память имеется практически  в любом классе компьютеров, а в некоторых компьютерах - во множественном числе.

 

Типовые значения ключевых параметров для кэш-памяти рабочих станций и серверов - типичный набор параметров, который используется для описания кэш-памяти : Размер блока (строки) 4-128 байт

Время попадания (hit time) 1-4 такта синхронизации (обычно 1 такт)

 

Потери  при промахе (miss penalty)

 

(Время доступа - access time)

 

(Время пересылки - transfer time) 

8-32 такта синхронизации

 

(6-10 тактов синхронизации)

 

(2-22 такта синхронизации) 

Доля промахов (miss rate) 1%-20%

Размер  кэш-памяти 4 Кбайт - 16 Мбайт

 

 

Рассмотрим  организацию кэш-памяти более детально, отвечая на четыре вопроса об иерархии памяти.

Размещение  блока в кэш-памяти

 

Принципы  размещения блоков в кэш-памяти определяют три основных типа их организации:

 

Если  каждый блок основной памяти имеет  только одно фиксированное место, на котором он может появиться в  кэш-памяти, то такая кэш-память называется кэшем с прямым отображением (direct mapped). Это наиболее простая организация  кэш-памяти, при которой для отображение адресов блоков основной памяти на адреса кэш-памяти просто используются младшие разряды адреса блока. Таким образом, все блоки основной памяти, имеющие одинаковые младшие разряды в своем адресе, попадают в один блок кэш-памяти, т.е.

 

(адрес  блока кэш-памяти) =

 

(адрес  блока основной памяти) mod (число  блоков в кэше)

 

Если  некоторый блок основной памяти может  располагаться на любом месте  кэш-памяти, то кэш называется полностью  ассоциативным (fully associative).

 

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

 

(адрес  множества кэш-памяти) =

 

(адрес  блока основной памяти) mod (число  множеств в кэш-памяти)

 

Далее, блок может размещаться на любом  месте данного множества.

 

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

 

Поиск блока находящегося в кэш-памяти

 

У каждого блока в кэш-памяти имеется  адресный тег, указывающий, какой блок в основной памяти данный блок кэш-памяти представляет. Эти теги обычно одновременно сравниваются с выработанным процессором адресом блока памяти.

 

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

 

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

Замещение блока кэш-памяти при промахе

 

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

 

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

 

Во  втором случае, чтобы уменьшить вероятность  выбрасывания информации, которая скоро  может потребоваться, все обращения к блокам фиксируются. Заменяется тот блок, который не использовался дольше всех (LRU - Least-Recently Used).

 

Достоинство случайного способа заключается  в том, что его проще реализовать  в аппаратуре. Когда количество блоков для поддержания трассы увеличивается, алгоритм LRU становится все более дорогим и часто только приближенным.

 

Различия  в долях промахов при использовании  алгоритма замещения LRU

  и случайного алгоритма (при  нескольких размерах кэша и  разных ассоциативностях при  размере блока 16 байт):Ассоциативность: 2-канальная 4-канальная 8-канальная

Размер  кэш-памяти LRU, Random LRU, Random LRU, Random

16 KB 5.18%, 5.69% 4.67%, 5.29% 4.39%, 4.96%

64 KB 1.88%, 2.01% 1.54%, 1.66% 1.39%, 1.53%

256 KB 1.15%, 1.17% 1.13%, 1.13% 1.12%, 1.12%

 

Что происходит во время записи

 

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

 

К счастью, общий случай является и более простым. Блок из кэш-памяти может быть прочитан в то же самое время, когда читается и сравнивается его тег. Таким образом, чтение блока начинается сразу как только становится доступным адрес блока. Если чтение происходит с попаданием, то блок немедленно направляется в процессор. Если же происходит промах, то от заранее считанного блока нет никакой пользы, правда нет и никакого вреда.

 

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

 

Очень часто организация кэш-памяти в  разных машинах отличается именно стратегией выполнения записи. Когда выполняется  запись в кэш-память имеются две  базовые возможности:

 

сквозная  запись (write through, store through) - информация записывается в два места: в блок кэш-памяти и в блок более низкого уровня памяти.

 

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

 

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

Информация о работе Диагностические тесты для контроля подсистем памяти