该公司的an interesting CPU以惊人的速度运行。是否有可能模拟C或内存太小?
答案 0 :(得分:5)
SEAforth40芯片(以前版本的GA144芯片)有C转换器
答案 1 :(得分:2)
第一次粗略地看一下指令集表明“colorForth”可以被认为是一种简单的机器语言。鉴于此,可以编写一个编译为colorForth的C编译器作为其目标指令集。
当然,首先在colorForth中编写代码可能更容易。
答案 2 :(得分:1)
从它的外观来看,如果有人编写了一个可以输出机器代码的编译器(33条指令,而不是太复杂),你就不需要模拟C了,你可以直接编译它。
当然,它会非常有限,因为看起来每个芯片都有很少的内部RAM(64个字不是很多)。有一个18位内存地址端口连接到其中一个内核,所以你可以拥有256MB的外部RAM,但它只能由一个内核直接访问,然后需要传递到另一个内核
不同的内核可能会用于不同的功能,但这会使编译器复杂化。
答案 3 :(得分:1)
可以这样做,但是他们的解释器应该处理并行任务,负载分配等。最好只使用他们的Forth解释器。
答案 4 :(得分:1)
叶绿素有一些普遍感兴趣的想法。我也碰巧看起来像C:
我们开发了叶绿素,一种合成辅助编程模型和 GreenArrays GA144的编译器,非常简约 低功耗空间架构,需要对程序进行分区 分成不超过256个指令和64个单词的片段 数据。该处理器的能效比其处理器高100倍 竞争对手,但目前只能使用低级编程 基于堆栈的语言。叶绿素编程模型允许 程序员通过指定部分来提供人类洞察力 分区数据和计算。叶绿素编译器依赖 在综合上,回避了发展经典的必要性 优化,鉴于不寻常的可能是挑战 建筑。为了将合成扩展到实际问题,我们将其分解 汇编成更小的综合子问题 - 分区,布局, 和代码生成。我们表明合成的程序已不复存在 比高度优化的专家编写的程序慢65% 比启发式,非合成版本生成的程序更快 我们的编译器。
http://www.eecs.berkeley.edu/~mangpo/www/talks/1311_forthday_handout.pdf
http://www.eecs.berkeley.edu/~nishant/papers/Chlorophyll.pdf
答案 5 :(得分:0)
你需要使用外部记忆,但除此之外,根据white paper Greg Bailey的{{3}},这肯定是可行的:
构建支持C的虚拟机并不困难, 而且仅在美国就有很多人和公司为他们服务 构建这样一台机器并完成C语言的“端口” 编译器和库到虚拟机只是一个 重复他们以前做过的事情。一旦这样了 完成后,GreenArray芯片可以运行适合的任何C程序 外部存储器将满足任何C应用程序的要求 由最终的执行速度来满足。
- 摘自第4页
他还在该论文中讨论了他们对eForth虚拟机的实现。