原理图与宏功能模块设计
FPGA_Quartus_2宏功能模块应用

4.3 在系统存储器数据读写编辑器应用
3. 读取RAM中的数据
图3-32 In-System Memory Content Editor上载FPGA中RAM数据
4.3 在系统存储器数据读写编辑器应用
3. 读取RAM中的数据
图3-33 利用In-System Memory Content Editor读取LPM_RAM中数据
4.4.2 定制初始化数据文件
1.建立.mif格式文件
【例3-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.1.3 电路时序仿真与测试
图3-12 基于逻辑宏单元的设计报告
4.1流水线乘法累加器设计
4.1.3 电路时序仿真与测试
图3-13 基于专用嵌入式乘法器模块的设计报告
4.1流水线乘法累加器设计
4.1.3 电路时序仿真与测试
图3-14 基于逻辑宏单元的流水线乘法累加器时序分析报告
4.1流水线乘法累加器设计
4.5 嵌入式逻辑分析仪使用方法
4.5.2 编辑SignalTapII的触发信号
图3-56 选择高级触发条件
4.5 嵌入式逻辑分析仪使用方法
4.5.2 编辑SignalTapII的触发信号
图3-57 进入“触发条件函数编辑”窗口
4.5 嵌入式逻辑分析仪使用方法
4.5.2 编辑SignalTapII的触发信号
2.建立.hex格式文件
图3-38 sdata.hex文件的放置路径
vhdl语言正弦波信号发生器设计

AS正弦波信号发生器设计一、实验内容1.设计一正弦信号发生器,采用ROM进行一个周期数据存储,并通过地址发生器产生正弦信号。
(ROM:6位地址8位数据;要求使用两种方法:VHDL编程和LPM)2.正弦信号六位地址数据128,140,153,165,177,188,199,209,219,227,235,241,246,250,253,255,255,254,252,248,244,238,231,223,214,204,194,183,171,159,147,134,121,109,96,84,72,61,51,41,32,24,17,11,7, 3,1,0,0,2,5,9,1420,28,36,46,56,67,78,90,102,115,127。
二、实验原理正弦波信号发生器是由地址发生器和正弦波数据存储器ROM两块构成,输入为时钟脉冲,输出为8位二进制。
1.地址发生器的原理地址发生器实质上就是计数器,ROM的地址是6位数据,相当于64位循环计数器。
2.只读存储器ROM的设计(1)、VHDL编程的实现①基本原理:为每一个存储单元编写一个地址,只有地址指定的存储单元才能与公共的I/O相连,然后进行存储数据的读写操作。
②逻辑功能:地址信号的选择下,从指定存储单元中读取相应数据。
(2)、基于LPM宏功能模块的存储器的设计①LPM:Library of Parameterized Modules,可参数化的宏功能模块库。
②Quartus II提供了丰富的LPM库,这些LPM函数均基于Altera器件的结构做了优化处理。
③在实际的工程中,设计者可以根据实际电路的设计需要,选择LPM库中适当的模块,并为其设置参数,以满足设计的要求,从而在设计中十分方便的调用优秀的电子工程技术人员的硬件设计成果。
三、设计方案1.基于VHDL编程的设计在地址信号的选择下,从指定存储单元中读取相应数据系统框图如下:2.基于LPM宏功能模块的设计LPM宏功能具有丰富的由优秀的电子工程技术人员设计的硬件源代码可供调用,我们只需要调用其设计的模块并为其设计必要的参数即可。
宏功能模块与IP应用实验与设计

