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

Программирование Cyclon II

Братцы, помогите советом!

Имеется платка с Cyclone II, построенная по схеме SFL solution. Это значит, что флэшка программируется не напрямую, а через FPGA. Т.е., все сигналы на JTAG выходят из FPGA. А теперь самое главное. На плате нет разъёма для USB бластера. Все сигналы выходят на один общий большой разъём, к которому для дебага на проводах подключен разъём для программирования.

 

Не говорите мне, что так делать нельзя, я знаю. Не я заказываю музыку.

Так вот, пробую программировать - не получается. Касаюсь осциллографом вывода TDO - всё великолепно. Пробовал вешать на землю резистор 1М - не помогло. Конденсатор 10pF - тоже не помогло. Кто-нибудь сталкивался?

 

Сейчас хочу на разъём JTAG подать 5V вместо 3.3 (плата вся питается от 3.3V). И вторая мысль - вместо резистора 1М поставить 1к. Если не получится - хоть вместе с осциллографом программируй! :)

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


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

Ни то ни другое не помогло. Если на разъём подать 5V, то и с осциллографом не программируется. :)

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


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

Я иногда вывожу Jtag на общий разъем, но через буферный усилитель типа 244. Если речь идет о согласовании линии, то TDO я подтягивал к vcc i/o резистором, как в описании для других сигналов JTAG.

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


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

TDO надо обязательно через резистор на питание, там открытый сток.

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


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

1k на VCCIO? Хорошая мысль! Надо попробовать. Спасибо. Ачто за буфер, точное название?

 

 

TDO надо обязательно через Vcc на питание, там открытый сток.
Очень похоже на правду, судя по его поведению, но НИГДЕ, ни в одном datasheet не видел такой рекомендации. Везде показано соединение прямо на разъём без всяких пулл-апов.

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


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

TDO надо обязательно через резистор на питание, там открытый

///////////////////////////////////////

TDO чистый выход. Во всяком случае между стратиксом и EPC8 я гоняю напрямую TDO без всяких резисторов как в даташите. Связи короткие. Если нужно на отдельный разъем вывести, использую у разъема 74lvt244. И вот выход его (TDO) , который идет на байтбластер всегда подтягиваю к vcc i/o.

Потому что в старых даташитах (лет 6 назад) резистор на TDO БЫЛ. Я автоматом размножал на новые проекты. Пока вдруг не увидел. что его уже нет. Но как говорится лучше заложиться. ведь кушатьне просит.

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


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

Сейчас, паяльник нагреется, попробую.

 

Большой и толстый банан, должен я вам доложить! Не помог резистор. Хотя и не помешал! :) Без осциллографа не программируется, с осциллографом - за милую душу. Контрреволюция сплошная...

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


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

По большому счету JTAG цепочка штука капризная. Все, о чем я рассказывал, касалось связки байтбластер МВ (AC244, HC244) c LVT 244. При этом длина кабеля ИМЕЕТ значение. Общая длина JTAG цепочки не более 30 см. (TCK резистор на GND)

Про буфер в USB кабеле ничего не знаю. Во всяком случае дело только в некорректной разводке.

А буферизация JTAG цепочки рекомендована в документации (при определенных условиях).

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


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

Спасибо, sazh. У меня сейчас есть несколько уже собранных плат. Отладить программу можно и на одной. Остальные потом потребуется запрограммировать всего один раз. А на будущее, конечно, надо учесть, что если разъём для программирования не стоит на самой плате, то надо делать буферизацию. И вообще, выпадет время, надо будет поискать/почитать что-нибудь на эту тему.

 

Спасибо всем!

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


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

Во первых - никаких открытых стоков нет ни на каких пинах жтага (IEEE 1149.1 еще не отменяли). А во вторых почти все проблемы в jtag происходят от звона клока, либо от обгона клоком сигналов. Если второе в данном случае маловероятно, то первое вполне реально, и лечится резистором 30-47 ом между пином разъема и дальнейшей цепью. Ну и вторая вероятная проблема - это либо плохо подведенная земля к разъему, либо слишком длинный кабель.

 

И, это, НИ В КОЕМ РАЗЕ не питайте бластер от 5 вольт. Если не хотите заменять потом плисину ;)

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


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

А на будущее, конечно, надо учесть, что если разъём для программирования не стоит на самой плате, то надо делать буферизацию. //////////////////////////////

Буферизация буферизацией, но если все сделано по рекомендациям даташита, то и так должно работать. Проверьте печать. Сравните схему загрузки с даташитом, а не с работающей ранее. Попробуйте загрузить сам кристалл по JTAG. Может где обрыв GND на флешки. Может нет разделительных конденсаторов по питанию. Ведь предложенная связка расчитана на уверенную загрузку. На серию.

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


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

первое вполне реально, и лечится резистором 30-47 ом между пином разъема и дальнейшей цепью.
Сорри, не понял. Между пином TCK? И какой дальнейшей цепью?

это либо плохо подведенная земля к разъему, либо слишком длинный кабель.
Всё свободное место на плате залито землёй. Плата 6-слойная. Есть внутренний слой для земли, и свободные участки на TOP и BOTTOM тоже залиты землёй. Проводники для JTAG-а идут внутри платы. Сама плата - примерно 5.5 х 7 см. Разъём для программирования висит на проводках снаружи. Расстояние до него не более 10 см от FPGA.

 

Клок для работы всей платы должен поступать снаружи. 20 MHz, но во время программирования ничего пока не поступает, не подключено. Т.е. ничего мешать не может - всё стоит.

 

Вот такая задача. Причина, очевидно, всё-таки в висячих проводах, но почему с осциллографом всё работает?

 

Кстати, нельзя ли в Квартусе уменьшить скорость программирования? И если кто знает, киньте ссылкой почитать что-нибудь на эту тему.

 

 

Попробуйте загрузить сам кристалл по JTAG. Может где обрыв GND на флешки
Первый и самый простой тест - кнопка Autodetect в Quartus. Если всё нормально, но возвращается тип присоединённой м/с. В данном случае - EP2C8. Если убрать щуп, то сразу ошибка.

 

Пробовал программировать флэшку, придерживая щуп - всё работает.

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


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

Я видел макетки без единого кондесатора с байтбластером длиной около метра и все грузилось по JTAG. Явно где то ляпа. Надо искать.

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


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

Бластера капризней, чем USBBlaster я еще не встречал.

Он умудряется сбоить на цепочке USBBlaster-лавсановый кабель- 15мм печати - ПЛИС :)

Vinnetu: как уже отмечалось - маленький резистор в разрыв линии TCK не помешает.

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


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

Сорри, не понял. Между пином TCK? И какой дальнейшей цепью?

 

В разрыв, между тем местом, куда попадает TCK от бластера (пин разъема), и дальнейшими цепями.

 

И еще, внимательно - в одной документации сказано, что TCK подвешивать к земле 10 КОм резистором, затем в другой документации поправка, что 1 КОм. Правильно 1 КОм!!! С 10-ю глюков не оберешься, именно с УСБ бластером. Сам нарвался намедне, правда с простым циклоном. И такая лажа в документации на первый циклон, на второй может и нету.

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


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

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

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

Гость
К сожалению, ваш контент содержит запрещённые слова. Пожалуйста, отредактируйте контент, чтобы удалить выделенные ниже слова.
Ответить в этой теме...

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

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

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

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

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

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