软核,硬核、固核的区别!
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。

软核和硬核的设计工作量、设计预测性和性能的差异是由它们不同的设计流程所决定的。

软核、固核、硬核的区别相关推荐

  1. VA软屏和IPS硬屏的区别

    简单来说IPS硬屏,无论从颜色.可视角度.工艺技术上都要优于VA软屏,但是VA软屏技术成熟,成本低,较高端的VA软屏的效果也和普通的IPS硬屏的效果差距不大,价格却要低一些.主要看使用需求和投入的成本 ...

  2. 硬核干货合集!500+篇Java干货技术文章整理|资源|书单|工具|面试指南|强烈建议打开!

    今天给大家推荐一位在阿里做Java的朋友给大家,他是公众号[程序员书单]的作者黄小斜. 他的公众号[程序员书单]这两年来累积了200多篇优质原创文章,独家原创的系列文章有<五分钟学编程>系 ...

  3. Lattice CrosslinkNx LIFCL-40应用连载5:如何使用MIPI D-PHY硬核IP

    作者:Hello,Panda 一.目标 配置CMOS Sensor OV9734,并通过MIPI DPHY硬核接收数据. 使用一个RISC-V软核,实通过AHB总线访问I2C FIFO,通过I2C总线 ...

  4. 超越芯片和AI,硬科技资本为什么越来越“硬核”?

    有压力才有动力,或许是基于这种原因,"卡脖子",一度是国内硬科技领域发展的重要推动力. 最直观的领域,就是半导体芯片.工业软件.动力材料等等.为了攻克技术.专利壁垒,改善关键核心技 ...

  5. 软核,硬核、固核的区别!

    软核,硬核.固核的区别! IP(Intellectual Property)就是常说的知识产权.美国Dataquest咨询公司将半导体产业的IP定义为用于ASIC.ASSP和PLD等当中,并且是预先设 ...

  6. 软核、固核、硬核的区别【转】

    IP(Intellectual Property)就是常说的知识产权.美国Dataquest咨询公司将半导体产业的IP定义为用于ASIC.ASSP和PLD等当中,并且是预先设计好的电路模块.IP核模块 ...

  7. 软核、硬核和固核的区别

    软核: 把经过功能验证的.可综合的.实现后电路结构总门数在五千门以上的Verilog HDL模型称为软核(soft core). 硬核: 把在某一种专用集成电路工艺的(ASIC)器件上实现的.经过检验 ...

  8. FPGA的IP软核、硬核以及固核

    PART1 IP(Intellectual Property)就是常说的知识产权.美国Dataquest咨询公司将半导体产业的IP定义为用于ASIC.ASSP和PLD等当中,并且是预先设计好的电路模块 ...

  9. 3级调度 fpga_FPGA的软核、硬核、固核

    "核" 现在的FPGA设计,规模巨大而且功能复杂,因此设计的每一个部分都从头开始是不切实际的.一种解决的办法是:对于较为通用的部分可以重用现有的功能模块,而把主要的时间和资源用在设 ...

最新文章

  1. php ip访问mysql什么配置_PHP与MYSQL配合完成IP的存取
  2. linux 播放器系统,在Linux上安装和使用开源视频播放器MPlayer
  3. openssl java aes_Java AES算法和OpenSSL配对
  4. java postconstruct_spring框架中@PostConstruct的实现原理
  5. 前端面试题目汇总摘录(JS 基础篇)
  6. [Leedcode][JAVA][第45题][跳跃游戏 II][贪心算法]
  7. 浅谈-LINUX 操作系统启动过程
  8. codeforces hack
  9. another app is currently holding the yum lock;waiting for it to exit...
  10. 心得 | 《用得上的商学课》 004 边际成本 | 飞机起飞前的座位,只卖一块钱?...
  11. 深度学习之神经网络核心原理与算法-caffekeras框架图片分类
  12. QQ机器人制作教程,超详细
  13. 我的世界java版游戏图标_minecraftpe JAVA版游戏包mod
  14. win10连wifi显示无Internet最全解决方案
  15. smss,lsass, http://laji.xrlyy.com病毒处理
  16. 里奥·梅西(Lionel Messi)-----球场上舞动的红蓝精灵
  17. “工程化”对于大型数据平台而言,意味着什么?StartDT Hackathon来了
  18. 智能小车 + 机械臂——华为嵌入式精英挑战赛
  19. PyQt5 自定义颜色、形状粗细、虚线等组合下拉框
  20. 7-31 求圆周长和面积

热门文章

  1. 塔设备设计手册_石油化工设备设计选用手册 塔器
  2. jquery获取图片的宽度
  3. awk命令详解_python学习之利用urllib和urllib2访问http的GET/POST详解
  4. 函数指针以及在类成员函数中应用函数指针
  5. 动态规划-----(思路详解)
  6. 有关 Unity UIElements 和 UIToolkit
  7. [Python] 字典 update()函数:在字典中更新 (或加入) 键值对
  8. matlab实现qr分解
  9. [JavaScript]WebBrowser控件下IE版本的检测
  10. BZOJ1076奖励关题解