RISC仿真器/编译器

时间:2016-10-16 17:51:57

标签: assembly emulation risc

问题:是否有一个(最好在线或Linux操作)RISC编译器,带有显示寄存器内容的接口和而不需要硬件? (我想我正在寻找一种简单的各种模拟器。)

背景:我一直在网上看了很长一段时间,而我似乎找到的最接近的是不稳定的NIOS II编译器。当连接到Altera硬件等时,我已经能够运行NIOS汇编代码了,但我不经常访问它(而且我不必每次都将RISC转换为NIOS)。我也看过一些基于Unix的编译器,但据我研究过,这也需要硬件。

我理解这种情况的复杂性(有一次,我开始编写自己的RISC编译器,但我仍然在研究这种语言,并且相当快地点击了这个路障)但我仍然想知道是否有一个简单的模拟器/编译器这可以解析我忽略的一段RISC。

(注意:我正在寻找RISC作为样本here,而不是RISC-V,因为我遇到了一些问题。我尝试过GCC和ARM,但是他们'不是我想要的东西)

1 个答案:

答案 0 :(得分:3)

ARM代表“先进的RISC机器”;有一个非常稳定,多功能和优化的编译器,针对该平台:GCC。 Clang也是ARM的目标,许多其他编译器也是如此(毕竟,它是最受欢迎的架构之一,有多种版本和尺寸,从最小的嵌入式微控制器到完全成熟的台式机/笔记本电脑多核GHz CPU,网络织物控制器等)。

看到ARM处理器无处不在,你甚至可能拥有硬件:大多数智能手机都运行在ARM上,你的汽车(如果它的更新)肯定有几个ARM微控制器,你最喜欢的电子产品(洗涤mashine?立体声?)不太可能有ARM Cortex-M-something微控制器;即使你现在没有硬件,但想要试用RISC微控制器:eval板可用于< $ 10

使用qemu-arm,你也可以获得一个成熟的模拟器,所以你真的不需要任何硬件;您可以轻松地将模拟或实际执行与GDB(GNU调试器)相结合,并且不仅可以获得对寄存器,还有任意内存位置(ARM几乎代表每个不是CPU内核的硬件)的深刻见解。

RISC架构非常受欢迎 - 您应该只查看GCC支持的目标架构,并选择其中一种架构。我仍然保持ARM(或RISCV)是一个不错的选择 - 那里有实际的硬件,有成熟的模拟器,以及很多社区知识。