2G Nand Jlink烧录报错Failed to allocated 0x1B000000 bytes of memory!
客户在新增加DS35Q2GBS这颗3v3 2G Nand flash后,反馈烧录到70%报错,提示如下:
Failed to allocated 0x1B000000 bytes of memory!
最后发现跟Nand flash无关,我换成东芯GD5F2GM7RE这颗,也是下载到70%失败,
但是测试发现,跟烧录的bin都有关系,出错的时候,是在持续烧录比较长时间,而且比较大的文件71MB的文件时才出现,烧录小文件不出现,采用的jlink版本为JLink_Windows_V680a.exe,为32bit寻址的,32bit的寻址空间,只能最大支持2^32 = 2G的Nand寻址,这个正好是2G,之前其他客户并未出现,
鉴于低版本的对大容量内存烧录的限制,jlink版本从JLink_Windows_V680a.exe换到JLink_Windows_V794_x86_64.exe,jlink7.94就好了,
{0xc8, 0x82, 0xc8, 0x10, 0x10000000}, //GD5F2GM7RE_RDID
{0xE5, 0xB2, 0XE5, 0x20, 0x10000000}, //DS35Q2GBS-IB
注意安装后,下面几点记得修改:
1,flash烧录文件配置和具体的驱动文件复制,新版本路径有变化,C:\Users\你的用户名\AppData\Roaming\SEGGER\JLinkDevices 下面C:\Program Files (x86)\SEGGER\JLink,
2,需要添加一下windows环境变量配置C:\Program Files\SEGGER\JLink_V794,并且上移确认新安装的 V794版本优先级高于原来的版本:
3,windows命令输入cmd.exe ,串口打开后,输入:jlink.exe,在系统环境变量配置情况下,就能找到正确的V7.94版本的jlink,确认后,再打开SiFli Impeller工具或者 Butterfli.exe进行下载