自主可控概念在中国长期以来就被广泛的讨论和争辩,作者尝试提出针对SoC芯片的自主可控的分级概念,从而方便相关话题的讨论。
首先需要定义SoC的范畴,这里的SoC并不是广义SoC定义,即在单个芯片上集成多个电子系统。
本文讨论的SoC是其狭义定义,也是我们通常所讨论的SoC的定义:
在单个芯片上集成了至少一个具有通用计算能力且遵循某个公开的指令集标准(ISA)的CPU计算单元,这颗芯片中CPU是其不可或缺的一部分,芯片的主要功能是完成通用计算,并且可以运行具有内存保护模式的较为复杂的现代操作系统。
在这个定义下
- 我们所使用的PC、手机中的SoC、云计算中所使用的主处理器、航天航空国防军工所使用的主控处理器属于本分类标准讨论的范畴
- 通常所定义的单片机(MCU)、模拟芯片中辅助处理器、面向特定领域应用的专用处理器(如:GPU、神经网络加速器等)不属于本分类讨论范畴
- L0: SoC设计外包,采用第三方EDA工具,由第三方制造和封装或打磨
- L1: SoC设计自己完成,CPU IP硬核来自第三方授权,采用第三方EDA工具,由第三方制造和封装
- L2: SoC设计自己完成,CPU IP软核来自第三方授权,有清晰可读的源代码或基于第三方IP做少量修改,采用第三方EDA工具,由第三方制造和封装
- L3: SoC设计自己完成,CPU架构授权来自第三方,但核心自行设计,采用第三方EDA工具,由第三方制造和封装
- L4: SoC设计自己完成,CPU架构自有或者采用开放架构,核心自行设计,采用第三方EDA工具,由第三方制造和封装
- L5: SoC设计自己完成,CPU架构自有或者采用开放架构,核心自行设计,采用自有或者开源EDA工具,并自行制造和封装
以下表格有助于正确的对自主可控级别进行分类:
SoC自主可控级别 | SoC自行设计 | 主CPU IP | 自有架构或者开放架构? | EDA/制造/封装自有? |
---|---|---|---|---|
L0 | 否 | / | / | / |
L1 | 是 | 硬核或不可读 | / | / |
L2 | 是 | 软核 | / | / |
L3 | 是 | 自研 | 第三方 | / |
L4 | 是 | 自研 | 自有或开放 | 第三方 |
L5 | 是 | 自研 | 自有或开放 | 自有或开源 |
- 这里的知识产权范围仅限于完成主要任务CPU,不考虑部分外设的知识产权所属,包括但不限于:SerDes、DDRx控制器、PCIe、ADC/DAC等IP
- 自有架构的定义:架构相关版权、商标、专利拥有所属权
- 开放架构的定义:架构相关版权、商标、专利不属于少数商业个体,不限制使用或者代价很小
- 部分不可读的网表IP若提供了足够的设计文档,出于电路优化的原因,也可以归类为清晰可读
大卫:吃了么?
约翰:吃了,一个人在这儿研究啥呢?
大卫:市面上大部分厂商的自研手机芯片,都只能做到SoC自主可控L1或者L2,国内厂商恐怕只有华为做到了SoC自主可控L3
约翰:是的,当然我们还是希望有一天我们能够做到SoC自主可控L5
大卫:那个太难了,全球也就只有Intel能做到SoC自主可控L5,当然我们正在朝这个方向努力,我国已经初步具备SoC自主可控L4的能力了
约翰:恩,那可不咋地!
以下分类需要你的补充和建议以及反馈
- 军工:L4以上?
- 航天:L3以上?
- 政府关键部门:L1以上?
- 消费电子:L0以上?
欢迎提交Issue或Pull Request来提出问题或者给出你的修改.
贡献者: 郭雄飞、云方、汤雷、樊荣