Что ж, с FPGA JFMK50T4 от Shanghai Fudan Microelectronics оказалось все не так-то просто, как хотелось бы. Если раньше, в случае с BMTI у нас один в один подходили BSDL-файлы от Xilinx, то здесь пришлось поковыряться. И более того, если возникнет необходимость, видимо придется разбираться с BSDL и далее. Сейчас BSDL вполне рабочий, но есть нюансы. Приличная часть ячеек может только выставлять данные, а считывать данные не хочет. Но есть и «нормальные» ячейки, которые корректно делают и «drive» и «sense».
Вкратце, что пришлось сделать. Китайская сторона на самом деле предоставила даже BSDL. Но открыв этот BSDL, увидел, что соответствующей чипу Fudan является только часть, описывающая регистр Boundary-Scan. Пинмап и порты оставлены от Xilinx. Это было и болью и удачей одновременно. Боль в том, что нужно было переделывать, а радость в том, что Fudan в описании регистра дал подсказку о физическом расположении пинов и соответствии им ячеек, благо в названиях многих IO имелся номер шарика BGA. Почему так? Подозреваю, что BSDL был сделан не для периферийного сканирования, где нужны физические пины, а для корректной работы в Vivado.
Какие-то пины все же пришлось додумывать самому, не все были в подсказке. Особенно такие, как PROGRAM_B, который у Xilinx всегда должен быть в «1», чтобы работало периферийное сканирование, а здесь все работает только при «0». Тоже загадка.
Судя по всему, требуется тонкая настройка BSDL, которая является довольно кропотливым делом. Однако следует заметить, что даже с таким BSDL удалось протестировать и стереть конфигурационную флэшку FM25Q128A (тоже Fudan Micro), воспользовавшись моделью от западного аналога.
Скоро опишем все мытарства в статье, ссылку обязательно дадим. А пока, ниже предоставляем видео со светодиодами!
Вкратце, что пришлось сделать. Китайская сторона на самом деле предоставила даже BSDL. Но открыв этот BSDL, увидел, что соответствующей чипу Fudan является только часть, описывающая регистр Boundary-Scan. Пинмап и порты оставлены от Xilinx. Это было и болью и удачей одновременно. Боль в том, что нужно было переделывать, а радость в том, что Fudan в описании регистра дал подсказку о физическом расположении пинов и соответствии им ячеек, благо в названиях многих IO имелся номер шарика BGA. Почему так? Подозреваю, что BSDL был сделан не для периферийного сканирования, где нужны физические пины, а для корректной работы в Vivado.
Какие-то пины все же пришлось додумывать самому, не все были в подсказке. Особенно такие, как PROGRAM_B, который у Xilinx всегда должен быть в «1», чтобы работало периферийное сканирование, а здесь все работает только при «0». Тоже загадка.
Судя по всему, требуется тонкая настройка BSDL, которая является довольно кропотливым делом. Однако следует заметить, что даже с таким BSDL удалось протестировать и стереть конфигурационную флэшку FM25Q128A (тоже Fudan Micro), воспользовавшись моделью от западного аналога.
Скоро опишем все мытарства в статье, ссылку обязательно дадим. А пока, ниже предоставляем видео со светодиодами!