资源预览内容
第1页 / 共116页
第2页 / 共116页
第3页 / 共116页
第4页 / 共116页
第5页 / 共116页
第6页 / 共116页
第7页 / 共116页
第8页 / 共116页
第9页 / 共116页
第10页 / 共116页
亲,该文档总共116页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
EDA技术与VHDL,第二部分 Qiartus II 使用方法,4.1 QuartusII设计流程,1创建工程准备工作,图1 选择编辑文件,KONXIN,4.1 QuartusII设计流程,1创建工程准备工作,图2 选择编辑文件的语言类型,键入源程序并存盘,4.1 QuartusII设计流程,2. 创建工程,图3 利用“New Preject Wizard”创建工程cnt10,1 QuartusII设计流程,2.创建工程,图4 将所有相关的文件都加入进此工程,1 QuartusII设计流程,2.创建工程,图5 选择目标器件EP1C6Q240C8,1 QuartusII设计流程,3编译前设置,图6 选择配置器件的工作方式,1 QuartusII设计流程,3编译前设置,图7 选择配置器件和编程方式,图8 全程编译后出现报错信息,4全程编译,1 QuartusII设计流程,图9 选择编辑矢量波形文件,5时序仿真,1 QuartusII设计流程,图10 波形编辑器,5时序仿真,1 QuartusII设计流程,图11 设置仿真时间长度,5时序仿真,1 QuartusII设计流程,图12 .vwf激励波形文件存盘,5时序仿真,4.1 QuartusII设计流程,图13 向波形编辑器拖入信号节点,4.1.2 创建工程,1 QuartusII设计流程,图14 设置时钟CLK的周期,5时序仿真,1 QuartusII设计流程,图15 设置好的激励波形图,5时序仿真,1 QuartusII设计流程,图16 选择总线数据格式,5时序仿真,1 QuartusII设计流程,图17 选择仿真控制,5时序仿真,1 QuartusII设计流程,图18 仿真波形输出,5时序仿真,1 QuartusII设计流程,图19 选择全时域显示,5时序仿真,1 QuartusII设计流程,图20 Assignment Editor编辑器,6观察RTL电路,7引脚锁定和下载,1 QuartusII设计流程,图21 表格方式引脚锁定对话框图,7引脚锁定和下载,1 QuartusII设计流程,22 图形方式引脚锁定对话框,7引脚锁定和下载,1 QuartusII设计流程,图23 选择编程下载文件,8编程下载,1 QuartusII设计流程,图24加入编程下载方式,8编程下载,1 QuartusII设计流程,图25 双击选中的编程方式名,8编程下载,1 QuartusII设计流程,图26 ByteBlaster II接口AS模式编程窗口,9AS模式编程,1 QuartusII设计流程,图27 选择目标器件EP1C6Q240,10JTAG间接模式编程,1 QuartusII设计流程,图28 选定SOF文件后,选择文件压缩,10JTAG间接模式编程,1 QuartusII设计流程,图29 用JTAG模式对配置器件EPCS1进行间接编程,10JTAG间接模式编程,2 嵌入式逻辑分析仪,图30 SignalTap II编辑窗,1打开SignalTap II编辑窗,2 嵌入式逻辑分析仪,图31 SignalTap II编辑窗,2调入待测信号,3SignalTap II参数设置,2 嵌入式逻辑分析仪,图32下载cnt10.sof并准备启动SignalTap II,4文件存盘,5编译下载,6启动SignalTap II进行采样与分析,2 嵌入式逻辑分析仪,图33 SignalTap II数据窗设置后的信号波形,6启动SignalTap II进行采样与分析,3 编辑SignalTapII的触发信号,图34 选择高级触发条件,3 编辑SignalTapII的触发信号,图35 进入“触发条件函数编辑”窗口,3 编辑SignalTapII的触发信号,图36 编辑触发函数,4 LPM_ROM宏模块应用,图37 正弦信号发生器结构框图,4.1 工作原理,4 LPM_ROM宏模块应用,4.2 定制初始化数据文件,1建立.mif格式文件,【例4-1】 WIDTH = 8; DEPTH = 64; ADDRESS_RADIX = HEX; DATA_RADIX = HEX; CONTENT BEGIN 0 : FF; 1 : FE; 2 : FC; 3 : F9; 4 : F5; (数据略去) 3D : FC; 3E : FE; 3F : FF; END;,4 LPM_ROM宏模块应用,4.2 定制初始化数据文件,1建立.mif格式文件,【例4-2】 #include #include “math.h“ main() int i;float s; for(i=0;i sin_rom.mif;,4 LPM_ROM宏模块应用,4.2 定制初始化数据文件,2建立.hex格式文件,图38 将波形数据填入mif文件表中,4 LPM_ROM宏模块应用,图39 ASM格式建hex文件,4 LPM_ROM宏模块应用,4.2 定制初始化数据文件,2建立.hex格式文件,图40 sdata.hex文件的放置路径,4 LPM_ROM宏模块应用,4.3 定制LPM_ROM元件,图41 定制新的宏功能块,4.4 LPM_ROM宏模块应用,4.4.3 定制LPM_ROM元件,图42 LPM宏功能块设定,4.4 LPM_ROM宏模块应用,4.4.3 定制LPM_ROM元件,图43 选择data_rom模块数据线和地址线宽,4 LPM_ROM宏模块应用,4.3 定制LPM_ROM元件,图44 选择地址锁存信号inclock,4 LPM_ROM宏模块应用,4.3 定制LPM_ROM元件,图45 调入ROM初始化数据文件并选择在系统读写功能,4 LPM_ROM宏模块应用,4.3 定制LPM_ROM元件,图46 LPM_ROM设计完成,4.4 LPM_ROM宏模块应用,【例4-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 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 : NATURAL;numwords_a : NATURAL; operation_mode : STRING;outdata_reg_a : STRING; address_aclr_a : STRING;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 : OUT STD_LOGIC_VECTOR (7 DOWNTO 0) );END COMPONENT; (接下页),4.4 LPM_ROM宏模块应用,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_a = 1, - byteena_a输入口宽度1init_file = “./dataHEX/SDATA.hex“, -ROM初始化数据文件,此处已修改过lpm_hint = “ENABLE_RUNTIME_MOD=YES, INSTANCE_NAME=NONE“, lpm_type = “altsyncram“ ) -LPM类型PORT MAP ( clock0 = inclock, address_a = address,q_a = sub_wire0 ); END SYN;,4 LPM_ROM宏模块应用,4.4 完成顶层设计,【例4-4】 正弦信号发生器顶层设计 LIBRARY IEEE; -正弦信号发生器源文件 USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_UNSIGNED.ALL; ENTITY SINGT ISPORT ( CLK : IN STD_LOGIC; -信号源时钟DOUT : OUT STD_LOGIC_VECTOR (7 DOWNTO 0) );-8位波形数据输出 END; ARCHITECTURE DACC OF SINGT IS COMPONENT data_rom -调用波形数据存储器LPM_ROM文件: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); -设定内部节点作为地址计数器BEGIN PROCESS(CLK ) -LPM_ROM地址发生器进程BEGIN IF CLKEVENT AND CLK = 1 THEN Q1Q1, q = DOUT,inclock=CLK);-例化 END;,
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号