We have found that by using the flash_over_jtag.exe application from
Motorola, the program downloads to our systems over the JTAG port take about 1/3 of the time when compared to the downloads from the CodeWarrior IDE. This is ***NOT*** a criticism of CodeWarrior, which (of course) is forced to use the higher-level Windows I/O Port Driver. The flash_over_jtag.exe application from Motorola, if you look at the source code that comes with the SDK, uses direct I/O Port hardware reads and writes. The result, for our largest program, is that downloads that used to take over 5 minutes, now take about 1 minute and 20 seconds. You can get the flash_over_jtag.exe application from here: http://e-www.motorola.com/cgi-bin/faq.cgi, search for FAQ number 19703. [Note: Many thanks to Ljubisa on this one!] In order to run the flash_over_jtag.exe application, you must first remove the PC's Parallel Port from being controlled by the operating system. This is done by copying the UserPort.sys file to %WINDIR%\SYSTEM32\DRIVERS and running the UserPort.exe application. See the UserPort.pdf file for more detailed information on installing and running the UserPort.exe application. When you run it, the only address range that should be used is the LPT1 printer port addresses, 378-37F. After running the UserPort.exe application, the flash_over_jtag.exe application can be run. The files Flash_over_JTAG.pdf and flash_over_jtag.txt explain how to use this application, but to get you started quickly, here is the procedure I use: 1) Run the UserPort.exe application, make sure that the only address range is 378-37F, and click the Start button. 2) Copy your target application's S-Record File (for example, Flash.elf.S) from your project's Debug directory (eg C:\Development\DSP568xx\8550A005\Software\Debug) to the directory where you put the flash_over_jtag.exe application (eg C:\Development\DSP568xx\Moto_SDK\Flash_over_JTAG). 3) Open up a Command Prompt window, like an MS-DOS window, and CD to the directory where you put the flash_over_jtag.exe application. Run the flash_over_jtag.exe application as follows (for the 807 chip): flash_over_jtag flash807.cfg Flash.elf.S 4) The output from the flash_over_jtag.exe application looks like the following (the first 3 lines below are actually repeated a number of times): Data @ 0xF000 ignored Data @ 0xF026 ignored Data @ 0x40 ignored Initialising FIU at address: 0x1380 FIU (0x1380) initialisation done. Flash (0x1380) mass erase done. Flash (0x1380) programming done. 0 words written. Initialising FIU at address: 0x1340 FIU (0x1340) initialisation done. Flash (0x1340) mass erase done. Flash (0x1340) programming done. 0x7ffc words written. Initialising FIU at address: 0x1420 FIU (0x1420) initialisation done. Flash (0x1420) mass erase done. Flash (0x1420) programming done. 0x5f60 words written. Initialising FIU at address: 0x1380 FIU (0x1380) initialisation done. Mass erase skipped. Flash (0x1380) programming done. 0x4 words written. Initialising FIU at address: 0x1360 FIU (0x1360) initialisation done. Flash (0x1360) mass erase done. Flash (0x1360) programming done. 0 words written. The target was reset, the application is running 5) Run the UserPort.exe application, and click the Stop button. This gives control of the PC's Parallel Port back to the operating system. 6) You can still use CodeWarrior to debug the program, just make sure that the tickbox marked "Always load program at debugger launch" is NOT checked in the Target Settings panel. Art Johnson Senior Systems Analyst PMC Prime Mover Controls Inc. 3600 Gilmore Way Burnaby, B.C., Canada V5G 4R8 Phone: 604 433-4644 FAX: 604 433-5570 Email: http://www.pmc-controls.com | |||
| |||
DSP56F800 Flash loader. Compiled on Jul 3 2002, 19:04:20. version Delta 0.6 (c) Motorola 2001 - 2002, MCSL Usage: Flash_over_JTAG <flash config file> <S-record file> [<options>] or Flash_over_JTAG <flash config file> [<options>] Options: -pPORT PORT specifies the printer port address, the default is 0x378 (LPT1) -page Specifies that page erases should be used instead of mass erase -info Access information blocks of Flash units instead of main blocks -mI,D Support for JTAG daisy-chain. I and D specify position in the chain -l<log file> Write messages into log file -t<S-rec file> Process additional S-record file -r<mem><start>:<end> Dump DSP memory to S-record file -v<mem><start>:<end> Dump DSP memory to screen Number of parameters incorrect or other error Usage: Flash_over_JTAG <flash config file> <S-record file> [<options>] or Flash_over_JTAG <flash config file> [<options>] Options: -pPORT PORT specifies the printer port address, the default is 0x378 (LPT1) -page Specifies that page erases should be used instead of mass erase -info Access information blocks of Flash units instead of main blocks -mI,D Support for JTAG daisy-chain. I and D specify position in the chain -l<log file> Write messages into log file -t<S-rec file> Process additional S-record file -r<mem><start>:<end> Dump DSP memory to S-record file -v<mem><start>:<end> Dump DSP memory to screen | |||
|
3x faster program downloads
Started by ●December 6, 2002
Reply by ●December 6, 20022002-12-06
FYI How to generate S record File? Click to Edit->Settings Or Alt+F7, a dialog box will appear on the screen. Select Linker->M56800 Linker and select "Generate S-Record File" due to this selection codewarrior generates S Record file for your project. I don't know whether by default codewarrior generates the S-Record file just want to share "Generation of S-Record file" with all of you. Thanks and Regards, Nitin -----Original Message----- From: Art Johnson [mailto:] Sent: Friday, December 06, 2002 8:07 PM To: Subject: [motoroladsp] 3x faster program downloads We have found that by using the flash_over_jtag.exe application from Motorola, the program downloads to our systems over the JTAG port take about 1/3 of the time when compared to the downloads from the CodeWarrior IDE. This is ***NOT*** a criticism of CodeWarrior, which (of course) is forced to use the higher-level Windows I/O Port Driver. The flash_over_jtag.exe application from Motorola, if you look at the source code that comes with the SDK, uses direct I/O Port hardware reads and writes. The result, for our largest program, is that downloads that used to take over 5 minutes, now take about 1 minute and 20 seconds. You can get the flash_over_jtag.exe application from here: http://e-www.motorola.com/cgi-bin/faq.cgi, search for FAQ number 19703. [Note: Many thanks to Ljubisa on this one!] In order to run the flash_over_jtag.exe application, you must first remove the PC's Parallel Port from being controlled by the operating system. This is done by copying the UserPort.sys file to %WINDIR%\SYSTEM32\DRIVERS and running the UserPort.exe application. See the UserPort.pdf file for more detailed information on installing and running the UserPort.exe application. When you run it, the only address range that should be used is the LPT1 printer port addresses, 378-37F. After running the UserPort.exe application, the flash_over_jtag.exe application can be run. The files Flash_over_JTAG.pdf and flash_over_jtag.txt explain how to use this application, but to get you started quickly, here is the procedure I use: 1) Run the UserPort.exe application, make sure that the only address range is 378-37F, and click the Start button. 2) Copy your target application's S-Record File (for example, Flash.elf.S) from your project's Debug directory (eg C:\Development\DSP568xx\8550A005\Software\Debug) to the directory where you put the flash_over_jtag.exe application (eg C:\Development\DSP568xx\Moto_SDK\Flash_over_JTAG). 3) Open up a Command Prompt window, like an MS-DOS window, and CD to the directory where you put the flash_over_jtag.exe application. Run the flash_over_jtag.exe application as follows (for the 807 chip): flash_over_jtag flash807.cfg Flash.elf.S 4) The output from the flash_over_jtag.exe application looks like the following (the first 3 lines below are actually repeated a number of times): Data @ 0xF000 ignored Data @ 0xF026 ignored Data @ 0x40 ignored Initialising FIU at address: 0x1380 FIU (0x1380) initialisation done. Flash (0x1380) mass erase done. Flash (0x1380) programming done. 0 words written. Initialising FIU at address: 0x1340 FIU (0x1340) initialisation done. Flash (0x1340) mass erase done. Flash (0x1340) programming done. 0x7ffc words written. Initialising FIU at address: 0x1420 FIU (0x1420) initialisation done. Flash (0x1420) mass erase done. Flash (0x1420) programming done. 0x5f60 words written. Initialising FIU at address: 0x1380 FIU (0x1380) initialisation done. Mass erase skipped. Flash (0x1380) programming done. 0x4 words written. Initialising FIU at address: 0x1360 FIU (0x1360) initialisation done. Flash (0x1360) mass erase done. Flash (0x1360) programming done. 0 words written. The target was reset, the application is running 5) Run the UserPort.exe application, and click the Stop button. This gives control of the PC's Parallel Port back to the operating system. 6) You can still use CodeWarrior to debug the program, just make sure that the tickbox marked "Always load program at debugger launch" is NOT checked in the Target Settings panel. Art Johnson Senior Systems Analyst PMC Prime Mover Controls Inc. 3600 Gilmore Way Burnaby, B.C., Canada V5G 4R8 Phone: 604 433-4644 FAX: 604 433-5570 Email: http://www.pmc-controls.com _____________________________________ Note: If you do a simple "reply" with your email client, only the author of this message will receive your answer. You need to do a "reply all" if you want your answer to be distributed to the entire group. _____________________________________ About this discussion group: To Join: To Post: To Leave: Archives: http://www.yahoogroups.com/group/motoroladsp More Groups: http://www.dsprelated.com/groups.php3 ">http://docs.yahoo.com/info/terms/ |
**************************Disclaimer************************************ Information contained in this E-MAIL being proprietary to Wipro Limited is 'privileged' and 'confidential' and intended for use only by the individual or entity to which it is addressed. You are notified that any use, copying or dissemination of the information contained in the E-MAIL in any manner whatsoever is strictly prohibited. *************************************************************************** |