Часовой пояс: UTC + 3 часа




Форум закрыт Новая тема / Эта тема закрыта, вы не можете редактировать и оставлять сообщения в ней. Закрыто  Сообщений: 63 • Страница 2 из 4<  1  2  3  4  >
  Пред. тема | След. тема 
В случае проблем с отображением форума, отключите блокировщик рекламы
Автор Сообщение
 

Advanced member
Статус: Не в сети
Регистрация: 08.12.2002
Откуда: Нижний Новгород
DarthEx
Цитата:
Появилась причина снова помудрить с таймингами памяти

Это верно. :)
Цитата:
и даже разместить ссылку на статью в FAQ

IMHO, для FAQ это просто must have.
И хватит цепляться к грамматике автора, все всё поняли - и это главное.
Если DAZ появится проверит эту статью на ошибки, всё будет ОК. :)
Статья отличная, читать только её надо внимательно. Такого хорошего объяснения по такой мутной теме я ещё не видел.
Enot
Respect!

_________________
Граждане Германии, Франции и Японии, аккуратнее там на своих автомобилях - нам на них еще ездить!



Партнер
 

Advanced member
Статус: Не в сети
Регистрация: 13.04.2003
Откуда: Салават
Doors4ever
Сейчас перечитаю вдумчиво на предмет возможных технических ошибок, но уже очевидно, что автор заслужил приз в виде гига оверклокерской памяти :D

Enot
Одним словом - Excellent. МолодЕц!


 

Перед тем как критиковать заслуженных производителей памяти, автору статьи не мешало бы углубить свои знания. Терминология и спецификация SDRAM не терпит поверхностного отношения, как впрочем и любая другая тема в области электроники.
Формула Mushkin совершенно верна для всех команд чтения, хотя 2 доп. такта они указывают вероятно по рекомендации Micron Tech. Минимальная формула для чтения получается следующей :
tRAS = tRCD+CL
Дорогой автор! Надо читать не только JEDEC, но и документацию производителей чипов памяти, в первую очередь, как наиболее информативные, это документы Micron, потом Hynix, SEC и т.д. Неужели все эти уважаемые брэнды тоже ошибаются, как и навлекший на себя незаслуженный наезд Mushkin ?


 

Advanced member
Статус: Не в сети
Регистрация: 13.04.2003
Откуда: Салават
Придирки: :D
Цитата:
Банки памяти работают полностью независимо.


Не работают, а функционируют - не стОит забывать, что шина адреса одна на весь модуль и одновременно адресовать несколько банков всё равно не получится.

Цитата:
Например, данные можно считывать из памяти банка 1, обрабатывать и записывать в память банка 2.


IMHO это не так.

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


А вот это уже правильно. Т.е. банки в основном лишь позволяют снизить латентность доступа. Кстати, row лучше бы переводить как ряд, а не как строка ;)

Цитата:
Собственно точные причины повышения задержек выяснить не удалось. Такая информация является "внутренней" для производителей памяти.


В принципе, тут ничего странного нет - ячейки памяти у DDR работают на частоте внешней шины, а у DDRII - на в два раза меньшей. Соответственно время реакции на внешней шине в два раза больше таймингов непосредственно массива памяти (они ведь указываются для внешней шины, а не чипов памяти). Т.е. вместо 2-2-2-X мы получаем, грубо говоря, 4-4-4-2X

Цитата:
То есть строка может быть закрытой, а данные всё ещё передаваться.


А про CAS Posting почему не упоминается? ;)

Цитата:
минимальное время между командой активации и командой закрытия


Хм, вообще-то precharge это не закрытие [банка/страницы]. Кстати, о страницах тоже ни слова :)

Сожалею, надо бежать, допишу позже.


 

Заблокирован
Заблокирован
Статус: Не в сети
Регистрация: 26.10.2003
Гость
Цитата:
Минимальная формула для чтения получается следующей :
tRAS = tRCD+CL
Дорогой автор!

