(精品)EDA技术实用教程第7章.ppt
《(精品)EDA技术实用教程第7章.ppt》由会员分享,可在线阅读,更多相关《(精品)EDA技术实用教程第7章.ppt(86页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、EDA技术实用教程技术实用教程第第 7 7 章章 宏功能模块与宏功能模块与IPIP应用应用 7.1 宏功能模块概述宏功能模块概述 K KX康芯科技康芯科技算术组件算术组件 累加器、加法器、乘法器和累加器、加法器、乘法器和LPMLPM算术函数算术函数 门电路门电路 多路复用器和多路复用器和LPMLPM门函数门函数 I/OI/O组件组件 时钟数据恢复时钟数据恢复(CDR)CDR)、锁相环锁相环(PLL)PLL)、双数据速率双数据速率(DDR)DDR)、千兆位收发器块千兆位收发器块(GXB)GXB)、LVDSLVDS接收器和发送器、接收器和发送器、PLLPLL重重新配置和远程更新宏功能模块新配置和远
2、程更新宏功能模块 存储器编译器存储器编译器 FIFOFIFO Partitioner Partitioner、RAMRAM和和ROMROM宏功能模块宏功能模块 存储组件存储组件 存储器、移位寄存器宏模块和存储器、移位寄存器宏模块和LPMLPM存储器函数存储器函数 7.1 宏功能模块概述宏功能模块概述 K KX康芯科技康芯科技7.1.1知识产权核的应用知识产权核的应用AMPPAMPP程序程序 MegaCore函数函数 OpenCoreOpenCore评估功能评估功能 OpenCoreOpenCore Plus Plus硬件评估功能硬件评估功能 7.1 宏功能模块概述宏功能模块概述 K KX康芯科
3、技康芯科技7.1.2使用使用MegaWizardPlug-InManager.bsf:BlockEditor中使用的宏功能模块的符号(元件)。中使用的宏功能模块的符号(元件)。.cmp:组件申明文件。组件申明文件。.inc:宏功能模块包装文件中模块的宏功能模块包装文件中模块的AHDL包含文件。包含文件。.tdf:要在要在AHDL设计中实例化的宏功能模块包装文件。设计中实例化的宏功能模块包装文件。.vhd:要在要在VHDL设计中实例化的宏功能模块包装文件。设计中实例化的宏功能模块包装文件。.v:要在要在VerilogHDL设计中实例化的宏功能模块包装文件。设计中实例化的宏功能模块包装文件。_bb
4、.v:VerilogHDL设计所用宏功能模块包装文件中模块的空体或设计所用宏功能模块包装文件中模块的空体或black-box申明,用于在使用申明,用于在使用EDA综合工具时指定端口方向。综合工具时指定端口方向。_inst.tdf:宏功能模块包装文件中子设计的宏功能模块包装文件中子设计的AHDL例化示例。例化示例。_inst.vhd:宏功能模块包装文件中实体的宏功能模块包装文件中实体的VHDL例化示例。例化示例。_inst.v:宏功能模块包装文件中模块的宏功能模块包装文件中模块的VerilogHDL例化示例。例化示例。7.1 宏功能模块概述宏功能模块概述 K KX康芯科技康芯科技7.1.3在在Q
5、uartusII中对宏功能模块进行例化中对宏功能模块进行例化1、在、在VerilogHDL和和VHDL中例化中例化2、使用端口和参数定义、使用端口和参数定义3、使用端口和参数定义生成宏功能模块、使用端口和参数定义生成宏功能模块计数器计数器乘乘-累加器和乘累加器和乘-加法器加法器加法加法/减法器减法器RAM乘法器乘法器移位寄存器移位寄存器7.2 宏模块应用实例宏模块应用实例 K KX康芯科技康芯科技7.2.1工作原理工作原理f=f0/64图图7-1正弦信号发生器结构框图正弦信号发生器结构框图7.2 宏模块应用实例宏模块应用实例 K KX康芯科技康芯科技7.2.2定制初始化数据文件定制初始化数据文
6、件1 1建立建立.mifmif格式文件格式文件 【例【例7-1】WIDTH=8;DEPTH=64;ADDRESS_RADIX=HEX;DATA_RADIX=HEX;CONTENT BEGIN0 :FF;1 :FE;2 :FC;3 :F9;4 :F5;(数据略去)数据略去)3D :FC;3E :FE;3F :FF;END;7.2 宏模块应用实例宏模块应用实例 K KX康芯科技康芯科技7.2.2定制初始化数据文件定制初始化数据文件1 1建立建立.mifmif格式文件格式文件 【例【例7-2】#include#include math.hmain()int i;float s;for(i=0;i10
7、24;i+)s=sin(atan(1)*8*i/1024);printf(%d:%d;n,i,(int)(s+1)*1023/2);7.2 宏模块应用实例宏模块应用实例 K KX康芯科技康芯科技7.2.2定制初始化数据文件定制初始化数据文件2 2建立建立.hexhex格式文件格式文件 图图7-2将波形数据填入将波形数据填入mif文件表中文件表中K KX康芯科技康芯科技2 2建立建立.hexhex格式文件格式文件 图图7-3ASM格式建格式建hex文件文件7.2 宏模块应用实例宏模块应用实例 K KX康芯科技康芯科技7.2.2定制初始化数据文件定制初始化数据文件2 2建立建立.hexhex格式文
8、件格式文件 图图7-4sdata.hex文件的放置路径文件的放置路径7.2 宏模块应用实例宏模块应用实例 K KX康芯科技康芯科技7.2.2定制初始化数据文件定制初始化数据文件7.2.3 7.2.3 定制定制LPM_ROM元件元件 图图7-5定制新的宏功能块定制新的宏功能块7.2 宏模块应用实例宏模块应用实例 K KX康芯科技康芯科技7.2.2定制初始化数据文件定制初始化数据文件7.2.3 7.2.3 定制定制LPM_ROM元件元件 图图7-6LPM宏功能块设定宏功能块设定K KX康芯科技康芯科技7.2.2定制初始化数据文件定制初始化数据文件7.2.3 7.2.3 定制定制LPM_ROM元件元
9、件 图图7-7选择选择data_rom模块数据线和地址线宽度模块数据线和地址线宽度7.2 宏模块应用实例宏模块应用实例 K KX康芯科技康芯科技7.2.2定制初始化数据文件定制初始化数据文件7.2.3 7.2.3 定制定制LPM_ROM元件元件 图图7-8选择地址锁存信号选择地址锁存信号inclock7.2 宏模块应用实例宏模块应用实例 K KX康芯科技康芯科技7.2.2定制初始化数据文件定制初始化数据文件7.2.3 7.2.3 定制定制LPM_ROM元件元件 图图7-9调入调入ROM初始化数据文件并选择在系统读写功能初始化数据文件并选择在系统读写功能7.2 宏模块应用实例宏模块应用实例 K
10、KX康芯科技康芯科技7.2.2定制初始化数据文件定制初始化数据文件7.2.3 7.2.3 定制定制LPM_ROM元件元件 图图7-10LPM_ROM设计完成设计完成K KX康芯科技康芯科技【例【例7-3】LIBRARY ieee;USE ieee.std_logic_1164.all;LIBRARY altera_mf;USE altera_mf.altera_mf_components.all;-使用宏功能库中的所有元件使用宏功能库中的所有元件ENTITY data_rom ISPORT(address :IN STD_LOGIC_VECTOR(5 DOWNTO 0);inclock :IN
11、 STD_LOGIC;q :OUT STD_LOGIC_VECTOR(7 DOWNTO 0);END data_rom;ARCHITECTURE SYN OF data_rom ISSIGNAL sub_wire0:STD_LOGIC_VECTOR(7 DOWNTO 0);COMPONENT altsyncram -例化例化altsyncram元件,调用了元件,调用了LPM模块模块altsyncramGENERIC(-参数传递语句参数传递语句intended_device_family:STRING;-类属参量数据类类属参量数据类型定义型定义width_a:NATURAL;widthad_a:
12、NATURAL;numwords_a:NATURAL;operation_mode:STRING;outdata_reg_a:STRING;address_aclr_a:STRING;接下页接下页K KX康芯科技康芯科技outdata_aclr_a:STRING;width_byteena_a:NATURAL;init_file:STRING;lpm_hint:STRING;lpm_type:STRING);PORT(clock0:IN STD_LOGIC;-altsyncram元件接口声明元件接口声明address_a:IN STD_LOGIC_VECTOR(5 DOWNTO 0);q_a:
13、OUT STD_LOGIC_VECTOR(7 DOWNTO 0);END COMPONENT;BEGINq Cyclone,-参数参数传递映射传递映射width_a=8,-数据线宽度数据线宽度8widthad_a=6,-地址线宽度地址线宽度6numwords_a=64,-数据数量数据数量64operation_mode=ROM,-LPM模式模式ROMoutdata_reg_a=UNREGISTERED,-输出无锁存输出无锁存address_aclr_a=NONE,-无异步地址清无异步地址清0outdata_aclr_a=NONE,-无输出锁存异步清无输出锁存异步清0width_byteena_
14、a=1,-byteena_a输入口宽度输入口宽度1init_file=“./dataHEX/SDATA.hex”,-ROM初始化数据文初始化数据文件,此处已修改过件,此处已修改过接下页接下页K KX康芯科技康芯科技lpm_hint=ENABLE_RUNTIME_MOD=YES,INSTANCE_NAME=NONE,lpm_type=altsyncram)-LPM类型类型PORT MAP(clock0=inclock,address_a=address,q_a=sub_wire0);ENDSYN;接上页接上页K KX康芯科技康芯科技7.2.4 7.2.4 完成顶层设计完成顶层设计 【例【例7-4
15、】正弦信号发生器顶层设计正弦信号发生器顶层设计LIBRARY IEEE;-正弦信号发生器源文件正弦信号发生器源文件USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY SINGT IS PORT(CLK :IN STD_LOGIC;-信号源时钟信号源时钟 DOUT:OUT STD_LOGIC_VECTOR(7 DOWNTO 0);-8位波形数据输出位波形数据输出END;ARCHITECTURE DACC OF SINGT ISCOMPONENT data_rom -调用波形数据存储器调用波形数据存储器LPM_ROM
16、文件:文件:data_rom.vhd声明声明 PORT(address:IN STD_LOGIC_VECTOR(5 DOWNTO 0);-6位地址信号位地址信号 inclock:IN STD_LOGIC;-地址锁存时钟地址锁存时钟 q:OUT STD_LOGIC_VECTOR(7 DOWNTO 0);END COMPONENT;SIGNAL Q1:STD_LOGIC_VECTOR(5 DOWNTO 0);-设定内部节点作为地址计数器设定内部节点作为地址计数器 BEGINPROCESS(CLK)-LPM_ROM地址发生器进程地址发生器进程 BEGINIF CLKEVENT AND CLK=1 T
17、HEN Q1Q1,q=DOUT,inclock=CLK);-例化例化END;7.2 宏模块应用实例宏模块应用实例 K KX康芯科技康芯科技7.2.2定制初始化数据文件定制初始化数据文件7.2.4 7.2.4 完成顶层设计完成顶层设计 图图7-11仿真波形输出仿真波形输出7.2 宏模块应用实例宏模块应用实例 K KX康芯科技康芯科技7.2.2定制初始化数据文件定制初始化数据文件7.2.4 7.2.4 完成顶层设计完成顶层设计 图图7-12嵌入式逻辑分析仪获得的波形嵌入式逻辑分析仪获得的波形7.3 在系统存储器数据读写编辑器应用在系统存储器数据读写编辑器应用 K KX康芯科技康芯科技图图7-13I
18、n-SystemMemoryContentEditor编辑窗编辑窗7.3 在系统存储器数据读写编辑器应用在系统存储器数据读写编辑器应用 K KX康芯科技康芯科技图图7-14与实验系统上的与实验系统上的FPGA通信正常情况下的编辑窗界面通信正常情况下的编辑窗界面7.3 在系统存储器数据读写编辑器应用在系统存储器数据读写编辑器应用 K KX康芯科技康芯科技图图7-15从从FPGA中的中的ROM读取波形数据读取波形数据7.3 在系统存储器数据读写编辑器应用在系统存储器数据读写编辑器应用 K KX康芯科技康芯科技图图7-16编辑波形数据编辑波形数据7.3 在系统存储器数据读写编辑器应用在系统存储器数据
19、读写编辑器应用 K KX康芯科技康芯科技图图7-16下载编辑数据后的下载编辑数据后的SignalTapII采样波形采样波形7.4 编辑编辑SignalTapII的触发信号的触发信号 K KX康芯科技康芯科技图图7-17选择高级触发条件选择高级触发条件7.4 编辑编辑SignalTapII的触发信号的触发信号 K KX康芯科技康芯科技图图7-18进入进入“触发条件函数编辑触发条件函数编辑”窗口窗口7.4 编辑编辑SignalTapII的触发信号的触发信号 K KX康芯科技康芯科技图图7-19编辑触发函数编辑触发函数7.5 其它存储器模块的定制与应用其它存储器模块的定制与应用 K KX康芯科技康芯
20、科技图图7-20编辑定制编辑定制RAM7.5.1RAM定制定制7.5 其它存储器模块的定制与应用其它存储器模块的定制与应用 K KX康芯科技康芯科技图图7-21LPM_RAM的仿真波形的仿真波形7.5.1RAM定制定制7.5 其它存储器模块的定制与应用其它存储器模块的定制与应用 K KX康芯科技康芯科技图图7-22FIFO编辑窗编辑窗7.5.2FIFO定制定制7.5 其它存储器模块的定制与应用其它存储器模块的定制与应用 K KX康芯科技康芯科技图图7-23FIFO的仿真波形的仿真波形7.5.2FIFO定制定制7.6流水线乘法累加器的混合输入设计流水线乘法累加器的混合输入设计 K KX康芯科技康
21、芯科技(1)用)用VHDL设计设计16位加法器。位加法器。【例【例7-5】LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY ADDER16B IS PORT(CIN:IN STD_LOGIC;A,B:IN STD_LOGIC_VECTOR(15 DOWNTO 0);S:OUT STD_LOGIC_VECTOR(15 DOWNTO 0);COUT:OUT STD_LOGIC );END ADDER16B;ARCHITECTURE behav OF ADDER16B IS SIGNAL S
22、INT:STD_LOGIC_VECTOR(16 DOWNTO 0);SIGNAL AA,BB:STD_LOGIC_VECTOR(16 DOWNTO 0);BEGINAA=0&A;BB=0&B;SINT=AA+BB+CIN;S=SINT(15 DOWNTO 0);COUT D32B(31 DOWNTO 22),q=POUT,inclock=CLK);u7:PLL20 PORT MAP(inclk0=CLKK,c0=CLK);-例化例化END;7.8 IP核核NCO数控振荡器使用方法数控振荡器使用方法 K KX康芯科技康芯科技图图7-33安装安装NCO核核7.8 IP核核NCO数控振荡器使用方法数
23、控振荡器使用方法 K KX康芯科技康芯科技图图7-34确定安装路径确定安装路径7.8 IP核核NCO数控振荡器使用方法数控振荡器使用方法 K KX康芯科技康芯科技图图7-35开始开始Core的工程路径的工程路径7.8 IP核核NCO数控振荡器使用方法数控振荡器使用方法 K KX康芯科技康芯科技图图7-36确定工程路径和工程名确定工程路径和工程名7.8 IP核核NCO数控振荡器使用方法数控振荡器使用方法 K KX康芯科技康芯科技图图7-37打开打开Core用户库设置窗用户库设置窗7.8 IP核核NCO数控振荡器使用方法数控振荡器使用方法 K KX康芯科技康芯科技图图7-38选中确定路径上的选中确
24、定路径上的NCO库库7.8 IP核核NCO数控振荡器使用方法数控振荡器使用方法 K KX康芯科技康芯科技图图7-39加入加入NCO库库7.8 IP核核NCO数控振荡器使用方法数控振荡器使用方法 K KX康芯科技康芯科技图图7-40已经在工程中加入已经在工程中加入NCO库库7.8 IP核核NCO数控振荡器使用方法数控振荡器使用方法 K KX康芯科技康芯科技图图7-41打开打开Core设置管理窗设置管理窗7.8 IP核核NCO数控振荡器使用方法数控振荡器使用方法 K KX康芯科技康芯科技图图7-42开始进入开始进入Core参数设置窗参数设置窗Toolbench7.8 IP核核NCO数控振荡器使用方
25、法数控振荡器使用方法 K KX康芯科技康芯科技图图7-43设置设置NCO参数参数7.8 IP核核NCO数控振荡器使用方法数控振荡器使用方法 K KX康芯科技康芯科技图图7-44设置设置NCO参数参数7.8 IP核核NCO数控振荡器使用方法数控振荡器使用方法 K KX康芯科技康芯科技图图7-45完成完成NCO参数设置并生成设计文件后的信息窗参数设置并生成设计文件后的信息窗7.8 IP核核NCO数控振荡器使用方法数控振荡器使用方法 K KX康芯科技康芯科技图图7-46加入加入NCO的授权文件的授权文件7.8 IP核核NCO数控振荡器使用方法数控振荡器使用方法 K KX康芯科技康芯科技图图7-47选
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 精品 EDA 技术 实用教程
限制150内