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

Spartan-6 нет DONE

Есть параллельно на шине две FPGA Xilinx Spartan-6.

Параллельно - около 40 выводов подключены на параллельную шину через Rs=10 Ом.

Режим загрузки M=11 (slave serial).

В начальном состоянии PROG_B=0, INIT=0, дальше по UG.

Если на шине оставить одну плату, то загружается все нормально.

 

Когда две, после заагрузки прошивки в одну из получаю: INIT=1, DONE=0

При этом вторая в состоянии удерживается PROG_B=0, INIT=0, HSWAPEN=0, M=11

Дополнительные такты CCLK для продления startup-seq, ничего не дают.

Startup типовой, без ожидания PLL, DCIM. Все тактовые и питания есть (точность напряжений 1%).

 

Но если при загрузке первой матрицы, сделать для второй состояние PROG_B=1 => INIT=1 (провести захват режима M=11)

То у первой DONE выставляется нормально.

Похоже что есть работа выход на выход, но этого не должно быть при PROG_B=0, INIT=0.

 

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


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

Есть параллельно на шине две FPGA Xilinx Spartan-6.

Параллельно - около 40 выводов подключены на параллельную шину через Rs=10 Ом.

Режим загрузки M=11 (slave serial).

В начальном состоянии PROG_B=0, INIT=0, дальше по UG.

Если на шине оставить одну плату, то загружается все нормально.

 

Когда две, после заагрузки прошивки в одну из получаю: INIT=1, DONE=0

При этом вторая в состоянии удерживается PROG_B=0, INIT=0, HSWAPEN=0, M=11

Дополнительные такты CCLK для продления startup-seq, ничего не дают.

Startup типовой, без ожидания PLL, DCIM. Все тактовые и питания есть (точность напряжений 1%).

 

Но если при загрузке первой матрицы, сделать для второй состояние PROG_B=1 => INIT=1 (провести захват режима M=11)

То у первой DONE выставляется нормально.

Похоже что есть работа выход на выход, но этого не должно быть при PROG_B=0, INIT=0.

Не понятно какие сигналы общие, какие нет

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


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

Нашел проблему. INIT_B соединены вместе с расчетом на open-drain. Но пока PROGRAM_B=0 этот вывод удерживается в нуле внутри FPGA.

Поэтому пока одна из матриц в состоянии PROGRAM_B=0, то она утягивает INIT_B в ноль, задерживая загрузку.

На INIT_B ошибочно читали 1, программист возвращал состояние не того вывода.

 

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


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

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

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

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

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

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

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

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

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

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