【问题标题】:Will it be possible to run C code emulated on GA144?是否可以运行在 GA144 上模拟的 C 代码?
【发布时间】:2011-01-08 02:23:52
【问题描述】:

这家公司有an interesting CPU 以惊人的速度运行。能不能模拟C还是内存太小了?

【问题讨论】:

  • 哈,查克·摩尔还在踢!他不会喜欢你的想法。
  • A C translator 可用于 SEAforth40 芯片。只需下载,将文件扩展名更改为 .zip 并解压缩。用户指南在这里:C Translator User Guide。如果您需要帮助,请询问:)
  • 我是如何来到这里并认为这是个好主意?

标签: c++ c forth emulation


【解决方案1】:

SEAforth40芯片有C语言翻译器(以前版本的GA144芯片)

介绍: http://www.asu.ru/files/documents/00002990.pdf

【讨论】:

    【解决方案2】:

    对指令集的粗略一瞥表明“colorForth”可以被认为是一种简单的机器语言。鉴于此,有可能编写一个 C 编译器,将 colorForth 作为其目标指令集进行编译。

    当然,首先在 colorForth 中编写代码可能更容易。

    【讨论】:

      【解决方案3】:

      从表面上看,如果有人写了一个可以输出机器码(33条指令,不太复杂)的编译器,你就不需要模拟C,直接编译就可以了。

      当然,它会非常有限,因为看起来每个芯片都有少量的内部 RAM(64 个字不是很多)。其中一个内核连接了一个 18 位内存地址端口,因此您可以拥有 256MB 的外部 RAM,但它只能由一个内核直接访问,然后需要传递给另一个内核.

      不同的内核可能用于不同的功能,但这会使编译器相当复杂。

      【讨论】:

        【解决方案4】:

        可以做到,但他们的解释器应该处理并行任务、负载分配等。可能最好只使用他们的 Forth 解释器。

        【讨论】:

          【解决方案5】:

          叶绿素有一些普遍感兴趣的想法。我也恰好长得和C很像:

          我们开发了 Chlorophyll,这是一种综合辅助编程模型,并且 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

          【讨论】:

          【解决方案6】:

          您需要使用外部存储器,但除此之外,这当然是可行的,根据white paper by Greg Bailey

          构建支持C的虚拟机并不难, 仅在美国就有很多人和公司为他们服务 建造这样一台机器并完成 C 语言的“移植” 虚拟机的编译器和库将只是一个 重复他们以前做过的事情。一旦这已经 完成后,GreenArray 芯片可以运行任何符合 外部存储器,并将满足任何 C 应用程序的要求, 得到的执行速度满足。

          -- 摘自第 4 页

          他还在该论文中讨论了他们对 eForth 虚拟机的实现。

          【讨论】:

            猜你喜欢
            • 2020-05-25
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2020-07-15
            • 2015-03-05
            • 2011-08-08
            • 2018-03-27
            相关资源
            最近更新 更多