Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Загрузка нескольких ПЛИС Spartan 3 одинаковой конфигурацией
Форум разработчиков электроники ELECTRONIX.ru > Программируемая логика ПЛИС (FPGA,CPLD, PLD) > Работаем с ПЛИС, области применения, выбор
desapp
Имеем XC3S400 6 штук и XCF02S - 1.
Нужно получить одинаковую конфигурацию.
Первый чип ПЛИС - Master, остальные - Slave.
Вобщем все как описано в ds123 для этого случая.
Проблема в том, что более двух ПЛИС по такой
схеме не загружаются, хотя ранее четыре Spartan2
от XC18Vxx грузились без проблем sad.gif
Pullup на DONE менял в дозволенных пределах - не помогает.
Может кто-нибудь дать дельный совет по решению сей проблемы?
Camelot
А как Вы в вашем случае развели сигнал DOUT c Мастера на Слейвы? а также сигнал DONE?
Посмотрите еще xapp453, может поможет
desapp
DOUT и DONE заходят на все FPGA параллельно без последовательных резисторов. Питание на 4 банке FPGA 2.5В, на XCF Vcco=2.5B
antti
Цитата(desapp @ Oct 9 2006, 13:48) *
DOUT и DONE заходят на все FPGA параллельно без последовательных резисторов. Питание на 4 банке FPGA 2.5В, на XCF Vcco=2.5B

kazhetsja tebe kapatsja pridetsja, bitstream mozhno s -debug delat
i LOUT commandy dobavljat, eti s FPGA DOUT vyhodjat, tam
posmotret i sledit mozhno chto i kogda problemy delaet.
ne savsjem legkoe delo sad.gif

no esli 2 rabotaet a bolsche net, to problema mozhet v signal quality
byth, esli by chtoto printsipialno nepravilno to tolko master by gruzilas

podozdi - esli vsjo dolzhno imet odnu it tu zhe conf to vsje FPGA DOUT
dolhzny v vozduche viset, to est ne ispolsvano!
desapp
antti:
FPGA DOUT не используются, имелся ввиду DO с XCF02S, идущий на D0 всех FPGA.
А вот где копаться и пытаюсь понять. Плата многослойка и все нужные трассы как назло внутри - можно только ноги поднимать.
Предполагаю, что какой-то сигнал какому-то чипу не нравится, но какой именно понять не могу - визуально (по осциллографу TDS 2022)их качество (фронты, задержки) вроде не изменяется от количества подключенных FPGA. Отсоединяю только CCLK и DONE. DO остается подключенным ко всем шести входам.
antti
Цитата(desapp @ Oct 9 2006, 17:23) *
antti:
FPGA DOUT не используются, имелся ввиду DO с XCF02S, идущий на D0 всех FPGA.
А вот где копаться и пытаюсь понять. Плата многослойка и все нужные трассы как назло внутри - можно только ноги поднимать.
Предполагаю, что какой-то сигнал какому-то чипу не нравится, но какой именно понять не могу - визуально (по осциллографу TDS 2022)их качество (фронты, задержки) вроде не изменяется от количества подключенных FPGA. Отсоединяю только CCLK и DONE. DO остается подключенным ко всем шести входам.

1) enable "done_pipe"
2) set cclk to min in bitgen, cclk ot xcf series R
3) done cycle na 7 - blin ne uveren, mozhno tak delat chto done noschko ne ispolsuetsja, togda dolzhno gruzitsja no done ne menjaetsja na noschke
...
bms
Цитата(desapp @ Oct 9 2006, 18:23) *
.... визуально (по осциллографу TDS 2022)их качество (фронты, задержки) вроде не изменяется от количества подключенных FPGA. Отсоединяю только CCLK и DONE. DO остается подключенным ко всем шести входам.


эээ... а что значит "вроде"? Не могли бы Вы картинки показать? Просто весьма странно - Вы отключаете нагрузки - а картина не меняется - тут что-то не так.
Фронты нужно смотреть при очень быстрой развёртке, если там где-то короткий вспелеск - его можно и не заметить. Кроме того желательно это всё смотреть активным щупом - обычный может своей ёмкостью совершенно исказить картину.

В вашем случае я думаю проблема в том, что некоректно разведены клоки. Клоки нельзя из одного источника растаскивать на шесть потребителей. В случае нескольких нагрузок их нужно размножать на специальных буферах. Иначе проблем не избежать. Документ на который Вы ссылаетесь (ds123) - лишь показывает принцип, по которому производится загрузка нескольких ПЛИС. Это не руководство к действию. Клок - это всегда особый сигнал. Клок и внутри кристалла трассируется по особому, что уж говорить о печатных платах.
То что ранее у Вас работала аналогичная схема с 4-мя ПЛИСами лишь подтверждает мою гипотезу. В таких случаях (когда один источник работает на несколько нагрузок) очень часто всё зависит от "удачности" трассировки платы. В первый раз получилось - теперь нет. Чтобы проект не зависел от этой "удачности" - клоки надо размножать, как я уже говорил. Либо очень тщательно моделировать плату перед изготовлением, но размножение всё-таки надёжнее.
Сам я имел опыт загрузки больших длинных цепочек из ПЛИСов (и не только), никогда не растаскивал клок на несколько нагрузок (очень полезная привычка на самом деле) и проблем НИКОГДА не было.

