作者ASKA (坏羊男太温柔)
看板Emulator
标题Re: [讨论] 模拟器所需的硬体和实机的硬体
时间Tue Nov 17 22:26:31 2009
※ 引述《GA0GAIGAR (是GA零,不是GA欧)》之铭言:
: 模拟器所需的硬体配备之所以会比实机来的高
: 是因为实机所用的晶片大部分是特制的
: 晶片上已经包含了某些演算法
: 模拟器则是透过软体去执行这些演算法
: 而透过软体可能会需要好几倍的运算速度才能达到跟实机一样的效果
: ------------------------------------------------------------
: 以上都只是我的看法
: 请问我的看法哪里有问题吗
模拟器因为硬体架构不同,
所以要做几件事情。简单的说,就是电机和资工计算机组织教的那套。
fetch → decode → execute
原始的CPU这些动作大概几个clock cycle就可以完成了。
但是要模拟的话,这些通通都要用软体写。
1个clock cycle用硬体做的事情少说也会变成近百个clock cycle才能做完
还有一堆硬体也要去模拟 (ex. 音效等)
所以,需要的硬体要求会很高。
不过当然有些tricky的方式...
ex. dynamic recompile
就是先deassembly出组合语言来,
然後重新compile成跑模拟器的机器能够直接执行的执行码,
这样速度就可以加快很多(当然,通常还是需要比原来多的cycle执行)
仔细去想想这些其实还蛮有趣的 ^^
--
Money can't buy happiness but it can buy performance
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.115.50.10
1F:推 GA0GAIGAR:感谢解答 11/18 09:11