This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
1. 你的图显示不出来。BA【1】作为最低的地址线,BA【0】是最高地址线,只有当所有地址线用完后,才会用到。程序中,不用特别设置,按正常的地址读、写即可。
2. 建议使用Uniflash或CCS来烧录。可以支持JLINK。
1、每个片选(CS2~CS4)有24根地址线,总共可以支持到16MB的空间访问。
2、你说的没错,这里有点问题,左边MCU下面的地址线应该是EMIF_A[17:12]
3、理论上ECC也可以通过JTAG口来烧录。不过好像CCS本身可以生成ECC,可以根据代码一起同时烧录到芯片中。
4、TMS570可以通过写Bootloader来做不同的烧录方法,如http://processors.wiki.ti.com/index.php/TMS570_Hercules_MCU_Bootloader中有SPI、UART、CAN的例程。http://processors.wiki.ti.com/images/b/b1/SafetyMCU_Ethernet_Bootloader.zip这个是以太网的Bootloader例程。但是,需要注意的是,Bootloader需要通过JTAG烧录到芯片中。
好的,非常感谢
1、如果还是要扩展32M的FLASH,该如何操作呢?
在手册里看到可以分别支持8bit和16bit,按照理解是否可以看成19+1条地址线可以访问512*1024,在加一条1地址线 共21条久可以范围1024*1024 了呢?
2、ECC之前没有使用过,但是产品认证需要验证安全性,是否可以分享一些ECC使用的实例?尝试过程中发现ECC没有JLINK的选项,是否可以判断为不支持JLIINK?
请问,
1、16bit数据线访问时,TMS570LS3137地址指针加1,对应的是EMIF_A0加1,而BA1不变吗?还是BA1加1?
2、数据手册上提到,BA0可作为EMIF_A22,那么可以有24根地址线,2的24次方为16M。
从而,16bit数据线访问时,是否可以访问16M*16bit大小的数据空间?即还是上一个问题,答案是前者,还是后者?
注:上面提到的Micron美光半导体公司32MB Parallel NOR Flash芯片M29W256G,选择16bit数据线访问时,是2字节对齐的。
该芯片A0脚对应地址指针A1位,引出的地址线是A0到A23共24根地址线。即该芯片空间大小可以表示为16M*16bit。
3、在Flash烧录时自动生成ECC,这个CCS是哪个版本?V5.2版本似乎没有这个选项。
1、16bit数据线访问时,TMS570LS3137地址指针加1,对应的是EMIF_A0加1,而BA1不变吗?还是BA1加1?
在TMS570上用C语言编程里,如果定义的是16位整型指针,那么指针加1,实际上你会看到地址加了2。所以,指针加1后,BA【1】会翻转。
2、数据手册上提到,BA0可作为EMIF_A22,那么可以有24根地址线,2的24次方为16M。
从而,16bit数据线访问时,是否可以访问16M*16bit大小的数据空间?即还是上一个问题,答案是前者,还是后者?
根据数据手册上Memory Map部分的描述,每个CS对应的地址块总大小为64MB,但有效地址只有16MB。所以,当数据总线为16位宽度时,实际上BA【0】是不会生效的(也就是说16位数据总线模式下,只有23根地址线有效)
注:上面提到的Micron美光半导体公司32MB Parallel NOR Flash芯片M29W256G,选择16bit数据线访问时,是2字节对齐的。
该芯片A0脚对应地址指针A1位,引出的地址线是A0到A23共24根地址线。即该芯片空间大小可以表示为16M*16bit。
3、在Flash烧录时自动生成ECC,这个CCS是哪个版本?V5.2版本似乎没有这个选项。
你可以尝试安装CCSv5.5 或 CCSv6.1
从EMIF模块的框架设计来看,BA【0】应该是可以作为第24根地址线的。但是,芯片的Memory Map配置只允许每个CS访问到16MB而不是16Mx16bit的地址空间。所以说,我认为即使接了BA【0】,那一块的地址也是访问不到的。