MrGalaxy 9 16 февраля, 2023 Опубликовано 16 февраля, 2023 · Жалоба День добрый! В связи с прекращением выпуска 5576РС1У собираюсь использовать микроконтроллер с размещением прошивки для ПЛИС внутри микроконтроллера. Размер прошивки около 100 Кбайт, размер флешь-памяти 1921ВК035 64 Кбайта. 1. Получится ли использовать две микросхемы 1921ВК035 в режиме master-slave для конфигурирования ПЛИС? Или надо три микросхемы? Или такое в принципе невозможно? 2. Можно ли программировать микросхемы, подключенные последовательно в цепочке JTAG, или обязательно выводить свой JTAG каждой микросхемы? 3. Если кто знает, какой срок хранения данных у этой микросхемы? В ТУ я не нашёл Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
MegaVolt 29 16 февраля, 2023 Опубликовано 16 февраля, 2023 · Жалоба 1. Если шьёт процессор то он и является мастером и он же формирует все сигналы. Как следствие он может хранить данные как хочет и где хочет. Хоть в базе данных :)))) 2. Раз управляет проц то можно всё что угодно включая и работу в цепочке. По поводу самой реализации рекомендую глянуть код который генерит прошивалка для JTAG... расширение файлов у xilinx *.xcf . Под него есть дока с описанием формата. Отлично реализуется для проца. 1 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
sorok-odin 5 16 февраля, 2023 Опубликовано 16 февраля, 2023 · Жалоба 4 часа назад, MrGalaxy сказал: Размер прошивки около 100 Кбайт А еще попробуйте сжать файл прошивки, а распаковывать налету при загрузке в ПЛИС. Вот, как тут сделали, например. 1 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
MrGalaxy 9 17 февраля, 2023 Опубликовано 17 февраля, 2023 · Жалоба 11 часов назад, MegaVolt сказал: 2. Раз управляет проц то можно всё что угодно включая и работу в цепочке. Имелось в виду не программирование ПЛИС, а программирование контроллеров. На плате мало места, выводить 2 разъёма нежелательно. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
makc 234 17 февраля, 2023 Опубликовано 17 февраля, 2023 · Жалоба 16 часов назад, MrGalaxy сказал: 2. Можно ли программировать микросхемы, подключенные последовательно в цепочке JTAG, или обязательно выводить свой JTAG каждой микросхемы? Можно, но нужно чтобы ПО программирования поддерживало этот режим работы (МК в цепочке). Если вы будете шить через OpenOCD, то это будет работать в цепочке практически любой длины, но нужно уделить особое внимание трассировке сигнала TCK, т.к. при разводке его звездой могут начинаться неприятные эффекты. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
byRAM 24 17 февраля, 2023 Опубликовано 17 февраля, 2023 · Жалоба 15 часов назад, MrGalaxy сказал: 2. Можно ли программировать микросхемы, подключенные последовательно в цепочке JTAG, или обязательно выводить свой JTAG каждой микросхемы? Проще добавить пару контактов и объединить JTAGи, используя для программирования каждого микроконтроллера отдельный переходник. 1 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
makc 234 17 февраля, 2023 Опубликовано 17 февраля, 2023 · Жалоба 1 час назад, byRAM сказал: Проще добавить пару контактов и объединить JTAGи, используя для программирования каждого микроконтроллера отдельный переходник. Чем проще? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
byRAM 24 17 февраля, 2023 Опубликовано 17 февраля, 2023 · Жалоба 17 минут назад, makc сказал: Чем проще? Трассировкой проще, а кроме того - надёжнее. У нас не всегда даже TMSы, которые заструганы для программирования паровозиком, выходит так программировать. 1 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
MrGalaxy 9 17 февраля, 2023 Опубликовано 17 февраля, 2023 · Жалоба Может у кого есть опыт работы именно с этим контроллером (среда программирования CodeMaster++). Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
makc 234 17 февраля, 2023 Опубликовано 17 февраля, 2023 · Жалоба 1 час назад, byRAM сказал: Трассировкой проще, а кроме того - надёжнее. Надёжность в контексте исключительно отладочного интерфейса так себе аргумент. Ну а с трассировкой нужно просто не от фонаря протащить TCK, а учесть минимизацию стабов и сделать какое-никакое согласование. Что характерно, практически всё то же самое требуется и для варианта точка-точка. 1 час назад, byRAM сказал: У нас не всегда даже TMSы, которые заструганы для программирования паровозиком, выходит так программировать. TMSов не было, но плата формата ATX с 5 ПЛИС в цепочке + ещё один гибрид (Zynq) прекрасно отлаживалась и прошивалась на частоте около 10 МГц. Но там всё было сделано аккуратно. Учитывая дубовость JTAG самого по себе (нет жёсткого требования выравнивания длин трасс), то мне кажется что в вашем случае кто-то совершил несколько грубых ошибок, а кто-то это потом принял за норму и смирился, вместо того чтобы разобраться и больше не наступать на те же грабли. PS: как без соединения в одну цепочку вы можете использовать boundary scan тестирование соединений? Ответ практически однозначен: сложно или вообще никак. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
byRAM 24 17 февраля, 2023 Опубликовано 17 февраля, 2023 · Жалоба 1 час назад, makc сказал: TMSов не было, но плата формата ATX с 5 ПЛИС в цепочке + ещё один гибрид (Zynq) прекрасно отлаживалась и прошивалась на частоте около 10 МГц. Но там всё было сделано аккуратно. Учитывая дубовость JTAG самого по себе (нет жёсткого требования выравнивания длин трасс), то мне кажется что в вашем случае кто-то совершил несколько грубых ошибок, а кто-то это потом принял за норму и смирился, вместо того чтобы разобраться и больше не наступать на те же грабли. Иностранные ПЛИС изначально заструганы для такого программирования, а обсуждаемые микроконтроллеры - под вопросом, заструганы или нет. Если нет, то я бы не рискнул их так программировать, потом в случае неудачи мороки куда бо́льше будет, чем с изначальным разделением на одной вилке 3-x JTAGов. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
makc 234 17 февраля, 2023 Опубликовано 17 февраля, 2023 · Жалоба 4 часа назад, byRAM сказал: Иностранные ПЛИС изначально заструганы для такого программирования, а обсуждаемые микроконтроллеры - под вопросом, заструганы или нет. Стандарт на JTAG един для всех и поэтому я не понимаю в чём конкретно выражается "заструганность" ПЛИС по сравнению с МК? Поясните, пожалуйста, в деталях разницу заструганных и незаструганных девайсов. 4 часа назад, byRAM сказал: Если нет, то я бы не рискнул их так программировать, потом в случае неудачи мороки куда бо́льше будет, чем с изначальным разделением на одной вилке 3-x JTAGов. Мне кажется вы излишне это драматизируете. Консерватизм это хорошо (в некоторых областях), но важно чтобы он не перерос в ретроградство. ;-) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
byRAM 24 17 февраля, 2023 Опубликовано 17 февраля, 2023 · Жалоба 25 минут назад, makc сказал: Стандарт на JTAG един для всех и поэтому я не понимаю в чём конкретно выражается "заструганность" ПЛИС по сравнению с МК? Поясните, пожалуйста, в деталях разницу заструганных и незаструганных девайсов. Всё очень просто: в документации должна быть указана возможность такого программирования и нарисована схема подключения нескольких устройств при программировании конкретным отладчиком или программатором. Такое есть, например, у Xilinx. Особо "заструганные" устройства имеют развязанные через буфер входы и выходы сигналов JTAG. Если в КД на этот микроконтроллер или программатор для него ничего такого нет, то разработчик, включивший его таким образом, как Вы предлагаете, будет действовать на свой страх и риск. А в случае возникновения проблем производитель претензии точно не примет. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
makc 234 17 февраля, 2023 Опубликовано 17 февраля, 2023 · Жалоба 1 час назад, byRAM сказал: Всё очень просто: в документации должна быть указана возможность такого программирования и нарисована схема подключения нескольких устройств при программировании конкретным отладчиком или программатором. Эта возможность предписана стандартом на JTAG и у тех же STM32 вариант программирования в цепочке не описан, однако они шьются в таком варианте "на ура", т.к. стандарт это позволяет. ЧЯДНТ? :-) 1 час назад, byRAM сказал: Если в КД на этот микроконтроллер или программатор для него ничего такого нет, то разработчик, включивший его таким образом, как Вы предлагаете, будет действовать на свой страх и риск. А в случае возникновения проблем производитель претензии точно не примет. Если в КД на МК написано "реализует JTAG", то должно и будет работать, если только разработчик не ошибётся при разработке платы. Но это не вина МК и его производителя, а ответственность разработчика платы. В общем вы пока никаких разумных обоснований насчёт проблем с JTAGом у данных МК или других им подобных не привели. Поскольку в среде разработки от НИИЭТ используется OpenOCD, то я вообще никаких проблем не вижу в объединении этих МК с ПЛИС в одну цепочку. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
byRAM 24 17 февраля, 2023 Опубликовано 17 февраля, 2023 · Жалоба 16 минут назад, makc сказал: В общем вы пока никаких разумных обоснований насчёт проблем с JTAGом у данных МК или других им подобных не привели. Поскольку в среде разработки от НИИЭТ используется OpenOCD, то я вообще никаких проблем не вижу в объединении этих МК с ПЛИС в одну цепочку. Ну что же, объединяйте, я не против. Разумных обоснований против моего варианта я тоже не увидел. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться