Jump to content

    
Sign in to follow this  
zombi

Уменьшить время прошивки 4-х плис

Recommended Posts

В JTAG цепочке 4-ре плис MAX10. Все 10М02, первая в корпусе U324, остальные U169.

Файл прошивки для U324 - A.pof, для U169 один для всех - B.pof

Программирую путём запуска BAT файла из командной строки в котором стартует quartus_pgmm.exe с параметром *.cdf

Сам BAT файл:

Spoiler

@CLS
@ECHO Erase
@quartus_pgmm.exe -c USB-Blaster E.cdf
@ECHO Programm
@quartus_pgmm.exe -c USB-Blaster P.cdf
@pause

E.cdf

Spoiler

/* Quartus Prime 32-bit Version 17.1.0 Build 590 10/25/2017 SJ Standard Edition */
JedecChain;
    FileRevision(JESD32A);
    DefaultMfr(6E);

    P ActionCode(Ign)
        Device PartName(10M02SCU324) MfrSpec(OpMask(128));
    P ActionCode(Ign)
        Device PartName(10M02SCU169) MfrSpec(OpMask(128));
    P ActionCode(Ign)
        Device PartName(10M02SCU169) MfrSpec(OpMask(128));
    P ActionCode(Ign)
        Device PartName(10M02SCU169) MfrSpec(OpMask(128));

ChainEnd;

AlteraBegin;
    ChainType(JTAG);
AlteraEnd;
 

P.cdf

Spoiler

/* Quartus Prime 32-bit Version 17.1.0 Build 590 10/25/2017 SJ Standard Edition */
JedecChain;
    FileRevision(JESD32A);
    DefaultMfr(6E);

    P ActionCode(Cfg)
        Device PartName(10M02SCU324) File("A.pof") MfrSpec(OpMask(1) Child_OpMask(2 1 0));
    P ActionCode(Cfg)
        Device PartName(10M02SCU169) File("B.pof") MfrSpec(OpMask(1) Child_OpMask(2 1 0));
    P ActionCode(Cfg)
        Device PartName(10M02SCU169) File("B.pof") MfrSpec(OpMask(1) Child_OpMask(2 1 0));
    P ActionCode(Cfg)
        Device PartName(10M02SCU169) File("B.pof") MfrSpec(OpMask(1) Child_OpMask(2 1 0));

ChainEnd;

AlteraBegin;
    ChainType(JTAG);
AlteraEnd;
 

Результат работы (копия экрана):

Spoiler

Erase
Info: *******************************************************************
Info: Running Quartus Prime 32-bit Programmer
    Info: Version 17.1.0 Build 590 10/25/2017 SJ Standard Edition
    Info: Copyright (C) 2017  Intel Corporation. All rights reserved.
    Info: Your use of Intel Corporation's design tools, logic functions 
    Info: and other software and tools, and its AMPP partner logic 
    Info: functions, and any output files from any of the foregoing 
    Info: (including device programming or simulation files), and any 
    Info: associated documentation or information are expressly subject 
    Info: to the terms and conditions of the Intel Program License 
    Info: Subscription Agreement, the Intel Quartus Prime License Agreement,
    Info: the Intel FPGA IP License Agreement, or other applicable license
    Info: agreement, including, without limitation, that your use is for
    Info: the sole purpose of programming logic devices manufactured by
    Info: Intel and sold by Intel or its authorized distributors.  Please
    Info: refer to the applicable agreement for further details.
    Info: Processing started: Sun Oct 18 15:03:39 2020
Info: Command: quartus_pgm -c USB-Blaster E.cdf
Info (213045): Using programming cable "USB-Blaster [USB-0]"
Info (209060): Started Programmer operation at Sun Oct 18 15:03:47 2020
Info (209017): Device 1 contains JTAG ID code 0x0319A0DD
Info (209017): Device 2 contains JTAG ID code 0x031810DD
Info (209017): Device 3 contains JTAG ID code 0x031810DD
Info (209017): Device 4 contains JTAG ID code 0x031810DD
Info (209044): Erasing MAX 10 configuration device(s)
Info (209011): Successfully performed operation(s)
Info (209061): Ended Programmer operation at Sun Oct 18 15:03:48 2020
Info: Quartus Prime 32-bit Programmer was successful. 0 errors, 0 warnings
    Info: Peak virtual memory: 176 megabytes
    Info: Processing ended: Sun Oct 18 15:03:48 2020
    Info: Elapsed time: 00:00:09
    Info: Total CPU time (on all processors): 00:00:01
