реклама на сайте
подробности

 
 
13 страниц V  « < 11 12 13  
Reply to this topicStart new topic
> Пример топологии DDR3, Документация и примеры разводки DDR3
Inpharhus
сообщение Jan 30 2018, 11:49
Сообщение #181


Частый гость
**

Группа: Свой
Сообщений: 165
Регистрация: 7-02-08
Из: Ростовская обл.
Пользователь №: 34 835



Впервые столкнулся с топологией fly-by, в принципе всё более-менее понятно, но возник спорный момент. Подскажите, имеет ли значение последовательность по которой сигналы адресов идут от контроллера по чипам памяти?
Явно нигде не могу найти упоминания об этом, обычно пишут требования к импедансу и длине линии до первого кристалла и отдельные требования для линий между кристаллами. По логике вещей адреса должны приходить на 0-й байт и далее по порядку 1, 2, 3, 4 и т.д., или это не имеет значения и контроллер при инициализации как-то калибруется и определяет что адреса идут в порядке байтов 1, 0, 2, 4, 3... или 7, 6, 5, 4...
Смущает что в дизайнгайде процессора как раз нарисован (исключительно на картинке, в тексте явного указания нет) обратный порядок, т.е. с 7 по 0 байты и терминацией на 0.
Go to the top of the page
 
+Quote Post
Aner
сообщение Jan 30 2018, 13:36
Сообщение #182


Гуру
******

Группа: Свой
Сообщений: 4 710
Регистрация: 28-02-08
Из: СПБ
Пользователь №: 35 463



> Подскажите, имеет ли значение последовательность по которой сигналы адресов идут от контроллера по чипам памяти?
Да имеет. Это вам не дремучая RAM или ROM. По этим линиям идут также команды, поскольку там навороченный автомат трудится. Есть вариант для косовинга между какими то парами, но я стараюсь не использовать это. Вроде байтами можно перекинуться, причем нулевой или первый тоже нельзя трогать (бит шины).
Как я понял в последних автомат трудится постоянно и калибрует непрерывно. И как я понимаю в DDR3 дина линий внутри чипа до шарика "приведена" к нулю, ее не нужно добавлять при выравнивании, в отличие от внутренних длин внутри контроллера или FPGA.
Go to the top of the page
 
+Quote Post
Inpharhus
сообщение Jan 30 2018, 14:10
Сообщение #183


Частый гость
**

Группа: Свой
Сообщений: 165
Регистрация: 7-02-08
Из: Ростовская обл.
Пользователь №: 34 835



Цитата(Aner @ Jan 30 2018, 16:36) *
Да имеет.

Ну т.е. всё как подсказывает логика: с 0 по 7 байты, с терминацией на 7?
Go to the top of the page
 
+Quote Post
Uree
сообщение Jan 30 2018, 14:33
Сообщение #184


Знающий
******

Группа: Свой
Сообщений: 5 162
Регистрация: 25-04-05
Из: Z. Gora
Пользователь №: 4 480



Не имеет. Терминация адресов/управления на конце линий, не важно какой это будет байт данных.
Go to the top of the page
 
+Quote Post
Inpharhus
сообщение Feb 1 2018, 06:18
Сообщение #185


Частый гость
**

Группа: Свой
Сообщений: 165
Регистрация: 7-02-08
Из: Ростовская обл.
Пользователь №: 34 835



Цитата(Uree @ Jan 30 2018, 17:33) *
Не имеет. Терминация адресов/управления на конце линий, не важно какой это будет байт данных.

Всё жду-жду а холивар так и не развязывается)) Всё-таки хотелось бы понять как это работает. С точки зрения программирования я проблем в автокалибровке контроллера памяти не вижу, но непонятно как оно там на самом деле.
Тут вот есть наглядная анимация прохождения сигналов по этой топологии. Сможет ли контроллер подстроить тайминги выдачи сигналов данных в случае если переставить между собой чипы памяти (важное уточнение: не просто переставить чипы, ведь они одинаковые, а переставить на плате с сохранением привязки к сигналам, т.е. линии данных окажутся как бы крест-накрест).
Повторюсь, с точки зрения моих скромных знаний программирования я проблем не вижу, мне кажется это достаточно тривиальной задачей. Но хотелось бы знать наверняка.
Go to the top of the page
 
+Quote Post
Uree
сообщение Feb 1 2018, 09:03
Сообщение #186


Знающий
******

Группа: Свой
Сообщений: 5 162
Регистрация: 25-04-05
Из: Z. Gora
Пользователь №: 4 480



По шине адерса/управления контроллер обращается ко всем чипам сразу, без конкретизации какой из них где. Да и нечем ему это конкретизировать, все сигналы параллельно идут по всем чипам(без мультиранка). Шина данных работа вся разом, параллельно на все чипы(тут DMы решают, что читается, а что нет). Контроллер на самом деле даже не знает, сколько там чипов на шине - 4х8, 2х16 или 1х32(хотя это уже LPDDR, возможно там несколько иначе). Зато deskew каждого байта компенсируется отдельно, без выяснения в каком физически порядке стоят эти чипы на шине.

Для примера - Arria10 + 2x16 DDR3-2133, последовательность байтов на скрине слева-направо: 2-0-3-1

Прикрепленное изображение


Дизайн проверен у Альтера/Интел и с их саппортом внесены поправки в IP контроллер - что-то они там наплужили в исходниках, не хотело работать.
Go to the top of the page
 
+Quote Post
Inpharhus
сообщение Feb 1 2018, 09:29
Сообщение #187


Частый гость
**

Группа: Свой
Сообщений: 165
Регистрация: 7-02-08
Из: Ростовская обл.
Пользователь №: 34 835



Цитата(Uree @ Feb 1 2018, 12:03) *
По шине адерса/управления контроллер обращается ко всем чипам сразу, без конкретизации...

Спасибо, теперь понятно.
Go to the top of the page
 
+Quote Post

13 страниц V  « < 11 12 13
Reply to this topicStart new topic
4 чел. читают эту тему (гостей: 4, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 18th June 2018 - 07:22
Рейтинг@Mail.ru


Страница сгенерированна за 0.00943 секунд с 7
ELECTRONIX ©2004-2016