D-Luxe 0 29 ноября, 2011 Опубликовано 29 ноября, 2011 · Жалоба Подскажите как можно запрограммировать Spartan-3e для загрузки Virtex4-FX20, которые связаны между собой. Spartan-3e опрашивает COM-порт и программирует Virtex-4. Если нужна еще какая-то информация напишу. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
hlebn 0 4 декабря, 2011 Опубликовано 4 декабря, 2011 · Жалоба Подскажите как можно запрограммировать Spartan-3e для загрузки Virtex4-FX20, которые связаны между собой. Если связаны только по питанию то без разницы как. Какая связь? По 232 будет заливаться прошивка в ПЛИС при каждом включении?(В теории и по опыту это несколько минут) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
andrew_su 1 4 декабря, 2011 Опубликовано 4 декабря, 2011 · Жалоба Подскажите как можно запрограммировать Spartan-3e для загрузки Virtex4-FX20, которые связаны между собой. Spartan-3e опрашивает COM-порт и программирует Virtex-4. Если нужна еще какая-то информация напишу. Добрый день. Каким образом "связаны" Spartan-3e и Virtex4-FX20? Какой режим конфигурирования выбран для Virtex4-FX20? Соответствует ли "связь" между Spartan-3e и Virtex4-FX20 выбранному режиму? Откуда и каким образом Spartan-3e предполагает получать конфигурационные данные для Virtex4-FX20? Без ответов на эти вопросы вряд ли кто-то возьмётся что-то подсказывать. Удачи. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
yes 5 7 декабря, 2011 Опубликовано 7 декабря, 2011 · Жалоба Подскажите как можно запрограммировать Spartan-3e для загрузки Virtex4-FX20, которые связаны между собой. Spartan-3e опрашивает COM-порт и программирует Virtex-4. Если нужна еще какая-то информация напишу. может вопрос в том - как прошивка Spartan-а окажется в Spartane? ведь ее тоже нужно туда как-то "попасть". а уж только потом разбираться, как залить виртекс Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
D-Luxe 0 25 декабря, 2011 Опубликовано 25 декабря, 2011 · Жалоба Кароче объясняю в деталях. Microblaze получает прошивку по RS232 от PC. Далее кладет в память. После прошивка должна быть передана по интерфейсу Slave Serial, который соединяет Spartan3e и Virtex-4FX. ( см даташит ug071.pdf, на странице 28 есть диаграмма ) Для этой цели я написал компонент который осуществляет передачу по этому интерфейсу. На данный момент проблема в том, что на выходе компонента выдается требуемая последовательность сигналов, но Virtex-4FX не программируется ( это я сужу по светодиоду DONE от Virtex-4FX ). Как это дело можно отладить ? Что я делаю не так? Диаграмма в реал тайм времени ниже. На первой диаграмме: D1 - PROGRAM_B D2 - INIT_B D3 - D_IN D4 - CCLK ( частоту подаю 8МГц ) Foto_1 Foto_2 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
aaarrr 69 25 декабря, 2011 Опубликовано 25 декабря, 2011 · Жалоба Что я делаю не так? Во-первых, CCLK инвертирован - данные должны защелкиваться по фронту CCLK, а выставляться, соответственно, по спаду. Во-вторых, проверьте сам поток - начало "0x85 0xc0" на правду не похоже. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Bad0512 2 26 декабря, 2011 Опубликовано 26 декабря, 2011 · Жалоба Кароче объясняю в деталях. Microblaze получает прошивку по RS232 от PC. Далее кладет в память. После прошивка должна быть передана по интерфейсу Slave Serial, который соединяет Spartan3e и Virtex-4FX. ( см даташит ug071.pdf, на странице 28 есть диаграмма ) Для этой цели я написал компонент который осуществляет передачу по этому интерфейсу. На данный момент проблема в том, что на выходе компонента выдается требуемая последовательность сигналов, но Virtex-4FX не программируется ( это я сужу по светодиоду DONE от Virtex-4FX ). Как это дело можно отладить ? Что я делаю не так? Диаграмма в реал тайм времени ниже. На первой диаграмме: D1 - PROGRAM_B D2 - INIT_B D3 - D_IN D4 - CCLK ( частоту подаю 8МГц ) Foto_1 Foto_2 Ещё как минимум 2 проблемы вижу : 1. Сигнал INIT у вас как-то уж больно быстро вскакивает, обычно у виртексов время на очистку конфигурации (т.е. пока INIT в нуле) составляет микросекунды, а то и десятки микросекунд. У вас этот процесс за 1 такт проходит. Очень странно. 2. Клоки не должны подаваться до тех пор, пока INIT не станет в 1. Диаграмки есть в соответствующем Config guide. Поглядите и сравните с вашими. З Ы А на воропс вы так и не ответили - как спартан-то грузится, ну тот который с микроблейзом? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
D-Luxe 0 26 декабря, 2011 Опубликовано 26 декабря, 2011 · Жалоба Спартан грузится из PROM при включении питания ( схемотехнически то есть ). Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
andrew_su 1 26 декабря, 2011 Опубликовано 26 декабря, 2011 · Жалоба Добрый день. 1. Прислушайтесь к aaarrr. Совершенно справедливое замечание по поводу полярности CCLK. 2. Возможно я ошибаюсь, но по виду осциллограммы складывается впечатление, что вы сами формируете INIT_B. Однако в процессе загрузки конфигурации это open-drain выход. 3. CCLK у вас 8МГц(125нс период), и длительность PROGRAM_B = 1 такт, хотя в соответствии с табл.43 на стр. 46 файла ds302.pdf "TPROGRAM Program Pulse Width 300 ns, Min." И на это следует обратить внимание. Некоторое время назад я реализовывал загрузку конфигурации Virtex5 процессором, правда в параллельном режиме, самостоятельно формируя PROGRAM_B. После выставления PROGRAM_B дожидался перехода INIT_B в "0", после этого переводил PROGRAM_B в "1" и дожидался перехода INIT_B в "1", что свидельствовало об окончании очистки(инициализации) памяти конфигурации FPGA и ее готовности к приему конфигурационных данных. Кроме того в процессе загрузки необходимо контролировать INIT_B. Если он перейдет в "0", значит произошло нарушение CRC. Удачи. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
D-Luxe 0 25 января, 2012 Опубликовано 25 января, 2012 · Жалоба На данный момент загрузка реализована по логике, описанной Andrew Su. http://postimage.org/image/vdy0susv1/ http://postimage.org/image/htgfl7rtp/ http://postimage.org/image/yso0eco87/ На рисунках видно что после приема D3 (INIT_B) == 0, D2 (PROG_B) сбрасывается в 1, и потом ожидается поднятие D3. После подается частота D0 ( CCLK ) и загружаются данные. Частота - 8 Мгц. Virtex-4 не хочет загружаться почему-то. Загружаю я bin файл, сгенерированной средой EDK. Подскажите в чем дело? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
dsmv 0 27 января, 2012 Опубликовано 27 января, 2012 · Жалоба Обратите внимание, что после передачи всего файла прошивки, нужно сформировать ещё какое-то количество тактов clk. У нас подаётся ещё 100 тактов. Можно и больше. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
D-Luxe 0 24 февраля, 2012 Опубликовано 24 февраля, 2012 · Жалоба Еще непонятно почему размер bin файла - 905,328. Хотя из данных в Virtex-4 Guide, должно быть - 905,280. 2dsmv Подскажите вы bin файл используете, сгенерированный EDK? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Bad0512 2 24 февраля, 2012 Опубликовано 24 февраля, 2012 · Жалоба Еще непонятно почему размер bin файла - 905,328. Хотя из данных в Virtex-4 Guide, должно быть - 905,280. Это может быть заголовок, только такой заголовок обычно бывает у *.bit файлов. То обстоятельство, что биты в байте перевёрнуты для бинарного формата учитываете? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
D-Luxe 0 24 февраля, 2012 Опубликовано 24 февраля, 2012 · Жалоба Это может быть заголовок, только такой заголовок обычно бывает у *.bit файлов. То обстоятельство, что биты в байте перевёрнуты для бинарного формата учитываете? В бин файле байты не перевернуты. Так написано в даташите. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Bad0512 2 25 февраля, 2012 Опубликовано 25 февраля, 2012 · Жалоба В бин файле байты не перевернуты. Так написано в даташите. Хорошо, зададим вопрос по-другому : Каким битом вперёд вы выталкиваете байтовые данные для загрузки Virtex, младшим или старшим? MSB first or LSB first? По даташиту надо чтобы было MSB first. P S поглядел на ваши картинки - вроде всё правильно у вас с порядком следования бит... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться