Перейти к содержанию
    

Конфигурация Spartan-6 Slave-Serial

Здравствуйте, Уважаемые Профессионалы!

 

Я столкнулся с трудностью при конфигурировании Spartan-6 в режиме Slave-Serial. Данные высылаются в формате big endian и защёлкиваются фронтом сигнала CCLK, но конфигурация не заканчивается и пин DONE не устанавливается в еденицу. Раньше, с идентичным конфигурационным bin файлом, на плате с загрузкой Slave Select-Map чип конфигурировался влёт. Алгоритм следущий (в соответствии с ug380):

1. Сброс PROG_B (больше 300 нс) -> INIT_B сбрасывается в ответ
2. Ожидание высокого уровня на INIT_B
3. DIN побитно (big endian) устанавливается в нужный бит, CCLK защёлкивает данные по фронту

4. В конце кофигурационного файла посылаем нули

 

Осциллограмма конфигурации и схема прицеплены к тексту. Частота CCLCK специально занижена до 150 кГц. Конфигурационный файл сверялся с файлом отгруженным с анализатора, ошибок в байтах нет, INIT_B остаётся на высоком уровне на протяжении всего процесса конфигурации и вроде бы ничто не удерживает пин DONE в состоянии нуля. Проверил распайку и на всякий случай смонтировал вторую такую же плату, но результат тот же.

У кого-нибудь возникали подобные сложности со Slave-Serial? Благодарю за советы!config.bmp

Spoiler

 

Изменено пользователем nazim

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

1. PullUp на DONE есть?

2. Какое тактирование было выбрано при генерации bin файла? CCLK, JTAG или User Clock

3. Что указано в Startup Option (Не установлен ли Wait for DLL Lock)

4. Попробуйте после файла конфигурации передать несколько дополнительных байт. Иногда DONE не взводится и ПЛИС ждет еще несколько тактов.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

2 hours ago, Zig said:

1. PullUp на DONE есть?

На DONE стоит pullup в 330ом к положительной шине питания 3.3в, как было указанов в UG380

 

2 hours ago, Zig said:

2. Какое тактирование было выбрано при генерации bin файла? CCLK, JTAG или User Clock

При генерации бин файла было выбрано тактирование CCLK

 

2 hours ago, Zig said:

3. Что указано в Startup Option (Не установлен ли Wait for DLL Lock)

Wait for DCM and PLL Lock (Output Events) указано: Default (NoWait)

 

2 hours ago, Zig said:

4. Попробуйте после файла конфигурации передать несколько дополнительных байт. Иногда DONE не взводится и ПЛИС ждет еще несколько тактов.

Пробовал от восьми тактов, до нескольких тысяч, при низком уровне на DIN (пробовал также и с высоким) но к сожалению, конфигурация не заканчивается

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

2 hours ago, aaarrr said:

5. Проверьте правильность установки сигналов выбора режима загрузки.

М0 и М1 подключены напрямую к VCCО_2 3.3в, как указано на картинке в UG380, что активизирует режим Slave - Serial

CSI_B, RDWR_B, HSWAPEN и SUSPEND подключёны к земле

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Посмотрел анализатором у себя. Кристалл Spartan-6 XC6SLX150. Загружаю bit файл, не преобразуя в bin.

Первые байты 00 09 0F F0 0F F0 0F F0 0F F0 00 00 01 61. Старший бит вперед. Бит данных изменяется по спаду, стабилен во время фронта.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

4 minutes ago, Zig said:

Посмотрел анализатором у себя. Кристалл Spartan-6 XC6SLX150. Загружаю bit файл, не преобразуя в bin.

Первые байты 00 09 0F F0 0F F0 0F F0 0F F0 00 00 01 61. Старший бит вперед. Бит данных изменяется по спаду, стабилен во время фронта.

Большое спасибо за участие, Zig. Попробую сегодня. Вы уж простите за наглость, но могли бы Вы померить ещё и амплитудное значение CCLK поближе к ножке или хотя бы на резисторном делителе? Может у меня с CCLK неприятность?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

На тактах, ближе к ПЛИС PullUp и PullDown по 100 Ом.

Низкий - 0,66В, высокий 2,54В. Питание IO 3,3В. Частота 12 МГц.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

пе

10 hours ago, Zig said:

На тактах, ближе к ПЛИС PullUp и PullDown по 100 Ом.

Низкий - 0,66В, высокий 2,54В. Питание IO 3,3В. Частота 12 МГц.

Огроменное СПАСИБО, Zig! Сложность была с пином CSI_B, сидевшим на земле и просевшим сигналом CCLK.

После перерезания дорожки соединявшей CSI_B с землёй и подтяжки к плюсу вывода микроконтроллера с которого шла генерация CCLK, верхняя амплитуда поднялась до трёх вольт и всё заработало ) DONE переходит в высокий уровень по окончанию конфигурации.

На второй плате, где CSI_B всё ещё соединён с землёй, конфигурация не заканчивается. Чип XC6SLX9-3TQG144 (speed grade -3), конфигурировал bin файлом, полученым из ISE опцией -g Binary.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

А куда CSI_B подключили? 

Сложность у вас была, видимо, в звенящем CCLK из-за отражений в линии, который увидели бы осциллографом. 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

7 hours ago, ViKo said:

А куда CSI_B подключили? 

Сложность у вас была, видимо, в звенящем CCLK из-за отражений в линии, который увидели бы осциллографом. 

CSI_B просто висит в воздухе, но на нём сейчас +3.3, потому как он подтягивается изнутри к положительной шине, когда HSWAP_EN притянут к земле.

Я смотрел осциллографом у которого заявлены 100МГц (меандр с частотой до 3МГц он должен показывать вполне достоверно), звона не было, но CCLK был просевший до 1.25В. После установки PullUp на пин контроллера с которого идёт сигнал CCLK, уровень поднялся до 3.3 (видно из за того что у меня разводка очень плохая или где-то с монтажом что-то не так, надо над этим поработать). После установки PullUp появился overshoot на переднем фронте и небольшой звон, но теперь конфигурация проходит.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

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

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...