Наверх
Меню
Новости
Статьи
twitter
Память
8 мая 2007
11341
  Что такое тайминги?  
 
Для того чтобы начать изучение вопросов, посвящённых таймингам, следует узнать, как же, собственно, работает оперативная память. Ознакомиться с принципом я предлагаю в вышеупомянутой статье Enot. Выясним, что структура памяти напоминает таблицу, где сначала выбирают строку, а затем столбец; и что таблица эта разбита на банки, для памяти плотностью меньше 64Мбит (SDRAM) количеством 2 штуки, выше – 4 (стандартно). Спецификация память DDR2 SDRAM с чипами плотностью 1Гбит предусматривает уже 8 банков.

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

Обычно на памяти (или в спецификации к ней) есть надпись вида 3-4-4-8 или 5-5-5-15. Это сокращённая запись (так называемая схема таймингов) основных таймингов памяти. Что же такое тайминги? Очевидно, что ни одно устройство не может работать с бесконечной скоростью. Значит, на выполнение любой операции уходит какое-либо время. Тайминги это задержка, устанавливающая время, необходимое на выполнение какой-либо команды, то есть время от отправки команды до её выполнения. А каждая цифра обозначает, какое именно время необходимо.

Теперь разберём каждый по очереди. Схема таймингов включает в себя задержки CL-Trcd-Trp-Tras соответственно.

Если вы внимательно читали статью, то узнали, что для работы с памятью необходимо для начала выбрать чип, с которым мы будем работать. Делается это командой CS# (Chip Select). Затем выбирается банк и строка. Перед началом работы с любой строкой необходимо её активировать. Делается это командой выбора строки RAS# (при выборе строки она активируется). Затем (при операции линейного чтения) нужно выбрать столбец командой CAS# (эта же команда инициирует чтение). Затем считать данные и закрыть строку, совершив предварительный заряд (precharge) банка.
Тайминги расположены по порядку следования в простейшем запросе (для простоты понимания). Сначала идут тайминги, затем подтайминги.

Что такое тайминги?


