![Altera的IP工具教学讲解课件_第1页](http://file4.renrendoc.com/view/5f2cdb9e507903ee57a1964c89233b64/5f2cdb9e507903ee57a1964c89233b641.gif)
![Altera的IP工具教学讲解课件_第2页](http://file4.renrendoc.com/view/5f2cdb9e507903ee57a1964c89233b64/5f2cdb9e507903ee57a1964c89233b642.gif)
![Altera的IP工具教学讲解课件_第3页](http://file4.renrendoc.com/view/5f2cdb9e507903ee57a1964c89233b64/5f2cdb9e507903ee57a1964c89233b643.gif)
![Altera的IP工具教学讲解课件_第4页](http://file4.renrendoc.com/view/5f2cdb9e507903ee57a1964c89233b64/5f2cdb9e507903ee57a1964c89233b644.gif)
![Altera的IP工具教学讲解课件_第5页](http://file4.renrendoc.com/view/5f2cdb9e507903ee57a1964c89233b64/5f2cdb9e507903ee57a1964c89233b645.gif)
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第四章Altera的IP工具主要内容:
1IP的概念、Altera的IP
2使用Altera的基本宏功能
3使用Altera的IP核第四章Altera的IP工具4.1IP核的概念IP(IntelligentProperty)核是具有知识产权核的集成电路芯核总称,是经过反复验证过的、具有特定功能的模块,与芯片制造工艺无关,可以移植到不同的半导体工艺中,如FIR滤波器、SDRAM控制器、PCI接口设计做成一个“黑盒”或者是可修改参数的模块,供使用。
从IP核的提供方式上,通常将其分为软核、固核和硬核这3类。从完成IP核所花费的成本来讲,硬核代价最大;从使用灵活性来讲,软核的可复用使用性最高4.1IP核的概念IP(IntelligentPrope
软核在EDA设计领域指的是综合之前的寄存器传输级(RTL)模型;具体在FPGA设计中指的是对电路的硬件语言描述,包括逻辑描述、表和帮助文档等。软核只经过功能仿真,需要经过综合以及布局布线才能使用。其优点是灵活性高、可移植性强,允许自配置;缺点是对模块的预测性,在后续设计中存在发生错误的可能性,有一定的设计风险。软核是IP核应用最广泛的形式。
软核软核在EDA设计领域指的是综合软核固核在EDA设计领域指的是带有平面规划信息的网表;具体在FPGA设计中可以看做带有布局规划的软核,通常以RTL代码和对应具体工艺网表的混合形式提供。将RTL描述结合具体标准单元库进行综合优化设计,形成门级网表,再通过布局布线工具即可使用。和软核相比,固核的设计灵活性稍差,但在可靠性上有较大提高。目前,固核也是IP核的主流形式之一。固核固核在EDA设计领域指的是带有平固核
硬核在EDA设计领域指经过验证的设计版图;具体在FPGA设计中指布局和工艺固定、经过前端和后端验证的设计,设计人员不能对其修改。不能修改的原因有两个:首先是系统设计对各个模块的时序要求很严格,不允许打乱已有的物理版图;其次是保护知识产权的要求,不允许设计人员对其有任何改动。IP硬核的不许修改特点使其复用有一定的困难,因此只能用于某些特定应用,使用范围较窄。硬核硬核在EDA设计领域指经过验证的设计版图;功能模块AMPP是ALTERA宏功能模块、IP内核开发伙伴的组织。通过这个联盟,AMPP的所有厂商提供基于ALTERA器件优化的宏功能模块、IP内核。Altera和第三方IP合作伙伴提供的可用功能模块:基本宏功能(megafunctions/LPM)(Megacore)AMPP
IP核功能模块AMPP是ALTERA宏功能模块、IP内核开发伙伴是复杂或高级构建模块,可以在QuartusII设计文件中与门和触发器基本单元一起使用。这些模块的功能一般都是通用的,比如counter、FIFO、RAM等altera提供的可参数化LPM宏功能模块和LPM函数均为altera器件结构做了优化,而且必须使用宏功能模块才可以使用一些altera特定器件的功能宏功能模块是复杂或高级构建模块,可以在QuartusII设计文件中IP知识产权模块是某一领域内的实现某一算法或功能的参数化模块。这些功能由Altera和AMPP开发,专门针对Altera特定器件经严格的测试和优化,可以使用这些知识产权的参数化块减少设计和测试时间。一般需要用户购买才能使用。这些宏功能模块包括应用于通信、数字信号处理(DSP)、PCI和其它总线接口以及存储器控制器中的宏功能模块。IP知识产权模块IP知识产权模块是某一领域内的实现某一IP知识4.2Altera提供的IP核一、基本宏功能(Megafunction/LPM)基本宏功能(Megafunctions)包括两类,一类是Altera专有的宏功能,以ALT开头进行标注,另一类则是参数化的模块库。
4.2Altera提供的IP核一、基本宏功能(Megaf何时应用宏功能块对于一些简单的功能模块,如加/减、简单的多路器等,通常建议使用通用的HDL来描述,这样的逻辑功能用HDL描述起来非常简洁,而且综合工具可以把这些基本功能放在整个设计中进行优化,使得系统达到最优。如果使用altera的基本宏功能,由于综合工具的算法无法对宏功能模块进行优化操作,反而会影响设计的结构;而对一些相对比较复杂的设计,例如,一个同步可载入的计数器,使用altera的基本宏功能会得到较好的结果。
另外,在设计代码中过多地使用基本宏功能,也会降低代码的可移植性。
使用基本宏功能设计方法不一定总给设计带来显著的性能提升和面积节省,需自己实践。何时应用宏功能块对于一些简单的功能模块,如加/减、简单二、Altera的IP与AMPPIP(Megacore)Altera除提供基本的宏功能外,还提供功能复杂的功能模块,如PCI接口、DDRSRAM等等。大致分为四类:二、Altera的IP与AMPPIP(Megacore)三AMPP
IP核AMPP
IP核是第三方及Altera合作伙伴向Altera用户提供的基于Altera器件优化的IP核。所有AMPP
IP核具有统一的界面,用来定制、生成IP文件。三AMPP
IP核AMPP
IP核是第三方及AlAltera的IP工具—MegaWizard管理器MegaWizard管理器可以帮助用户建立或修改包含自定义宏功能模块变量的设计文件,而后可以在用户自己的设计文件中对这些IP模块文件实例化。通常这些自定义宏功能模块变量基于Altera提供的基本宏功能、MegaCore以及AMPP
IP核。通过运行向导,MegaWizard管理器能帮助用户方便的为自定义宏功能模块变量指定选项,产生所需功能。
缺省状态下,MegaWizard输出HDL
封装文件,同时还提供HDL实例化模块、VHDL元件声明(CMP)、Quartus
II符号(BSF)及Verilog黑盒子等不同选择。
Altera的IP工具—MegaWizard管理器MegaW1.下载所要MegaCore的安装程序并安装2.通过MegaWizard的界面打开IP核的统一界面IPToolbench3.根据用户的需要订制要生成IP的参数4.产生IP的封装和网表文件,以及功能仿真模型;5.用户对IP的RTL仿真模型做功能方针6.用户把IP的封装文件和网表文件放在设计工程中,并实现设计7.如果IP支持OpenCorePlus,用户可以把设计下载到器件中做验证和调试8.如果确认IP使用没有问题,既可以向Altera或第三方IP供应商购买许可证
一般的开发步骤1.下载所要MegaCore的安装程序并安装一般的开发步骤4.2使用Altera的基本宏功能1通过Megawizard管理器定制基本宏功能参数,生成一个封装文件,然后在设计代码中调用该封装文件2用户可以在设计代码中对宏功能模块直接进行参数化调用3Quartus集成的综合器或第三方综合器可以根据代码中的HDL语言描述,自动推断出一些基本宏功能,如计数器、乘法器和RAM等4.2使用Altera的基本宏功能1通过Megawiza一定制基本宏功能方法:1运行管理器TOOLS/MegawizardPlug-inWizard命令2在原理图编辑页面双击空白处,从快捷菜单中选择insert/symbol命令,然后从弹出的窗口中选TOOLS/MegawizardPlug-inmaneger即可3选择开始/运行命令,输入qmegawiz命令一定制基本宏功能方法:例FIFO1调用MegaWizard管理器ToolsMegaWizardPlug-InManager例FIFO1调用MegaWizard管理器2宏功能模块选择可供选择的宏功能输出语言的选择输出文件路径和文件名白盒模式用户库2宏功能模块选择可供选择的宏功能输出语言的选择输出文件路径3FIFO参数设置3FIFO参数设置第四章Altera的IP工具课件4仿真库选择4仿真库选择5输出文件选择5输出文件选择MegaWizard输出的文件类型
<输出文件>.bsf:
BlockEditor中使用的宏功能模块的符号(元件)
<输出文件>.cmp:组件申明文件。
<输出文件>.inc:宏功能模块包装文件中模块的AHDL包含文件。
<输出文件>.tdf:要在AHDL设计中实例化的宏功能模块包装文件。
<输出文件>.vhd:要在VHDL设计中实例化的宏功能模块包装文件。
<输出文件>.v:要在VerilogHDL设计中实例化的宏功能模块包装文件
<输出文件>_bb.v:VerilogHDL设计所用宏功能模块包装文件中模块的空体或black-box申明,用于在使用EDA综合工具时指定端口方向。
<输出文件>_inst.tdf:宏功能模块包装文件中子设计的AHDL例化示例
<输出文件>_inst.vhd:宏功能模块包装文件中实体的VHDL例化示例。
<输出文件>_inst.v:宏功能模块包装文件中模块的VerilogHDL例化示例。MegaWizard输出的文件类型<输出文件>.bsf4.3实现基本宏功能步骤:1建立一个Project2使用MegaWizard管理器定制宏功能模块3在设计中实例化定制的宏功能模块4继续完成设计的其它部分5对设计进行RTL功能仿真6逻辑综合7布局布线8时序分析。4.3实现基本宏功能步骤:设计代码中例化例化代码分为两部分:端口映射和参数映射。以下面一个lpm_counter为例
端口映射部分:
lpm_counter
lpm_counter_component(
.clock(clock),
.q(q),
.aclr(1'b0),
.aload(1'b0),
.aset(1'b0),
.cin(1'b1),
.clk_en(1'b1),
.cnt_en(1'b1),
.cout(),
.data({8{1'b0}}),
.eq(),
.sclr(1'b0),
.sload(1'b0),
.sset(1'b0),
.updown(1'b1));设计代码中例化例化代码分为两部分:端口映射和参数映射。以下面参数映射部分:
defparam
lpm_counter_component.lpm_direction="UP",
lpm_counter_component.lpm_port_updown="PORT_UNUSED",
lpm_counter_component.lpm_type="LPM_COUNTER",
lpm_counter_component.lpm_width=8;参数映射部分:
defparam
l代码中直接例化的好处
在HDL代码中直接例化Megafunction的好处有以下两点:
1.可以在代码中直接修改配置参数和端口使用情况。不需要每次修改参数都启动MegaWizardPlug-inManager。
2.由于在代码中直接例化源Megafunction模块,不需要在包含文件列表中包括MegaWizardPlug-inManager生成的文件。工程文件列表简明清晰。
从上面的代码可以看出,Megafunction的端口和参数都是很复杂的,很难全凭记忆完整的列出;对于一些比较特殊的参数内容(比如string类型的参数),如果不熟悉的话,很容易写错甚至不知道该写哪些内容。
解决这一问题的方法是,先采用MegaWizardPlug-inManager生成用户订制Megafunction文件,然后参考该文件例化和配置Megafunction的方法,在自己的设计文件中直接例化Megafunction。
代码中直接例化的好处在HDL代码中直接例化Meg专用硬件资源的使用
锁相环是芯片中最常用的时钟产生形式,可以对参考晶振信号进行分频、倍频、占空比调整、相位调整等操作,精确地产生所预期的时钟信号。锁相环集成方便,频率精度高。
随着系统复杂度的不断提高,内部逻辑实现时往往需要多个频率和相位的时钟,因此在
FPGA内部出现了时钟管理单元,而最具有代表性的即为锁相环(PLL)和延迟锁定环(DLL)
Altera在FPGA芯片中内嵌模拟锁相环(PLL),PLL通过反馈路径消除时钟分布路径的延时,可以用作频率综合(如:分频、倍频)、去抖动、调整占空比及移相等。
PLL专用硬件资源的使用锁相环是芯片中最常用的时钟产生形式,在FPGA中,片内存储器是十分重要的资源。利用片内存储器,可以在FPGA中实现RAM、ROM、CAM等存储单元。存储单元的设计有其自身的规律和特点:RAM是根据地址读、写数据的存储单元;
在FPGA中没有专用的ROM硬件资源,实现ROM的方法是:对RAM赋初值,并保持该初值;
CAM和RAM恰恰相反,它返回的是与端口数据相匹配的内部地址。CAM的应用非常广泛,如在路由器中的地址表等。片内存储器在FPGA中,片内存储器是十分重要的资源。利用片内存储器有三类:块RAM、查找表、寄存器。块RAM是FPGA中内嵌的存储单元,可以配置为单口/双口RAM、ROM、CAM及FIFO等。绝大多数
FPGA都是基于触发器(FF)和查找表(LUT)结构的,这两种基本资源都可以综合为RAM等存储单元。相对较小、速度较高的存储结构可以用寄存器资源实现;相对大一些,时序余量宽松的存储单元可以用LUT实现。
目前很多综合工具支持类推RAM、ROM、CAM等存储单元使用块RAM、寄存器或LUT资源。FPGA中与存储单元相关的资源有三类:块RAM、查找表、寄存器。FPGA中与存储单元相关的直接在HDL代码中描述:直接用HDL代码描述存储单元的模型,而后由综合器综合类推。其缺点在于综合结果不确定,或者需要直接调用器件商提供的与这些存储单元相关的硬件原语。使用综合约束属性指导综合器类推RAM等存储单元,这要求设计者必须熟悉器件结构和综合软件的约束属性。使用EDA软件提供的IP
Core实现,该方法简单、高效,推荐采用。存储单元的三种基本生成方法:直接在HDL代码中描述:直接用HDL代码描述存储单元的模型,有三种:M512:每块容量为512bit;M4K:每块容量为4kbit;M-RAM:每块容量为512kbit。Altera片内块RAM的端口方式:单端口RAM:一个端口进行读写操作;简单双端口RAM:两个端口,一个只读,一个只写;真正双端口RAM:两个端口,均可读写;多端口RAM,比如一个端口写,两个端口读等;FIFO:先进先出队列;ROM:只读存储器;移位寄存器等。
在Altera
Quartus
II中,要实现单端口、双端口等RAM,需要在MegaWizard中的Storage部分选择ALTSYNCRAM的Megafunction功能块。要使用RAM实现移位寄存器,则需在MegaWizard中调ALTSHIFT
TAPSAltera
FPGA中的块RAM有三种:M512:每块容量为512bit;M4K:每块容Al随着数据接口速度和带宽的不断提高,许多接口逐渐摒弃了传统的LVTTL/LVCMOS电平,转而采用一些速度更高、抗干扰性能更好的差分接口电平(如图8所示),如LVDS、HyperTransport等,从而减少PCB走线,提高传输带宽。
在实际设计中,要实现LVDS发送器和接收器,只需在MegaWizard中调用ALTLVDS并进行定制即可。高速差分接口随着数据接口速度和带宽的不断提高,许多高速差分接口FPGA中的DSP资源,包括:硬件乘法器、乘加器及专用的DSP逻辑片。利用这些资源,系统设计者可将精力集中在设计上,而无须关心底层模块的细节。
FPGA可以生成定制硬件设计,从而控制逻辑在硬件中的实现。通过裁减硬件架构,FPGA可以提供额外的性能。当速度是最重要的考量因素时,可以在FPGA中设计完全并行的算法处理方案,以资源换取速度。
Altera高端FPGA中均嵌入DSP块,用来实现高速的、并行的数字信号处理。Altera
DSP块包括:输入寄存器、乘法器、流水线寄存器、加/减/累加单元、求总和单元、输出多路选择器及输出寄存器等
DSP块FPGA中的DSP资源,包括:硬件乘法器、乘加器及DSP块举例:LPM_RAM模块的设置一初始化文件生成:
1.建立.mif格式文件file--new---memeryfile
(1)直接编辑法
举例:LPM_RAM模块的设置一初始化文件生成:(2)文件编辑法
(2)文件编辑法(3)C、Matlab等软件生成编译后,dos下执行romgen>sin_rom.mif(3)C、Matlab等软件生成(4)专用mif文件生成器(4)专用mif文件生成器2.建立.hex格式文件
2.建立.hex格式文件2LPM_RAM设置和调用2LPM_RAM设置和调用第四章Altera的IP工具课件第四章Altera的IP工具课件第四章Altera的IP工具主要内容:
1IP的概念、Altera的IP
2使用Altera的基本宏功能
3使用Altera的IP核第四章Altera的IP工具4.1IP核的概念IP(IntelligentProperty)核是具有知识产权核的集成电路芯核总称,是经过反复验证过的、具有特定功能的模块,与芯片制造工艺无关,可以移植到不同的半导体工艺中,如FIR滤波器、SDRAM控制器、PCI接口设计做成一个“黑盒”或者是可修改参数的模块,供使用。
从IP核的提供方式上,通常将其分为软核、固核和硬核这3类。从完成IP核所花费的成本来讲,硬核代价最大;从使用灵活性来讲,软核的可复用使用性最高4.1IP核的概念IP(IntelligentPrope
软核在EDA设计领域指的是综合之前的寄存器传输级(RTL)模型;具体在FPGA设计中指的是对电路的硬件语言描述,包括逻辑描述、表和帮助文档等。软核只经过功能仿真,需要经过综合以及布局布线才能使用。其优点是灵活性高、可移植性强,允许自配置;缺点是对模块的预测性,在后续设计中存在发生错误的可能性,有一定的设计风险。软核是IP核应用最广泛的形式。
软核软核在EDA设计领域指的是综合软核固核在EDA设计领域指的是带有平面规划信息的网表;具体在FPGA设计中可以看做带有布局规划的软核,通常以RTL代码和对应具体工艺网表的混合形式提供。将RTL描述结合具体标准单元库进行综合优化设计,形成门级网表,再通过布局布线工具即可使用。和软核相比,固核的设计灵活性稍差,但在可靠性上有较大提高。目前,固核也是IP核的主流形式之一。固核固核在EDA设计领域指的是带有平固核
硬核在EDA设计领域指经过验证的设计版图;具体在FPGA设计中指布局和工艺固定、经过前端和后端验证的设计,设计人员不能对其修改。不能修改的原因有两个:首先是系统设计对各个模块的时序要求很严格,不允许打乱已有的物理版图;其次是保护知识产权的要求,不允许设计人员对其有任何改动。IP硬核的不许修改特点使其复用有一定的困难,因此只能用于某些特定应用,使用范围较窄。硬核硬核在EDA设计领域指经过验证的设计版图;功能模块AMPP是ALTERA宏功能模块、IP内核开发伙伴的组织。通过这个联盟,AMPP的所有厂商提供基于ALTERA器件优化的宏功能模块、IP内核。Altera和第三方IP合作伙伴提供的可用功能模块:基本宏功能(megafunctions/LPM)(Megacore)AMPP
IP核功能模块AMPP是ALTERA宏功能模块、IP内核开发伙伴是复杂或高级构建模块,可以在QuartusII设计文件中与门和触发器基本单元一起使用。这些模块的功能一般都是通用的,比如counter、FIFO、RAM等altera提供的可参数化LPM宏功能模块和LPM函数均为altera器件结构做了优化,而且必须使用宏功能模块才可以使用一些altera特定器件的功能宏功能模块是复杂或高级构建模块,可以在QuartusII设计文件中IP知识产权模块是某一领域内的实现某一算法或功能的参数化模块。这些功能由Altera和AMPP开发,专门针对Altera特定器件经严格的测试和优化,可以使用这些知识产权的参数化块减少设计和测试时间。一般需要用户购买才能使用。这些宏功能模块包括应用于通信、数字信号处理(DSP)、PCI和其它总线接口以及存储器控制器中的宏功能模块。IP知识产权模块IP知识产权模块是某一领域内的实现某一IP知识4.2Altera提供的IP核一、基本宏功能(Megafunction/LPM)基本宏功能(Megafunctions)包括两类,一类是Altera专有的宏功能,以ALT开头进行标注,另一类则是参数化的模块库。
4.2Altera提供的IP核一、基本宏功能(Megaf何时应用宏功能块对于一些简单的功能模块,如加/减、简单的多路器等,通常建议使用通用的HDL来描述,这样的逻辑功能用HDL描述起来非常简洁,而且综合工具可以把这些基本功能放在整个设计中进行优化,使得系统达到最优。如果使用altera的基本宏功能,由于综合工具的算法无法对宏功能模块进行优化操作,反而会影响设计的结构;而对一些相对比较复杂的设计,例如,一个同步可载入的计数器,使用altera的基本宏功能会得到较好的结果。
另外,在设计代码中过多地使用基本宏功能,也会降低代码的可移植性。
使用基本宏功能设计方法不一定总给设计带来显著的性能提升和面积节省,需自己实践。何时应用宏功能块对于一些简单的功能模块,如加/减、简单二、Altera的IP与AMPPIP(Megacore)Altera除提供基本的宏功能外,还提供功能复杂的功能模块,如PCI接口、DDRSRAM等等。大致分为四类:二、Altera的IP与AMPPIP(Megacore)三AMPP
IP核AMPP
IP核是第三方及Altera合作伙伴向Altera用户提供的基于Altera器件优化的IP核。所有AMPP
IP核具有统一的界面,用来定制、生成IP文件。三AMPP
IP核AMPP
IP核是第三方及AlAltera的IP工具—MegaWizard管理器MegaWizard管理器可以帮助用户建立或修改包含自定义宏功能模块变量的设计文件,而后可以在用户自己的设计文件中对这些IP模块文件实例化。通常这些自定义宏功能模块变量基于Altera提供的基本宏功能、MegaCore以及AMPP
IP核。通过运行向导,MegaWizard管理器能帮助用户方便的为自定义宏功能模块变量指定选项,产生所需功能。
缺省状态下,MegaWizard输出HDL
封装文件,同时还提供HDL实例化模块、VHDL元件声明(CMP)、Quartus
II符号(BSF)及Verilog黑盒子等不同选择。
Altera的IP工具—MegaWizard管理器MegaW1.下载所要MegaCore的安装程序并安装2.通过MegaWizard的界面打开IP核的统一界面IPToolbench3.根据用户的需要订制要生成IP的参数4.产生IP的封装和网表文件,以及功能仿真模型;5.用户对IP的RTL仿真模型做功能方针6.用户把IP的封装文件和网表文件放在设计工程中,并实现设计7.如果IP支持OpenCorePlus,用户可以把设计下载到器件中做验证和调试8.如果确认IP使用没有问题,既可以向Altera或第三方IP供应商购买许可证
一般的开发步骤1.下载所要MegaCore的安装程序并安装一般的开发步骤4.2使用Altera的基本宏功能1通过Megawizard管理器定制基本宏功能参数,生成一个封装文件,然后在设计代码中调用该封装文件2用户可以在设计代码中对宏功能模块直接进行参数化调用3Quartus集成的综合器或第三方综合器可以根据代码中的HDL语言描述,自动推断出一些基本宏功能,如计数器、乘法器和RAM等4.2使用Altera的基本宏功能1通过Megawiza一定制基本宏功能方法:1运行管理器TOOLS/MegawizardPlug-inWizard命令2在原理图编辑页面双击空白处,从快捷菜单中选择insert/symbol命令,然后从弹出的窗口中选TOOLS/MegawizardPlug-inmaneger即可3选择开始/运行命令,输入qmegawiz命令一定制基本宏功能方法:例FIFO1调用MegaWizard管理器ToolsMegaWizardPlug-InManager例FIFO1调用MegaWizard管理器2宏功能模块选择可供选择的宏功能输出语言的选择输出文件路径和文件名白盒模式用户库2宏功能模块选择可供选择的宏功能输出语言的选择输出文件路径3FIFO参数设置3FIFO参数设置第四章Altera的IP工具课件4仿真库选择4仿真库选择5输出文件选择5输出文件选择MegaWizard输出的文件类型
<输出文件>.bsf:
BlockEditor中使用的宏功能模块的符号(元件)
<输出文件>.cmp:组件申明文件。
<输出文件>.inc:宏功能模块包装文件中模块的AHDL包含文件。
<输出文件>.tdf:要在AHDL设计中实例化的宏功能模块包装文件。
<输出文件>.vhd:要在VHDL设计中实例化的宏功能模块包装文件。
<输出文件>.v:要在VerilogHDL设计中实例化的宏功能模块包装文件
<输出文件>_bb.v:VerilogHDL设计所用宏功能模块包装文件中模块的空体或black-box申明,用于在使用EDA综合工具时指定端口方向。
<输出文件>_inst.tdf:宏功能模块包装文件中子设计的AHDL例化示例
<输出文件>_inst.vhd:宏功能模块包装文件中实体的VHDL例化示例。
<输出文件>_inst.v:宏功能模块包装文件中模块的VerilogHDL例化示例。MegaWizard输出的文件类型<输出文件>.bsf4.3实现基本宏功能步骤:1建立一个Project2使用MegaWizard管理器定制宏功能模块3在设计中实例化定制的宏功能模块4继续完成设计的其它部分5对设计进行RTL功能仿真6逻辑综合7布局布线8时序分析。4.3实现基本宏功能步骤:设计代码中例化例化代码分为两部分:端口映射和参数映射。以下面一个lpm_counter为例
端口映射部分:
lpm_counter
lpm_counter_component(
.clock(clock),
.q(q),
.aclr(1'b0),
.aload(1'b0),
.aset(1'b0),
.cin(1'b1),
.clk_en(1'b1),
.cnt_en(1'b1),
.cout(),
.data({8{1'b0}}),
.eq(),
.sclr(1'b0),
.sload(1'b0),
.sset(1'b0),
.updown(1'b1));设计代码中例化例化代码分为两部分:端口映射和参数映射。以下面参数映射部分:
defparam
lpm_counter_component.lpm_direction="UP",
lpm_counter_component.lpm_port_updown="PORT_UNUSED",
lpm_counter_component.lpm_type="LPM_COUNTER",
lpm_counter_component.lpm_width=8;参数映射部分:
defparam
l代码中直接例化的好处
在HDL代码中直接例化Megafunction的好处有以下两点:
1.可以在代码中直接修改配置参数和端口使用情况。不需要每次修改参数都启动MegaWizardPlug-inManager。
2.由于在代码中直接例化源Megafunction模块,不需要在包含文件列表中包括MegaWizardPlug-inManager生成的文件。工程文件列表简明清晰。
从上面的代码可以看出,Megafunction的端口和参数都是很复杂的,很难全凭记忆完整的列出;对于一些比较特殊的参数内容(比如string类型的参数),如果不熟悉的话,很容易写错甚至不知道该写哪些内容。
解决这一问题的方法是,先采用MegaWizardPlug-inManager生成用户订制Megafunction文件,然后参考该文件例化和配置Megafunction的方法,在自己的设计文件中直接例化Megafunction。
代码中直接例化的好处在HDL代码中直接例化Meg专用硬件资源的使用
锁相环是芯片中最常用的时钟产生形式,可以对参考晶振信号进行分频、倍频、占空比调整、相位调整等操作,精确地产生所预期的时钟信号。锁相环集成方便,频率精度高。
随着系统复杂度的不断提高,内部逻辑实现时往往需要多个频率和相位的时钟,因此在
FPGA内部出现了时钟管理单元,而最具有代表性的即为锁相环(PLL)和延迟锁定环(DLL)
Altera在FPGA芯片中内嵌模拟锁相环(PLL),PLL通过反馈路径消除时钟分布路径的延时,可以用作频率综合(如:分频、倍频)、去抖动、调整占空比及移相等。
PLL专用硬件资源的使用锁相环是芯片中最常用的时钟产生形式,在FPGA中,片内存储器是十分重要的资源。利用片内存储器,可以在FPGA中实现RAM、ROM、CAM等存储单元。存储单元的设计有其自身的规律和特点:RAM是根据地址读、写数据的存储单元;
在FPGA中没有专用的ROM硬件资源,实现ROM的方法是:对RAM赋初值,并保持该初值;
CAM和RAM恰恰相反,它返回的是与端口数据相匹配的内部地址。CAM的应用非常广泛,如在路由器中的地址表等。片内存储器在FPGA中,片内存储器是十分重要的资源。利用片内存储器有三类:块RAM、查找表、寄存器。块RAM是FPGA中内嵌的存储单元,可以配置为单口/双口RAM、ROM、CAM及FIFO等。绝大多数
FPGA都是基于触发器(FF)和查找表(LUT)结构的,这两种基本资源都可以综合为RAM等存储单元。相对较小、速度较高的存储结构可以用寄存器资源实现;相对大一些,时序余量宽松的存储单元可以用LUT实现。
目前很多综合工具支持类推RAM、ROM、
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年春七年级语文下册 第三单元 12 卖油翁说课稿 新人教版
- 12古诗三首《己亥杂诗》说课稿-2024-2025学年语文五年级上册统编版
- 15 分享真快乐(说课稿)2023-2024学年统编版道德与法治 一年级下册001
- 2025装修工程泥工承包合同
- 7让弦发出高低不同的声音 说课稿-2024-2025学年科学四年级上册教科版
- 2024-2025学年高中历史 专题四 王安石变法 一 积贫积弱的北宋教学说课稿 人民版选修1
- 14 请帮我一下吧 第一课时 说课稿-2023-2024学年道德与法治一年级下册统编版
- 6我们神圣的国土 第1课时(说课稿)-部编版道德与法治五年级上册
- 2023八年级英语下册 Module 1 Feelings and impressions Unit 2 I feel nervous when I speak Chinese第三课时说课稿 (新版)外研版
- 2024-2025学年新教材高中语文 第二单元 6.2 文氏外孙入村收麦说课稿(3)部编版必修上册
- 2025年矿山开采承包合同实施细则4篇
- 2025年度茶叶品牌加盟店加盟合同及售后服务协议
- 氧气、乙炔工安全操作规程(3篇)
- 建筑废弃混凝土处置和再生建材利用措施计划
- 某县城区地下综合管廊建设工程项目可行性实施报告
- 《架空输电线路导线舞动风偏故障告警系统技术导则》
- 2024年计算机二级WPS考试题库
- 2024年广东省公务员录用考试《行测》真题及解析
- 物业保洁及餐饮服务项目方案
- (新版教材)粤教粤科版六年级下册科学全册课时练(同步练习)
- c语言期末机考(大连理工大学题库)
评论
0/150
提交评论