Я читал и перечитывал спецификацию очень тщательно, чтобы "критиковать заслуженных производителей памяти". Вот цитата из спецификации:
"A READ burst may be followed by, or truncated
with, a PRECHARGE command to the same bank
(provided that AUTO PRECHARGE was not activated).
The PRECHARGE command should be issued
X cycles after the READ command, where X
equals the number of desired data element pairs
(pairs are required by the 2n prefetch architecture)."
Главное здесь - не может быть никакого CL и нет ни слова про 2 такта. В современных компьютера используется пакет из 8 данных. Соответственно количество тактов равно 4.
Итого минимальное время чтения tRCD+4.
Рекомендую ещё раз почитать "обоснование" Mushkin. Там написана явная ерунда. Потом, на практике для чипсетов Intel параметр tRAS должен быть минимальным.
Короче, у меня все правильно.

Цитата:
Надо читать не только JEDEC, но и документацию производителей чипов памяти, в первую очередь, как наиболее информативные, это документы Micron, потом Hynix, SEC и т.д. Неужели все эти уважаемые брэнды тоже ошибаются, как и навлекший на себя незаслуженный наезд Mushkin ?
По мере возможностей читал. Но в своём "наезде" ошибки не нашёл. Если ты все ёще считаешь, что я не прав (я привел цитату из спецификации), то желательно привести цитаты и ссылки, и подробно "расжевать".


GReY
Цитата:
Не работают, а функционируют - не стОит забывать, что шина адреса одна на весь модуль и одновременно адресовать несколько банков всё равно не получится.
Словать Ожёгова: "Функционировать - Дествовать, быть в действии, работать". Как видно "работают" и "функционируют" являются в данном контексте синонимами.
Банки работают действительно независимо. Одному банку можно послать команду на активацию, другому на чтение (уже на следующем такте). Все это будет работать параллельно. Но конечно, команды можно посылать только последовательно, чтобы они не "конфликтовали" по шине.
Короче, ошибки или даже недочёта не вижу. У меня написано правильно.

Цитата:
IMHO это не так.
Так, правда между чтением и записью будут зедуржки как показано ниже на диаграммах.

Цитата:
Кстати, row лучше бы переводить как ряд, а не как строка
Нет. Row - строка массива. Перевод схожего сочетания Lingvo 8.0 "AND-plane row - строка матрицы И ( в ПЛМ )".

Цитата:
Т.е. вместо 2-2-2-X мы получаем, грубо говоря, 4-4-4-2X
Не правильно. Параметры задаются в наносекундах и "пересчитываются" по частоте работы блока ввода/вывода, т.е. по такой же частоте как и DDR.

Цитата:
А про CAS Posting почему не упоминается?
Такого в спецификации нет и я даже не знаю что это значит. Может ты что нибудь путаешь?

Цитата:
Хм, вообще-то precharge это не закрытие [банка/страницы]. Кстати, о страницах тоже ни слова

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


 

Member
Статус: Не в сети
Регистрация: 14.01.2004
Откуда: Екатеринбург
GReY
Цитата:
В принципе, тут ничего странного нет - ячейки памяти у DDR работают на частоте внешней шины, а у DDRII - на в два раза меньшей. Соответственно время реакции на внешней шине в два раза больше таймингов непосредственно массива памяти (они ведь указываются для внешней шины, а не чипов памяти). Т.е. вместо 2-2-2-X мы получаем, грубо говоря, 4-4-4-2X
Тайминги в оcновном определяются временем перезаряда конденсаторов, в которых сидят биты, поэтому при пересечете на внешнюю частоту шины они и для DDR, и для DDR2 должны быть примерно одинаковы. Т.е. никакие 4-4-4-2X в DDR2 наблюдаться не должны. А частоты определяют тактирование внутренней логики чипа памяти и влияют на детали - вроде отказа от дробного CL и увеличения задержки записи до 2 тактов.


 

Молодец Енот, что сказать, и написана статья доступно, просто, но эффектно. Хотел проглядеть только, а в итоге прочел от начала до конца. Предлагаю подарить ему МоБо какой-нить паленый, пусть на стену повесит, как приз за раскрытие грязных планов Мушкиных по замедлению работы компов.
А по поводу их формулы: очевидно, из графика "единичное чиение", что tRAS как раз и равен tRCD + CL + 2. Так что доля правды есть. Только вот если бы мы данные только читали...


 

