复兴SuperH架构(2015)
准备好试试LWN了吗?订阅LWN后,您可以了解Linux和自由软件社区发生的事情,并利用仅限订阅者的网站功能。我们很高兴为您提供免费的试用订阅,无需信用卡,以便您亲自体验。请加入我们!处理器架构绝非微不足道;可能有数以百万计的美元和数千小时投入到创建和完善今天在Linux机器中占主导地位的x86和ARM架构中。但这并不意味着x86和ARM是唯一有价值的架构,正如Jeff Dionne、Rob Landley和Shumpei Kawasaki在他们的LinuxCon日本会议的“乌龟一路走到底:在开放硬件上运行Linux”中所展示的那样。该团队一直在努力为一种相对较旧的架构注入新生命,这种架构在性能上可以与许多常见的系统芯片(SoC)设计相媲美,并且可以作为开放硬件生产。所讨论的架构是日立的SuperH,其指令集是许多ARM Thumb CPU使用的前身。但SuperH最重要设计的专利都已经到期——而且更多的专利将在未来几个月和几年内到期——这使得SuperH成为复兴的候选者。Dionne、Landley和Kawasaki的会议[PDF]概述了他们基于SuperH的“J2”核心设计的状态,该设计可以在低成本FPGA中合成或批量生产。Dionne在演讲开始时提出了在开放硬件上运行开源软件的价值。这当然是一个耳熟能详的观点,但他接着指出,现代笔记本电脑中包含的ARM和MIPS处理器远比x86处理器多。这些小处理器作为USB和硬盘控制器,运行ACPI和低级系统管理服务,以及更多。因此,“掌控您的硬件”的概念也必须包括这些芯片。他接着问,什么构成了可以运行Linux的最小系统。他表示,真正需要的只是一个平坦的32位内存地址空间,一个具有用于存储指令的寄存器的CPU,一些输入/输出和存储设备(内核和initramfs可以从中加载),以及用于中断的计时器。这个加上GCC就足以运行Linux——尽管可能不快,具体情况而定。甚至不需要缓存、浮点单元、对称多处理(SMP)或内存管理单元(MMU)。此时,Landley插话指出,Dionne曾是uClinux的维护者,该项目是一个活跃的项目,直到2003年Dionne将维护权交给其他人,遗憾的是,开发大幅放缓。运行Linux的要求相当低;许多今天流行的开源硬件板(例如树莓派)添加了各种不必要的额外功能。这将我们带到SuperH,Dionne表示SuperH是通过“大规模研发投资”开发的。SuperH SH2是一种高度优化的设计,采用五级哈佛RISC架构,其指令集密度远超其同时代产品。他解释说,这种密度是一种常用的CPU效率衡量标准;一种密集的架构需要更少的指令,因此在执行特定任务时需要更少的时钟周期。他表示,大部分CPU的时钟周期都用在等待某些事情上;等待指令如此成为瓶颈,如果能够足够快地获取指令,“几乎不在乎您的时钟速度是什么。”SuperH架构如此密集,以至于2009年一篇研究论文[PDF]将其排在除了x86、x86_64和CRIS v32之外的所有架构之前。ARM甚至在1990年代中期许可了SuperH专利组合,以创建其Thumb指令集。幸运的是,专利现在正在到期。最后的SH2专利在2014年到期,更多的专利即将到期。SH2处理器被应用于世嘉萨图恩游戏机;SH4(用于索尼世嘉梦幻机)将在2016年到期。尽管它们是较旧的芯片,但它们曾被用于相对强大的设备。为此里程碑做准备,Dionne、Landley等人一直在开发J2,一个SH2的清洁房间重新实现,作为“核心设计套件”实施。核心的源代码用VHDL编写,可以在Xilinx Spartan6 FPGA上合成。Spartan6是一个低成本平台(板子可以以大约50美元的价格购买),但它也有足够的空间可供添加额外合成组件——如串行控制器、内存控制器、数字信号处理器和以太网控制器。换句话说,一个基本的SoC。J2项目的另一个主要优势是,SuperH支持的实施工作已经在内核、GCC、GDB、strace和大多数其他系统组件中完成。相比之下,还有一些其他开放CPU核心项目,如OpenRISC和RISC-V,但那些开发者必须编写所有。
本站免费、广告极少。如果觉得有帮助,可以请我们喝杯咖啡 —— 任何金额都对持续运营有实际帮助。
☕请我喝杯咖啡