日常·唠嗑
不知不觉距离上一篇零基础学FPGA(三):国产芯片短板—FPGA(为什么选择FPGA)文章已经过去4个月了,期间有各种各样的事,导致一直没时间来更新这个系列的文章。第五届集创赛华南赛区决赛也结束了,距离国赛还有一个月,也算是过几天清闲的日子。从刚入门集成电路就一直迷惑到底什么是IP?看到公众号一篇文章还不错,就梳理一下知识。
前言
在芯片行业,人们经常用到IP这个词,例如IP开发、IP交易、IP复用、IP厂商、IP提供商等。行外人对此词可能觉得不明觉厉,不知所云。他们也许以为是说IP卡,也或者以为是互联网技术中所说的IP地址,其实都不是。本文就专门科普一下,说说芯片行业中IP到底是个什么东西。
一、IP是什么?
“IC、IP、IQ卡,通通告诉我密码!”是电影《天下无贼》中范伟的一句经典台词。现实中没有IQ卡,只有IC卡和IP卡。IC卡是指集成电路卡,也叫做芯片卡,例如银行卡,电信卡、交通卡和社保卡等都是用芯片卡实现的。IP卡是一种运用了TCP/IP协议的网络电话卡,IP卡早已被淘汰不用了。但是,TCP/IP协议作为互联网通信的底层技术一直被使用,所以IP、IP地址等词汇还经常可以听到。这是第一种IP,它是互联网领域的技术词汇,专指IP协议或者IP地址。
第二种IP是一个法律词汇,它是知识产权(Intellectual Property)的英文简称。 现代社会中,许多国家都十分重视知识产权保护。芯片行业是一个高度智力密集、资金密集的行业,因此该行业中知识产权的保护则显得更加重要。芯片行业中的知识产权可称为硅知识产权(Silicon Intellectual Property),简称SIP。SIP的保护形式主要包括专利权保护(Patent Protection)和集成电路布图保护(IC Layout Protection)。
本文要介绍第三种IP,它既是一个技术词汇,也是一种东西,是一种商品。 它凝聚了芯片设计者的智慧,具有商品和知识产权的属性,可以被推广、销售和应用。因此,芯片行业有IP开发、IP交易、IP复用等科技和商业活动,也有一些企业被冠以IP厂商、IP提供商的称谓。
二、芯片行业的IP是指什么?
芯片行业中所说的IP,一般也称为IP核。IP核是指芯片中具有独立功能的电路模块的成熟设计。该电路模块设计可以应用在包含该电路模块的其他芯片设计项目中,从而减少设计工作量,缩短设计周期,提高芯片设计的成功率。该电路模块的成熟设计凝聚着设计者的智慧,体现了设计者的知识产权,因此,芯片行业就用IP核(Intellectual Property Core)来表示这种电路模块的成熟设计。IP核也可以理解为芯片设计的中间构件。
一般说来,一个复杂的芯片是由芯片设计者自主设计的电路部分和多个外购的IP核连接构成的。如图2所示,要设计这样结构的一款芯片,设计公司可以外购芯片中所有的IP核(不同颜色模块),仅设计芯片中自己有创意的、自主设计的部分(用绿色表示),并把各部分连接起来。
图2.自主设计部分和多个IP核集成在一起,形成复杂芯片的设计
图2的芯片设计过程就像图3的系统电路板开发过程一样,是用已有的、成熟的IP核(或者芯片)进行布局、摆放和信号连接的过程,这种过程可以称为对IP核(或者芯片)的复用。 不同的是,系统电路板上除了芯片和连接线之外,系统开发者很少自主开发自己的芯片。而在芯片设计过程中,芯片上除了采用外购的IP核之外,一般说来,芯片设计者还要设计一部分自己的电路,并完成各部分之间的信号连线,最后还要对整个芯片的功能、性能进行制造前的反复检查和验证。
图3.由IP核搭建复杂芯片,与用芯片搭建完整的系统电路板类似
如果以上介绍还显得太过专业,还可以用拼图画来对芯片设计打比方,可以把图2所示的芯片抽象地理解成图4所示的拼图画。芯片中外购的不同功能的IP核用不同色的图块表示,自主设计的电路部分用绿色图块表示,复杂芯片的设计过程就像要拼好这幅图画一样。所相同的是,用现有的图块(IP核)拼接美丽图画(复杂芯片)。所不同的是,拼图画只要考虑图块的形状,而芯片设计要考量IP核的许多参数和指标,并要把各个IP核和自主设计部分正确连接,保证整个芯片的功能和性能正确无误。
图4.IP核使复杂芯片的设计变得较容易,IP复用类似于“拼图”
IP核被其他芯片设计公司采用,行业内称为IP复用。 专门设计相对独立电路功能模块,目的是推广给其他芯片设计公司进行复用,这种设计工作称为IP开发。专门从事IP开发的公司称为IP厂商,或者IP提供商。IP厂商把IP销售给芯片设计公司是一种IP交易行为。
三、IP的由来和作用
IP的由来要从早期的芯片设计过程讲起。早期芯片的集成规模有限,设计复杂度不高,芯片上所有的电路都是由芯片设计者自主完成。设计水平不高、能力有限的芯片公司只能设计规模小的简单的芯片。设计水平高、能力强的芯片公司才可以设计规模大、功能复杂的芯片。这个时期,不论芯片规模大还是小,芯片从“头”到“脚”都是由芯片公司自己设计的。早期的高端芯片基本上都是由为数不多的大型国际芯片公司把持。
随着现代信息社会对芯片要求提升,芯片的规模呈指数性增加,复杂性急剧增大。中小型芯片公司要独立完成一款复杂芯片设计几乎变得不太可能。特别是20世纪80年代末,芯片行业出现了晶圆代工(Foundry)商业模式,大批的中小微芯片设计公司(Fabless)应运而生。这个时期,芯片设计行业急需解决小芯片公司无法设计大芯片的难题。
解决这一难题的启发思路很多。例如:搭积木和拼图画玩具;由标准件设计大型机器;由软件子程序(或者中间件)调用设计大型软件;用芯片搭建大型电子系统等。思路都是重复使用预先设计好的成熟的构件来搭建更复杂的系统,省掉对构件内部问题的考虑,化繁为简;重复使用构件,减少重复劳动,节省时间;重复使用构件,提高整个复杂系统搭建的成功率。
芯片设计行业中的IP核开发和IP复用,就是在这些思路启发下形成的。IP核就类似于上述的构件。IP核是预先设计好的具有独立功能的电路模块设计。有了IP核这种构件,大的复杂的芯片设计就变得较容易、周期短、易成功。
IP的作用主要有四个方面,一是使芯片设计化繁为简,缩短芯片设计周期,提高复杂芯片设计的成功率。二是IP开发和IP复用技术使小公司设计大芯片成为可能;三是使系统整机企业可以设计自己的芯片,提升自主创新能力和整机系统的自主知识产权含量;四是使芯片设计行业摆脱传统IDM模式,成为产业链上独立的行业,促进了芯片设计业迅猛发展。
目前,许多中小微芯片设计公司虽然设计能力和水平有限,但出于抢占市场,缩短芯片设计周期的需要,会外购许多IP核来完成自己的芯片设计项目。业界的IP开发商、IP提供商数量不断增加,也变得越来越专业。各种功能、各种类型的IP核不断涌现。IP交易活动也日趋普遍,交易金额也越来越大。
四、IP的种类和举例(软核、固核、硬核)
IP核有行为(Behavior)级、结构(Structure)级和物理(Physical)级三个层次的分类,对应着三个种类型的IP核,它们是由硬件描述语言设计的软核(Soft IP Core)、完成结构描述的固核(Firm IP Core) 和基于物理描述并经过工艺验证的硬核(Hard IP Core)。
1.软核: 它是用硬件描述语言(HDL)设计的独立功能的电路模块。从芯片设计程度来看,它只经过了RTL级设计优化和功能验证,通常是以HDL文本形式提交给用户。所以它不包含任何物理实现信息,因此,IP软核与制造工艺无关。软核相当于软件编程的库,比如Python调用一个四舍五入round(num,n) 函数一样。FPGA设计中也可以调用一个四舍五入的IP,这样就不用自己写代码了。
用户购买了IP软核后,可以综合出正确的门电路级设计网表,并可以进行后续的结构设计,具有很大的灵活性。借助于EDA综合工具,用户可以很容易与其它IP软核,以及自主设计的电路部分合成一体,并根据各种不同半导体工艺,设计成具有不同性能的芯片。
2.固核: 它的设计程度介于IP软核和IP硬核之间,它除了完成IP软核所有的设计外,还完成了门级电路综合和时序仿真等设计环节。一般地,它以门级电路网表的形式提供给用户。
3.硬核: 它提供了电路设计最后阶段掩模级的电路模块。它以最终完成的布局布线网表形式提供给用户。IP硬核既具有结果的可预见性,也可以针对特定工艺或特定IP提供商进行功耗和尺寸的优化。
所以,三种类型的IP核是电路功能模块设计在不同设计阶段的产物,如图5所示。
图5.在电路功能模块设计的不同阶段,可得到不同类型的IP核
用户经过精心评测和选择,购买了IP厂商的IP核后,开始设计自己的芯片。前文讲过,一个复杂芯片一般由购买的IP核和用户自主设计的电路部分组成。芯片设计过程包括了行为级、结构级和物理级三个阶段。行为级和结构级设计阶段的工作一般称为前端设计,物理级设计阶段的工作一般称为后端设计。图6的示意图说明,不同类型的IP核是在不同的设计阶段中加入到整个芯片设计中去。
三种类型的IP核各有优缺点,用户会根据自己的实际需要来选择。以下是三种IP核的优缺点简要总结。
软核: 它以综合源代码的形式交付给用户,其优点是源代码灵活,在功能一级可以重新配置,可以灵活选择目标制造工艺。灵活性高、可移植性强,允许用户自配置。其缺点是对电路功能模块的预测性较差,在后续设计中存在发生错误的可能性,有一定的设计风险。并且IP软核的知识产权保护难度较大。(如:调用一个PLL的IP核,你通过修改代码参数可以实现不同频率的倍频)
固核: 它的灵活性和成功率介于IP软核和IP硬核之间,是一种折中的类型。和IP软核相比,IP固核的设计灵活性稍差,但在可靠性上有较大提高。目前,IP固核是IP核的主流形式之一。
硬核: 它的最大优点是确保性能,如速度、功耗等达到预期效果。然而,IP硬核与制造工艺相关,难以转移到新的工艺或者集成到新的结构中去,是不可以重新配置的。IP硬核不许修改的特点使其复用有一定的困难,因此只能用于某些特定应用,使用范围较窄。但IP硬核的知识产权保护最为方便。
IP核的举例,最典型有ARM公司的各种类型的CPU IP核。许多IP供应商提供的DSP IP核、USB IP核、PCI-X IP核、WiFi IP核、以太网IP核、嵌入式存储器IP核等,五花八门,品种十分繁多。
如果按大类分,大体上可分为处理器和微控制器类IP、存储器类IP、外设及接口类IP、模拟和混合电路类IP、通信类IP、图像和媒体类IP等。
全球大的EDA供应商中,有些也是IP供应商。例如美国新思科技(Synopsys)可提供上千种各类IP。涵盖逻辑电路(Logic Libraries)、嵌入式存储器(Embedded Memories)、模拟电路(Analog Libraries)、有线和无线通信接口(Wired and Wireless Interface)、安全(Security)、嵌入式处理器(Embedded Processors) 和子系统(Subsystems)等方面的IP。
五、IP的开发和应用
从图4、图5可以看出,IP核开发与芯片设计过程比较相似,都需要紧跟芯片技术的发展趋势,不断积累芯片设计技术,了解芯片制造工艺发展步伐。所不同的是,芯片设计公司的商业模式是设计完整的芯片,并推向市场,实现芯片销售利润。而IP开发商不设计完整的芯片,他们只设计芯片局部的某些功能模块,追求这些功能模块(IP核)的设计是最优化的,并要实现IP核在多种复用场合的适应性、便利化。IP开发商谋求这些IP可以被众多芯片设计公司购买采用,并实现IP的销售利润。
但是,IP开发的技术难度和要求很高,并不是任何芯片设计公司想为即可为的事情。这主要体现在,一是IP的完备性要求。IP核作为芯片设计的构件,可以与软件设计的构件(中间件)作比较。软件构件中可以隐藏小瑕疵,集成后的系统软件还可以在投入实际应用时,通过打补丁升级的方式不断完善。但IP核必须非常完善,一点瑕疵都不能有。因为,IP核的任何小瑕疵都有可能影响到整个复杂芯片设计的成败,影响到花费了数百万元甚至上亿元整个芯片研发的投入产出。因此,复杂IP核的售价极为昂贵,从数十万元到上百万元不等。为了便于推广,IP厂商一般采用收取前期IP许可费(IP License)+后期按芯片出货量计算的版权费(Royalty)的商业模式,以降低用户的研发投入。二是IP的多参数需求,包括工艺节点、电源、功耗、性能等。这些都要求IP开发者对芯片设计、制造工艺和行业应用等非常熟悉。三是用户对IP提供商的信誉度要求,包括公司技术实力、影响力和稳定度等。用户很难接受一家规模较小,发展不稳定的IP厂商提供的IP,哪怕这些IP很便宜,甚至免费。用户宁愿购买著名的、大的IP厂商提供的较贵的IP,因为这样的IP才有质量保障和后续服务的保障。
2000年以来,在国发18号文件和八个国家级IC设计产业化基地的促进下,国内IC设计企业如雨后春笋般涌现,并得到快速发展。这些企业大部分是中小微IC设计企业,得益于IP开发和IP复用技术,这些中小IC设计企业都可以根据市场需要,及时开发出各种功能的系统级芯片(SOC)、人工智能(AI)芯片、物联网(IoT)芯片等。这些推动了国内IC设计业的高速发展,带动了我国新一代信息技术产业的发展。可以说,晶圆代工技术、IP开发和IP复用技术成就了我国目前芯片产业的快速发展基础。
总结
芯片行业中所说的IP,也称为IP核。IP核是指芯片中具有独立功能的电路模块的成熟设计。在电路模块设计的三个不同阶段,可以得到的不同类型的IP核,分别称为IP软核、IP固核和IP硬核。由软化到固化,再到硬化,IP核的可配置性和灵活性变小,但完善性提高,复用风险性降低。芯片设计公司购买IP厂商的IP核,通过IP复用可以快速设计出功能复杂的芯片,可以节约设计时间,提高芯片设计成功率。IP开发和IP复用技术大大促进了芯片设计业的快速发展。
参考资料:
1.电子百科词库:IP核,科通芯城:https://www.cogobuy.com/wiki-3064.shtml
2.oLinXi1234567,什么是IP核?,CSDN博客:https://blog.csdn.net/oLinXi1234567/article/details/40682869,2014.11.1
3.长弓的坚持,FPGA的IP软核、硬核以及固核,CSDN博客:https://blog.csdn.net/wordwarwordwar/article/details/53415523,2016.11.30
4.liwliwliw,集成电路与IP核技术,CSDN博客:https://blog.csdn.net/liwliwliw/article/details/91969797,2019.6.14
5.公众号:芯语录【芯论语】科普:芯片行业所说的IP是个什么东西?作者:天高云淡Andi863