END IF;
END PROCESS;
PROCESS (CLKK, Div2CLK)
BEGIN IF CLKK='0' AND Div2CLK='0' THEN RST_CNT<='1';-- 产生计数器清零信
号
ELSE RST_CNT <= '0'; END IF;
END PROCESS;
Load <= NOT Div2CLK; CNT_EN <= Div2CLK;
实验与设计
7-2. 8位16进制频率计设计
(1) 实验目的:设计8位16进制频率计,学习较复杂的数字系统设计方法。
(2) 实验原理:根据频率的定义和频率测量的基本原理,测定信号的频率必 须有一个脉宽为1秒的输入信号脉冲计数允许的信号;1秒计数结束后,计 数值被锁入锁存器,计数器清0,为下一测频计数周期作好准备。测频控制 信号可以由一个独立的发生器来产生,即图7-57中的FTCTRL。根据测频原 理,测频控制时序可以如图7-56所示。
实验与设计
图7-55 调用了PLL元件信号发生器原理图
实验与设计
7-1. 正弦信号发生器设计 (5)实验内容3:修改例7-3的数据ROM文件,设其数据线宽度为8,地址 线宽度也为8,初始化数据文件使用MIF格式,用C程序产生正弦信号数据, 最后完成以上相同的实验。
(6)实验内容4:设计一任意波形信号发生器,可以使用LPM双口RAM担 任波形数据存储器,利用单片机产生所需要的波形数据,然后输向FPGA中 的RAM(可以利用GW48系统上与FPGA接口的单片机完成此实验,D/A可 利用系统上配置的08括设计原理、程序 设计、程序分析、仿真分析、硬件测试和详细实验过程。
第9章 宏功能模块的应用

PORT ( outclock : IN STD_LOGIC ; ---接上页 address : IN STD_LOGIC_VECTOR (5 DOWNTO 0); inclock : IN STD_LOGIC ; q : OUT STD_LOGIC_VECTOR (7 DOWNTO 0)); END COMPONENT; BEGIN q <= sub_wire0(7 DOWNTO 0); lpm_rom_component : lpm_rom GENERIC MAP ( intended_device_family => “CycloneⅡ", lpm_address_control => "REGISTERED", lpm_file => "room.mif", lpm_outdata => "REGISTERED", ---接下页
任务
设计一个多功能信号发生器,使其可以产 生三角波、正弦波、方波信号。
任务一:分别建立三个数据初始化文件, zx.mif,fb.mif,sj.mif,并分别生成电路符号。 任务二:绘制总电路并进行引脚分配,调试
sel[1..0] clk
FPGA 正弦波 多路 选择 器 q[7..0]
地址发 生器
ARCHITECTURE SYN OF room IS SIGNAL sub_wire0 : STD_LOGIC_VECTOR (7 DOWNTO 0); COMPONENT lpm_rom GENERIC ( intended_device_family : STRING; lpm_address_control : STRING; lpm_file : STRING; lpm_outdata : STRING; lpm_type : STRING; lpm_width : NATURAL; lpm_widthad : NATURAL); ---接下页
第七章QUARTUSII入门指南

第七章QUARTUSII⼊门指南第七章 QUARTUS II ⼊门指南7.1 QUARTUS II软件简介7.2 QUARTUS II基本设计流程7.3 原理图输⼊设计⽅法7.4 嵌⼊式逻辑分析仪SignalTap II的使⽤7.5 宏功能模块的应⽤7.1 QUARTUS II软件简介Quartus II是Altera公司推出的CPLD/FPGA开发⼯具,Quartus II提供了完全集成且与电路结构⽆关的开发包环境,具有数字逻辑设计的全部特性,包括:可利⽤原理图、结构框图、VerilogHDL、AHDL和VHDL完成电路描述,并将其保存为设计实体⽂件;芯⽚(电路)平⾯布局连线编辑;LogicLock增量设计⽅法,⽤户可建⽴并优化系统,然后添加对原始系统的性能影响较⼩或⽆影响的后续模块。
7.1.1 QUARTUS II基本特点功能强⼤的逻辑综合⼯具;完备的电路功能仿真与时序逻辑仿真⼯具;定时/时序分析与关键路径延时分析;可使⽤SignalTap II逻辑分析⼯具进⾏嵌⼊式的逻辑分析;⽀持软件源⽂件的添加和创建,并将它们链接起来⽣成编程⽂件;使⽤组合编译⽅式可⼀次完成整体设计流程;⾃动定位编译错误;⾼效的期间编程与验证⼯具;可读⼊标准的EDIF⽹表⽂件、VHDL⽹表⽂件和Verilog⽹表⽂件;能⽣成第三⽅EDA软件使⽤的VHDL⽹表⽂件和Verilog⽹表⽂件。
7.1.2 QUARTUS II系统安装1、QUARTUS II安装Quartus II 系统要求较⾼的系统配置,配置过低将使得编译过程⼗分缓慢。
对于安装Quartus II 7.2版本的系统必须满⾜以下最低要求:z硬件:运⾏速度为866MHz或更快Pentium III 以上计算机,系统内存容量⼤于256M。
z操作系统:Microsoft Windows 2000或Microsoft Windows XP。
安装QuartusII 之前建议浏览⼀下安装⽂件夹下的帮助⽂件及注意事项。
EDA技术与应用第6章 宏功能模块设计

• (1)输入lpm_counter宏模块及端口、参数设置。
• 新建一个图形输入文件,双击空白处,在 Megafunctions目录下找到lpm_counter宏功 能模块,进入参数设置界面后,首先对输
出数据总线宽度和计数的方向进行设置, 如图6.1.8所示。
• 计数器可以设为加法或者减法计数,还可以通过增加一个 “updown”信号来控制计数的方向,为“1”时加法计数;为 “0”时减法计数。单击“Next”按钮,进入如图6.1.9所示的对
单击图6.1.3中的“Next”按钮,出现如图6.1.4所示的页面。
• 在“Does the ‘datab’input bus have a constant value?”框中选 择“datab”是否为常量,在这里选择“No”单选按钮,即 “datab”的输入值可变。在第二框“What type of multiplication do you want ?”中选择“Signed”,即有符号数 乘法。最下面一栏选择乘法器的实现方式,可以用FPGA中 专门的嵌入式乘法器(需注意的是并不是所有的FPGA器件 都包含嵌入式乘法器),也可用逻辑单元(LE)来实现乘 法器。在这里选择默认的方式实现(即“use the default implementation”)。
• 然后选择LPM宏模块库所在目录 \altera\quartus60\libraries\megafunctions,所有的库函数 就会出现在窗口中,设计者可以从中选择所需要的函数, 这里选择lpm_mult。
单击图6.1.1中的“OK”按钮,进入乘法器模块参数设置页面。 类型设为Verilog HDL,文件名按照默认设为“lpm_mult0”。
第6章 宏功能模块设计
•
EDA 第7讲 宏功能模块与IP应用

7.4 LPM 随机存储器的设置和调用
7.4.5 数据类型定义语句 4. 枚举型子类型数据类型定义
SUBTYPE定义了由TYPE所定义的原型数据类型的一个子集
【例】
7.4 LPM 随机存储器的设置和调用
7.4.6 存储器配置文件属性定义和结构设置 例7-6中,纯VHDL 描述,不做约束,直接综合的RTL:------耗费大量逻辑资源
7.5 LPM_ROM的定制和使用示例
7.5.4 正弦信号发生器硬件实现和测试
第 7讲
宏功能模块与IP应用
7.1 7.2 7.3 7.4 7.5 7.6 7.7 7.8 7.9 7.10 7.11 7.12
宏功能模块概述 LPM计数器模块使用方法 利用属性控制乘法器的构建 LPM 随机存储器的设置和调用 LPM_ROM的定制和使用示例 在系统存储器数据读写编辑器应用 FIFO定制 LPM嵌入式锁相环调用 NCO核数控振荡器使用方法 使用IP Core设计FIR滤波器 8051单片机IP核应用 DDS实现原理与应用
7.4 LPM 随机存储器的设置和调用
1.建立.mif格式文件 (4)专用mif文件生成器
7.4 LPM 随机存储器的设置和调用
7.4.1 存储器初始化文件生成 2.建立.hex格式文件
建立.hex格式文件的两种方法
7.4 LPM 随机存储器的设置和调用
7.4.2 LPM_RAM的设置和调用 •先建原理图文件,建工程。 •菜单:Tools->Mega Wizard Plug-in Manager
7.2 LPM计数器模块使用方法
7.2.1 LPM_COUNTER计数器模块文本文件的调用 (1)打开宏功能块调用管理器 •先建文件夹。
第章宏模块库ppt课件

4
7.1 LPM计数器模块调用 7.1.2 LPM计数器程序与参数传递语句
其他的算术宏
7.2 通信及数字信号处理宏
逻辑门库
以译码器为例仿真
I/O模块库
以 锁 相 环 为 例
ATLPLL运用
建立时钟1.
耗时4个时钟才能建立输出时钟
注 意 : 复 位 是
高 电 平 锁 定
低立时钟1.
input button; input trig_clk; input clk; input s_clk,q_clk; output clk_reg,
s_clk_reg, q_clk_reg; reg clk_reg, s_clk_reg,
q_clk_reg;
always @(posedge s_clk) if(!button) s_clk_reg <= 0; else s_clk_reg <= ~ s_clk_reg;
endmodule
参数化PLL的建立.2
建立时钟产生文件
module MyPLLReg(trig_clk, // from PLL output c2 (100Mhz) clk, // from PCB clock (50Mhz) button, // reset signal for registers s_clk, // from PLL output c0 (12.5Mhz) q_clk, // from PLL output c1 (25Mhz) clk_reg, s_clk_reg, q_clk_reg);
);
input clk, button; output s_clk,
s_clk_reg; output q_clk,
q_clk_reg; output trig_clk, clk_reg;
VHDL宏功能模块应用课件

定义基于STD_LOGIC与STD_LOGIC_VECTOR类型上的无符 号的算术运算
7.3 LPM随机存储器的设置和调用
7.3 LPM随机存用示例
简易正弦信号发生器设计 f = f0 /64
STD_LOGIC_1164
定义STD_LOG, STD_LOGIC_VECTOR等
STD_LOGIC_ARITH STD_LOGIC_SIGNED STD_LOGIC_UNSIGNED
定义有符号与无符号数据类型,基于这些数据类型的算术运算 符,如“+”, “-”, “∗”, “/”SHL, SHR等
7.0 宏功能模块概述
宏功能模块LPM:是参数可设置模块库的英语缩写 (Library of Parameterized Modules),这些可 以以图形或硬件描述语言模块形式方便调用的宏 功能块,使得基于EDA技术的电子设计的效率和 可靠性有了很大的提高。设计者可以根据实际电 路的设计需要,选择LPM库中的适当模块,并为 其设定适当的参数,就能满足自己设计需要,从 而在自己的项目中十分方便地调用优秀的电子工 程师人员的硬件设计成果。
:
F9;
4
:
F5;
…(数据略去)
3D
:
FC;
3E
:
FE;
3F
:
FF;
END;
7.2 宏模块应用实例
7.2.2 定制初始化数据文件
1.建立.mif格式文件 【例7-2】 #include <stdio.h> #include "math.h" main() {int i;float s; for(i=0;i<1024;i++)
杭电数电实验课内题设计答案

数字逻辑电路课内仿真实验第六章Quartusll 原理图设计初步二、实验仪器: Quartusll 软件。
三、实验内容:6-1用Quartusll 库中的宏功能模块 74138和与非门实现指定逻辑函数按照6.3节和6.4节的流程,使用 Quartusll 完整图6-2电路的设计,包括:创建工程, 在原理图编辑窗中绘制此电路, 全程编译,对设计进行时序仿真, 根据仿真波形说明此电路一、实验目的: 初步了解学习使用 Quartusll 软件进行电路自动化设计。
的功能,引脚锁定编译,编程下载于FPGA 中进行硬件测试。
最后完成实验报告。
1、原理图 両诬YDN A V1M ftv?NlCY 酬 G1 T4IM <?£AhY 州G 比hve'i^N0~、r冋幅亍 —j — ................ _y p -' :n :tl; ......................■■ .!・■ ■・[・・—・・・・UI •■■I■!■■且■ b 0 b J …J k ■ L J …―年1 一… ■ - ■ -p - pJ ip k ■ L JFN W ・・I HN 91… I PPJ 49I....… gk 八却拽:f=>E|| II- !■ i|E qi 1|1 ^1 1|1, JI 1|1 :JI 1|1 i_.i !■■_ i IIB -II iih.-i |ih»M^ii Liiqii i;=iqii l^iRn ■^■Rn审厂 恥1"=il2 T|H_3 刊毗J 刊口=1 匸10 吨112、 波形设置M^AIrimEdAT 皿rjs& 科B n* 1 [■遶 * L-r p. > ■-i h' M7 :to5 F B V 4Z3Si 出EwJ I弓舞"5 平“ 15 単“;[> 弩":*“30 号"呼"4竽 E «^竽"mq- 36 字“也4 366 呼 6鬥5 ra3、仿真波形rlKi.It WirMl¥iuFF4位二进制数值比较器 7485串联扩展为8位比较器,使用Quartusll 完成全部设 计和测试,包括创建工程、编辑电路图、全程编译、时序仿真及说明此电路的功能、弓I 脚锁 定、编程下载,进行硬件测试。
宏设计实验报告

一、实验目的本次实验旨在通过设计和实现一个简单的宏单元,加深对宏设计原理的理解,掌握宏单元的设计流程,并学会使用FPGA开发工具进行硬件描述语言(HDL)编程和仿真。
二、实验原理宏设计是指将基本逻辑单元组合成复杂的逻辑功能,如加法器、乘法器等。
通过宏设计,可以将复杂的逻辑功能模块化,提高设计的可重用性和可维护性。
在FPGA 设计中,宏单元通常是指由HDL语言编写的逻辑模块。
三、实验器材1. FPGA开发板2. HDL开发工具(如Vivado、Quartus等)3. 仿真工具(如ModelSim等)4. 连接线四、实验步骤1. 需求分析根据实验要求,设计一个简单的宏单元,例如4位加法器。
2. 设计输入使用HDL语言编写4位加法器的模块代码。
```vhdllibrary IEEE;use IEEE.STD_LOGIC_1164.ALL;use IEEE.NUMERIC_STD.ALL;entity adder4 isPort ( a : in STD_LOGIC_VECTOR(3 downto 0);b : in STD_LOGIC_VECTOR(3 downto 0);sum : out STD_LOGIC_VECTOR(4 downto 0));end adder4;architecture Behavioral of adder4 isbeginprocess(a, b)beginsum <= std_logic_vector(signed(a) + signed(b)); end process;end Behavioral;```3. 代码编译使用HDL开发工具将编写的代码编译成可综合的网表。
4. 仿真使用仿真工具对编译后的网表进行仿真,验证设计的正确性。
```vhdllibrary IEEE;use IEEE.STD_LOGIC_1164.ALL;use IEEE.NUMERIC_STD.ALL;entity testbench isend testbench;architecture Behavioral of testbench issignal a : STD_LOGIC_VECTOR(3 downto 0);signal b : STD_LOGIC_VECTOR(3 downto 0);signal sum : STD_LOGIC_VECTOR(4 downto 0);beginuut: entity work.adder4port map (a => a,b => b,sum => sum);stimulus: processbegina <= "0001";b <= "0010";wait for 10 ns;a <= "1100";b <= "1010";wait for 10 ns;a <= "1111";b <= "1111";wait for 10 ns;a <= "0000";b <= "0000";wait for 10 ns;report "Simulation complete" severity note;wait;end process;end Behavioral;```5. 综合与布局布线使用FPGA开发工具将仿真通过的网表进行综合和布局布线,生成比特流文件。
参数可设置宏功能模块lpm的应用ppt课件

end component;
begin
u1:rom0 port map (clock=>clk,address(7 downto 4)=>b,address(3 downto 0)=>a,q=>q);
end;
为了规范事业单位聘用关系,建立和 完善适 应社会 主义市 场经济 体制的 事业单 位工作 人员聘 用制度 ,保障 用人单 位和职 工的合 法权益
二、利用lpm-rom设计一个乘法器
波形仿真
➢ 新建波形文件→调入节点端口→设置仿真激励(过程同全 加器波形仿真) 设置时钟信号
分离窗口 选择工具
全屏 查找 未初始化 设置低电平0 高阻态 弱逻辑0 无关 数据总线设置
文字编辑 移动工具
未定义信号 设置高电平1
弱未知 弱逻辑1
反转 时钟设置 随机值
二、利用lpm-rom设计一个乘法器
设置存储单元数目与数据宽度
存储单 元数目 数据位 宽
为了规范事业单位聘用关系,建立和 完善适 应社会 主义市 场经济 体制的 事业单 位工作 人员聘 用制度 ,保障 用人单 位和职 工的合 法权益
二、利用lpm-rom设计一个乘法器
3、实验步骤
配置乘法表数据文件 File→New→Memory Files→Memory Initialization File (或者Hexadecimal Intel Format File)
为了规范事业单位聘用关系,建立和 完善适 应社会 主义市 场经济 体制的 事业单 位工作 人员聘 用制度 ,保障 用人单 位和职 工的合 法权益
二、利用lpm-rom设计一个乘法器
定制lpm_rom元件 Tools→MegaWizard Plug-In Manager
EDA技术与应用讲义 第3章 原理图输入设计方法 QUARTUS II版本

有了HDL语言后?
硬件设计人员 的工作过程
已经 类似与
软件设计人员,那么
这种模式的好处是?
让我们先看看原来是如何做的->
Compiler Netlist Extractor (编译器网表提取器)
❖ The Compiler module that converts each design file in a project (or each cell of an EDIF Input File) into a separate binary CNF. The filename(s) of the CNF(s) are based on the project name. Example
电路的模块划分
❖ 人工 根据电路功能 进行 模块划分
❖ 合理的模块划分 关系到
1. 电路的性能 2. 实现的难易程度
❖ 根据模块划分和系统功能 确定: PLD芯片型号
模块划分后,就可以进行 具体设计 了
设计输入
一般EDA软件允许3种设计输入:
1. HDL语言 2. 电路图 3. 波形输入
图形设计输入的过程
件电路图设计 5. 综合调试 6. 完成
设计的几个问题
❖ 如何组织多个设计文件的系统?,项目的概 念。
❖ 时钟系统如何设计?
❖ 电路的设计功耗
❖ 高速信号的软件和硬件设计
The end.
以下内容 为 正文的引用,
可不阅读。
常用EDA工具软件
❖ EDA软件方面,大体可以分为两类:
1. PLD器件厂商提供的EDA工具。较著名的如:
❖ 第三方工具软件是对CPLD/FPGA生产厂家开发软件的补 充和优化,如通常认为Max+plus II和Quartus II对 VHDL/Verilog HDL逻辑综合能力不强,如果采用专用的 HDL工具进行逻辑综合,会有效地提高综合质量。
FPGA设计基础 QuartusⅡ中宏功能模块使用

选择读写模式按字节读写
图6 2019/3/20 西安邮电学院计算机系 7
QuartusⅡ中宏功能模块的使用
选择存储深度
选择字宽
选择例化时调用 的资-M4K资源/ 逻辑资源(LC)
图7
2019/3/20
西安邮电学院计算机系
8
QuartusⅡ中宏功能模块的使用
选择异步 读写时钟
图8 西安邮电学院计算机系
必须首先学会面对的一种结果----被拒绝
仍然感谢这次机会,因为被拒绝是面试后的两种结果之一。 被拒绝是招聘单位对我们综合考虑的结果,因为我们最关心的 是自己什么地方与用人要求不一致,而不仅仅是面试中的表现。 不要欺骗自己,说“我本来就不想去”等等。 认真考虑是否有必要再做努力。 以具体的形式感谢招聘单位的接纳,如邮件、短信 考虑怎样使自己的知识能力更适应工作需要 把走进工作岗位当作职业生涯的重要的第一步,认真思考如何 为以后的发展开好头。
2019/3/20
9
QuartusⅡ中宏功能模块的使用
选择读出端是 否加D触发器
图9 西安邮电学院计算机系
2019/3/20
10
QuartusⅡ中宏功能模块的使用
选择存储空间初始 化方式及初始值
图 10 西安邮电学院计算机系
2019/3/20
11
QuartusⅡ中宏功能模块的使用
仿真与综合相关信息
该向导工具帮助用户建立或修改包含自定义宏功能模 块变量的设计文件,这些设计文件可以在用户的设计 中进行实例化。
2019/3/20
西安邮电学院计算机系
2
QuartusⅡ中宏功能模块的使用
在QuartusⅡ软件中使用MegaWizard Plug-In Manager对宏功能模块进行实例 化的步骤如下: 1 选择菜单Tools MegaWizard Plug-In Manager(图1),或直接在原理 图设计文件的Symbol对话框中点击MegaWizard Plug-In Manager(图2),则弹出 对话框(图3) 。
原理图设计

原理图设计
原理图设计是电子产品开发中至关重要的一环,它是整个产品设计的基础,直
接影响着产品的性能、稳定性和可靠性。
在进行原理图设计时,需要考虑多方面的因素,包括电路结构、元器件选型、信号传输、电源管理等。
本文将从这些方面对原理图设计进行详细介绍。
首先,原理图设计需要考虑电路结构。
电路结构的合理性直接关系到产品的性
能和稳定性。
在进行原理图设计时,需要根据产品的功能需求,合理划分电路结构,将各个模块进行合理的连接和布局,以确保信号传输的稳定性和可靠性。
其次,元器件选型是原理图设计中的关键步骤。
在进行元器件选型时,需要考
虑元器件的性能参数、封装形式、生产厂家等因素。
合理的元器件选型能够有效地提高产品的性能,并且有利于后续的PCB布局和生产。
另外,信号传输是原理图设计中需要重点考虑的问题之一。
在进行原理图设计时,需要合理规划信号的传输路径,避免信号干扰和串扰,确保信号的稳定传输。
此外,还需要考虑信号的匹配和阻抗匹配等问题,以提高信号的传输质量。
最后,电源管理是原理图设计中不可忽视的部分。
在进行原理图设计时,需要
合理设计电源管理电路,确保产品能够稳定、可靠地工作。
同时,还需要考虑电源的效率和稳定性,以提高产品的整体性能。
总之,原理图设计是电子产品开发中至关重要的一环,它直接影响着产品的性能、稳定性和可靠性。
在进行原理图设计时,需要全面考虑电路结构、元器件选型、信号传输、电源管理等因素,以确保产品的整体质量。
希望本文的介绍能够对大家在进行原理图设计时有所帮助。
原理图与宏功能模块设计

Settings对话框
分析与综合设置
Analysis & Synthesis
Settings项中包含有四个项
目:
○ VHDL Input ○ Verilog HDL Input ○ Default Parameters ○ Synthesis Netlist
Optimization
作为Quartus II的编译模块之一, Analysis & Synthesis包括 Quaruts II Integrated Synthesis集成综合器,完全
1
2
基于Quartus II,用74283 (4位二进制全加器)设计实 现一个8位全加器,并进行综 合和仿真,查看综合结果和 仿真结果。
3
习题
基于Quartus II,用74194(4位双向移位寄存器)设计一个 “00011101”序列产生器电路,进行编译和仿真,查看仿真 结果。
基于Quartus II软件,用D触发器和适当的门电路实现一个输 出长度为15的m序列产生器,进行编译和仿真,查看仿真结果。
1
2
Fitter Settings选项页
一.优化布局布线
Setting对话框的Fitter Settings页指定控制时序驱 动编译和编译速度的选择,如 下图所示。
more Fitter Settings选项页
在Compilation Report中查看适配结果
在Timing Closure Floorplan中查看适配结果
2
(1)输入altpll宏功能模块
选择芯片和设置参考时钟
第六章-宏功能模块与IP应用

2021/4/6
7
三、正弦信号数据存储器ROM的定制
5. 按图示作选择
2021/4/6
8
三、正弦信号数据存储器ROM的定制
6. 按图示作选择
2021/4/6
9
三、正弦信号数据存储器ROM的定制
2021/4/6
7. 按图示设定, Mif文件的建立见p195
10
三、正弦信号数据存储器ROM的定制
二、 VHDL顶层文件SIN_GNT设计 [例6-9]
2021/4/6
4
二、 VHDL顶层文件SIN_GNT设计 接上页
2021/4/6
5
三、正弦信号数据存储器ROM的定制
1. 新建原理图文件
2. 点击这里
2021/4/6
3. 出来此窗口后,next
6
三、正弦信号数据存储器ROM的定制
4. 按图示作选择
2021/4/6
2
6.5.3 简易正弦信号发生器设计
一、正弦信号发生器结构
RST EN CLK
由FPGA实现
Q1
address q Q
Inclock
四
个 1、7位地址信号发生器 组 2、正弦信号数据存储器ROM 成 3、VHDL顶层文件SIN_GNT 部 4、8位D/A
分
底层文件
2021/4/6
3
2021/4/6
文件说明见p185 8. 点击这里
11
四、 VHDL顶层文件SIN_GNT的仿真波形
例6-9的仿真波形输出
2021/4/6
12
复习
P195~209
预习
第二次实验:p120_4.5.2 2位4 十六进制7段数码显示译码器设计(参 考本教材二版p143【例5-21】) 选做:p141_4-6 数码扫描显示电路设计(参考本教材 二版p144【例5-22】) 第四次实验:p264_7-2 并行ADC采样控制电路实现和 硬件验证 第五/六次实验:设计型实验(自己选题)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第4章 原理图与宏功能模块设计
第4章
原理图与宏功能模块设计
4.1
Quartus II原理图设计 II原理图设计
4.2
II的优化设置 Quartus II的优化设置 II的时序分析 Quartus II的时序分析 宏功能模块设计
4.3
(1)输入 )输入altpll宏功能模块 宏功能模块
选择芯片和设置参考时钟
锁相环控制信号设置
输入时钟设置
(2)编译和仿真 )
锁相环电路
功能仿真波形
存储模块库
存储器模块设计举例
ROM(Read Only Memory,只读存储器)是存储器的 ( ,只读存储器) 一种,利用FPGA可以实现 可以实现ROM的功能,但其不是真正意义 的功能, 一种,利用 可以实现 的功能 上的ROM,因为 器件在掉电后, 上的 ,因为FPGA器件在掉电后,其内部的所有信息都 器件在掉电后 会丢失,再次工作时需要重新配置。 会丢失,再次工作时需要重新配置。 Quartus II提供的参数化 提供的参数化ROM是lpm_rom,下面用一 提供的参数化 是 , 个乘法器的例子来说明它的使用方法, 个乘法器的例子来说明它的使用方法,这个例子使用 lpm_rom构成一个 位×4位的无符号数乘法器,利用查表 构成一个4位 位的无符号数乘法器, 构成一个 位的无符号数乘法器 方法完成乘法功能。 方法完成乘法功能。
3. 优化布局布线
Setting对话框的 对话框的Fitter Settings页指定控制时序驱动 页指定控制时序驱动 对话框的 编译和编译速度的选择,如下图所示。 编译和编译速度的选择,如下图所示。
Fitter Settings选项页 选项页
more Fitter Settings选项页 选项页
仿真结果
4.4.2 Maxplus2库 Maxplus2库
Maxplus2库主要由 系列数字集成电路组成,包括 库主要由74系列数字集成电路组成 库主要由 系列数字集成电路组成, 时序电路宏模块和运算电路宏模块两大类, 时序电路宏模块和运算电路宏模块两大类,其中时序电 路宏模块包括触发器、锁存器、计数器、分频器、 路宏模块包括触发器、锁存器、计数器、分频器、多路 复用器和移位寄存器, 复用器和移位寄存器,运算电路宏模块包括逻辑预算模 加法器、减法器、乘法器、绝对值运算器、 块、加法器、减法器、乘法器、绝对值运算器、数值比 较器、编译码器和奇偶校验器。 较器、编译码器和奇偶校验器。 对于这些小规模的集成电路, 对于这些小规模的集成电路,在数字电路课程中有详 细的介绍,其调入方法与Megafunction库中的宏模块 细的介绍,其调入方法与 库中的宏模块 相同,只是端口和参数无法设置。 相同,只是端口和参数无法设置。
4.4
基于Quartus II进行 进行EDA设计开发的流程 基于 进行 设计开发的流程
4.1 Quartus II原理图设计 原理图设计
1. 为本项工程设计建立文件夹 2. 输入设计项目和存盘
元件输入对 话框
3. 将设计项目设置成可调用的元件
将所需元件全部调入原理图编辑窗并连接好
4. 设计全加器顶层文件
数据线、 数据线、地址线宽度设置
控制端口设置
添加.mif文件 文件 添加
如下图所示就是基于ROM实现的 位×4位的无符号 实现的4位 如下图所示就是基于 实现的 位的无符号 数乘法器电路图,其参数设置为: 数乘法器电路图,其参数设置为: LPM_WIDTH=8 LPM_WIDTHAD=8 LPM_FILE=mult_rom.mif
习
4-3
题
基于Quartus II软件,用74161设计一个模 的计数器, 软件, 设计一个模99的计数器 基于 软件 设计一个模 的计数器, 个位和十位都采用8421BCD码的编码方式设计, 分别用置 和 码的编码方式设计, 个位和十位都采用 码的编码方式设计 分别用置0和 两种方法实现, 置1两种方法实现,完成原理图设计输入、编译、仿真和下载整 两种方法实现 完成原理图设计输入、编译、 个过程。 个过程。 基于Quartus II软件,用7490设计一个模 计数器,个位 软件, 设计一个模71计数器 基于 软件 设计一个模 计数器, 和十位都采用8421BCD码的编码方式设计,完成原理图设计输 码的编码方式设计, 和十位都采用 码的编码方式设计 编译、仿真和下载整个过程。 入、编译、仿真和下载整个过程。 基于Quartus II,用74283(4位二进制全加器)设计实现 位二进制全加器) 基于 , ( 位二进制全加器 一个8位全加器 并进行综合和仿真,查看综合结果和仿真结果。 位全加器, 一个 位全加器,并进行综合和仿真,查看综合结果和仿真结果。
连接好的全加器原理图f_adder.bdf 连接好的全加器原理图
5. 将设计项目设置成工程和时序仿真
f_adder.bdf工程设置窗 工程设置窗
5. 将设计项目设置成工程和时序仿真
加入本工程所有文件
5. 将设计项目设置成工程和时序仿真
全加器工程f_adder的仿真波形 的仿真波形 全加器工程
4.2 Quartus II的优化设置 的优化设置
Settings对话框 对话框
2. 分析与综合设置
Analysis & Synthesis Settings项中包含有四个项目: 项中包含有四个项目: 项中包含有四个项目 VHDL Input Verilog HDL Input Default Parameters Synthesis Netlist Optimization
在Compilation Report中查看适配结果 中查看适配结果
在Timing Closure Floorplan中查看适配结果 中查看适配结果
在Chip Editor中查看适配结果 中查看适配结果
4.3 Quartus II的时序分析 的时序分析
全程编译前时序条件设置界面
“More Settings…”中的设置 中的设置
时序分析结果
4.4 宏功能模块设计
4.4.1 Megafunctions库 Megafunctions库 4.4.2 Maxplus2库 Maxplus2库 4.4.3 Primitives库 Primitives库
4.4.1 Megafunctions库 Megafunct是 提供的参数 化模块库。从功能上看, 化模块库。从功能上看,可以把 Megafunction库中的元器件分为: 库中的元器件分为: 库中的元器件分为 算术运算模块( 算术运算模块(arithmetic) ) 逻辑门模块( 逻辑门模块(gates) ) 储存模块( 储存模块(storage) ) IO模块(I/O) 模块( 模块 )
4-4
4-5
习
题
4-6 基于 基于Quartus II,用74194(4位双向移位寄存器)设 位双向移位寄存器) , ( 位双向移位寄存器 计一个“ 序列产生器电路, 计一个“00011101”序列产生器电路,进行编译和仿真, 序列产生器电路 进行编译和仿真, 查看仿真结果。 查看仿真结果。 4-7 基于 基于Quartus II软件,用D触发器和适当的门电路实现 软件, 软件 触发器和适当的门电路实现 一个输出长度为15的 序列产生器 进行编译和仿真, 序列产生器, 一个输出长度为 的m序列产生器,进行编译和仿真,查看 仿真结果。 仿真结果。
1. Setting设置 设置 在Quartus II软件菜单栏中选择 软件菜单栏中选择 中的“ “Assignments”中的“Setting…”就可打开 中的 就可打开 一个设置控制对话框。可以使用Setting对话框 一个设置控制对话框。可以使用 对话框 对工程、文件、参数等进行修改, 对工程、文件、参数等进行修改,还可设置编 译器、仿真器、时序分析、功耗分析等等。 译器、仿真器、时序分析、功耗分析等等。
功能仿真波形
8.1.2 逻辑门库
I/O模块库 模块库
I/O模块库 模块库
锁相环模块设计举例
参数化锁相环宏模块altpll以输入时钟信号作为参考信 以输入时钟信号作为参考信 参数化锁相环宏模块 号实现锁相, 号实现锁相,从而输出若干个同步倍频或者分频的片内 时钟信号。与直接来自片外的时钟相比,片内时钟可以 时钟信号。与直接来自片外的时钟相比, 减少时钟延迟,减小片外干扰,还可改善时钟的建立时 减少时钟延迟,减小片外干扰, 间和保持时间,是系统稳定工作的保证。 间和保持时间,是系统稳定工作的保证。不同系列的芯 片对锁相环的支持程度不同, 片对锁相环的支持程度不同,但是基本的参数设置大致 相同,下面便举例说明 的应用。 相同,下面便举例说明altpll的应用。 的应用
计数器74161设计举例 设计举例 计数器
模10计数器 计数器
仿真结果
4.4.3 Primitives库 Primitives库
缓冲器库
引脚库
存储单元库
逻辑门库
其他模块
习
题
4-1 基于 基于Quartus II软件,用D触发器设计一个 分频电路,并做波形 软件, 触发器设计一个2分频电路 软件 触发器设计一个 分频电路, 仿真,在此基础上,设计一个4分频和 分频电路,做波形仿真。 分频和8分频电路 仿真,在此基础上,设计一个 分频和 分频电路,做波形仿真。 。 4-2 基于 基于Quartus II软件,用7490设计一个能计时(12小时)、计分 软件, 设计一个能计时( 小时)、计分 小时)、 软件 设计一个能计时 (60分)和计秒(60秒)的简单数字钟电路。设计过程如下: 分 和计秒( 秒 的简单数字钟电路。设计过程如下: 的原理图输入方式, (1)先用 )先用Quartus II的原理图输入方式,用7490连接成包含进位输出 的原理图输入方式 连接成包含进位输出 的模60的计数器 并进行仿真,如果功能正确,则将其生成一个部件; 的计数器, 的模 的计数器,并进行仿真,如果功能正确,则将其生成一个部件; 连接成模12的计数器 (2)将7490连接成模 的计数器,进行仿真,如果功能正确,也将其 ) 连接成模 的计数器,进行仿真,如果功能正确, 生成一个部件; 生成一个部件; (3)将以上两个部件连接成为简单的数字钟电路,能计时、计分和计秒, )将以上两个部件连接成为简单的数字钟电路,能计时、计分和计秒, 计满12小时后系统清 重新开始计时。 小时后系统清0重新开始计时 计满 小时后系统清 重新开始计时。 (4)在实现上述功能的基础上可以进一步增加其它功能,比如校时功能, )在实现上述功能的基础上可以进一步增加其它功能,比如校时功能, 能随意调整小时、分钟信号,增加整点报时功能等。 能随意调整小时、分钟信号,增加整点报时功能等。