Member
Статус: Не в сети
Регистрация: 30.06.2003
Откуда: Питер
Такая дельная статья достойна приза!

_________________
Drugs для программиста это bugs.


 

Advanced member
Статус: Не в сети
Регистрация: 13.04.2003
Откуда: Салават
Enot
Цитата:
Словать Ожёгова: "Функционировать - Дествовать, быть в действии, работать". Как видно "работают" и "функционируют" являются в данном контексте синонимами.


Строка памяти - термин, кореллирующий со строкой кэш, поэтому IMHO ряд было бы корректней. Не надо без оглядки переносить математические термины на электронику.

Цитата:
Короче, ошибки или даже недочёта не вижу. У меня написано правильно.


Да правильно, правильно. Только некоторые фразы допускают двоякое толкование, что в технических статьях недопустимо.

Цитата:
Не правильно. Параметры задаются в наносекундах и "пересчитываются" по частоте работы блока ввода/вывода, т.е. по такой же частоте как и DDR.


Плиз ещё раз, вдумчиво, прочти моё толкование.

Цитата:
Просто слово "закрытие" хорошо отражает смысл этой операции с точки зрения работы с памятью. Кроме того это слово "close" часто используется в спецификации.
Насчет "страниц". В спецификации слово "page" используется эпизодически пару раз во второстепенных местах. По контексту оно является синонимом слова "row" ("строка").


Да, но этот терминологический момент никак не оговорен. Отсюда остаются совершенно не освещёнными параметры биоса типа Page closing policy (или как они там у интеля называются).

Цитата:
Такого в спецификации нет и я даже не знаю что это значит. Может ты что нибудь путаешь?


http://www.lostcircuits.com/memory/ddrii/5.shtml

Raul
Цитата:
Тайминги в оcновном определяются временем перезаряда конденсаторов, в которых сидят биты, поэтому при пересечете на внешнюю частоту шины они и для DDR, и для DDR2 должны быть примерно одинаковы.


Ещё раз: сами ячейки памяти в DDRII работают на частоте, вдвое меньшей частоте интерфейса. Поэтому все наносекунды у них вдвое больше. Что тут непонятного?
Отсюда же и отказ от дробного CL - это просто невозможно.


 

Member
Статус: Не в сети
Регистрация: 18.03.2004
Откуда: г. Нижневарт...
Enot - respect однозначно но что делать с Mushkin - не знаю... :)


 

Member
Статус: Не в сети
Регистрация: 29.01.2003
Откуда: Моск. область
Фото: 0
Enot
Молодец. Хорошая статья. :beer:
Цитата:
и даже разместить ссылку на статью в FAQ

Ссылку разместить недолго. Остается только вопрос, сколько человек прочитают FAQ перед тем, как разместить очередной пост на тему "НELP!!! До скольки погонюцца мои планки!!!"


 

Заблокирован
Заблокирован
Статус: Не в сети
Регистрация: 26.10.2003
По приведённой ссылке GReY[/url]http://www.lostcircuits.com/memory/ddrii/5.shtml[url] (LostCircuits хороший, глубокий сайт. Туда я заглядывал, но пропустил эту статью) есть наконец-то объяснение формулы Mushkin, вернее, откуда она взялась. Правильней она не стала. Вот цитата:
"Historically, tRAS used to be defined as the sum of the RAS-to-CAS delay and the CAS latency, however, these conventions are waning in that the strobes are getting much faster than the sense amps and the potential build-up in the bit lines necessary to restore the data in the memory cells."
Другими словами, исторически, в далекие-далёкие времена, она может и была правильной. Сейчас - нет. Напомню, что Mushkin относит эту формулу и к DDR.

GReY
Цитата:
Строка памяти - термин, кореллирующий со строкой кэш, поэтому IMHO ряд было бы корректней. Не надо без оглядки переносить математические термины на электронику.

Здесь нет никаких вариантов. Это строка памяти, а не "ряд памяти". Кстати термин был и электроники, а не математики :).