Trcd, RAS to CAS delay – время, необходимое для активизации строки банка, или минимальное время между подачей сигнала на выбор строки (RAS#) и сигнала на выбор столбца (CAS#).

CL, Cas Latency – минимальное время между подачей команды на чтение (CAS) и началом передачи данных (задержка чтения).

Tras, Active to Precharge – минимальное время активности строки, то есть минимальное время между активацией строки (её открытием) и подачей команды на предзаряд (начало закрытия строки). Строка не может быть закрыта раньше этого времени.

Trp, Row Precharge – время, необходимое для предварительного заряда банка (precharge). Иными словами, минимальное время закрытия строки, после чего можно активировать новую строку банка.

CR, Command Rate 1/2T – Время, необходимое для декодирования контроллером команд и адресов. Иначе, минимальное время между подачей двух команд. При значении 1T команда распознаётся 1 такт, при 2T – 2 такта, 3T – 3 такта (пока только на RD600).

Это всё основные тайминги. Остальные тайминги имеют меньшее влияние на производительность, а потому их называют подтаймингами.

Trc, Row Cycle Time, Activate to Activate/Refresh Time, Active to Active/Auto Refresh Time– минимальное время между активацией строк одного банка. Является комбинацией таймингов Tras+Trp – минимального времени активности строки и времени её закрытия (после чего можно открывать новую).

Trfc, Row Refresh Cycle Time, Auto Refresh Row Cycle Time, Refresh to Activate/Refresh Command Period, – минимальное время между командой на обновление строки и командой активизации, либо другой командой обновления.

Trrd, ACTIVE bank A to ACTIVE bank B command, RAS to RAS Delay, Row Active to Row Active – минимальное время между активацией строк разных банков. Архитектурно открывать строку в другом банке можно сразу за открытием строки в первом банке. Ограничение же чисто электрическое – на активацию уходит много энергии, а потому при частых активациях строк очень высока электрическая нагрузка на цепи. Чтобы её снизить, была введена данная задержка. Используется для реализации функции чередования доступа к памяти (interleaving).

Что такое тайминги?


Tccd, CAS to CAS Delay – минимальное время между двумя командами CAS#.

Что такое тайминги?


WR, Write Recovery, Write to Precharge – минимальное время между окончанием операции записи и подачей команды на предзаряд (Precharge) строки для одного банка.

Что такое тайминги?


WTR, Trd_wr, Write To Read – минимальное время между окончанием записи и подачей команды на чтение (CAS#) в одном ранке.

RTW, Read To Write – минимальное время между окончанием операции чтения и подачей команды на запись, в одном ранке.

Что такое тайминги?


Same Rank Write To Write Delayed – минимальное время между двумя командами на запись в одном ранке.

Different Rank Write to Write Delay – минимальное время между двумя командами на запись в разных ранках.

Twr_rd, Different Ranks Write To READ Delayed - минимальное время между окончанием записи и подачей команды на чтение (CAS#) в разных ранках.

Same Rank Read To Read Delayed – минимальная задержка между двумя командами на чтение в одном ранке.

Trd_rd, Different Ranks Read To Read Delayed - минимальная задержка между двумя командами на чтение в разных ранках.

Trtp, Read to Precharge – минимальный интервал между подачей команды на чтение до команды на предварительный заряд.

Precharge to Precharge – минимальное время между двумя командами предварительного заряда.

Tpall_rp, Precharge All to Active Delay – задержка между командой Precharge All и командой на активацию строки.

Same Rank PALL to REF Delayed – устанавливает минимальное время между командой Precharge All и Refresh в одном ранке.

Different Rank REF to REF Delayed – устанавливает минимальную задержку между двумя командами на обновление (refresh) в разных ранках.

WL, Write Latency – задержка между подачей команды на запись и сигналом DQS. Аналог CL, но для записи.

Tdal, цитата из JEDEC 79-2C, p.74: auto precharge write recovery + precharge time (Twr+Trp).

Trcd_rd/Trcd_wr, Activate to Read/Write, RAS to CAS Read/Write Delay, RAW Address to Column Address for Read/Write – сочетание двух таймингов – Trcd (RAS to CAS) и rd/wr command delay. Именно последним и объясняется существование разных Trcd – для записи и чтения (Nf2) и установки BIOS – Fast Ras to Cas.

Tck, Clock Cycle Time – период одного такта. Именно он и определяет частоту памяти. Считается она следующим образом: 1000/Tck=X Mhz (реальная частота).

CS, Chip Select – время, необходимое на выполнения команды, подаваемой сигналом CS# для выбора нужного чипа памяти.

Tac, DQ output access time from CK – время от фронта такта до выдачи данных модулем.

Address and Command Setup Time Before Clock, время, на которое передача установок адресов команд будет предшествовать восходящему фронту такта.

Address and Command Hold Time After Clock, время, на которое будут “заперты” установки адреса и команд после нисходящего фронта такта.

Data Input Setup Time Before Clock, Data Input Hold Time After Clock, то же, что и вышеуказанные, но для данных.

Tck max, SDRAM Device Maximum Cycle Time – максимальный период цикла устройства.

Tdqsq max, DDR SDRAM Device DQS-DQ Skew for DQS and associated DQ signals – максимальный сдвиг между стробом DQS и связанными с ним сигналами данных.

Tqhs, DDR SDRAM Device Read Data Hold Skew Factor – максимальный сдвиг “запирания” считанных данных.

Tch, Tcl, CK high/low pulse width – длительность высокого/низкого уровня тактовой частоты CK.

Thp, CK half pulse width – длительность полупериода тактовой частоты CK.

Max Async Latency – максимальное время асинхронной задержки. Параметр управляет длительностью асинхронной задержки, зависящей от времени, необходимого для передачи сигнала от контроллера памяти до самого дальнего модуля памяти и обратно. Опция существует в процессорах фирмы AMD (AthlonOpteron).

DRAM Read Latch Delay – задержка, устанавливающая время, необходимое для “запирания” (однозначного распознавания) конкретного устройства. Актуально при повышении нагрузки (числа устройств) на контроллер памяти.

Trpre, Read preamble – время, в течение которого контроллер памяти откладывает активацию приёма данных перед чтением, во избежание повреждения данных.

Trpst, Twpre, Twpst, Write preamble, read postamble, write postamble – то же для записи и после приёма данных.

Readwrite Queue Bypass – определяет число раз, которое самый ранний запрос в очереди может быть обойден контроллером памяти, прежде чем быть выполненным.

Bypass Max – определяет, сколько раз самая ранняя запись в DCQ может быть обойдена, прежде чем выбор арбитра будет аннулирован. При установке в 0 выбор арбитра всегда учитывается.

SDRAM MA Wait State, Read Wait State установка 0—2-тактного опережения адресной информации перед подачей сигнала CS#.

Turn-Around Insertion – задержка между циклами. Добавляет задержку в такт между двумя последовательными операциями чтения/записи.

DRAM R/W Leadoff Timing, rd/wr command delay – задержка перед выполнением команды чтения/записи. Обычно составляет 8/7 или 7/5 тактов соответственно. Время от подачи команды до активации банка.

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

Twtr Same Bank, Write to Read Turnaround Time for Same Bank – время между прекращением операции записи и подачей команды на чтение в одном банке.

Tfaw, Four Active Windows – минимальное время активности четырех окон (активных строк). Применяется в восьмибанковых устройствах.

Что такое тайминги?


Strobe Latency. Задержка при посылке строб-импульса (селекторного импульса).

Memory Refresh Rate. Частота обновления памяти.

Также хотелось бы упомянуть о самом главном вопросе – вопросе об источниках. Именно от его качества и зависит то, насколько точным будет материал. Утверждением всех стандартов оперативной памяти занимается организация JEDEC, поэтому вопрос о компетентности снимается. Исключением являются последние материалы (Intel, Dron’t), обладающие рядом неточностей и опечаток, которые использовались как вспомогательные.

Использованные материалы:
1. DDR SDRAM "JEDEC SOLID STATE TECHNOLOGY ASSOCIATION JESD79E May 2005 Double Data Rate (DDR) SDRAM Specification (Revision of JESD79D)"

2. DDR2 SDRAM SPECIFICATION JEDEC SOLID STATE TECHNOLOGY ASSOCIATION JESD79-2C (Revision of JESD79-2B) MAY 2006

3. 4_01_02_04R13 Appendix D, Rev. 1.0 : SPD’s for DDR SDRAM

4. Intel® 965 Express Chipset Family Datasheet


  Источник: people.overclockers.ru/antinomy/record4
 



Поделиться с друзьями:


Другие новости по теме
 
Вы не авторизованный пользователь. Чтобы воспользоваться всеми возможностями сайта, зарегистрируйтесь.
 

Комментарии

RenTail 8 мая 2007 15:09
Блин, давно пытаюсь понять что же это такое... тайминги? Из этой статьи тоже почти ничего не понял.
 
 
 

dav 8 мая 2007 15:57
Тебе зачем это знать?? Так, для эрудиции только :)
 
 
 

exb 8 мая 2007 16:27
2 RenTail
Тайминги это задержка, устанавливающая время, необходимое на выполнение какой-либо команды, то есть время от отправки команды до её выполнения. А каждая цифра обозначает, какое именно время необходимо.
 
 
 

X-zero 8 мая 2007 19:33
Как на это отвечали мастера журнала "Железо"!
Тайминг это время чтения из памяти, записи в память, копирование в память и задержка памяти!

P.S. У меня 2,5-3-3-5!
 
 
 

Otakon 9 мая 2007 01:46
RenTail Да это только для разгона в принципе не парься )


--------------------
Да я такой
 
 
 

X-zero 10 мая 2007 17:26
Кстати, если хотите чтобы ваша тачка более менее быстрей летала, понизте тайминги через BIOS! Там всё легко! Если у вас DDR1 то можете смело понижать до моих (2,5-3-3-5) (3,0-4-4-8 было изначально)!
 
 
 

Antinomy 5 июля 2007 09:00
Хочу обратиться к издателям с просьбой указать полную ссылку на мой материал - http://people.overclockers.ru/antinomy/record4, т.к. people.overclockers.ru - это проект Персональных страниц, где публикуются материалы разных авторов. Посему необходимо конкретизировать, кто именно автор (чего я кстати, у вас не увидел) и точную ссылку.

Цитата: X-zero
Тайминг это время чтения из памяти, записи в память, копирование в память и задержка памяти!
Бред.
Цитата: Otakon
Да это только для разгона в принципе не парься )
Скорее уж, для ускорения работы с памятью.

С уважением, Antinomy.
 
 
 
Добавление комментария
Ваше имя
Ваш Email
Код Включите эту картинку для отображения кода безопасности
обновить код
Введите код