资源预览内容
第1页 / 共116页
第2页 / 共116页
第3页 / 共116页
第4页 / 共116页
第5页 / 共116页
第6页 / 共116页
第7页 / 共116页
第8页 / 共116页
第9页 / 共116页
第10页 / 共116页
亲,该文档总共116页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
VHDL,Quartus II 实例,4.1 QuartusII设计流程,1创建工程准备工作,图4-1 选择编辑文件,KONXIN,4.1 QuartusII设计流程,1创建工程准备工作,图4-2 选择编辑文件的语言类型,键入源程序并存盘,4.1 QuartusII设计流程,2. 创建工程,图4-3 利用“New Preject Wizard”创建工程cnt10,4.1 QuartusII设计流程,2.创建工程,图4-4 将所有相关的文件都加入进此工程,4.1 QuartusII设计流程,2.创建工程,图4-5 选择目标器件EP1C6Q240C8,4.1 QuartusII设计流程,3编译前设置,图4-6 选择配置器件的工作方式,4.1 QuartusII设计流程,3编译前设置,图4-7 选择配置器件和编程方式,图4-8 全程编译后出现报错信息,4全程编译,4.1 QuartusII设计流程,图4-9 选择编辑矢量波形文件,5时序仿真,4.1 QuartusII设计流程,图4-10 波形编辑器,5时序仿真,4.1 QuartusII设计流程,图4-11 设置仿真时间长度,5时序仿真,4.1 QuartusII设计流程,图4-12 .vwf激励波形文件存盘,5时序仿真,4.1 QuartusII设计流程,图4-13 向波形编辑器拖入信号节点,4.1.2 创建工程,4.1 QuartusII设计流程,图4-14 设置时钟CLK的周期,5时序仿真,4.1 QuartusII设计流程,图4-15 设置好的激励波形图,5时序仿真,4.1 QuartusII设计流程,图4-16 选择总线数据格式,5时序仿真,4.1 QuartusII设计流程,图4-17 选择仿真控制,5时序仿真,4.1 QuartusII设计流程,图4-18 仿真波形输出,5时序仿真,4.1 QuartusII设计流程,图4-19 选择全时域显示,5时序仿真,4.1 QuartusII设计流程,图4-20 Assignment Editor编辑器,6观察RTL电路,7引脚锁定和下载,4.1 QuartusII设计流程,图4-21 表格方式引脚锁定对话框图,7引脚锁定和下载,4.1 QuartusII设计流程,4-22 图形方式引脚锁定对话框,7引脚锁定和下载,4.1 QuartusII设计流程,图4-23 选择编程下载文件,8编程下载,4.1 QuartusII设计流程,图4-24加入编程下载方式,8编程下载,4.1 QuartusII设计流程,图4-25 双击选中的编程方式名,8编程下载,4.1 QuartusII设计流程,图4-26 ByteBlaster II接口AS模式编程窗口,9AS模式编程,4.1 QuartusII设计流程,图4-27 选择目标器件EP1C6Q240,10JTAG间接模式编程,4.1 QuartusII设计流程,图4-28 选定SOF文件后,选择文件压缩,10JTAG间接模式编程,4.1 QuartusII设计流程,图4-29 用JTAG模式对配置器件EPCS1进行间接编程,10JTAG间接模式编程,4.2 嵌入式逻辑分析仪,图4-30 SignalTap II编辑窗,1打开SignalTap II编辑窗,4.2 嵌入式逻辑分析仪,图4-31 SignalTap II编辑窗,2调入待测信号,3SignalTap II参数设置,4.2 嵌入式逻辑分析仪,图4-32下载cnt10.sof并准备启动SignalTap II,4文件存盘,5编译下载,6启动SignalTap II进行采样与分析,4.2 嵌入式逻辑分析仪,图4-33 SignalTap II数据窗设置后的信号波形,6启动SignalTap II进行采样与分析,4.3 编辑SignalTapII的触发信号,图4-34 选择高级触发条件,4.3 编辑SignalTapII的触发信号,图4-35 进入“触发条件函数编辑”窗口,4.3 编辑SignalTapII的触发信号,图4-36 编辑触发函数,4.4 LPM_ROM宏模块应用,图4-37 正弦信号发生器结构框图,4.4.1 工作原理,4.4 LPM_ROM宏模块应用,4.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.4 LPM_ROM宏模块应用,4.4.2 定制初始化数据文件,1建立.mif格式文件,【例4-2】 #include #include “math.h“ main() int i;float s; for(i=0;i sin_rom.mif;,4.4 LPM_ROM宏模块应用,4.4.2 定制初始化数据文件,2建立.hex格式文件,图4-38 将波形数据填入mif文件表中,4.4 LPM_ROM宏模块应用,图4-39 ASM格式建hex文件,4.4 LPM_ROM宏模块应用,4.4.2 定制初始化数据文件,2建立.hex格式文件,图4-40 sdata.hex文件的放置路径,4.4 LPM_ROM宏模块应用,4.4.3 定制LPM_ROM元件,图4-41 定制新的宏功能块,4.4 LPM_ROM宏模块应用,4.4.3 定制LPM_ROM元件,图4-42 LPM宏功能块设定,4.4 LPM_ROM宏模块应用,4.4.3 定制LPM_ROM元件,图4-43 选择data_rom模块数据线和地址线宽,4.4 LPM_ROM宏模块应用,4.4.3 定制LPM_ROM元件,图4-44 选择地址锁存信号inclock,4.4 LPM_ROM宏模块应用,4.4.3 定制LPM_ROM元件,图4-45 调入ROM初始化数据文件并选择在系统读写功能,4.4 LPM_ROM宏模块应用,4.4.3 定制LPM_ROM元件,图4-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 IS PORT (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 IS SIGNAL sub_wire0 : STD_LOGIC_VECTOR (7 DOWNTO 0); COMPONENT altsyncram -例化altsyncram元件,调用了LPM模块altsyncram GENERIC ( -参数传递语句 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宏模块应用,BEGIN q “Cyclone“, -参数传递映射 width_a = 8, -数据线宽度8 widthad_a = 6, -地址线宽度6 numwords_a = 64, -数据数量64 operation_mode = “ROM“, -LPM模式ROM outdata_reg_a = “UNREGISTERED“, -输出无锁存 address_aclr_a = “NONE“, -无异步地址清0 outdata_aclr_a = “NONE“, -无输出锁存异步清0 width_byteena_a = 1, - byteena_a输入口宽度1 init_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.4 LPM_ROM宏模块应用,4.4.4 完成顶层设计,【例4-4】 正弦信号发生器顶层设计 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 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;,4.4 LPM_ROM宏模块应用,4.4.
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号