Цитата:
Да правильно, правильно. Только некоторые фразы допускают двоякое толкование, что в технических статьях недопустимо.
Собственно отвечаю на слова "недопустимо". В данном случае всё написано правильно и допустимо. Просто можно было раскрыть или объяснить что скрывается за этим. Никаких двояких толкований сделать нельзя. Просто сказано в общем, в целом. Кстати статья гораздо ближе к "научно-популярной". Если нужна "техническая" статья - надо смотреть в документацию.

Цитата:
Плиз ещё раз, вдумчиво, прочти моё толкование.

Если вникнуть в твою мысль, то тайминги увеличатся в 1,5 раза, а не в 2. Потом всё зависит от внутренней организации, поэтому такое предположение остаётся предположением.

Цитата:
Да, но этот терминологический момент никак не оговорен. Отсюда остаются совершенно не освещёнными параметры биоса типа Page closing policy

В принципе написано вначале. "подзарядка этих ёмкостей или закрытие".
Page closing policy - это чисто параметр чипсета. К памяти не имеет отношения. В тему это не вписывается ... Хотя интересно.[/url]

Добавлено спустя 4 минуты, 30 секунд:
Цитата:
А про CAS Posting почему не упоминается?

Почитал. Это тоже самое, что и добавочная задержка вернее относятся они к одному и томуже. Из-за AL получается CAS Posting. Это относится только к DDR2.


 

Advanced member
Статус: Не в сети
Регистрация: 13.04.2003
Откуда: Салават
Enot
Цитата:
Это строка памяти, а не "ряд памяти".


Какие либо прецеденты в технической литературе (непосредственно про память, а не ПЛМ) есть? В студию!

Цитата:
Кстати термин был и электроники, а не математики


Не согласен. Составители словарей для Lingvo не авторитетны эбсолютли, тем более что в ПЛМ действительно речь может идти про матрицы, а DRAM давно уже переросла такие ассоциации :)

Цитата:
В данном случае всё написано правильно и допустимо. Просто можно было раскрыть или объяснить что скрывается за этим. Никаких двояких толкований сделать нельзя.


Давай поспорим, что эта фраза "Банки памяти работают полностью независимо. Например, данные можно считывать из памяти банка 1, обрабатывать и записывать в память банка 2." некорректна? :-/

Цитата:
Если вникнуть в твою мысль, то тайминги увеличатся в 1,5 раза, а не в 2.


Я сказал "грубо говоря". Можешь аргументировать цифру "полтора"? ;)

Цитата:
Потом всё зависит от внутренней организации, поэтому такое предположение остаётся предположением.


Твоё - лучше? :D

Цитата:
Page closing policy - это чисто параметр чипсета. К памяти не имеет отношения.


Ошибаешься, ещё как связано. Именно со страницами памяти и их закрытием...

Добавлено спустя 3 минуты, 37 секунд:
Цитата:
Это тоже самое, что и добавочная задержка вернее относятся они к одному и томуже. Из-за AL получается CAS Posting. Это относится только к DDR2.


И что, типа можно и не упоминать? :gigi:


 

Заблокирован
Заблокирован
Статус: Не в сети
Регистрация: 26.10.2003
GReY
Цитата:
Ошибаешься, ещё как связано. Именно со страницами памяти и их закрытием...

Описание этого параметра должно быть в спецификации интеловских (навреное не только у них) чипсетов. Их я не читал, поэтому привести такую информацию не могу. Это тема не "памяти", а "работы с памятью". Например у nForce2 такого параметра нет. Вернее он имеет фиксированную политику закрытия строк.

Цитата:
И что, типа можно и не упоминать?

Как раз я упомянул. Кстати в разделе "пару слов о DDR2".


 

Advanced member
Статус: Не в сети
Регистрация: 13.04.2003
Откуда: Салават
Так, продолжимс:
Цитата:
Ширина шины данных в простых DIMM равна 64 линии


Какие ещё линии? Разряды!

Цитата:
При этом каждый из наборов работает независимо от другого.


Та же претензия, что и до этого - они на общей шине, поэтому работают строго по одиночке.

Цитата:
Может быть или 1 банк (односторонний модуль) или 2 банка (двухсторонний модуль).


Вообще "двубанковость" и "двустороннесть" не тождественны. Многие односторонние модули имеют по два банка.

