admin管理员组

文章数量:1574959

IP核(Intellectual Property core)就是知识产权核知识产权模块的意思,在EDA技术开发中具有十分重要的地位。美国著名的Dataquest咨询公司将半导体产业的IP定义为“用于ASIC或FPGA中的预先设计好的电路功能模块”。IP主要分为软IP、固IP和硬IP。软IP是用Verilog/VHDL等硬件描述语言描述的功能块,但是并不涉及用什么具体电路元件实现这些功能。固IP是完成了综合的功能块。硬IP提供设计的最终阶段产品——掩膜。

基本信息

IP(知识产权)核将一些在数字电路中常用,但比较复杂的功能块,如FIR滤波器、SDRAM控制器、PCI接口等设计成可修改参数的模块。随着CPLD/FPGA的规模越来越大,设计越来越复杂(IC的复杂度以每年55%的速率递增,而设计能力每年仅提高21%),设计者的主要任务是在规定的时间周期内完成复杂的设计。调用IP核能避免重复劳动,大大减轻工程师的负担,因此使用IP核是一个发展趋势,IP核的重用大大缩短了产品上市时间。

利用IP核设计电子系统,引用方便,修改基本元件的功能容易。具有复杂功能和商业价值的IP核一般具有知识产权,尽管IP核的市场活动还不规范,但是仍有许多集成电路设计公司从事IP核的设计、开发和营销工作。

基本分类

IP核有三种不同的存在形式:HDL语言形式,网表形式、版图形式。分别对应我们常说的三类IP内核:软核、固核和硬核。这种分类主要依据产品交付的方式,而这三种IP内核实现方法也各具特色。

软核

软核是用VHDL等硬件描述语言描述的功能块,但是并不涉及用什么具体电路元件实现这些功能。软IP通常是以硬件描述语言HDL源文件的形式出现,应用开发过程与普通的HDL设计也十分相似,只是所需的开发硬软件环境比较昂贵。软IP的设计周期短,设计投入少。由于不涉及物理实现,为后续设计留有很大的发挥空间,增大了IP的灵活性和适应性。其主要缺点是在一定程度上使后续工序无法适应整体设计,从而需要一定程度的软IP修正,在性能上也不可能获得全面的优化。由于软核是以源代码的形式提供,尽管源代码可以采用加密方法,但其知识产权保护问题不容忽视。

硬核

硬核提供设计阶段最终阶段产品:掩膜。以经过完全的布局布线的网表形式提供,这种硬核既具有可预见性,同时还可以针对特定工艺或购买商进行功耗和尺寸上的优化。尽管硬核由于缺乏灵活性而可移植性差,但由于无须提供寄存器转移级(RTL)文件,因而更易于实现IP保护。

固核

固核则是软核和硬核的折衷。大多数应用于FPGA的IP内核均为软核,软核有助于用户调节参数并增强可复用性。软核通常以加密形式提供,这样实际的 RTL对用户是不可见的,但布局和布线灵活。在这些加密的软核中,如果对内核进行了参数化,那么用户就可通过头文件或图形用户接口(GUI)方便地对参数进行操作。对于那些对时序要求严格的内核(如PCI接口内核),可预布线特定信号或分配特定的布线资源,以满足时序要求。这些内核可归类为固核,由于内核是预先设计的代码模块,因此这有可能影响包含该内核的整体设计。由于内核的建立(setup)、保持时间和握手信号都可能是固定的,因此其它电路的设计时都必须考虑与该内核进行正确地接口。如果内核具有固定布局或部分固定的布局,那么这还将影响其它电路的布局。

技术应用

数字到模拟转换器(DACS)将一个二进制数转换为与之对应的电压值,常用的D/A转换器都是由电阻或电容加权网络、受码元控制的开关和基准电压或电流源组成。当D/A转换器需要转换的信号每次取样字长很长时,对这些电路的精度要求很高,并且还必须在整个温度范围和整个使用寿命期间内保持电路参数的稳定。例如,一个16位的D/A转换器,其MSB的精度必须在1/2 16以内,这是很困难的。所以,需寻求一种中保持高分辨率又可降低对电路精度和稳定度要求的方法。

可综合的Delta-Sigma DAC(术语Delta-Sigma分别指算术差与和,即Δ-∑DAC),是Xilinx公司提供的免费IP核,可从网上下载得到。

语言程序

用VHDL语言编写的程序

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

library ieee;

use ieeestd_logic_1164.all;

use ieee.std_logic_arith.all;

use ieee.std_logic_unsigned.all;

entity dac_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;

);

end dac_ds;

architecture arch_dac_ds of dac_ds is

signal error :std_logic_vector(9 downto 0);--Error accumulator is 2 bits larger

constant zeros:std_logic_vector(7 downto 0):=(others=>'0');

begin

process(reset,clk,din)

variable val :std_logic_vector(9 downto 0);

begin

if reset='1'then

error<=(others=>'0');

dout<='0';

elsif clk'event and clk='1' then

--val:=din+error;din is sign extended to nbits+2

val:=(din(din'high)&din(din'high)&din)+error;

if val(val'high)='0'then

dout<='1';

error<=val+("11"& zeros);

else

dout<='0';

error<=val+("01"&zeros);

end if;

end if;

end process;

end arch_dac_ds;

注意事项

知识产权(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块,有能力建立这些些概念,在时序分析时去除假通路,并最终确定结果的正确性。与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遇到困难时提供必需的支持。

转自:IP核_百度百科

本文标签: ip