From: BazookaJoe on 5 Sep 2006 17:17 Hello, I'm using the 56371 DSP and I have to boot it with serial EEPROM in I2C-Mode. The Procedure is described in the manual, but I do not know how to make a boot image from the *.cld file. I managed to make a .s file using srec.exe and then I converted that to intel hex format. Now, I don't know how to put the information about start adresses and record length at the file header. Does anyone know a tool (or methode), which can do that? Thanks for any help in advance!
From: Roman Rumian on 6 Sep 2006 09:46 Hi, BazookaJoe napisa?(a): > Hello, > > I'm using the 56371 DSP and I have to boot it with serial EEPROM in > I2C-Mode. The Procedure is described in the manual, but I do not know > how to make a boot image from the *.cld file. > I managed to make a .s file using srec.exe and then I converted that to > intel hex format. Now, I don't know how to put the information about > start adresses and record length at the file header. Does anyone know a > tool (or methode), which can do that? > > Thanks for any help in advance! you can make a .lod (use cldlod utility) where the data structure will be easily seen in text format. Another way is to use emulator: you have to load program into DSP563xx internal RAM and then copy it into EEPROM by a small utility written for that DSP. It is not complicated - belive me ! :-) Regards Roman Rumian
From: BazookaJoe on 6 Sep 2006 14:29 Hi, Roman Rumian wrote: > Another way is to use emulator: you have to load program into DSP563xx > internal RAM and then copy it into EEPROM by a small utility written for > that DSP. where may I get such a utility? Regards, BJ
From: Roman Rumian on 7 Sep 2006 02:30 BazookaJoe napisa?(a): > Hi, > > Roman Rumian wrote: >> Another way is to use emulator: you have to load program into DSP563xx >> internal RAM and then copy it into EEPROM by a small utility written for >> that DSP. > > where may I get such a utility? you have to write it oneself. It depends on EEPROM type you used. Ooops ! New, DSP56371 BootROM loads X: and Y: RAM also. Thats great ! "(...) Assuming the EEPROM address starts at 0: - EEPROM Byte expected at DSP Example Address 0 PstartAddress2 00 1 PstartAddress1 04 2 PstartAddress0 00 3 XstartAddress2 00 4 XstartAddress1 05 5 XstartAddress0 00 6 YstartAddress2 00 7 YstartAddress1 06 8 YstartAddress0 00 9 PdataLength2 67 10 PdataLength1 45 11 PdataLength0 00 12 XdataLength2 21 13 XdataLength1 35 14 XdataLength0 43 15 YdataLength2 56 16 YdataLength1 64 17 YdataLength0 24 18 data in P, X and Y order - 19 must make up whole 24 bit words - - - - PstartAddress2 00 - PstartAddress1 04 - PstartAddress0 00 (final word is start address of rogram to run) The above example would store: $004567 words from P:$400 $433521 words from X:$500 $246456 words from Y:$600 And will start running from P:$400 once all of the data has been downloaded. (...)" ---------------- So, you must write a simple routine which will write to EEPROM a block of data (size of block may depend on EEEPROM organisation), and then call it three times for your P:, X: and Y: data, after writing 18 bytes of header first, of course. I did it for DSP56362, but for emulated on SPI interface on GPIO pins, so its useless for you. Good luck ! Roman Rumian
From: geroldschrutz on 7 Sep 2006 07:59 "Roman Rumian" <usun_torumian(a)agh.edu.pl> schrieb im Newsbeitrag news:edoeah$aof$1(a)news.agh.edu.pl... > BazookaJoe napisa?(a): >> Hi, >> >> Roman Rumian wrote: >>> Another way is to use emulator: you have to load program into DSP563xx >>> internal RAM and then copy it into EEPROM by a small utility written for >>> that DSP. >> >> where may I get such a utility? > > you have to write it oneself. It depends on EEPROM type you used. > Ooops ! New, DSP56371 BootROM loads X: and Y: RAM also. > Thats great ! > > "(...) > Assuming the EEPROM address starts at 0: - > EEPROM Byte expected at DSP Example > Address > 0 PstartAddress2 00 > 1 PstartAddress1 04 > 2 PstartAddress0 00 > 3 XstartAddress2 00 > 4 XstartAddress1 05 > 5 XstartAddress0 00 > 6 YstartAddress2 00 > 7 YstartAddress1 06 > 8 YstartAddress0 00 > 9 PdataLength2 67 > 10 PdataLength1 45 > 11 PdataLength0 00 > 12 XdataLength2 21 > 13 XdataLength1 35 > 14 XdataLength0 43 > 15 YdataLength2 56 > 16 YdataLength1 64 > 17 YdataLength0 24 > 18 data in P, X and Y order - > 19 must make up whole 24 bit words > - > - > - > - PstartAddress2 00 > - PstartAddress1 04 > - PstartAddress0 00 > (final word is start address of rogram to run) > The above example would store: $004567 words from P:$400 > $433521 words from X:$500 > $246456 words from Y:$600 > And will start running from P:$400 once all of the data has been > downloaded. > (...)" > ---------------- > > So, you must write a simple routine which will write to EEPROM a block of > data (size of block may depend on EEEPROM organisation), and then call it > three times for your P:, X: and Y: data, after writing 18 bytes of header > first, of course. > > I did it for DSP56362, but for emulated on SPI interface on GPIO pins, so > its useless for you. > > Good luck ! > > Roman Rumian Hello Roman, you have to insert an extra Byte in front of "0 PstartAddress2 00" to get it running. The bootcode from freescale is wrong. Gerold
|
Next
|
Last
Pages: 1 2 Prev: Help with a aplitude respons? Next: using the edma channel of c6713 dsp |