Programm
Info: *******************************************************************
Info: Running Quartus Prime 32-bit Programmer
    Info: Version 17.1.0 Build 590 10/25/2017 SJ Standard Edition
    Info: Copyright (C) 2017  Intel Corporation. All rights reserved.
    Info: Your use of Intel Corporation's design tools, logic functions 
    Info: and other software and tools, and its AMPP partner logic 
    Info: functions, and any output files from any of the foregoing 
    Info: (including device programming or simulation files), and any 
    Info: associated documentation or information are expressly subject 
    Info: to the terms and conditions of the Intel Program License 
    Info: Subscription Agreement, the Intel Quartus Prime License Agreement,
    Info: the Intel FPGA IP License Agreement, or other applicable license
    Info: agreement, including, without limitation, that your use is for
    Info: the sole purpose of programming logic devices manufactured by
    Info: Intel and sold by Intel or its authorized distributors.  Please
    Info: refer to the applicable agreement for further details.
    Info: Processing started: Sun Oct 18 15:03:48 2020
Info: Command: quartus_pgm -c USB-Blaster P.cdf
Info (213045): Using programming cable "USB-Blaster [USB-0]"
Info (213011): Using programming file A.pof with checksum 0x03985522 for device 10M02SCU324@1
Info (213011): Using programming file B.pof with checksum 0x00CE3C8F for device 10M02SCU169@2
Info (213011): Using programming file B.pof with checksum 0x00CE3C8F for device 10M02SCU169@3
Info (213011): Using programming file B.pof with checksum 0x00CE3C8F for device 10M02SCU169@4
Info (209060): Started Programmer operation at Sun Oct 18 15:03:57 2020
Info (209017): Device 1 contains JTAG ID code 0x0319A0DD
Info (209017): Device 2 contains JTAG ID code 0x031810DD
Info (209017): Device 3 contains JTAG ID code 0x031810DD
Info (209017): Device 4 contains JTAG ID code 0x031810DD
Info (209044): Erasing MAX 10 configuration device(s)
Info (209023): Programming device(s)
Info (209021): Performing verification on device(s)   <- 2:45 пауза здесь
Info (209023): Programming device(s)

Info (209011): Successfully performed operation(s)
Info (209061): Ended Programmer operation at Sun Oct 18 15:07:17 2020
Info: Quartus Prime 32-bit Programmer was successful. 0 errors, 0 warnings
    Info: Peak virtual memory: 179 megabytes
    Info: Processing ended: Sun Oct 18 15:07:17 2020
    Info: Elapsed time: 00:03:29
    Info: Total CPU time (on all processors): 00:00:04
Для продолжения нажмите любую клавишу . . . 

Время программирования 3 минуты 29 сек!

Причём 2 мин. 45 сек - это между строками :

"Info (209021): Performing verification on device(s)" и "Info (209023): Programming device(s)"

Как я понимаю это verify?

Как запретить процесс сравнения?

Или как ускорить всю эту "кухню"?

Рад любым советам, ибо три с половиной минуты ну ни в какие ворота!!!

Share this post


Link to post
Share on other sites
1 час назад, zombi сказал:

Как запретить процесс сравнения?

Или как ускорить всю эту "кухню"?

Рад любым советам, ибо три с половиной минуты ну ни в какие ворота!!!

солидный прибор должен программироваться неспешно..

если нет локальной доки, то поищите "quartus_pgm command line" и там в разделе запуска с опциями не используйте V verify

но я бы не стал такой ерундой страдать, дажа при шансе 1 сбой на 10 загрузок это может неслабо аукнуться

Share this post


Link to post
Share on other sites
3 hours ago, Jury093 said:

при шансе 1 сбой на 10 загрузок это может неслабо аукнуться

Даже если что-то не так прожглось то изделие не будет работать в принципе.

Что вылезет при обязательном полном тестировании целиком всего изделия в лаборатории.

Но проблема кажется не в сравнении а в чём-то другом.

 

Продолжил копать дальше.

Теперь запускаю quartus_pgm c параметрами и опциями.

Оказалось что если программировать по одному корпусу U169, то общее время стирания и прожига каждой мс примерно 17 сек.

Даже если все три корпуса U169 скопом в одной командной строке писать - примерно 30 сек. занимает.

И только если один корпус U324 (или вместе с U169-ми) программировать - время 3 мин 30 сек!

Т.е. если программируется U324 - время 3:30, независимо от того один этот чип или вся цепочка пишется!

Что за беда такая? В чем может быть проблема?

Может quartus_pgm обновить? Какая версия последняя 32-х битная есть?

 

Share this post


Link to post
Share on other sites

Всё, разобрался.

Качнул Quartus Prime Standard Edition Quartus Prime 18.1 Programmer and Tools (32-bit) (вроде как последняя 32-битная версия).

Теперь весь "колхоз" за 50 сек стирает и шьёт :dance3:

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this