1.3 IP核的概念、分类和设计流程
1.3.1 IP核的概念和分类
随着 EDA(Electronic Design Automation)技术的迅猛发展,Verilog HDL(Hardware
Description Language)和VHDL两种硬件描述语言的迅速推广和应用,使得将具有一
定功能的电路生成独立的宏单元(Macrocell)或软核,建立一个可供不同设计者引用
的 IP核库成为需要和现实。在新电路的研制中,将己有的 IP核和自己的设计进行整合,
从而实现既定目标的 SOC解决方案,不仅可以减少重复劳动,提高设计效率,还能大
大增强设计的可靠性,缩短研发周期。这样的设计方法已成为现在 IC设计的潮流。
在 IC设计领域,IP核是指独立自主研发的具有一定功能的电路模块。通常将经过
功能验证的、可综合(Synthesis)的、实现后门级电路大小在 5000门以上的 Verilog HDL
或VHDL模型称之为“软核”(Soft Core);将在某一 FPGA器件上实现的、经验证正
确的、总电路在 5000门以上的电路结构代码文件称为“固核”(Firm Core);将利用某
一固定工艺的标准单元库实现的、经验证正确的、5000 门以上的电路结构版图称之为
“硬核”(Hard Core)。上面所说的这些电路模块通称为 IP核。
显而易见,在具体的实现手段和工艺没有确定的逻辑设计阶段,软核具有最大的
灵活性,它很容易借助 EDA综合工具和其他的逻辑整合在一起,从而实现新的设计目
标和功能。而基于一定工艺手段的,通过了版图后仿真的硬核,可以直接和其他设计
版图整合,因而在应用上具有最大的实用价值。
从设计方法学的视角来看,使用 IP设计方法进行复杂电路的设计并不是一场革命,
它是八十年代流行的利用标准单元进行设计的扩展和衍生。然而,IP 的潜在能力确是
革命性的,基于 SOC-IP 的设计方法和 IP 核的商业化大大加快了芯片的开发速度。随
着新方法学的发展,在芯片设计中使用 IP核己经成为一个流行趋势,设计者可以把精
力集中在更高的抽象层次上,IP产业为 SOC的出现和发展提供了前提和基础[43]。
1.3.2 IP核的设计流程
IP核的设计与其它工程设计问题没有本质的不同,它是人们通过抽象与分解,最
后实现解决复杂 IP核设计的一种方法,简而言之,就是自上而下(TOP-DOWN)设计
复杂系统,而自下而上具体实现。常用简化的 IP核设计流程如图 1.1所示[44]。
1. 确定规格
IP 核的规格至少包括以下内容:概述、功能需求、性能需求、物理需求、详细的
结构模块框图、对外系统接口的详细定义、可配置功能描述、需要支持的制造测试方
1