我现在能理清楚的是:
RBL只认AIS格式,所以需要将UBL.out用AISgen转成UBL.ais/.bin。
但是如果我要通过自己的程序将ARM或DSP的app程序(我们的程序不跑linux,跑SYS/BIOS)的.out文件从PC搬到NAND flash中,我应该如何去解析.out文件?
说白了,就是我该怎么提取section address和section data。比如.out文件比如.ais文件,肯定除了代码二进制文件外还有很多附加信息,这些不用也不应该直接搬到RAM或DDR中的,否则就无法正常运行了——我是这么认为的。
.out转成.ais能被RBL识别,也是由于RBL能正确解析.ais的格式,换句话说,如果我能从哪里获取RBL的源代码,那其实我也可以把.out转成.ais,然后提取必要信息出来放到NAND中,再在reset后从NAND中提取出来加载到RAM或DDR中,再运行之。
btw,好比C2000 piccolo的.out转成.hex后,每行数据的格式是标准的,比如先地址,然后长度,然后数据,最后结束符。
OMAP呢?其他Tony和众高手答疑解惑!