May I program *.bin image file into QSPI with DS-5

キャンセル
次の結果を表示 
表示  限定  | 次の代わりに検索 
もしかして: 

May I program *.bin image file into QSPI with DS-5

ソリューションへジャンプ
2,613件の閲覧回数
MehmetAliIpin
Contributor V

Dear Sir/Madam,

Hello,

We have VF3x prototype PCB, which we use dual QSPI Flash for boot. I developed and debugged our code with DS-5 debugger. Then I integrated the "bootloader_vybrid_qspixip" project source files into my project, built the *.axf file, then generated both *.bin and *.c image files. The *.c image file is about 5 times bigger then our *.bin file.

I read some documents mentioning that the IAR accepts *.bin file to program the QSPI flashes. But in DS-5 we only program big *.c files. I could not find a document about if it is possible to dwonload the *.bin files into the internal RAM and then program them to the QSPI flashes.

Could you please help me if it is possible within DS-5, or with MFGToolkit?

Thanks and best regards.

Mehmet Ali Ipin

ラベル(6)
1 解決策
2,074件の閲覧回数
kef2
Senior Contributor V

Quadspi_load project includes *.c file, which is generated with fromelf utility from ELF binary of your application. Generated *.c file is compiled along with the rest of quadspi_load *.c files and downloaded to and executed from Vybrid RAM. You don't need 5x RAM space to program your code to QSPI!

元の投稿で解決策を見る

0 件の賞賛
返信
8 返答(返信)
2,074件の閲覧回数
kef2
Senior Contributor V

"The *.c image file is about 5 times bigger then our *.bin file."

Of course *.c should be 5x bigger than binary. One byte in human readable form like "0x12," takes exactly 5 bytes in *.c file. But what's the problem with that??? After compiling *.c file you will get again one byte instead of 5.

I see another problem with DS-5. Binary image produced with DS-5 is always enlargened to nearest 64k boundary. Extra space is filled with zeros. That's a waste of memory space and/or bootloading time! *.c files produced with fromelf utility also are bigger and include all those useless zeros.

2,074件の閲覧回数
MehmetAliIpin
Contributor V

Dear Edward,

Thank you for your answer,

I know the reason why .c files are bigger then .bin files. The problem is that, we have only internal SRAM to download the code and program them to the QSPI flash. Our code is now almost 100 KByte, but if we add the USB, TCP/IP file system and our full application, I don't know if we will find enough RAM.

If there is no support for DS-5 for .bin files, Do you know, if I use MFGToolkit for Vybrid MQX application download our .bin file?

Regards

0 件の賞賛
返信
2,074件の閲覧回数
kef2
Senior Contributor V

Mehmet,

What is "bootloader_vybrid_qspixip"? Does it load not compiled *.c files to RAM? I thought you are using quadspi_load (from VYBRID_SAMPLE_CODE_SBCH) based code to program QSPI? If so, then you still have room to go. Quadspi_load uses compiled *.c image file and your code limit is at least ~500k.

I don't know about MFGToolkit.

Regards

0 件の賞賛
返信
2,074件の閲覧回数
MehmetAliIpin
Contributor V

Dear Edward,

Thanks for your answer,

My binary files size is about 100 Kbyte, therefore for .c file we almost near to the 500 KByte limit.

Best regards.

0 件の賞賛
返信
2,074件の閲覧回数
kef2
Senior Contributor V

I still don't see the problem. Does compiler refuse to compile 500kB *.c file?

Regards

0 件の賞賛
返信
2,074件の閲覧回数
MehmetAliIpin
Contributor V

.c is the project output array file, generated by fromelf. It is not compiled.

Best regards.

0 件の賞賛
返信
2,075件の閲覧回数
kef2
Senior Contributor V

Quadspi_load project includes *.c file, which is generated with fromelf utility from ELF binary of your application. Generated *.c file is compiled along with the rest of quadspi_load *.c files and downloaded to and executed from Vybrid RAM. You don't need 5x RAM space to program your code to QSPI!

0 件の賞賛
返信
2,074件の閲覧回数
MehmetAliIpin
Contributor V

Dear Edward,

Thank you very much,

I did not know that the generated .c file is compiled with quadspi_load.c files, then downloaded and then executed.

Best regards.

0 件の賞賛
返信