ChipCamp探索系列 -- 7B. 开源CPU之BOOM的流片欣赏

【文章摘要】:

BOOM芯片在HotChips30-2018正会亮相,展示了从芯片源代码到流片的完整过程,验证了【理解芯片的最好方式就是创造它】的理念,这其中所说的创造它首先就是【芯片编程】。文章观点指出,在RISC-V生态下,芯片设计开发已进入到以【芯片编程】为代表的【芯片敏捷开发】时代。

一、BOOM芯片在HotChips30-2018上正会!

----没有流片大概很难上正会,能上到HotChips的Posters就不错了。

----Christopher Celio大概是写BOOM代码最多的人,BOOM代码很多源文件的Author都是他!写代码才是理解芯片的正确途径,当然把写出来的芯片代码流片也是!正所谓,要理解某个东西就要把它创造出来--The best way to understand something is to create it !

二、流片欣赏!

----芯片大小2mm * 3mm!从12寸的晶圆上切下来。

----首先看到的是,大部分的面积都被1MB L2Cache所占据。然后是L1 ICache(记为I$)和L1 DCache(记为D$),都是规整的占地。其它但凡规整的地方,大概都是SRAM一类的存储器!而Core就是CPU的主要逻辑电路,则没有那么规整了。

----417k标准单元(std cells),是用来衡量电路逻辑复杂度的一个业界通行做法,每个标准单元等于约0.8个门电路、5个晶体管。因此417K标准单元大约等于333K个门电路、2100K(2M)个晶体管。

----73 SRAM macros,也就是上面说的L2Cache/L1ICache/L1DCache等,用来衡量存储类(哑电路)规格的一个业界通行做法。这个东西通常不再按照“多少门电路”或者“多少晶体管”来表功炫技了。如果实在要换算的话,73 SRAM macros可以算出4M甚至更多的晶体管。

----以前听到某某芯片150亿晶体管后留下了深刻的印象。现在来看,对芯片设计专业来说采用标准单元(std cell)反映芯片逻辑的复杂程度是比较合理的,150亿的数字主要是反映的“芯片制造”能力并以此来“吓退”外行、把芯片设计和编程“包装”成谁都别沾的“绝活”留给自己。

----RISC-V奠定了生态基础的情况下,无论是Intel、AMD还是ARM甚至是Nvidia,再也没有什么“生态护城河”了,剩下的就是【芯片编程】为代表的【芯片敏捷开发】了。RISC-V就是30年前的Linux。Go Ahead。

三、流片欣赏:

----看看CPU Core的版图规划(floorplan)和布局布线(Place&Route,P&R)有多么抽象,和画地图类似。

----I$和D$就是ICache和DCache,这是业界大佬们搞出来的幽默表达法。

四、流片欣赏:

----这个就是上面说的布局布线(P&R),主要反映RegFile及相邻的电路快。如前面的文章提示RegFile叫寄存器堆不叫寄存器文件。Layout就是版图。

五、流片欣赏:

----和前面的几个图有高度的一致性。下方是L2Cache。左上角DCache。右上角ICache。OOO-Core的中下部是RegFile寄存器堆。

六、流片欣赏:

----流完片以【点亮】Linux才是高级的CPU芯片。如果只是【点亮】一个LED流水灯那只是一个很初级的MPU芯片,市面上3~5块最多10块钱就买得到。

----载板(motherboard)+核心板(daughterboard)的形式,是很多开发板的标配,核心板虽然小但是核心的系统CPU+DRAM+Flash+IOController都在上面了,母板主要是提供电源及外围接口的这些粗活,代替面板板的手工连线。当然它这个还加了一个Xilinx的板形成了CPU+FPGA的方式,这个FPGA大概是用来接网卡和显示器一类的,CPU和FPGA对接比CPU和一堆零碎的外设对接要更简单一些。

七、流片欣赏:

----6平方(毫米)的芯片,0.52平方(毫米)的CPUCore+L1Cache!但主要的Verilog或者Chisel代码,其实都在这0.52平方毫米上了!

----Coremark/MHz是一个CPU芯片性能评估的指标,就像很多其它行当【卷】指标一样,CPU设计也不例外。

八:2019年的论文讲到的流片:

----2017年芯片tape-out投片。2018年HotChip会议上宣讲展示芯片点亮Linux的成果。2019年论文发表。

----有开源的CPU芯片代码,有流片和点亮Linux为证,论文就有底了。所谓把论文写在硅片和电路板里。

九:2020年的SonicBOOM的论文讲到的流片:

----再次提及,BOOMv2 was fabricated within the BROOM test chip。还有点小插曲,BOOMv2 imporved the design of BOOMv1 to be more suitable for fabrication and physical design flows。可见BOOMv1没有投片的检验,就有一些后端的物理设计没有做,响应地前端设计有些就存在不足。这正好反映了芯片设计的前端设计-后端设计迭代的过程。

----可喜的是,BOOMv2的投片之后还有BOOMv3的继续改进。这个SonicBOOM(BOOMv3)论文的一作是Jerry Zhao。此时Christopher Celio大概已经功成名就(博士毕业)离开伯克利了。

--------END--------

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ChipCamp

谢谢支持和鼓励!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值