Цитата:
как было показано на диаграммах, время единичного чтения вычисляется как tRCD+4. Здесь в принципе не может быть параметр CL. Длина пакета данных равна 4 такта, но никак не 2 такта.


Для начала, давайте разберёмся, что есть так называемый tRAS. Изначально это минимальное время активности сигнала RAS#.
За один RAS# контроллер памяти может читать подряд несколько колонок (страница не закрывается). Но после этого необходима регенерация буферов страницы, время которой определяется параметром tRP. Таким образом, время чтения по СЛУЧАЙНОМУ CAS# в пределах открытой страницы равняется не tRCD+4, а (tRCD + n*(длина посылки) + CL)/n, потому что чтение завершится на столько позже, сколько установлен CL. Кстати, burst length очень часто равен 4, что даёт как раз мушкинские 2 такта.

Что будет, если RAS# исчезнет до того, как закончится передача данных? СКОРЕЕ ВСЕГО ничего страшного (но не факт!), данные из буфера страницы всё равно передадутся на шину данных, но следующее обращение К ЭТОМУ же банку всё равно начнётся не раньше, чем tRP. Таким образом CL маскирует tRP и наоборот, т.е. делать tRAS меньше tRCD+CL действительно нет смысла, ЕСЛИ tRP сопоставимо с CL.

Цитата:
Для максимальной производительности значение параметра памяти tRAS должно быть минимальным.


И этот вывод делается по сообщению в каком-то форуме? :shock:

Enot
Цитата:
Как раз я упомянул. Кстати в разделе "пару слов о DDR2".


Про CAS posting? :spy:


 

2 Enot
Поскольку статья очень понравилась и была полезной - позволю себе придраться к маленькой неточности :)

Цитата:
Носителем информации в динамической памяти является электрическая ёмкость или конденсатор. Ячейки памяти, в основе которых лежит конденсатор, объединяются в массив.


На самом деле носителем информации в динамической памяти все-таки являются полупроводниковые транзисторы, а никак не конденсаторы.
Это не меняет всех изложенных в статье фактов, но все-таки боле точно отражает современное положение дел по производству памяти


 

Заблокирован
Заблокирован
Статус: Не в сети
Регистрация: 26.10.2003
Гость
Цитата:
На самом деле носителем информации в динамической памяти все-таки являются полупроводниковые транзисторы, а никак не конденсаторы.
Да, да. Используется ёмкость полупроводникового перехода транзистора. Но этот переход тоже является конденсатором в общем случае. Не писал, т.к. нормальной/понятной/достоверной информации не нашёл. Так что строго говоря ошибки нет.


GReY
Цитата:
Какие ещё линии? Разряды!
Линии использовать можно. Шина данных в физическом представлении - "жгут" проводов.

Цитата:
Та же претензия, что и до этого - они на общей шине, поэтому работают строго по одиночке.
Значит так. Что значит работает? Можно сказать, что банк не простаивает, выполняет какие либо действия. Возможна такая ситуация. Одному банку подали команду на активацию, а другому команду на чтение. В течении нескольких следующих тактов первый банк будет выполнять активацию, т.е. работать. Второй банк будет выполнять операцию чтения, т.е. тоже работать. Получается что они работают одновременно и друг на друга при этом не влияют. Друг от друга независят. Передача команд и данных идёт через общий блок ввода/вывода, но сами банки работают независимо. Ошибки у меня здесь нет. Всё правильно.

Цитата:
Вообще "двубанковость" и "двустороннесть" не тождественны.
Вскользь у меня написано. Но, согласен, надо было написать чётче.

Цитата:
Для начала, давайте разберёмся, что есть так называемый tRAS.
Во-первых у тебя написано немного неправильно (слова неправильно подобраны). Ранее я привёл цитату из спецификации.
Значит так.
-Длинна пакета равна 8, т.к. 64 байта - размер строки кэша процессора. Исключения есть, но они редки.
-Команда на закрытие может подаваться через 4 такта после посылки команды чтения. CL на это абсолютно не влияет.
Короче, если идёт единичное чтение, то команда на закрытие может быть подана через tRCD+4 такта, т.е. tRAS для единичного чтения равен tRCD+4. Без вариантов. МОжно только количество тактов изменить, если размер пакета не устраивает. Твою формулу не понял.

