版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
VHDL程序描述硬件电路功能,可以用不同描述方式来实现。另外,FPGA器件内还提供了一系列IP功能模块供设计者使用,只要根据实际电路的设计需要选择IP库中的适当模块,为其设定适当的参数,便可以分享优秀电子工程师的设计成果。应用IP库中的功能模块可提高EDA电路设计的效率和可靠性。项目7VHDL程序的描述方式与IP库的使用1.VHDL程序的描述方式VHDL程序描述一个数字系统的描述方式有行为描述、数据流描述和结构化描述等三种描述方式。(1)行为描述方式如果结构体只描述电路的功能或者电路行为,没有直接指明或涉及实现这种行为的硬件结构,称之为行为描述。行为描述只表示输入与输出之间的转换行为,不包含任何结构信息。行为描述反映一个设计的功能或算法,一般使用进程process,用顺序语句表达,属于高层次描述。项目7VHDL程序的描述方式与IP库的使用libraryieee;useieee.std_logic_1164.all;entitynoand_2isport(i1,i2:instd_logic;
out_l:out
std_logic);endnoand_2;architecturebehaveofnoand_2isbeginprocess(i1,i2)beginifi1='1'andi2='1'then
out_l<='0'after5ns;else
out_l<='1'after5ns;endif;endprocess;endbehave;【例7.1】二输入与非门的行为描述项目7VHDL程序的描述方式与IP库的使用对二输入与非门的描述方式是行为描述方式,它完全是从与非门输入和输出的逻辑关系出发,是对与非门性能的一种描述,这种描述是一种抽象描述1.VHDL程序的描述方式VHDL程序描述一个数字系统的描述方式有行为描述、数据流描述和结构化描述等三种描述方式。(2)数据流描述方式数据流描述方式也称RTL描述方式,即寄存器传输级描述,数据流描述方式就是用布尔代数表达式描述电路或系统中信号的传送关系。数据流的描述建立在并行信号赋值语句描述基础上,直观地表达了电路底层的逻辑行为,是一种可以进行逻辑综合的描述方式。项目7VHDL程序的描述方式与IP库的使用libraryieee;useieee.std_logic_1164.all;entityhalf_adderisport(a,b:instd_logic;s,c0:outstd_logic);endhalf_adder;architecturehaddofhalf_adderissignalc,d:std_logic:='0';beginc<=aorb;d<=anandb;c0<=notd;s<=candd;endhadd;【例7.2】半加器的数据流描述项目7VHDL程序的描述方式与IP库的使用半加器的数据流描述,输入信号a和b的变化,引起或门输出c及与非门输出d的变化,而c和d的变化进一步引起半加器进位输出c0以及半加器和s的变化。1.VHDL程序的描述方式VHDL程序描述一个数字系统的描述方式有行为描述、数据流描述和结构化描述等三种描述方式。(3)结构化描述方式结构化描述是以元件为基础,通过描述模块和模块之间的连接关系,反映整个系统的构成和性能。此方法适用于多层次设计,可以把一个复杂的系统分为多个子系统,将每一个子系统设计为一个模块,再用结构化描述模块和模块之间的连接关系,形成一个整体。在结构化描述方法中,元件例化语句是基本描述语句,元件例化描述由元件声明和调用元件两部分组成。项目7VHDL程序的描述方式与IP库的使用(3)结构化描述方式在结构化描述方法中,元件例化语句是基本描述语句,元件例化描述由元件声明和调用元件两部分组成。元件声明语句在结构体、程序包(package)、块语句(block)的说明部分声明。元件声明语句的格式为:component元件名[类属语句]port(端口语句);endcomponent;项目7VHDL程序的描述方式与IP库的使用“元件名”为调用模块的实体名类属语句及端口语句的说明与要调用模块的实体相同,即名称及顺序要完全一致。(3)结构化描述方式声明元件后,可以对元件进行调用,调用元件的格式为:例化名:元件名portmap(信号,…);其中“例化名”相当于元件标号,是必须的。portmap(信号,…)语句在结构体并行执行语句中使用。portmap(信号,…)语句将调用元件与当前设计实体中的指定端口相连,实现端口映射的方式有名称映射和位置映射二种。项目7VHDL程序的描述方式与IP库的使用二种实现端口映射的方式,名称映射和位置映射。名称映射格式为:例化名:元件名Portmap(元件端口1=>映射信号1,元件端口2=>映射信号2,…,元件端口n=>映射信号n);“=>”是关联符,表示采用名称关联,左边的调用元件端口与右边的映射信号相连,各端口关联说明的顺序任意。位置映射格式为:例化名:元件名portmap(映射信号1,映射信号2,…,映射信号n);使用位置关联,采用顺序一致原则,即元件说明语句中的端口按顺序依次与映射信号1到映射信号n连接。项目7VHDL程序的描述方式与IP库的使用libraryieee;useieee.std_logic_1164.all;entitynoand_2is port(a,b:instd_logic; c:outstd_logic);endentitynoand_2;architecturebehaveofnoand_2isbegin c<=anandb;endarchitecturebehave;【例7.3】采用结构化描述方法描述如图7.7所示的逻辑原理图。项目7VHDL程序的描述方式与IP库的使用①创建工程,在工程中创建文件名为“noand_2”的VHDL程序文件,实现二输入与非逻辑功能的VHDL程序如下:图7.7
4输入与非门逻辑原理图libraryieee;useieee.std_logic_1164.all;entityord4_1isport(a1,b1,c1,d1:instd_logic;z1:outstd_logic);endentityord4_1;architecturebehaveoford4_1iscomponentnoand_2is--声明元件port(a,b:in
std_logic;c:outstd_logic);endcomponentnoand_2;项目7VHDL程序的描述方式与IP库的使用②在同一工程中,创建文件名为“ord4_1”的VHDL程序文件,并置为顶层文件。采用结构化描述方式,实现四输入逻辑功能的VHDL程序如下:signals1,s2:std_logic;beginu1:noand_2portmap(a1,b1,s1);--位置关联方式u2:noand_2portmap(a=>c1,c=>s2,b=>d1);--名称关联方式u3:noand_2portmap(s1,s2,c=>z1);--混合关联方式
endarchitecturebehave;元件调用项目7VHDL程序的描述方式与IP库的使用③程序编译“ord4_1”的VHDL程序文件,在QuartusPrime20.1集成环境,选择【Tool】菜单【NetlistViewers】选项【RTLViewer】命令,将产生结构化描述方法描述的例7.3的寄存器传输级综合效果图,如图7.8所示。图6.8寄存器传输级综合效果图2.IP功能模块ROM存储器定制IntelFPGA芯片内提供了片上存储器模块供设计者使用,只要根据实际电路的设计需要选择IP库中适当的存储器模块,为其设定适当的参数即可。下面介绍FPGA片上IPROM的使用,包括IPROM初始化数据文件与IPROM元件定制。项目7VHDL程序的描述方式与IP库的使用2.IP功能模块ROM存储器定制(1)定制IPROM初始化数据文件定制IPROM初始化数据文件的步骤:①在QuartusPrime20.1集成环境,选择【File】菜单【New…】命令,弹出编辑文件类型【New】对话框,如图7.8所示。项目7VHDL程序的描述方式与IP库的使用图7.8New对话框2.IP功能模块ROM存储器定制项目7VHDL程序的描述方式与IP库的使用定制IPROM初始化数据文件的步骤:②选择【MemoryFile】的【MemoryInitializationFile】选项,创建“.mif”格式初始化数据文件。如果选择【Hexadecimal(Intel-Format)File】选项,则创建“.hex”格式,初始化数据文件。单击【OK】按钮退出【New】对话框;弹出【NumberofWords&WordSize】对话框,如图7.9所示。图7.9ROM字节数与位宽设置对话框2.IP功能模块ROM存储器定制项目7VHDL程序的描述方式与IP库的使用定制IPROM初始化数据文件的步骤:③在【NumberofWords&WordSize】对话框,设置ROM数据文件大小,包括字节数【Numberofwords】及位宽【Wordsize】。根据设计要求设置ROM数据文件的字节数和位宽后,单击【NumberofWords&WordSize】对话框【OK】按钮,在Quartus
Prime20.1集成环境,将自动创建“.mif”的ROM初始化文件数据表格,如图7.10所示。图7.10空白的ROM初始化文件数据表格2.IP功能模块ROM存储器定制项目7VHDL程序的描述方式与IP库的使用定制IPROM初始化数据文件的步骤:④表格中的数据格式设置。在窗口边缘地址栏【Addr】的列或行,单击右键弹出快捷菜单,如图7.11所示。【AdderessRadix】选项,设置ROM地址值的显示方式;【MemoryRadix】选项,设置ROM中每个字节的数值显示方式。图7.10_1地址值与存储器显示格式快捷菜单2.IP功能模块ROM存储器定制(2)定制IPROM元件通常利用IP模块管理窗口,定制ROM功能模块,并将ROM初始化数据加载于此ROM功能模块中。设计步骤如下:①在QuartusPrime集成环境,选择【Tools】→【IPcatalog】命令,打开【IPcatalog】窗口。在【IPcatalog】窗口的【InstalledIP】展卷栏,选择【Library】→【BasicFunctions】→【OnChipMemory】→【ROM:1-PORT】选项,如图7.11所示。项目7VHDL程序的描述方式与IP库的使用图7.11IP目录窗口2.IP功能模块ROM存储器定制②单击【IPcatalog】窗口的【+Add...】按钮,弹出【SaveIPVariation】对话框。在【IPvariationfilename】项,输入创建的单端口只读存储器的文件名“IP_ROM”;在【IPvariationfiletype】项,文件类型选择【VHDL】,如图7.12所示。项目7VHDL程序的描述方式与IP库的使用图7.12IP例化模块保存对话框完成IP功能模块类型及输出文件名设置后,单击【SaveIPVariation】对话框的【OK】按钮,根据设置的创建IP功能模块的不同,将生成不同的参数设置对话框。如果设置的为单端口ROM功能模块,将弹出【MegaWizardPlug-InManager[page1of5]】对话框。如图7.13所示。2.IP功能模块ROM存储器定制③在单端口ROM功能模块的【MegaWizardPlug-InManager[page1of5]】对话框,主要设置ROM功能模块的控制线、地址线和数据线。项目7VHDL程序的描述方式与IP库的使用图7.13ROM功能模块定制对话框在【Howwideshouldthe`q`outputbusbe?】与【Howmany8-bitwordsofmemory?】栏,分别设计数据线数与地址线范围。地址范围、数据线数设置要与ROM初始化数据文件相适应。在【Whatshouldthememoryblocktypebe?】栏,选择默认的【Auto】,则在适配中,Quartusprime将根据选中的目标器件系列,自动确定嵌入ROM模块的类型。在【Whatclockingmethodwouldyouliketouse】栏,选择【Singleclock】选项,ROM地址输入与ROM数值输出使用同一时钟信号控制;选择【Dualclock】选项,ROM地址输入与ROM数值输出使用不同的时钟信号控制。2.IP功能模块ROM存储器定制④在单端口ROM宏功能模块的【MegaWizardPlug-InManager[page2of5]】对话框,主要设置ROM输出端口的锁存器。项目7VHDL程序的描述方式与IP库的使用图7.14ROM功能模块输入输出锁存器定制在【Whichportsshouldberegistered?】栏,选择【‘q’outputport】复选框,则ROM内的数值输出通过锁存器输出;若不选,则直接输出。2.IP功能模块ROM存储器定制⑤在单端口ROM宏功能模块的【MegaWizardPlug-InManager[page3of5]】对话框,主要设置ROM的初始化数据文件。项目7VHDL程序的描述方式与IP库的使用图7.15ROM功能模块初始化文件定制选择【Yes,usethisfileforthememorycontentdata】单选项,单击对话框中的按钮,选择前面创建的ROM初始化数据文件(.mif或.hex格式文件),定制ROM的初始化数据。2.IP功能模块ROM存储器定制⑥在单端口ROM功能模块的【MegaWizardPlug-InManager[page4of5]】对话框,设置是否生成网表,在使用第三方EDA综合工具时是否允许优化,一般采用默认设置。项目7VHDL程序的描述方式与IP库的使用图7.16ROM宏功能模块第三方综合工具设置2.IP功能模块ROM存储器定制⑦在单端口ROM功能模块的【MegaWizardPlug-InManager[page5of5]】对话框,设置生成宏功能模块输出文件。项目7VHDL程序的描述方式与IP库的使用图7.17ROM功能模块输出文件定制【.vhd】为输出实例化的VHDL程序的功能模块文件【.inc】为输出AHDL程序的功能模块文件【.cmp】为输出功能模块的实例声明文件【.bsf】为输出功能模块的原理图元件文件【_inst.vhd】为输出功能模块元件的VHDL例化示例文件3.IP功能模块PLL锁相环定制FPGA器件内通常提供嵌入式锁相环(PLL),此嵌入式模拟锁相环可以与输入的时钟信号同步,并以其作为参考信号实现锁相,从而输出多个同步倍频或分频的片内时钟,供逻辑系统应用。下面介绍FPGA中嵌入式锁相环的定制步骤:项目7VHDL程序的描述方式与IP库的使用①在QuartusPrime集成环境,选择【Tools】→【IPcatalog】命令,打开【IPcatalog】窗口。3.IP功能模块PLL锁相环定制项目7VHDL程序的描述方式与IP库的使用图7.18IP目录窗口②在【IPcatalog】窗口的【InstalledIP】展卷栏,选择【Library】→【BasicFunctions】→【Clocks;PLLsandResets】→【PLL】→【ALTPLL】选项,如图7.18所示。3.IP功能模块PLL锁相环定制项目7VHDL程序的描述方式与IP库的使用图7.19IP例化模块保存对话框③单击【IPcatalog】窗口的【+Add...】按钮,弹出【SaveIPVariation】对话框。在【IPvariationfilename】项,设置IP功能模块输出的路径与文件名,如“E:/XM7/L7.5/PLL_LX”;在【IPvariationfiletype】项,选择IP功能模块输出的文件类型,如选择【VHDL】,如图7.19所示,单击【OK】按钮,弹出【MegaWizardPlug-InManager[page1of12]】对话框。3.IP功能模块PLL锁相环定制项目7VHDL程序的描述方式与IP库的使用图7.20PLL功能模块输入信号频率定制④【MegaWizardPlug-InManager[page1of12]】对话框,定制PLL功能模块的输入频率、锁相环类型及工作模式。在【Whatisthefrequencyoftheinclk0input?】栏,输入框中输入外部输入频率值,如“50MHz”;在【OperationMode】选项组,选择锁相环的工作模式,一般选择内部反馈通道的通用模式3.IP功能模块PLL锁相环定制项目7VHDL程序的描述方式与IP库的使用图7.21PLL功能模块控制信号定制⑤在【MegaWizardPlug-InManager[page2of12]】对话框,主要定制PLL的控制信号,如PLL的使能控制信号“pllena”;异步复位信号“areset”;锁相输出信号“locked”等,如图7.21所示。3.IP功能模块PLL锁相环定制项目7VHDL程序的描述方式与IP库的使用图7.22PLL功能模块输入信号脉宽定制⑥【MegaWizardPlug-InManager[page3of12]】-【MegaWizardPlug-InManager[page5of12]】对话框,主要是定制输入信号脉宽及是否采用第二个外部时钟,如图7.22、7.23、7.24所示。3.IP功能模块PLL锁相环定制项目7VHDL程序的描述方式与IP库的使用图7.23PLL功能模块输入信号定制⑥【MegaWizardPl
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024床上用品购货合同样本
- 电商整年销售规划
- 淮南师范学院《UI设计实验》2023-2024学年第一学期期末试卷
- 2024矿山开采承包合同
- 截肢患者护理问题
- 2025届河南省中职联考对口高考财经类模拟测试卷(一模)(含答案卷)
- 2025高考数学复习必刷题:抛物线及其性质(学生版)
- 2025届高中数学一轮复习专练:等式与不等式
- 康复科普颈椎病
- 2025届中山某中学高二化学第一学期期中教学质量检测试题(含解析)
- JT∕T1180.4-2018交通运输企业安全生产标准化建设基本规范第4部分:道路普货运输
- 数据安全事件的溯源与责任追究
- 自然辩证法概论智慧树知到期末考试答案2024年
- 全国大学英语六级词汇表
- 苏教译林版五年级上学期英语第七单元Unit7《At weekends》测试卷(含答案解析)
- 水利综合项目跟踪审计专项方案
- FZT 74005-2016 针织瑜伽服行业标准
- JJG 4-2015钢卷尺行业标准
- 云计算技术的边缘计算技术
- 武汉武昌区租房合同
- 紧急医学救援培训突发事件现场的伤员管理与照顾
评论
0/150
提交评论