【问题标题】:Will it be possible to run C code emulated on GA144?是否可以运行在 GA144 上模拟的 C 代码?
【发布时间】:2011-01-08 02:23:52
【问题描述】:
【问题讨论】:
标签:
c++
c
forth
emulation
【解决方案2】:
对指令集的粗略一瞥表明“colorForth”可以被认为是一种简单的机器语言。鉴于此,有可能编写一个 C 编译器,将 colorForth 作为其目标指令集进行编译。
当然,首先在 colorForth 中编写代码可能更容易。
【解决方案3】:
从表面上看,如果有人写了一个可以输出机器码(33条指令,不太复杂)的编译器,你就不需要模拟C,直接编译就可以了。
当然,它会非常有限,因为看起来每个芯片都有少量的内部 RAM(64 个字不是很多)。其中一个内核连接了一个 18 位内存地址端口,因此您可以拥有 256MB 的外部 RAM,但它只能由一个内核直接访问,然后需要传递给另一个内核.
不同的内核可能用于不同的功能,但这会使编译器相当复杂。
【解决方案4】:
可以做到,但他们的解释器应该处理并行任务、负载分配等。可能最好只使用他们的 Forth 解释器。
【解决方案6】:
您需要使用外部存储器,但除此之外,这当然是可行的,根据white paper by Greg Bailey :
构建支持C的虚拟机并不难,
仅在美国就有很多人和公司为他们服务
建造这样一台机器并完成 C 语言的“移植”
虚拟机的编译器和库将只是一个
重复他们以前做过的事情。一旦这已经
完成后,GreenArray 芯片可以运行任何符合
外部存储器,并将满足任何 C 应用程序的要求,
得到的执行速度满足。
-- 摘自第 4 页
他还在该论文中讨论了他们对 eForth 虚拟机的实现。