И, если я прав, что проблема в клоке, то согласовать столько нагрузок - задача нереальная. Единственный выход в данной ситуации - это повесить эдакую нашлёпку-буфер, на которой размножить клок и раздать свой собственный каждому потребителю.
Либо переделать схему/переразвести плату.
desapp
antti:
1), 2), 3)... Не помогает, к сожалению sad.gif

bms:
Картинки представить не могу - в осциллографе нет никаких портов, а цифровика тоже не имею.
С клоками также имеется горький опыт, но там было 40МГц и выше. Что такие же проблемы могут выползти на 4...5МГц даже в голову не приходило. Значит буду паять нашлёпку - благо есть платка (осталась от прошлых доработок). Результат отпишу
bms
Цитата(desapp @ Oct 10 2006, 18:17) *
Картинки представить не могу - в осциллографе нет никаких портов, а цифровика тоже не имею.
С клоками также имеется горький опыт, но там было 40МГц и выше. Что такие же проблемы могут выползти на 4...5МГц даже в голову не приходило. Значит буду паять нашлёпку - благо есть платка (осталась от прошлых доработок). Результат отпишу


К сожалению теперь (когда появились очень быстрые микросхемы) уже не важно на каких частотах идёт работа - 4 или 40МГц - проблемы все теже самые. Дело ведь не в частоте как таковой, дело в ЧИСТОТЕ фронта, с частотой этот параметр никак не связан. На электрониксе найдёте много на эту тему разговоров.

Забыл сказать ещё вот что, хотя может Вы знаете, но на всякий случай - когда будете паять нашлёпку не забудте поставить на все клоковые линии по последовательному согласующему резистору, номинал в районе 33 Ом. Резисторы должны стоять на передающей стороне, как можно ближе к выходам буфера.
makc
Цитата(bms @ Oct 10 2006, 18:36) *
Забыл сказать ещё вот что, хотя может Вы знаете, но на всякий случай - когда будете паять нашлёпку не забудте поставить на все клоковые линии по последовательному согласующему резистору, номинал в районе 33 Ом. Резисторы должны стоять на передающей стороне, как можно ближе к выходам буфера.


Еще можно посоветовать пошерстить форум на тему HyperLynx и его применения.
desapp
Всем откликнувшимся ОГРОМНОЕ СПАСИБО!!! cheers.gif
Нашлепка из двух корпусов 74LVC04 + последовательные согласующие резисторы (под рукой были 24 Ом) проблему решили. biggrin.gif
Кривовато получилось, в будущем надо искать более компактное решение.
Кстати, уважаемый BMS, не раскроете секрет, что лучше использовать в качестве буферов по клоку в LVTTL?
Я большей частью делаю логические проекты, а тут человек, занимавшийся платой, уволился - пришлось волей-неволей заниматься еще и этими проблемами. Правота Ваша в том, что лучше самому все это осваивать - иначе проблем не избежать. Надежды на печатников никакой - дальше PCADa их протолкнуть невозможно (у нас по крайней мере). Жаль только, что времени на освоение всей этой кухни никак не хватает sad.gif
bms
Цитата(desapp @ Oct 11 2006, 13:58) *
Кстати, уважаемый BMS, не раскроете секрет, что лучше использовать в качестве буферов по клоку в LVTTL?


В данном случае (когда речь идёт о загрузке кофигурации) скорости совсем маленькие и здесь подойдут любые доступные Вам буфера, временные запасы здесь очень большие. Главное соблюсти логические уровни. А LVTTL у Xilinx имеет те же уровни что и CMOS, поэтому - ставьте что Вам удобнее smile.gif
Я лично в конфигурационные клоки обычно ставлю доступную мне в данный момент логику (вроде той же 74LVC04, только без инверсии).

Если же говорить о скоростных клоках - то здесь нужно акуратнее, здесь лучше использовать специально заточенные под это дело микросхемы. Многие фирмы предлагают на эту тему кучу всего, для всех возможных стандартов, с фапчами, без фапчей... бывают даже со встроенными резисторами... решений очень много, вот одна из ссылок:

http://www.idt.com/?catID=58697&source=products_58697

посмотрите, может найдёте что-то более удобное (чем 74LVC04) для себя.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.