在线咨询
eetop公众号 创芯大讲堂 创芯人才网
切换到宽版

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
芯片精品文章合集(500篇!)    创芯人才网--重磅上线啦!
查看: 4020|回复: 2

问个仿真器的问题,谢谢了....

[复制链接]
发表于 2009-5-13 21:01:13 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

x
通常基于某一个cpu如PPC系列/arm/dsp等等,在调试的时候都使用仿真器.仿真器的一个很重要的作用就是利用其作为中介,烧写FLASH.针对这个问题我有个疑问,不知道版上大侠们是否了解答案.假定现在要将PC机上编译好的data.bin文件烧写到FLASH中:
1. 为了烧写FLASH,通常的做法是先写一个烧写程序.这个程序通过仿真器下载到芯片中运行,通常是在芯片内部的SRAM中或者板卡上SDRAM中运行;
2. 烧写程序初始化CPU如PLL/MMU/CACHE,初始化FLASH/SDRAM等后,通常开始读取PC上data.bin文件,读取的数据写入FLASH.
我不明白的地方是:
一般来说,烧写程序中需要使用C语言的一些函数如:fopen(file_dir)去打开data.bin如
fopen("C://data.bin")
......
当通过仿真器下载到目标板CPU芯片中运行的烧写程序执行到fopen这个代码的时候,是什么样的机理和过程使得目标板CPU操作了硬盘上data.bin的文件了.就是说目标板CPU执行到fopen代码的时候,它怎么知道文件data.bin是PC机上面的C盘根目录上的文件?
如果有知道这个原理的同志,请不吝赐教啊....多谢....
发表于 2009-6-2 14:16:34 | 显示全部楼层
按照你的说法,如果烧写flash用的程序放在片上RAM,那上位机(PC)通过SPI(或者其他)就可以把data.bin文件传给芯片(SPI接收),接收后放到某个寄存器或者RAM某个地方,然后执行烧写flash的程序,把这个接收到的数据给烧到flash。
烧写flash用的程序肯定不会有fopen(....)这样的东西,只可能从某个存储读到需要烧写的data,然后再烧写到flash
发表于 2009-6-24 10:00:26 | 显示全部楼层

关于flash 编程

我们是专门做仿真器的,关于你说的这个烧写过程的原理我认为有些不对,其实烧写程序还是运行在pc上的,通过jtag协议由仿真器把指令传给目标cpu,目标cpu 接受到由仿真器转换过来的指令对flash 进行操作,打个比喻就是像你在放风筝,你--pc 风筝目标机 线-仿真器
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐 上一条 /1 下一条

关闭

小黑屋| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-3-28 18:24 , Processed in 0.033209 second(s), 11 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表