大学生就该造CPU,你还在组装电脑?

guee评科技 2024-04-14 03:03:33
两款由学生设计的CPU

我们先来看两款由大学生设计的CPU,左边是河海大学的“河海智慧水利1号芯”BX100E-HHU,右边是江苏信息职业技术学院的“苏信一号”JSIT-M3201:

“河海智慧水利1号芯”BX100E-HHU于2023年8月19日发布,“苏信一号”JSIT-M3201则于近日流片成功。这两颗CPU的相继诞生,标志着CPU设计技术已经从科研机构和芯片企业下沉到了211大学乃至职业学院。

这两款CPU都属于SoC,它们都基于龙芯开源的OpenLA1000处理器核,LoongArch32 Reduced指令集架构,使用SMIC 180nm工艺流片。都集成了SDRAM、SDIO、MAC、SPI、I2C、UART、PWM、GPIO等一系列丰富的外设接口。它们都拥有出色的运算能力和低功耗特性,平均功耗≤0.5W。

BX100E-HHU计划应用于水利、交通及能源等重点行业的嵌入式、物联网以及智能控制等领域的实际工作中。JSIT-M3201则针对车载应用进行了优化,预计将用于车载中控电脑并提供影音播放功能。

两颗CPU都已经成功点亮并启动系统。下面分别是两款CPU和配套的工程板,看起来江苏信息职业技术学院的主板和软件设计得更加完善,不但搭配了彩色屏幕,还启动了图形化的操作系统。

两颗CPU有很多相似的地方,不只是外观上的相似,它们内部的功能模块也都是来自同一个提供者。简单地说,这两款CPU不是从零开始设计,而是用现成的IP核“组装”出的产物。

看到“组装”两个字,是不是感觉一下子变Low了?但是,这不是组装电脑,而是组装芯片耶!组装芯片的学名叫SoC(System on Chip),称为系统级芯片或片上系统,就是把各种功能模块整合在一颗芯片中,提高芯片的集成度,减少独立芯片的数量。

虽然IP核是现成的,但是师生们仍然需要完成RTL coding、系统仿真、FPGA验证、后端布局布线、流片、封测等一系列的集成电路设计、制造、测试任务,难度和工程量不是组装电脑可以比拟的。

以往,整合SoC的技术被一些厂商宣传得天花乱坠,国内很多芯片企业购买国外的IP核组装成芯片,然后就宣称“自主设计”。现在这两颗由大学生组装的CPU中,所有IP核都来自国内企业,自然是更加纯粹的自主设计。

龙芯的百芯计划

这两颗CPU的IP核、设计工具、教学资源等都来自于龙芯中科的“百芯计划”。

百芯计划的主要内容是:计划在5至10年内,在全国范围选择百所高校,以校企合作的模式,共建百个“芯片联合实验室”。联合实验室将基于龙芯高校计划免费提供的IP,可联合第三方共同研发实用型的自主芯片,并形成产业化应用。通过百芯计划,将百个实验室联网形成基于龙芯自主芯片IP的生态圈,打造兼具自主创新、科研创新、服务地方经济和人才培养功能的产学研合作平台。

百芯计划开源了两款升级版的CPU核心,分别是OpenLA500和OpenLA1000。这两款CPU核心都源自龙芯产品级的成熟设计,并允许学校联合其他企业用于产品研发。除了两款CPU核,龙芯还提供了其它各种IP核,可以用这些IP核整合出商业级的产品。

百芯计划配套的资源如下:

OpenLA500 处理器核:单发射、5 级流水、TLB、Cache、AXI I/F,可读 VerilogHDL代码;OpenLA1000 处理器核:双发射、7 级流水、TLB、Cache、AXI I/F,可读 VerilogHDL代码;其它 SoC IP:AMBA 总线互联、SDRAM Ctrl、SDIO Ctrl、MAC Ctrl、SPI Ctrl、I2C Ctrl、UART Ctrl、PWM、GPIO;软件资源:GCC 工具链,QEMU 模拟器,指令集功能测试程序集,裸机执行环境、U-boot、Linux kernel,处理器核功能仿真验证环境,SoC 参考设计的软件仿真和 FPGA综合实现环境等。

让学生学会整合SoC只是教学目标之一,更高层次的目标是让学生掌握从零开始设计CPU的能力。因此龙芯还开源了LoongArch32 Reduced指令集,并开放了被称为chiplab的硬件开发平台。

LoongArch32 Reduced是LoongArch指令集的32位精简版本,规模与RISC-V指令集相当,适合用于嵌入式CPU以及教学和实验。而chiplab则是一整套的芯片设计和验证工具,还包括了一个教学风格的单发射五级流水CPU参考设计。

chiplab还包含了基于境内工艺的物理设计环境及参考流程,面向180nm、130nm、110nm的工艺节点,提供了开源的EDA工具包。

学会整合SoC有啥用

可以说所有的CPU都是SoC,区别只是整合的IP核不同。学会了整合SoC,就能“自主设计”CPU。毕竟除了龙芯、申威等少数企业的产品,国内大多数的“自主CPU”都是用国外授权的IP核整合而成。

在整合SoC的过程中,需要完成RTL coding、系统仿真、FPGA验证、后端布局布线、流片、封测等一系列的集成电路设计、制造、测试任务。掌握了这些能力,就掌握了自主设计SoC的完整能力,也掌握了完全自主设计芯片的基础能力。

那么,龙芯提供的IP核毕竟有限,基于这些IP核完成SoC设计之后,是否有能力设计其它类型的SoC呢?当然是没有问题的。现代的IP核为了便于相互连接,在设计时就会遵循一定的规范,类似于电脑上各种板卡和外设的标准接口。例如ARM推出的AXI、AHB、AMBA等总线和接口规范已经成为业界主流,龙芯提供的IP核也同样符合这些规范。

就像学生在学校的机房里学会了组装电脑之后,离开机房后用其它的硬件一样能组装电脑。不太可能有学生只会组装Intel的电脑,面对AMD的电脑就无从下手,包括组装龙芯的电脑也是一样的方法,都是标准接口,局部大同小异而已。我们在学会组装电脑之前,也会觉得电脑内部的结构无比神秘,但在学会之后,就会觉得只要有手就能组装电脑。整合SoC也是这样,会者不难,难者不会罢了。

总之,河海大学和江苏信息职业技术学院在“百芯计划”的支持下,完成了把SoC技术拉下神坛的创举。国内某些“自主设计”的CPU,再也没有了自我标榜的本钱。两所学校,一所是211,一所是职业技术学院,它们共同覆盖了国内高校的全部层次。现在组装电脑的技术已经下沉到了中小学生阶段,大学生就该通过组装CPU获得成就感。

0 阅读:1

guee评科技

简介:感谢大家的关注