我终于抓住了我的手SifiveHIFIVE1 RISC-V板。随着一个是挑战,需求已经很高了。我报告了Sifive何时宣布其平台。这E310是Sifive的第一个32位微控制器它是在地板上托管的Arduino兼容板。
虽然它缺乏内置模拟支持,但Sifive的Hifive1 RISC-V板是Arduino兼容。
RISC-V是一个开源指令集架构(ISA),可在包括多个平台上提供Microsemi多个FPGA系列。我很快就会在该平台上看RISC-V。这里有关开发工具的许多评论将适用于MicroSemi的解决方案。
RISC-V类似于ARM的ARMv7架构定义,而ARM Cortex-M3是特定的实现架构。具有Cortex-M3兼容微控制器的供应商使用Cortex-M3架构并具有常用指令集。E310是Sifive的自由,每件软件平台,E310是特定实现。Sifive实际上是在许可其建筑的业务中,但E310让开发人员在平台上掌握在平台上,而不会借助更复杂的MicroSemi FPGA路线。
Sifive还拥有自由释放平台,该平台瞄准高端解决方案,如ARM的64位皮质 - 一套套件。Freedom U500具有64位RV64GC架构,支持像PCI Express Gen 3.0,USB3.0和千兆以太网等高速外设,它可以使用DDR3和DDR4内存。它具有RV64imacn架构,包括具有512千兆字节内存空间的虚拟内存支持。它可以使用台湾半导体制造有限公司(台积电)28纳米技术。
E310具有RV32IMAC架构。RV32IMAC指定是标准RISC-V功能的缩写,包括32位支持(RV32),整数支持(I),硬件整数乘法和分割(M),原子实时指令(A),以及支持32位和紧凑型(C)16位指令集。该芯片有16个32位寄存器,没有硬件堆栈。
入门
E310在电路板上有USB控制器和调试器。事实上,该芯片大于E310。它有片上的RAM,但不闪烁。相反,其代码和非易失性数据存储在128 Mbit串行闪存芯片上。对于微控制器,16 MB是HEFTY,但SPI Flash芯片廉价。它还意味着开发人员可以在实现自己的化身时选择所需的闪光量。同样,所使用的SPI串行内存的类型可以变化,包括MRAM或FRAM,具有不同的存储特性和来自传统闪存的速度。
使用USB的HIFIVE1板挂钩,可以使用USB供电。外部电源端口需要7至12 V输入,并且可以以独立的方式运行。FTDI USB芯片为编程和调试提供了JTAG接口。
有两个主要的开发选项。我看着两者。第一个是Arduino IDE。第二个是基于Eclipse的自由工作室。“入门手册”提供有关下载和安装Arduino支持的详细信息,尽管它假定IDE已设置。这种方法适用于已经使用Arduino IDE的那些,并且可以一次将IDE支持多个平台。
使用Hifive1与Arduino IDE是一个相对简单的运动。在“配置”部分中选择E310板后,它只是使用一个示例应用程序的问题。源级调试运作良好,Arduino IDE的简单将吸引一些。
我更喜欢更强大的自由工作室IDE,但这沿着Eclipse的复杂性和高级功能带来。安装工具链比设置Arduino IDE更复杂,但并不多。好处是重要的,包括更好的(至少来自我的角度来看)调试环境,包括与大多数示例一起使用的C代码的拆卸。它很有趣地查看C编译器生成的汇编代码,Eclipse调试器除了通常的源电平调试之外,还允许在此级别进行踩踏和断开点。
开发人员可以选择可在命令行模式中使用的开发工具,或者使用包括GCC和Clang / LLVM编译器的自由工作室。宁愿在虚拟平台上尝试代码的开发人员可以利用Spike ISA模拟器或QEMU仿真器。
总的来说,我发现使用自由工作室或HIFIVE1板没有大的惊喜。董事会和工具会与我所看到的其他开发套件相提并论。缺乏模拟支持对于已经指望的开发人员显然是一个问题,但是对于大多数用户来说,具有九个PWM定时器的数字支持将足够。
HIFIVE1与股票arduinos相比的更高的性能很大,尽管有arduino兼容平台,可提供可比的性能。HIFIVE1确实让您评估RISC-V平台将如何为特定应用程序执行。与竞争相比,它实际上非常高效,同时提供了300 MHz时钟的大量性能。检查SiFive是否有芯片可用性和成本。当然,Sifive会喜欢向您销售自定义芯片的设计,并且可以包括自定义IP,包括模拟支持和片上存储器。