
- •Содержание
- •История развития и классификация эвм (Лекция 1) Понятие архитектуры эвм
- •Классификация эвм
- •История развития эвм
- •Универсальные и управляющие эвм
- •Программное обеспечение
- •Архитектура системных плат (Лекция 2)
- •Шины ввода-вывода (xt, isa, eisa, mca, vesa, pci).
- •Сравнение и характеристики шин.
- •Основные микросхемы ibm pc
- •Микропроцессоры (Лекция 3)
- •Классификация процессоров
- •Общая организация современного микропроцессора
- •Исполнение процессорами инструкций x86 и x64 (Лекция 4) Кэш инструкций
- •Предсказание переходов
- •Исполнение инструкций
- •Процессоры Intel Pentium III, Pentium m и Core Duo
- •Внеочередное исполнение операций, функциональные устройства
- •Система прерываний (Лекция 5) Организация обработки прерываний в эвм
- •Обработка прерываний в персональной эвм.
- •Память (Лекция 6) Определения
- •Система управления памятью
- •Память. Микросхемы sdram (Лекция 7). Организация и принципы работы.
- •Физическая организация
- •Организация модулей памяти sdram
- •Микросхема spd
- •Тайминги памяти
- •Соотношения между таймингами
- •Схемы таймингов
- •Задержки командного интерфейса
- •Ddr/ddr2 sdram: Отличия от sdr sdram
- •Накопители информации. (Лекция 8) Эволюция носителей информации.
- •Управление распределением диска.
- •Структура таблицы разделов
- •Периферийные устройства (Лекция 9) Kлaвиaтуpa и управление клавиатурой
- •Сводная таблица скан-кодов
- •Клавиши пишущей машинки
- •Cвoднaя тaблицa кoдoв ascii
- •Сводная таблица расширенных кодов.
- •Визуализация данных (Лекция 10) Устройство видеомонитора.
- •Эволюция видеоадаптеров
- •Основа архитектуры видеоадаптеров
- •Установка атрибутов/цветов символов.
- •Управление курсором.
- •Ввод/вывод. (Лекция 11)
- •Особенности pio и dma
- •Доступ к последовательному порту.
- •Программирование микросхемы uart 8250.
- •Инициализация последовательного порта.
- •Установка текущего коммуникационного порта.
- •Инициализация и управление модемом.
- •Печатающие устройства. Принтеры. (Лекция 12) Классификация печатающих устройств
- •Управление работой принтера.
- •Посылка данных на принтер.
- •Параллельные вычислительные процессы и системы (Лекция 13) Виды параллелизма
- •Реализация параллельных систем
- •Нейровычислительные системы.
- •Сложности использования параллельных систем
- •Программирование параллельных систем
- •Сети эвм (Лекция 14) Организация сети
- •Характеристики стеков коммуникационных протоколов
- •Стек tcp/ip
- •Типовой состав оборудования локальной сети (Лекция 15)
- •Кабельная система
- •Сетевые адаптеры
- •Повторители и концентраторы
- •Мосты и коммутаторы
- •Маршрутизаторы
- •Список литературы
- •Список тем рефератов по курсу «Архитектура эвм»
- •Список вопросов к экзамену по предмету «Архитектура эвм».
Тайминги памяти
Теорией характеристик микросхем/модулей памяти являются «тайминги памяти». Понятие «таймингов» происходит от задержек, возникающими при любых операциях с содержимым ячеек памяти в связи со вполне конечной скоростью функционирования устройств SDRAM как интегральных схем. Задержки, возникающие при доступе в память, также принято называть «латентностью» памяти (этот термин не совсем корректен и пришел в обиход с буквальным переводом термина latency, означающего «задержка»).
Схема доступа к данным микросхемы SDRAM
1. Активизация строки
Перед осуществлением любой операции с данными, содержащимися в определенном банке микросхемы SDRAM (чтения – команда READ, или записи – команда WRITE), необходимо «активизировать» соответствующую строку в соответствующем банке. С этой целью на микросхему подается команда активизации (ACTIVATE) вместе с номером банка (линии BA0-BA1 для 4-банковой микросхемы) и адресом строки (адресные линии A0-A12, реальное количество которых зависит от количества строк в банке, в рассматриваемом примере 512-Мбит микросхемы памяти SDRAM их число составляет 213 = 8192).
Активизированная строка остается открытой (доступной) для последующих операций доступа до поступления команды подзарядки банка (PRECHARGE), по сути, закрывающей данную строку. Минимальный период «активности» строки – от момента ее активации до момента поступления команды подзарядки, определяется минимальным временем активности строки (Row Active Time, tRAS).
Повторная активизация какой-либо другой строки того же банка не может быть осуществлена до тех пор, пока предыдущая строка этого банка остается открытой (т.к. усилитель уровня, содержащий буфер данных размером в одну строку банка и описанный в разделе «Микросхемы SDRAM: Физическая организация и принцип работы», является общим для всех строк данного банка микросхемы SDRAM). Таким образом, минимальный промежуток времени между активизацией двух различных строк одного и того же банка определяется минимальным временем цикла строки (Row Cycle Time, tRC).
В то же время после активизации определенной строки определенного банка микросхеме SDRAM ничего не мешает активизировать какую-либо другую строку другого банка (в этом и заключается рассмотренное выше преимущество «многобанковой» структуры микросхем SDRAM) на следующем такте шины памяти. Тем не менее, в реальных условиях производителями устройств SDRAM обычно здесь также умышленно вводится дополнительная задержка, именуемая задержкой между активациями строк (Row-to-Row Delay, tRRD). Причины введения этой задержки не связаны с функционированием микросхем памяти как таковых и являются чисто электрическими – операция активизации строки потребляет весьма значительное количество электрического тока, в связи с чем частое их осуществление может приводить к нежелательным избыточным нагрузкам устройства по току.
2. Чтение/запись данных
Следующий временной параметр функционирования устройств памяти возникает в связи с тем, что активизация строки памяти сама по себе требует определенного времени. В связи с этим, последующие (после ACTIVATE) команды чтения (READ) или записи (WRITE) данных не могут быть поданы на следующем такте шины памяти, а лишь спустя определенный временной интервал, задержку между подачей адреса строки и столбца (RAS#-to-CAS# Delay, tRCD).
Итак, после прошествия интервала времени, равного tRCD, при чтении данных в микросхему памяти подается команда READ вместе с номером банка (предварительно активизированного командой ACTIVATE) и адресом столбца. Устройства памяти типа SDRAM ориентированы на чтение и запись данных в пакетном (Burst) режиме. Это означает, что подача всего одной команды READ (WRITE) приведет к считыванию из ячеек (записыванию в ячейки) не одного, а нескольких подряд расположенных элементов, или «слов» данных (разрядность каждого из которых равна ширине внешней шины данных микросхемы – например, 8 бит). Количество элементов данных, считываемых одной командой READ или записываемых одной командой WRITE, называется длиной пакета (Burst Length) и обычно составляет 2, 4 или 8 элементов (за исключением экзотического случая передачи целой строки (страницы) – «Full-Page Burst», когда необходимо дополнительно использовать специальную команду BURST TERMINATE для прерывания сверхдлинной пакетной передачи данных). Для микросхем памяти типа DDR и DDR2 параметр Burst Length не может принимать значение меньше 2 и 4 элементов, соответственно в связи с особенностями их архитектуры.
Существует две разновидности команды чтения. Первая из них является «обычным» чтением (READ), вторая называется «чтением с автоматической подзарядкой» (Read with Auto-Precharge, «RD+AP»). Последняя отличается тем, что после завершения пакетной передачи данных по шине данных микросхемы автоматически будет подана команда подзарядки строки (PRECHARGE), тогда как в первом случае выбранная строка микросхемы памяти останется «открытой» для осуществления дальнейших операций.
После подачи команды READ, первая порция данных оказывается доступной не сразу, а с задержкой в несколько тактов шины памяти, в течение которой данные, считанные из усилителя уровня, синхронизируются и передаются на внешние выводы микросхемы. Задержка между подачей команды чтения и фактическим «появлением» данных на шине считается наиболее важной и именуется наверняка известной многим задержкой сигнала CAS# (CAS# Latency, tCL). Последующие порции данных (в соответствии с длиной передаваемого пакета) оказываются доступными без каких-либо дополнительных задержек, на каждом последующем такте шины памяти (по 1 элементу за такт для устройств SDR, по 2 элемента в случае устройств DDR/DDR2).
Операции записи данных осуществляются аналогичным образом. Точно также существуют две разновидности команд записи – простая запись данных (WRITE) и запись с последующей автоматической подзарядкой строки (Write with Auto-Precharge, «WR+AP»). Точно также при подаче команды WRITE/WR+AP на микросхему памяти подаются номер банка и адрес столбца. Наконец, точно также запись данных осуществляется «пакетным» образом. Отличия операции записи от операции чтения следующие. Во-первых, первую порцию данных, подлежащих записи, необходимо подать по шине данных одновременно с подачей по адресной шине команды WRITE/WR+AP, номера банка и адреса столбца, а последующие порции, количество которых определяется длиной пакета – на каждом последующем такте шины памяти. Во-вторых, вместо «задержки сигнала CAS#» (tCL) важной здесь является иная характеристика, именуемая периодом восстановления после записи (Write Recovery Time, tWR). Эта величина определяет минимальный промежуток времени между приемом последней порции данных, подлежащих записи, и готовности строки памяти к ее закрытию с помощью команды PRECHARGE. Если вместо закрытия строки требуется последующее считывание данных из той же самой открытой строки, то приобретает важность другая задержка, задержка между операциями записи и чтения (Write-to-Read Delay, tWTR).
3. Подзарядка строки
Цикл чтения/записи данных в строки памяти, который в общем случае можно назвать циклом доступа к строке памяти, завершается закрытием открытой строки банка с помощью команды подзарядки строки – PRECHARGE, которая может подаваться автоматически при операциях «RD+AP» или «WR+AP». Последующий доступ к этому банку микросхемы становится возможным не сразу, а по прошествии интервала времени подзарядки строки (Row Precharge Time, tRP). За этот период времени осуществляется собственно операция «подзарядки», т.е. возвращения элементов данных, соответствующих всем столбцам данной строки с усилителя уровня обратно в ячейки строки памяти.