Cart New Account Login

HomeAbout usProductsSupportForumsBlogCustomer Service

search inside this forum
Pressing START in cyclone MAX ERASE block
Dorleta O. Mar 27, 2017 at 05:11 AM (05:11 hours)
Staff: Takao Y.

  • Hello,

    We program a Coldfire with a .bat with this content
    c:\PEMICRO\PROGCFZ\CPROGcfz C:\PRUEBA.CFG INTERFACE=CYCLONEMAX PORT=USB1 BDM_SPEED 1 and the config file is
    RE ;
    DE 6000;
    CM C:\pemicro\progcfz\algorithms\AMD_29LV320D-B_1x16x2meg.CFP 0 ;
    DE 4000 ;
    EM ;
    BM ;
    SS C:\pemicro\111128d_ikor_recortado.S19 ;
    DE 4000 ;
    PM ;
    VM ;
    DE 6000 ;

    If we write those commands withouth the delays and press Save Image to Cyclone and then execute the .bat everything goes fine.
    We want to use the START button in the cyclone MAX to do mass programming in production line (and we think it can be faster) but after pressing the START button the Erase led on the cyclone max stays on forever.

    We have tried to change the comands in the cyclone max window to exactly the same content of the .cfg, press Save Image to Cyclone and then press START button and we obtain the same result. Erase led keeps on for ages.

    Isn't it suppose that the start button executes what it's in the programming sequence of the cyclone MAX? What's the difference between cprogcfz and the START button?

    Please help us getting to use the stand alone START button of the cyclone max.




    Comments

  • Greetings,

    Sounds like what is happening is you are communicating to your target board too fast. Here are some suggestions:

    1) Remove your RE command. This is redundant because the CM command to load the algorithm already does a reset. This can cut time out of production.

    2) Lower the debug shift frequency. This is the speed you are talking to your target and if it is too fast then you run the risk of having problems during loading algorithm, erasing, programming, or verifying.

    3) VM (verify module) is typically slow because it is doing a byte-by-byte comparison. You can look into using the VC (verify checksum) command which may not give you a 100% guarantee verification but the case for a double bit-flip is extremely low and much faster to complete.

    CPROG and using the Standalone programming is almost identical but there are timing differences. CPROG is bottle-necked by the USB or Ethernet protocol and there is plenty of time between commands. While the cyclone is not slowed down by any middlemen so it talks to the chip at the fastest rate and you may need to slow it down to ensure a strong communication.


    Takao Yamada

    • Hello Takao,

      First of all thank you very much for your detailed and fast answer.

      I have modified the cfg file in order to use the VC instruction instead of the VM and it does take shorter verifying just the checksum than all bytes. I also have removed the RE instruction and also works fine. I didn't know the CM command included that already.

      In order to be able to use the START button I have set the BDM shift frequency to number 5 (3333333Hz) instead of 1. I first have tried with number 2 and the result was the same, Erase process won't finish, then I've tested the slowest frequency number 31 and didn't work, same result as it happened with number 1 and 2. But since the default frequency once I select the architecture was set to 5 I have tried like that and it worked.

      What it took as with the cprogcfz 4 minutes with the BDM set to 1 (I understand that is not the real frequency of communication), with the start button with BDM set to 5 (slower) takes us 50 seconds. So we are very happy with the results obtained because our production line is 4 times faster.

      We should pay you a % of benefit for each board produced. :)

      Thanks a million Takao.

  • Greetings,

    Although slower in BDM frequency, you are more efficiently talking to the chip due to the lack of USB or Ethernet protocol bottleneck so you will see faster programming. I am glad I was able to resolve your issue and make your programming faster.

    One last thing to add to make things faster is using EN command instead of EM. The EM command forces an erase on the chip, while EN will first detect if the chip is already blank and only erases if it is not. This can save you time if the chip is already blank then it moves on to programming. Erasing an already erased chip is more time spent.

    You can also play around with the BDM shift frequency. Try option 4, see if you get reliable and fast results. If so, then try option 3. Until you get problems programming or you get unreliable results. Trial-and-error to get the fastest and reliable communication.


    Takao Yamada

    • Hello Takao,

      I understand your explanation. I have changed the EM command for the EN. It saves around 10s and in production line all the chips are erased at first time so it's a good point to take into account.

      I will test different BDM shift frequency.

      Thanks a million for your intereset and support.

      Have a nice weekend!

Add comment


   Want to comment? Please login or create a new PEMicro account.







© 2017 P&E Microcomputer Systems Inc.
Website Terms of Use and Sales Agreement