Цитата:
этот вывод делается по сообщению в каком-то форуме?
Нет, это сделано по определению.
А на практике, по заявлению не форуме и не в каком-то. Так написано у Anandtech в одной из последних статей.

Цитата:
Про CAS posting?
Про саму технологию отложенного выполнения команд. CAS posting обозначает именно это.


 

Member
Статус: Не в сети
Регистрация: 14.01.2004
Откуда: Екатеринбург
GReY
Я думаю, не надо спорить из-за терминов, если это не мешает пониманию. В конечном счете здесь общепринятой терминологии нет. И выбор ряд-строка, линия-разряд можно оставить на вкус Enot-а.

Цитата:
Ещё раз: сами ячейки памяти в DDRII работают на частоте, вдвое меньшей частоте интерфейса.
Однобитные ячейчки динамической памяти не тактируются. Поэтому говорить о том, что они "работают на частоте" - совершенно неправильно! Ячейка DRAM - это одиночный транзистор, который работает, как емкость. Там нет триггеров, как, к примеру, в ячейке SRAM и потому там нет ничего тактировать. А тактовый генератор применяется для управления схемами выборки/перезарядки. Далее, перезарядка конденсатора - это относительно медленный процесс, и даже есть частота на внутренних схемах чипа DDR2 понижается вдвое - схемы все равно работают быстрее, чем перезаряжается конденсатор. Поэтому "латентности" определяются в основном задержками кондеров, а не схем.

Добавлено спустя 1 час, 3 минуты, 18 секунд:
Посмотрел спецификации. Ты прав - тайминги у DDR2-400 слабее, чем DDR-400. Какая-то странная память. Похоже, они ее заторомозили, что бы потом погнать по шине до 400 Mhz.

_________________
Земля не может, не может не вращаться,
А мур не может, не может не мурчать!


 

Member
Статус: Не в сети
Регистрация: 25.06.2003
Откуда: СПб
Enot молодец. Очень хорошая статья. Хотелось бы, чтобы статей подобного уровня было побольше.
Уважаемые критики, не цепляйтесь к словам, Ведь мы обсуждаем смысл, а не лингвистику. А смысл понятен и интересен.
Doors4ever Приз в студию:)


 

решил я тут поиграть с таймингами памяти, у меня две разные системы на NForce2, как тест использовал Memtest86+ 1.11 (стартует на "голом" железе, мне это по душе :-)
Система1: Soltek SL-B7A-F, шина 167, Athlon XP 167*12=2004 MHz, память dual 2x256,
тайминги X-2(tRCD)-2(tRP)-2.0(CL)
4 - 1204
5 - 1204
6 - 1204
7 - 1223
8 - 1243
9 - 1243
10 - 1223
11 - 1204
12 - 1204
13 - 1186

Система2: Abit NF7-S 2.0, шина 204.6, Athlon XP Barton 204.6*11=2251 MHz, память dual 2x512,
тайминги X-3(tRCD)-3(tRP)-2.0(CL)
4 - 1418
5 - 1418
6 - 1441
7 - 1465
8 - 1465
9 - 1465
10 - 1465
11 - 1418
12 - 1396
13 - 1418

И если опустить tRP до 2, то картина становится четче (tRCD ниже 3 у этой памяти не ставится)
тайминги X-3(tRCD)-2(tRP)-2.0(CL)
6 - 1441
7 - 1465
8 - 1465
9 - 1490
10 - 1490
11 - 1465
12 - 1441

Итого: у Системы1 пик находится на tRAS 8 или 9, а у Системы2 - на 9 или 10.
11 плохо и для первой и для второй.


Показать сообщения за:  Поле сортировки  
Форум закрыт Новая тема / Эта тема закрыта, вы не можете редактировать и оставлять сообщения в ней. Закрыто  Сообщений: 63 • Страница 2 из 4<  1  2  3  4  >
-

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 5


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Перейти:  
Создано на основе phpBB® Forum Software © phpBB Group
Русская поддержка phpBB | Kolobok smiles © Aiwan