概念
我们常说的IP核,也就是知识产权IP(IntellectualProperty),是那些己验证的、可重利用的、具有某种确定功能的IC模块。分为软IP(softIPcore)、固IP(firmIPcore)和硬IP(hardIPcore)。软IP是用某种高级语言来描述功能块的行为,但是并不涉及用什么电路和电路元件实现这些行为。固IP除了完成软IP所有的设计外,还完成了门电路级综合和时序仿真等设计环节,一般以门电路级网表形式提交用户使用。硬IP则是完成了综合的功能块,已有固定的拓扑布局和具体工艺,并己经经过工艺验证,具有可保证的性能。设计深度愈深,后续工序所需要做的事情就越少,但是灵活性也就越小。
芯片设计中的IP核(Intellectual Property Core)是指在半导体集成电路设计中那些具有特定功能的,可以重复使用的电路模块。形象些的比喻,IP核如同元器件,芯片如同电路板,通过在电路板上集成各类功能的元器件,就可以设计出针对不同应用场景的电路系统板,而集成电路(Integrated Circuit)顾名思义,就是在片内集成了多个IP核,能完成多种功能的缩微电路。
发展现状
从20世纪90年代至今,IC设计能力正在发生一次质的飞跃,即由ASIC设计方法向SoC设计方法转变。SoC设计方法使IC设计开始进一步分工细化,出现了IP设计和SoC系统设计。在近些年全球IC市场低迷的情况下,IP是不多的亮点之一。其实可以把IP理解为一颗ASIC,以前是ASIC做好以后供人家在PCB上使用,现在是IP做好以后让人家集成在更大的芯片里。
集成电路发展到超大规模阶段后,芯片中凝聚的知识已经高度浓缩。以奔腾微处理器为例,其所承载的晶体管已多达960万个,如果芯片设计依旧基于单个的晶体管而不是基于IP的物理级设计,永远也不会有奔腾问世。
常用的IP内核模块有各种不同的CPU(32/64位CISC/RISC结构的CPU或8/16位微控制器/单片机,如8051等)、32/64位DSP(如320C30)、DRAM、SRAM、EEPROM、Flashmemory、A/D、D/A、MPEG/JPEG、USB、PCI、标准接口、网络单元、编译器、编码/解码器和模拟器件模块等。丰富的IP内核模块库为快速地设计专用集成电路和单片系统以及尽快占领市场提供了基本保证。
生产机构
来源一:芯片设计公司的自身积累
传统IDM公司或Fabless设计公司在多年的芯片设计中往往有自身的技术专长,如Intel的处理器技术、TI的DSP技术、Motorola的嵌入式MCU技术、Trident的Graphics技术等。这些技术成功地开发了系列芯片,并在产品系列发展过程中确立了设计重用的原则,一些成功设计成果的可重用部分经多次验证和完善形成了IP。这些IP往往是硬核,如果这类硬核作为可提供给其他芯片设计公司使用的IP,就成了商品化的IP。
来源二:Foundry的积累
Foundry厂商是没有自身芯片产品的芯片代加工厂,但Foundry厂商为了吸引更多的芯片设计公司投片,往往设立后端设计队伍,来配合后端设计能力较弱的芯片设计公司开展布局布线工作。这支设计队伍也积累了一定的芯片设计经验,并积累了少量的IP(主要是Memory、EEPROM和FlashMemory等),这些IP可以被需要集成或愿意在该Foundry流片的公司采用。
此外,IP专职供应商与主要的Foundry厂商有长期的合作关系,经过投片验证的IP可由Foundry厂向用户提供,IP专职供应商从中提取一定利润。但对国内用户而言,因为这类Foundry多在我国台湾省,缺乏在本地的支持,可能有远水不解近渴之忧。
来源三:专业IP公司
这是20世纪90年代中期兴起的,迎接SoC时代到来的设计公司。这类公司的特点是已经认识到将自身多年积累的IP资源转化成商品的商业价值,因此,它们不仅提供已经成熟的IP,同时针对当前的技术热点、难点开发芯片设计市场急需的IP核。它们提供的IP同样有硬核、固核、软核之分,但通过与Foundry厂合作,及时对所开发的IP核进行流片验证是IP硬核供应商的通行做法,这也是IP核及早面市的必要措施。
ARM、Motorola、MIPS是提供嵌入式MCUIP核的主要专业公司;LEDA是模拟、混合信号IP硬核的最主要供应商,它同时还针对当前通信市场的需求开发并提供宽带应用、蓝牙和光通信(SONET/SDH)的IP核。上述这些公司都是当今芯片设计行业中专业 IP供应商的代表。这些专业IP供应商的业务重点是开发IP核,对于进入自身所不熟悉的地区,则往往通过与当地的芯片设计服务公司结成合作伙伴或战略联盟来实现。
来源四:EDA厂商
在美国,EDA厂家也是提供IP资源的一个主要渠道,占到IP交易量的10%左右。主要的EDA厂商为了提供更适合SoC设计的平台,在其工具中集成了各类 IP核以方便用户的IP嵌入设计,这些IP核基本是以软核形式出现。EDA厂商也并不直接设计开发IP核,而是与一些提供IP软核的设计公司合作,提供一种集成IP核的设计环境。由于集成的IP核多为软核,用户还要对这些软核做综合、时序分析、验证等工作,对用户的"及时上市"要求没有本质性改善,在IP核的支持、服务方面也存在诸多不便。因此,在国内的EDA厂家目前仍以经营EDA工具为主,从人员配备上讲,几乎没有提供IP资源的服务力量。
来源五:设计服务公司
芯片设计服务公司是目前能立即向国内IC设计公司提供IP硬核的最主要途径,除了自身积累的IP外,通过与IP专业供应商的战略合作关系向国内用户提供各类IP。
芯片设计服务公司是与用户直接打交道的,它们了解市场需求的IP类型,其IP资源库中积累的往往是最实用的IP。我国台湾省较有名的芯片设计服务公司有创意电子、智原科技等,它们除了积累了一定自己的IP硬核外,还与专业IP供应商,如ARM结成合作伙伴向用户提供更丰富的IP资源。祖国大陆的芯片设计服务公司有泰鼎(上海),目前可为用户提供300多种IP硬核,涉及高速数字逻辑、I/O模块、模拟、混合信号、RF等领域。
目前,国内还没有像国外那种专门设计IP硬核的公司,芯片设计公司的成功设计还不能被称为IP。但国内已经有专门提供软核的公司,以RTL形式提供给用户。
语言程序
用VHDL语言编写的程序
libraryieee;
useieeestd_logic_1164.all;
useieee.std_logic_arith.all;
useieee.std_logic_unsigned.all;
entitydac_ds is
port(reset :in std_logic;
clk:in std_logic;
din:in std_logic_vector(7 downto 0);--Signed integer
dout:out std_logic;
);
enddac_ds;
architecturearch_dac_ds of dac_ds is
signalerror :std_logic_vector(9 downto 0);--Error accumulator is 2 bits larger
constantzeros:std_logic_vector(7 downto 0):=(others=>'0');
begin
process(reset,clk,din)
variableval :std_logic_vector(9 downto 0);
begin
ifreset='1'then
error<=(others=>'0');
dout<='0';
elsifclk'event and clk='1' then
--val:=din+error;din is sign extended to nbits+2
val:=(din(din'high)&din(din'high)&din)+error;
ifval(val'high)='0'then
dout<='1';
error<=val+("11"& zeros);
else
dout<='0';
error<=val+("01"&zeros);
endif;
endif;
endprocess;
endarch_dac_ds;
选择和配置
选择MAX7000S系列可编程逻辑器件,编译后由MAX+PLUS II软件自动配置进EMP7032SLC44芯片,将生成的目标文件通过编程电缆对器件进行编程。
将该IP核实现的D/A转换器用于新型智能电阻炉温度控制仪中,因为调节炉温的信号不要求变化很快,因此DAC的输入二进制信号为缓变信号。对于这种低频应用,可以将RC时间常数取得较大,以减小噪声。这样,可综合的VHDL语言Delta-Sigma DAC模块配置进EMP7032芯片后,达到了预期的效果。
注意事项
知识产权(IP)的再使用是设计组赢得迅速上市时间的主要策略,因为留给设计者完成诸如蜂窝电话和Internet路由器等热门IC设计的周期只有3个月。设计者还需面对这样一个严酷的现实,即IC的复杂度以每年55%的速率递增,而设计能力每年仅提高21%。
为系统设计者专门制作的再使用IP弥补了这方面的不足。再使用既为IP建立者,也为系统设计者提供一种共享最佳IP核和主导模块的方法。系统设计者的主要任务是在规定的周期时间内研发出复杂的设计。这只有采用新设计方法和完全不同的芯片设计理念才能完成。IP再使用已经成为系统设计方法的关键所在。
标准选择
标准是再使用的基础。在设计一个系统时,可供工程人员考虑的工业标准很多,比如半导体再使用标准(SRS),它是对各种工业再使用创议标准的补充,提出这些创议标准的组织包括“虚插座接口联盟VSIA”等。再使用标准为IP设计流程中的各阶段提供规则、指南和接口方法。它是高效设计方法的一个里程碑,让可再用IP快捷地、即插即用地集成到系统解决方案成为可能。
再使用标准通常涉及到许多方面,如系统级设计、结构、实现、验证以及文件编制和可交付清单等与IP有关的事项。例如,结构分类目录解决片上或片外的接口。实现分类目录通过HDL代码标准、物理表示、单元库以及模拟子单元集中解决如何建立IP的问题。功能验证及可测试设计(DFT)标准则包含在验证分类目录中。
选择
根据IP使用的划分,IP建立者可按下列三种形式设计IP:可再用、可重定目标以及可配置。可再用IP是着眼于按各种再使用标准定义的格式和快速集成的要求而建立的,便于移植,更重要的是有效集成。可重定目标IP是在充分高的抽象级上设计的,因而可以方便地在各种工艺与结构之间转移。可配置IP是参数化后的可重定目标IP,其优点是可以对功能加以裁剪以符合特定的应用。这些参数包括总线宽度、存储器容量、使能或禁止功能块。硬IP与软IP的意图不同,因而对IP的开发和在这之后的IP的集成采用不同的方法。
硬IP
硬IP对功率、体积和性能进行了优化,并映射至特定的工艺。具体实例包括已完成布局布线的网表,以特定工艺库或全定制物理布图,或两者之组合。硬IP是特定工艺来实现的,通常用GDSII格式表示。硬IP可以再使用,且由于它已处于设计表示的最底层,因而最容易集成。硬IP已完全用目标工艺实现是按十分接近于标准单元库元件的形式交付的,故而允许设计者将IP快速地集成在衍生产品中。硬IP最大的优点是确保性能,如速度、功耗等。然而难以转移到新工艺或集成到新结构中,是不可重配置的。
软IP
软IP是以综合形式交付的,因而必须在目标工艺中实现,并由系统设计者验证。其优点是源代码的灵活性,它可重定目标于多种制作工艺,在新功能级中重新配置。
由于设计以高层次表示,因而软IP是可再用的,易于重定目标和重配置,然而预测软IP的时序、面积与功率诸方面的性能较困难。为了实现最高效率的再使用并减少集成时间,IP应从软件源代码开始;而为了确保性能,复杂IP应以硬IP的形式共享。
软插接
软插接是开发符合再使用标准IP的过程,它应成为建立新IP设计流程的组成部分。过程需要有关IP深层的知识,因此只有IP建立者最熟知IP块,有能力建立这些些概念,在时序分析时去除假通路,并最终确定结果的正确性。与DFT一样,软插接会修改现有的设计流程来适应再使用设计和生成附加可交付项,因此在设计流程中应及早考虑再使用事项。
提供获取
IP资源库为IP建立者和系统设计者提供共享和使用IP的基础设施。这个系统应让IP建立者和系统设计者共享硬和软两方面的可再用IP。资源库提供多场所的全方位访问,系统集成的全方位开发。它也是设计师搜索、选择、将再使用块集成到自己系统中的快捷而又简便的途径。
资源库基础设施还应开辟一个区域,让系统开发者提供反馈、出错报告、错误改正及资源库中任何有关IP块的注解。反馈信息块建立者对错误的修复与改进说明一起是块数据库列表的一部分。
技术认证
认证
认证能确定IP块是否符合相关的再使用标准。它提供一把表征块再使用质量的尺度,应在IP进入资源库前完成。由于IP建立者熟知IP,他应测试块概念间的一致性以及与工具、库以及硬件平台的兼容性。一个独立的认证小组通过对可交付性、再使用性以及出错历史记录的随机抽样,预测IP核的质量和可靠性,定出IP的分类等级。这个等级让设计者有一个总体概念,如IP符合标准的准确性有多好,再使用需多大的软插接工作量。
集成优化
对IP核的再使用,建立者需软插接IP、进行认证、将它存放在系统设计者能访问的资源库中。自动化工具提供多种手段,加速软插接和资源库的操作,认证和集成过程的部分自动化。工具制造商力争实现更多的自动化。在理想情况下,全部IP块可从资源库中按需供给。
周期加速
设计者几乎没有能力在三个月设计周期内开发出合乎规格的新产品。如果对每个产品族建立一个设计平台,设计组就能充分发挥平台的作用,开发出产品的衍生品种。一种有效的再使用方法应让可再使用IP的开发作为平台的一部分,并将IP块快速地集成到衍生品种。
基础设施
一旦IP开始普遍使用,提供该IP的支持是必要的。建立者继续拥有IP,因为支持它需要深层的知识。建立者负责IP的更新,将最新版本放置在资源库中。IP由为系统设计者服务的认证组重新认证。此外,建立者还应在系统设计者集成IP遇到困难时提供必需的支持。



















