软核、固核、硬核的区别【转】IP(Intellectual Property)就是常说的知识产权美国 Dataquest咨询公司将半导体产业的 IP 定义为用于 ASIC、ASSP 和 PLD 等当中,并且是预先设计好的电路模块IP 核模块有行为(Behavior) 、结构(Structure)和物理(Physical)三级不同程度的设计,对应描述功能行为的不同分为三类,即软核(Soft IP Core) 、完成结构描述的固核(Firm IP Core)和基于物理描述并经过工艺验证的硬核(Hard IP Core) 什么是软核?IP 软核通常是用 HDL 文本形式提交给用户,它经过 RTL 级设计优化和功能验证,但其中不含有任何具体的物理信息据此,用户可以综合出正确的门电路级设计网表,并可以进行后续的结构设计,具有很大的灵活性,借助于 EDA 综合工具可以很容易地与其他外部逻辑电路合成一体,根据各种不同半导体工艺,设计成具有不同性能的器件软IP 内核也称为虚拟组件(VC-Virtual Component) 什么是固核?IP 固核的设计程度则是介于软核和硬核之间,除了完成软核所有的设计外,还完成了门级电路综合和时序仿真等设计环节。
一般以门级电路网表的形式提供给用户什么是硬核?IP 硬核是基于半导体工艺的物理设计,已有固定的拓扑布局和具体工艺,并已经过工艺验证,具有可保证的性能其提供给用户的形式是电路物理结构掩模版图和全套工艺文件,是可以拿来就用的全套技术如何选择 IP 模块?选择 IP 模块设计时首先要考虑的因素是 IP 与目标系统的配合程度一般来说,在进行集成之前,最好选择那些无需修改的 IP 模块但是如今的大多数情况是设计人员在获得 IP 模块后必须进行修改,有时修改的范围包括各个设计层次上的 IP 模型这种修改会耗费大量的时间和资源,不仅会耽误产品的研发进度,还会给整个设计流程引入风险有时可以通过牺牲一点芯片面积或功能,以尽量少的修改 IP 设计,使其能直接集成到系统芯片设计中选择 IP 模块时必须考虑的另外一个因素是:评估 IP 模块的品质、集成的方便程度以及可重用性,并考虑 IP 开发者提供的技术支持程度等如使用手册内容是否完备,是否提供完整的设计和验证环境,是否有成功集成的示范工程,接口定义标准的遵从程度,未来发展升级的可能性,获取 IP 授权的效率以及合作厂商的可信赖程度等多种因素IP 模块的评估是指通过一系列完整的检查规则来系统地检查 IP 的设计。
评测分为系统设计、编码、综合和参数验证等不同部分进行,并根据评测规则的重要程度为不同的规则检查分配不同的权值这样检查之后,就可以直观地看出整个设计的可重用程度,以帮助体系架构设计工程师针对性能、规模、成本和功耗等不同方面来定制和评估 IP 模块设计目前工业界比较具有影响力的评测标准是由 Synopsys 和 Mentor 联合开发推行的基于 RMM 的 OpenMORE 评测标准IP 的分类IP 核分为软核、硬核和固核三种具体地说,软核为能综合的 HDL 描述,硬核为芯片版图,固核为门级 HDL 描述 软核包括逻辑描述(RTL 和门级 Verilog HDL 或 VHDL 代码) 、器件内部连线表和不能用台式仪器和信号仪、示波器、电流计和电压表等进行测试的可测性设计软核可经用户修改,以实现所需要的电路系统它主要用于接口、编码、译码、算法和信道加密等对速度性能要求范围较宽的复杂系统硬核的设计与工艺已完成而不能更改它的产品如存储器、模拟电路和总线器件用户得到的硬核仅是产品功能而不是产品设计,因此,硬核的设计与制造厂商能对它实行全权控制,它的知识产权的保护也较简单常用的硬核有存储器、模拟器件和总线器件等。
固核是一种介于软核与硬核之间的 IP它既不独立,也不固定,可根据用户要求作部分修改固核允许用户重新定义关键的性能参数,内部连线表有的可以重新优化,其使用流程同软核如内部连线表不能优化时,使用流程与硬核相同软件开发工作量相对低,因此一般开发成本较低,柔性大,如可增加特性或选择工艺并容易从一个工艺向另一个工艺转移,且性能可提高,但可预测性差硬核的开发成本最高,柔性小,但性能一定并具有可预测性更重要的是上市时间短,易于使用固核介于硬核与软核之间,IP 用户将从实用、性能、价格、上市时间等各种因素综合考虑选择 IP软核和硬核的设计工作量、设计预测性和性能的差异是由它们不同的设计流程所决定的。