赞
踩
IP核是FPGA开发者的老朋友了,可以这么说,只要是做FPGA开发的,都会利用FPGA的IP核进行开发设计,这不像IC设计,什么都要自己设计,使用IP可以加快产生开发进程。
下面摘自《FPGA之道》对IP核的描述,来理解IP核相关的简单内容。
随着FPGA的集成度越来越高,规模越来越大,设计越来越复杂,IC行业的竞争也越来越激烈,产品的交付周期越来越短,这与人类有限的设计能力形成了巨大矛盾。如果FPGA设计还是全部由设计者从最底层的代码写起,那么必然不能在越来越苛刻的开发周期内完成相关项目。而IP核的出现,解决了这个问题。IP核是一段具有特定电路功能的硬件描述语言程序,该程序通常与集成电路工艺无关,可以移植到不同的半导体工艺中去生产集成电路芯片。由于IP核将一些在数字电路中常用,但比较复杂的功能块设计成可修改参数的模块,因此FPGA的设计人员可以通过调用相关IP核来完成所需逻辑功能,从而节省了大量的开发时间。调用IP核能避免重复劳动,大大减轻设计人员的负担,因此使用IP核必然成为将来FPGA设计的一个发展趋势。
IP代表知识产权,从它的名字我们就能猜到IP核应该不是可以随便使用的。事实上,大部分IP核都是需要付费的,例如RS编码器、FIR滤波器、SDRAM控制器、PCI接口等。不过仍有很多免费的IP核资源,这其中最主要的就是每个FPGA厂商都会为自己的软件集成开发环境提供一些比较基本的免费的IP核来增加自家产品的行业竞争力。例如最最常用的FIFO模块、PLL模块等等。对于我们平常的设计来说,利用好这些免费的IP核就能达到事半功倍的效果。
按IP核的硬件描述级实现程度,可将它分为三类:即软核、硬核、固核。
嵌入式微处理器是一类比较特殊的IP核,通过在FPGA中实现微处理器的逻辑功能,就可以为嵌入式软件设计者提供在FPGA上大展拳脚的平台。这类IP核的引入,极大的变革和拓宽了FPGA的开发方法,它通过调用FPGA内部的资源实现一个行为和相应微处理芯片类似的功能模块,从而可以像开发单片机、ARM、DSP等芯片上的程序一样,让FPGA具有执行相应汇编或嵌入式C语言指令的功能。这样可以让FPGA集串行复杂处理能力与并行简单处理能力于一体,从而使单片FPGA可以实现SOPC的架构。
目前来说,Altera公司花了很大精力致力于开发专门针对其FPGA芯片产品的嵌入式微处理器IP核,从2000年初的NIOS,到现在的NIOS II,都是十分经典的版本。Xilinx主要致力于将Power PC转换为IP核移植到自己的FPGA产品中。而Atmel由于具有很强的微处理器开发能力,则直接在自己的FPGA产品中嵌入一个AVR单片机,这就是一个彻头彻尾的IP硬核。除此以外,只要经过适当的修改,我们几乎可以将任何微处理器搬入到FPGA的芯片中,甚至我们还可以在FPGA中创造出目前世界上没有的虚拟微处理器。总之,这就是FPGA变化无穷的魅力所在。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。