1、电子设计自动化技术电子设计自动化技术讲授:伍宗富讲授:伍宗富 E D A 技技 术术 课课 程程 教教 学学讲授:伍宗富2023年2月10日星期五湖南文理学院电气与信息工程学院电子设计自动化技术电子设计自动化技术讲授:伍宗富讲授:伍宗富第第 十二十二 讲讲 Quartus II IP软核应用基础软核应用基础 教学目的教学目的:使学生会用使学生会用QuartusQuartus II II软件应用软件应用IPIP软核的方法。软核的方法。教学重点教学重点:通过实例讲解通过实例讲解IPIP软核的应用方法。软核的应用方法。教学难点教学难点:Mega Core IPMega Core IP软核的应用。软核
2、的应用。教学方法教学方法:讲授法、计算机辅助法。讲授法、计算机辅助法。课时计划课时计划:2 2学时学时使用教材使用教材:SOPCSOPC技术与应用江国强技术与应用江国强 编著北京:机械工业出版社编著北京:机械工业出版社 主要参考文献主要参考文献:1 1 刘洪涛刘洪涛ARMARM嵌入式体系结构与接口技术嵌入式体系结构与接口技术MM北京:人民邮电出版社北京:人民邮电出版社 2 2 田耘等无线通信田耘等无线通信FPGAFPGA设计设计MM北京:电子工业出版社北京:电子工业出版社 3 3 孟宪元等孟宪元等FPGAFPGA嵌入式系统设计教程嵌入式系统设计教程MM北京:电子工业出版社北京:电子工业出版社
3、4 4 徐光辉等徐光辉等.基于基于FPGAFPGA的嵌入式开发与应用的嵌入式开发与应用 M.M.北京:电子工业出版社北京:电子工业出版社 5 5 沈文斌沈文斌.嵌入式硬件系统设计与开发实例详解嵌入式硬件系统设计与开发实例详解 M.M.北京:电子工业出版社北京:电子工业出版社 6 6 周立功等周立功等SOPC嵌入式系统基础教程嵌入式系统基础教程M北京:北京航空航天大学出版社北京:北京航空航天大学出版社 7 7 王彦等王彦等.基于基于FPGAFPGA的工程设计与应用的工程设计与应用 M.M.西安:西安电子工业出版社西安:西安电子工业出版社 8 8 周润景等基于周润景等基于QuartusIIQuar
4、tusII的的FPGA/CPLDFPGA/CPLD数字系统设计实例数字系统设计实例MM北京:电子工业出版社北京:电子工业出版社 9 9 http:/www.alterahttp:/ 电子设计自动化技术电子设计自动化技术讲授:伍宗富讲授:伍宗富课题:课题:Quartus II IP软核应用基础软核应用基础三三、课堂小结课堂小结四、作业四、作业一一、QuartusQuartus II II宏功能模块的应用宏功能模块的应用二、二、IPIP核的使用核的使用电子设计自动化技术电子设计自动化技术讲授:伍宗富讲授:伍宗富一、图形编辑输入一、图形编辑输入n1.示例一示例一 用用2 2片片4 4位二进制加位二进
5、制加/减计数器减计数器7419174191设计设计8 8位二进制位二进制加加/减计数器减计数器。VCCCLKinINPUTVCCLOADINPUTVCCD0INPUTVCCD1INPUTVCCD2INPUTVCCD3INPUTVCCEnableINPUTVCCDown/UpINPUTVCCD4INPUTVCCD5INPUTVCCD6INPUTVCCD7INPUTQ4OUTPUTQ5OUTPUTQ6OUTPUTQ7OUTPUTQ0OUTPUTQ1OUTPUTQ2OUTPUTQ3OUTPUTCOUNTERLDNDCBACLKDNUPGNRCONMXMNQAQBQDQC74191instCOUNTE
6、RLDNDCBACLKDNUPGNRCONMXMNQAQBQDQC74191inst1电子设计自动化技术电子设计自动化技术讲授:伍宗富讲授:伍宗富一、图形编辑输入一、图形编辑输入n2.示例二示例二 用用4 4位移动寄存器位移动寄存器7419474194、8 8位位D D锁存器锁存器7427374273、D D触触发器等器件构成发器等器件构成8 8位串入并出转换电路,要求在转换过位串入并出转换电路,要求在转换过程中数据不变,只有当程中数据不变,只有当8 8位一组数据全部转换结束后,位一组数据全部转换结束后,输出变化一次。输出变化一次。VCCSUMinINPUTVCCCLKINPUTVCCCLRI
7、NPUTQ1OUTPUTQ2OUTPUTQ3OUTPUTQ4OUTPUTQ5OUTPUTQ6OUTPUTQ7OUTPUTQ8OUTPUTCLRNDPRNQDFFinstSHIFT REG.SLSISRSIBCCLKCLRNDS1S0AQAQBQCQD74194inst1SHIFT REG.SLSISRSIBCCLKCLRNDS1S0AQAQBQCQD74194inst2OCTAL D-FFD2D3D1D4D7D6D5D8CLKCLRNQ4Q1Q2Q3Q6Q5Q7Q874273inst3NOTinst8CLRNDPRNQDFFinst10NOTinst11CLRNDPRNQDFFinst12NO
8、Tinst13VCCGND电子设计自动化技术电子设计自动化技术讲授:伍宗富讲授:伍宗富二、二、VHDL文本编辑输入文本编辑输入n1.示例一示例一 用用VHDLVHDL设计设计8 8位同步二进制加位同步二进制加/减计数器,减计数器,输入为时钟端输入为时钟端CLKCLK和异步清除端和异步清除端CLRCLR,UPDOWNUPDOWN是是加加/减控制端,当减控制端,当UPDOWNUPDOWN为为1 1时执行加法计数,时执行加法计数,为为0 0执行减法计数;进位输出端为执行减法计数;进位输出端为C C。CLRCLKUPDOWNQ7.0CCount8bitinst电子设计自动化技术电子设计自动化技术讲授:
9、伍宗富讲授:伍宗富二、二、VHDL文本编辑输入文本编辑输入n2.示例二示例二 用用VHDLVHDL设计设计7 7段段LEDLED数码显示器的十六进译数码显示器的十六进译码器,要求该译码器有三态输出码器,要求该译码器有三态输出。data_in3.0ENdata_out6.0ENCODE7LEDinst电子设计自动化技术电子设计自动化技术讲授:伍宗富讲授:伍宗富三、三、Quartus II宏功能模块的应用宏功能模块的应用n1.示例一示例一:波形发生器的设计:波形发生器的设计VCCCLKINPUTq7.0OUTPUTqc7.0OUTPUTup counterclockq7.0lpm_counter0
10、instaddress7.0clockq7.0lpm_rom0inst1Wave_genTop 顶层设计地址指针数据存数据存储储ROMD/A转换波形输出电子设计自动化技术电子设计自动化技术讲授:伍宗富讲授:伍宗富三、三、Quartus II宏功能模块的应用宏功能模块的应用n1.示例一示例一:波形发生器的设计:波形发生器的设计1 1)加入计数器元件)加入计数器元件 元件选择窗的元件选择窗的“LibrariesLibraries”栏中选择栏中选择“arithmeticarithmetic”的的“lpm_counterlpm_counter”(”(计数计数器)器)LPMLPM元件。元件。VCCCLK
11、INPUTq7.0OUTPUTqc7.0OUTPUTup counterclockq7.0lpm_counter0instaddress7.0clockq7.0lpm_rom0inst1电子设计自动化技术电子设计自动化技术讲授:伍宗富讲授:伍宗富三、三、Quartus II宏功能模块的应用宏功能模块的应用n1.示例一示例一:波形发生器的设计:波形发生器的设计2 2)建立存储器初值设定文件()建立存储器初值设定文件(.mif.mif)FileFile-NEWNEW-Memory initialization Memory initialization file(file(存储器初值设定文件存储器
12、初值设定文件)VCCCLKINPUTq7.0OUTPUTqc7.0OUTPUTup counterclockq7.0lpm_counter0instaddress7.0clockq7.0lpm_rom0inst1电子设计自动化技术电子设计自动化技术讲授:伍宗富讲授:伍宗富三、三、Quartus II宏功能模块的应用宏功能模块的应用n1.示例一示例一:波形发生器的设计:波形发生器的设计3 3)加入只读存储器)加入只读存储器ROMROM元件元件 元件选择窗的元件选择窗的“LibrariesLibraries”栏中选择栏中选择“storagestorage”的的“lpm_romlpm_rom”(”(
13、只读存储器只读存储器ROMROM )LPMLPM元件。元件。VCCCLKINPUTq7.0OUTPUTqc7.0OUTPUTup counterclockq7.0lpm_counter0instaddress7.0clockq7.0lpm_rom0inst1电子设计自动化技术电子设计自动化技术讲授:伍宗富讲授:伍宗富三、三、Quartus II宏功能模块的应用宏功能模块的应用n2.示例二示例二:嵌入式锁相环的设计:嵌入式锁相环的设计aresetinclk0c0c1c2lockedpllinst1 1)新建工程文件。)新建工程文件。注:注:AlteraAltera器件只有在器件只有在Cyclon
14、eCyclone和和StratixStratix等系列的等系列的FPGAFPGA中才含有锁相环;中才含有锁相环;2 2)使用)使用“Tools”Tools”菜单的菜单的“MegaWizardMegaWizard Plug-In ManagerPlug-In Manager”项。项。电子设计自动化技术电子设计自动化技术讲授:伍宗富讲授:伍宗富三、三、Quartus II宏功能模块的应用宏功能模块的应用n2.示例二示例二:嵌入式锁相环的设计:嵌入式锁相环的设计aresetinclk0c0c1c2lockedpllinst电子设计自动化技术电子设计自动化技术讲授:伍宗富讲授:伍宗富四、四、IP核的使
15、用核的使用n1.示例一示例一:NCO IP核的使用核的使用VCCphi_inc_i31.0INPUTVCCclockINPUTVCCreset_nINPUTVCCclkenINPUTfsin_o9.0OUTPUTfcos_o9.0OUTPUTphi_inc_i31.0clkreset_nclkenfsin_o9.0fcos_o9.0out_validsinNCOinstDFFdata9.0clockenableq9.0lpm_ff0inst1DFFdata9.0clockenableq9.0lpm_ff1inst2DFFdataclockqlpm_ff2inst3out_vaildOUTPUT
16、电子设计自动化技术电子设计自动化技术讲授:伍宗富讲授:伍宗富四、四、IP核的使用核的使用n示例示例:NCO IP核的使用核的使用1 1)新建工程文件。)新建工程文件。2 2)使用)使用“Tools”Tools”菜单的菜单的“MegaWizardMegaWizard Plug-In ManagerPlug-In Manager”项中的项中的“DSP”-DSP”-“Signal Generation”-“NCO“Signal Generation”-“NCO(数控振(数控振荡器)。荡器)。3 3)设置参数与连接电路及仿真。)设置参数与连接电路及仿真。注:进行编译时需添加注:进行编译时需添加NCO
17、IPNCO IP核的用户库核的用户库。phi_inc_i31.0clockreset_nclkenfsin_o9.0fcos_o9.0out_vaildFsinNCOinst电子设计自动化技术电子设计自动化技术讲授:伍宗富讲授:伍宗富四、四、IP核的使用核的使用n示例示例:NCO IP核的使用核的使用说明:说明:1)phi_inc_31.0为为频率字频率字输入端,输入端,fsin_o9.0为为正弦正弦波信号的数据输出端,波信号的数据输出端,fcos_o9.0为为余弦余弦波信波信号的数据输出端,号的数据输出端,out_vaild为数据输出为数据输出同步同步信号。信号。2)输出波形的频率分辨率为)
18、输出波形的频率分辨率为f=fmin=fc/2n (fc为输为输入时钟频率,入时钟频率,n为累加器的宽度(为累加器的宽度(32位);位);输出频率为输出频率为fo=fcM/2n(M为为phi_inc_i的输入的输入值);幅度精度为值);幅度精度为10位。位。电子设计自动化技术电子设计自动化技术讲授:伍宗富讲授:伍宗富课堂小结课堂小结一、一、QuartusQuartus II II宏功能模块的应用宏功能模块的应用 (熟悉 Mega Core的应用,怎样得到存储器初值设定怎样得到存储器初值设定.mif文件的值文件的值)二、二、IPIP核的使用核的使用 (熟悉 IP核的应用)电子设计自动化技术电子设计自动化技术讲授:伍宗富讲授:伍宗富课外作业:课外作业:1.写出使用写出使用Quartus II宏功能模块设宏功能模块设计波形发生器的的步骤。计波形发生器的的步骤。2.上机练习上机练习