nios flash programmer可以向EPCS 烧录任何.bin文件吗
用的是NIOS 9.1,我想用 flash programmer 向EPCS下载.BIN的图片数据,但是不成功,而且好像会把.sof .elf给擦除掉,FPGA完全不会动。还有一点疑惑的地方,memory span 怎么只等于 0x800,随便一款EPCS芯片 也不止这点容量。所以我在下载.bin 设置偏移量的时候 想设为0x80000 就提示超标了。而我用的是EPCS16 都能到0x1FFFFF的,不懂 求教 没人来解惑,在论坛搜索發现之前也有人提过这个问题,"flash programmer 如何下载一个文件到epcs4?" 不过也没得到回答。
经过几天大量的搜索 我觉的这是不可以的了。flash programmer 工具提供的 烧录binary文件应该只是针对CFI 的flash,因为它可以正确设置 offset 这跟寻址方式有关了吧。
EPCS是串行的,SOPC 提供的EPCS 控制器的寻址范围是0X800,这个0 ~ 0x7FFF的偏移量对应的是EPCS的一些Status、Cotrol等等“特殊寄存器”,而不是对应我们想要的falsh存储地址。对EPCS 芯片里的flash进行讀写是要通过它的RX DATA 和 TX DATA这两个“特殊寄存器”来的,对flash的寻址也应该是要设置某个特殊寄存器来实现了。在flash programmer 设置 offset 最大只能到0x7fff, 说明这偏移量就不是对应flash存储器地址,设置它也就不知是什么意义了。 tianxian 发表于 2013-5-21 18:22 static/image/common/back.gif
没人来解惑,在论坛搜索發现之前也有人提过这个问题,"flash programmer 如何下载一个文件到epcs4?" 不过 ...
不是这样的。
LZ有没有用flash programmer下载过sof+elf文件?这两个文件加起来比0x800的span大多了,一样可以。 flyaudio 发表于 2013-5-31 09:06 static/image/common/back.gif
不是这样的。
LZ有没有用flash programmer下载过sof+elf文件?这两个文件加起来比0x800的span大多了, ...
我指的是,即下载sof+elf,又用剩余的空间下载任何bin文件(如图片数据),那就是sof+elf +bin,sof的offset是0,bin的offset设为多少呢?。那个0X800范围只是对应EPCS的一些控制寄存器,而不是flash存储器的偏移量 tianxian 发表于 2013-5-31 09:23 static/image/common/back.gif
我指的是,即下载sof+elf,又用剩余的空间下载任何bin文件(如图片数据),那就是sof+elf +bin,sof的off ...
你理解错了那个base 和span,你试试用EPCS controller自带的API来读写EPCS,然后你就会明白的了。
你下载sof+elf的时候,因为是常用模式,默认地址都是0开始,所以你没有涉及到对烧写目标epcs地址的设定。其实是可以设定这个epcs的目标地址的。
flyaudio 发表于 2013-5-31 11:58 static/image/common/back.gif
你理解错了那个base 和span,你试试用EPCS controller自带的API来读写EPCS,然后你就会明白的了。
你下 ...
api函数可以讀写这个知道,可是nios flash programme 的offset,确实只能设置到0x800,大于0x800就会报错。我试过很多了 下载 sof+elf+bin, 即使是下载成功了 也不能用,bin文件像是把sof+elf 给覆盖了,因为bin的offset设置不了正确的值。
还是我操作有误,愿闻其详 tianxian 发表于 2013-6-3 17:00 static/image/common/back.gif
api函数可以讀写这个知道,可是nios flash programme 的offset,确实只能设置到0x800,大于0x800就会报错 ...
那你说说你是怎么设置,在哪里设置0x800的offset ? 本帖最后由 tianxian 于 2013-6-4 09:26 编辑
flyaudio 发表于 2013-6-3 22:05 static/image/common/back.gif
那你说说你是怎么设置,在哪里设置0x800的offset ?
0x80000是我想要的偏移量,但实际上只要这个值设置到大于0x800就会报错
页:
[1]