Emulate和Simulate有什么区别?

时间:2011-07-20 15:04:30

标签: terminology simulate emulation

我在计算机和微控制器的背景下提出这个问题。我需要一个简明的答案。这些话似乎搞得一团糟,我不知道他们是否可以互相交换,但感觉他们不是。谢谢。 我还没有在我的研究中找到它们之间的区别,因此我在这里发布了这个问题。

2 个答案:

答案 0 :(得分:6)

不确定这是否足够简洁,但我的理解是:

仿真器 - 模仿硬件。
模拟器 - 模仿软件。

查看this帖子,就该主题进行一次体面的讨论。

这是来自this网页的引用:

  

仿真与模拟

     

“仿真器”这个词是在1963年IBM [12]在开发过程中创造的   NPL(IBM 360)产品线使用“新组合”   软件,微代码和硬件“。[13]他们发现使用   微代码硬件代替软件模拟,执行程序   为早期的IBM计算机编写,大大加快了仿真速度。   早在1957年,IBM就为IBM 709计算机提供了一个解释器   程序(软件)执行为IBM 704编写的遗留程序   在IBM 7090和更高版本的IBM 7090上运行[14] 1963年,当时   微码首先用于加速这个模拟过程,IBM   工程师创造了“模拟器”一词来描述这个概念。

     

最近在上下文中使用“模拟”一词变得很普遍   软件然而,在1980年之前,“仿效”仅指   使用硬件或微码辅助进行仿真,同时“模拟”   提到纯软件仿真。[15]例如,一台电脑   专为运行为另一个架构设计的程序而构建   是一个模拟器。相反,模拟器可以是运行的程序   在PC上,以便可以在其上模拟旧的Atari游戏。纯粹主义者   继续坚持这种区别,但目前这个词   “仿真”通常意味着完全模仿执行的机器   二进制代码。

答案 1 :(得分:2)

仿真是指软件逐步完成并精确处理每个输入,微控制器/处理器将如何处理指令。

模拟是指软件接受输入并通过不同的过程产生预期的输出。

仿真是对内部操作的极其精确的建模,而仿真则更侧重于输入输出黑盒概念。