Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Укладка множества source-синхронных DDR интерфейсов в один Спартан6.
Форум разработчиков электроники ELECTRONIX.ru > Программируемая логика ПЛИС (FPGA,CPLD, PLD) > Работаем с ПЛИС, области применения, выбор
a123-flex
Добрый день.

Возникла проблема - в один кристалл 6 спартана нужно завести много source-синхронных ddr интерфейсов, каждый из которых идет с собственным клоком.
Сделали платку, на которой разложили интерфейсы таким образом, чтобы пины одного интерфейса лежали внутри одного банка.
Стали собирать - проект не собирается по времянке.
Когда рассматриваю проект в PlanAhead, он весь забит связями через весь чип туда-обратно.
После гугления выяснилось, что 6 спартан, в отличие от виртекса, сделан по технологии wire bond, и матрица bga в итоге перекладывается в квадратик периметра кристалла.
Поэтому непонятно, как выбрать несколько пинов, находящихся предельно близко друг к другу внутри одной зоны локального клока.

После чтения манов я подумал, что нужно было укладывать пины таким образом, чтобы пины одного интерфейса лежали внутри одной пары: Bank:BUFIO2.

Правильно ли это ?
makc
Цитата(a123-flex @ Aug 19 2017, 22:43) *
После чтения манов я подумал, что нужно было укладывать пины таким образом, чтобы пины одного интерфейса лежали внутри одной пары: Bank:BUFIO2.

Правильно ли это ?


В целом правильно. Подробности описаны в UG382 - Spartan-6 FPGA Clocking Resources User Guide
a123-flex
Цитата(makc @ Aug 21 2017, 09:35) *
В целом правильно. Подробности описаны в UG382 - Spartan-6 FPGA Clocking Resources User Guide

Пока я не вычитал этого в UG382, мне пришла в голову мысль подглядеть/проверить раскладки выводов у MIG генератора, попросив его сгенерить корки для ddr памяти.

Так вот в трех портах все выводы действительно лежат в одной паре Bank:BUFIO2, но в одном случае ddr2/xc6slx150t/mt47h128m8xx/port3 используется 2 разных bufio2 внутри одного порта: LT;LB: в LT лежат вся шина адреса и часть управления, в LB шина данных и вторая часть управления.

Если сигналы, разнесенные в разные клоковые зоны нехорошо, так зачем же ксайлинкс такое делает ?
makc
Цитата(a123-flex @ Aug 21 2017, 20:45) *
Если сигналы, разнесенные в разные клоковые зоны нехорошо, так зачем же ксайлинкс такое делает ?


Скорее всего вынужденно, т.е. не от хорошей жизни. sm.gif Количество буферов в зоне банка ограничено, поэтому они и предусмотрели возможность перекрестного тактирования:

Мур
А может надо было сначала сделать проект, а плату делать после прикида?...
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.