X
首页
技术
模拟电子
单片机
半导体
电源管理
嵌入式
传感器
最能打国产芯
应用
汽车电子
工业控制
家用电子
手机便携
安防电子
医疗电子
网络通信
测试测量
物联网
最能打国产芯
大学堂
首页
直播
专题
TI 培训
论坛
汽车电子
国产芯片
电机驱动控制
电源技术
单片机
模拟电子
PCB设计
电子竞赛
DIY/开源
嵌入式系统
医疗电子
颁奖专区
【厂商专区】
【电子技术】
【创意与实践】
【行业应用】
【休息一下】
最能打国产芯
活动中心
直播
发现活动
颁奖区
电子头条
参考设计
下载中心
分类资源
文集
排行榜
电路图
Datasheet
最能打国产芯
单片机
大家来说说单片机仿真中两种仿真工具Emulator和 Simulator的区别
tiankai001
2012-6-13 17:37
楼主
大家来说说单片机仿真中两种仿真工具的区别
Emulator常称为仿真器,一般指硬件仿真器
Simulator常称为模拟器,一般指软件仿真器
那么这两者到底有那些具体区别呢,大家一起来聊聊吧
点赞
回复评论 (4)
沙发
tiankai001
Emulator与Simulator有个简单的原则差异:emulator(模拟器)主要是指cpu,而simulator(仿真器)则是模拟系统中的硬件行为;而且emulator只能看执行结果,无法进行程序的trace与出错,详细感觉有下面几点:
Emulator:完全模拟cpu的运作方式,根据PC(prigram counter)寄存器的值,从内存中去下一条指令,进行解码并执行。输入程序的格式是编译、连接完毕的二进制代码;如果用在产品开发,工程师可以不用把程序下载到真实机器,只要透过Emulator就可以知道程序执行的结果。因为Emulator和真实机器一样,接受的是程序的二进制文件,所以即使Emulator也是一个windows的程序,工程师依然无法对原始码进行除错。
在嵌入式系统开发上,Emulator对开发的帮助仅仅只限于尚未完成之前,可以先让系统执行看看。如果我们的cpu有现成的emulator,那么用用也无妨;如果必须自行开发,那么就真的大可不实不必!首先,要完整的模拟一颗cpu是一件相当困难事情,恐怕这件事情的复杂度比我们想想的高得多;再来就是emulator对开发的贡献相当有限,等emulator开发测试完毕,硬件板子早就完成了,此时emulator也就失去作用。
Simulator:模拟系统中的硬件行为,例如模拟飞行的PC game就是一种simulator,它只模拟驾驶舱中的操作按钮仪器,并没有迷你这些仪器中的cpu吧。应用在嵌入式系统的开发中,我们所谓的模拟器(simulator)模拟的是实际机器里驱动程序API,这些API必须与其他的陈谷连接成可执行才可以运作。
在嵌入式系统开发的领域中,emulator的应用的确是愈来愈少,一方面也是cpu越来越复杂,要用应用程序模拟cpu执行指令行为确实不容易,另一方面是被模拟cpu和实际cpu执行多多少少会有时间的误差和不相似性
但是有时候我会一般都成为模拟器,实际指的就是simulator,这也仅仅是一个翻译的问题
模拟器的其他功能(logging & profiling)
模拟器除了模拟硬件之外,模拟器基本就是一个可执行程序,是它还可以做一些实际机器做不到的东西,这对开发中除错或同级都有很大的帮助。例如:有些bug很难马上找出除错的程序所在,要trace也不知道从何处trace起,这种情况下show字是很常用的除错方法
所谓的logging就是把执行流程或计算结果先输出到文件中,然后慢慢分析文件中的信息,这样的文件成为log文件,可以让我们追踪程序执行的行为。
所谓的profiling就是在每一个函数的开头或者结尾收集我们想要的信息,然后将其输出;由于信息量通常较大,所以输出到屏幕上并不是很好的办法,做好将其输入到文件中在慢慢分析,这个文件要远远大于log文件的详细度
点赞
2012-6-13 17:37
板凳
辛昕
请问,这里说的和 那种 单片机 的硬件仿真 是同一个话题么?
我是指,比如说 我们的MSP430或者STM8的那个直接通过USB口相连的 仿真器。
强者为尊,弱者,死无葬身之地
点赞
2012-6-14 00:45
4楼
tiankai001
回复 板凳 辛昕 的帖子
按照我的本意哦,是一个话题,说的是软仿真和硬仿真
点赞
2012-6-14 08:01
5楼
辛昕
回复 4楼 tiankai001 的帖子
哦哦~~
最近在学习 如何 给单片机C程序做测试——就是想有没有出了我们平时玩的那种 直接在硬件系统上测试,看结果再调试。
而是类似于 CUnit这些,充分利用断言一类的工具。
你的帖子的内容,我当时看着有点晕呼呼,等再仔细看看,然后也想想自己的情况,再向你请教哈
强者为尊,弱者,死无葬身之地
点赞
2012-6-16 17:39
最新活动
报名直播赢【双肩包、京东卡、水杯】| 高可靠性IGBT的新选择——安世半导体650V IGBT
30套RV1106 Linux开发板(带摄像头),邀您动手挑战边缘AI~
安世半导体理想二极管与负载开关,保障物联网应用的稳健高效运行
免费申请 | 上百份MPS MIE模块,免费试用还有礼!
PI 电源小课堂|无 DC-DC 变换实现多路高精度输出反激电源
2024 瑞萨电子MCU/MPU工业技术研讨会——深圳、上海站, 火热报名中
随便看看
想做一个抢答器,7路的 大家给点建议
ZRtech Altera CycloneIV FPGA开发板——4位数的乘法运算
DSP系统构成的常用芯片有哪些?
怕处有鬼、痒处有虱
DS1302不走了
国一候选名单是怎么确定的?
SensorTag iBeacon firmware
突然不会玩了,谁知道MAX32630怎么下载程序?
MSP430 Launch Pad初学
树形网络构建
[RTT&瑞萨高性能 CPK-RA6M4] 1、硬件赏析及RT-Thread开发环境搭建
DSP编程指令全
【KW41Z】聊聊这个板子
求助!CCS5.1的GRACE在哪里啊,找了一上午了都找不到
RMB 999,即可踏入PC-based测量世界!低价位 USB DAQ数据采集设备邀您来答题
关于电机驱动的问题?
怎样通过4G网络实现PLC远程控制?
保持信号完整性,USB3.0静电防护是如何做到的?
应用技巧/单片机控制的数字触发器
【新手请教 蓝牙开发】
电子工程世界版权所有
京B2-20211791
京ICP备10001474号-1
京公网安备 11010802033920号
回复
写回复
收藏
回复