Quartus提供的宏模块
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文件的放置路径
实验3 宏功能模块的应用

实验3 宏功能模块的应用实验目的:熟悉Quartus Ⅱ的宏功能模块的应用。
实验工具:Quartus Ⅱ8.0 实验步骤: 工程设计步骤:实验内容:一、采用Quartus II 软件的宏功能模块lpm_counter 设计一个模为60的加法计数器,进行编译和仿真,查看仿真结果。
(1)原理图设计:如图3-1-1图3-1-1 模60加法计数器(2)综合模60加法计数器:如图 3-1-2图 3-1-2 模60加法计数器综合报告流动状态 软件版本 修复名称 顶层文件 器件系列所有逻辑资源所有寄存器 所有引脚 所有虚拟引脚 所有存储器 器件型号时间模型(3)功能仿真模60加法计数器功能仿真波形图:如图3-1-3图 3-1-3 模60加法计数器功能仿真结论:图3-3宏功能模块中从上到下有以下几个引脚:异步清零端,时钟使能端,时钟,同步置数端使能端,计数使能端,计数方向,置数输入端,输出端,进位输出端。
每个端口功能如图3-3解释,每个端口都实现了理论中的功能,所以功能仿真成功。
(4)时序仿真模60加法计数器时序仿真波形图:如图3-1-4图 3-1-4模60加法计数器时序仿真结论:图3-4中时序仿真的引脚与图3-3相同,每个引脚实现的功能与图3-3相一致。
所不同的是在时序仿真中输出出现了微小的延时,并且输出之间出现了许多细小的毛刺,在进位输出端也出现了一个明显的毛刺。
不过整体仿真的结果是正确的。
最大工作频率:310.37MHz 如图 3-1-5图 3-1-5 最大工作频率延时情况:注:tsu(建立时间),th(保持时间),tco(时钟至输出延时),tpd(引脚至引脚延时)tpd(引脚至引脚延时)tsu(建立时间)tco(时钟至输出延时)th(保持时间)二、先利用LPM_ROM设计8位×8位乘法器,进行编译和仿真,查看仿真结果。
(1)原理图设计:1、用MATLAB产生一个8_8_mult_rom.mif文件。
设计工具Quartus II简介

设计工具Quartus II简介二十世纪后半期,随着集成电路和计算机技术的飞速发展,数字系统也得到了飞速发展。
在可编程集成电路的开发过程中,以计算机为工作平台,融合了电子应用技术,计算机技术,智能化技术最新成果的电子设计自动化(Electronic Design Automation)技术能辅助各种规模的设计工作。
Quartus II是Altera 提供的FPGA/CPLD开发集成环境,Altera是世界最大可编程逻辑器件供应商之一。
Quartus II在21世纪初推出,是Altera前一代FPGA/CPLD集成开发环境MAX+plus II 的更新换代产品,其界面友好,使用便捷。
在Quartus II上可以完成设计输入、HDL综合、布线布局(适配)、仿真和下载和硬件测试等流程,它提供了一种与结构无关的设计环境,使设计者能方便地进行设计输入、快速处理和器件编程。
Altera的Quartus II 提供了完整的多平台设计环境,能满足各种特定设计的需要,也是单芯片可编程系统(SOPC) 设计的综合性环境和SOPC 开发的基本设计工具,并为Altera DSP 开发包进行系统模型设计提供了集成综合环境。
Quartus II设计工具完全支持VHDL、Verylog 的设计流程,其内部嵌有VHDL、Verilog 逻辑综合器。
Quartus II也可以利用第三方的综合工具,如Leonardo Spectrum Synplify Pro FPGA Complier II并能直接调用这些工具。
同样,Quartus II具备仿真功能,同时也支持第三方的仿真工具,如ModelSim。
此外,Quartus II与MATLAB和DSP Builder结合,可以进行基于FPGA的DSP系统开发,是DSP硬件系统实现的关键EDA工具。
Quartus II包括模块化的编译器。
编译器包括的功能模块有分析综合器(Analysis &Synthesis)、适配器(Filter)、装配器( Assembler)、时序分析器(Timing Analyzer)、设计辅助模块(Design Assistant)、EDA网表文件生成器(EDA Netlist Writer) 和编辑数据接口(Complier Database Interface 等。
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章 宏功能模块设计
•
quartus 宏编译

quartus 宏编译
Quartus是一款可编程逻辑设备(PLD)设计软件,被广泛应用于数字逻辑电路的设计和仿真。
它提供了一套强大的工具和特性,用于创建、优化和验证各种电路设计。
在使用Quartus进行PLD设计时,我们可以利用宏来简化和优化代码。
宏是一种在编译过程中被替换为特定文本的预定义指令。
它可以显著提高代码的可读性和可维护性,并减少代码冗余。
在使用宏编译时,我们需要遵循一些规则和最佳实践。
首先,我们应该选择有意义的宏名称,以便于其他开发人员理解和使用。
其次,我们应该避免定义与已有变量或函数重名的宏,以免造成命名冲突。
另外,我们还应该注意宏的作用域,确保它们只在需要的地方生效。
使用宏编译可以大大简化代码,提高开发效率。
例如,我们可以使用宏来定义常量,避免在代码中多次重复写入相同的数值。
此外,我们还可以利用宏来定义复杂的逻辑操作,从而简化代码的编写和理解。
然而,宏编译也存在一些注意事项。
首先,我们应该避免在宏定义中包含复杂的逻辑操作,以免导致代码难以理解和维护。
其次,我们需要注意宏的使用方式,确保它们在不同的上下文中能够正常工作。
Quartus宏编译是一种强大的工具,可以优化PLD设计的效率和可
维护性。
通过合理地使用宏,我们可以简化代码,提高开发效率,并确保代码的正确性和可读性。
希望通过这篇文章的介绍,读者能够更好地理解和应用Quartus宏编译。
quartus宏功能模块介绍

-----------------------------------------------------RAM宏模块宏模块名称功能描述csdpram 参数化循环共享双端口RAMlpm_ram_dp 参数化双端口RAMlpm_ram_dq 参数化RAM,输入/输出端分离lpm_ram_io 参数化RAM,输入/输出端公用一个端口FIFO宏模块宏模块名称功能描述csfifo 参数化循环共享FIFOdcfifo 参数化双时钟FIFOscfifo 参数化单时钟FIFOlpm_fifo 参数化单时钟FIFOlpm_fifo_dc 参数化双时钟FIFOROM的设计lpm_romQuartus II开发软件中的宏模块--时序电路宏模块触发器宏模块名称功能描述lpm_ff 参数化D或T触发器lpm_dff 参数化D触发器和移位寄存器lpm_tff 参数化T触发器enadff 带使能端的D触发器expdff 用扩展电路实现的D触发器7470 带预置和清零端的与门JK触发器7471 带预置端的JK触发器7472 带预置和清零端的与门JK触发器7473 带清零端的双JK触发器7474 带异步预置和异步清零端的双D触发器7476 带异步预置和异步清零端的双JK触发器7478 带异步预置、公共清零和公共时钟端的双JK触发器74107 带清零端的双JK触发器74109 带预置和清零端的双JK触发器74112 带预置和清零端的双JK时钟下降沿触发器74113 带预置端的双JK时钟下降沿触发器74114 带异步预置、公共清零和公共时钟端的双JK时钟下降沿触发器74171 带清零端的4D触发器74172 带三态输出的多端口寄存器74173 4位D型寄存器74174 带公共清零端的16进制D触发器74174b 带公共清零端的16进制D触发器74175 带公共时钟和清零端的4D触发器74273 带异步清零端的8进制触发器74273b 带异步清零端的8进制触发器74276 带公共预置和清零端的4JK触发器寄存器74374 带三态输出和输出使能端的8进制D触发器74374b 带三态输出和输出使能端的8进制D触发器74376 带公共时钟和公共清零端4JK触发器74377 带使能端的8进制D触发器74377b 带使能端的8进制D触发器74378 带使能端的16进制D触发器74379 带使能端的4D触发器74396 8进制存储寄存器74548 带三态输出的8位两级流水线寄存器74670 带三态输出的4位寄存器74821 带三态输出的10位总线接口触发器74821b 带三态输出的10位D触发器74822 带三态反相输出的10位总线接口触发器74822b 带三态反相输出的10位D触发器74823 带三态输出的9位总线接口触发器74823b 带三态输出的9位D触发器74824 带三态反相输出的9位总线接口触发器74824b 带三态反相输出的9位D触发器74825 带三态反相输出的8位总线接口触发器74825b 带三态输出的8进制D触发器74826 带三态反相输出的9位总线接口触发器74826b 带三态反相输出的8进制D触发器锁存器宏模块名称功能描述lpm_latch参数化锁存器explatch用扩展电路实现的锁存器Inpltch 用扩展电路实现的输入锁存器nandltch用扩展电路实现的SR(非)与非门锁存器norltch 用扩展电路实现的SR或非门锁存器7475 4位双稳态锁存器7477 4位双稳态锁存器74116 带清零端的双4位锁存器74259 带清零端、可设定地址的锁存器74279 4路SR(非)锁存器74373 带三态输出的8进制透明D锁存器74373b 带三态输出的8进制透明D锁存器74375 4位双稳态锁存器74549 8位二级流水线锁存器74604 带三态输出的8进制2输入多路锁存器74841 带三态输出的10位总线接口D锁存器74841b 带三态输出的10位总线接口D锁存器74842 带三态输出的10位总线接口D锁存器74842b 带三态输出的10位总线接口D反相锁存器74843 带三态输出的9位总线接口D锁存器74844 带三态输出的9位总线接口D反相锁存器74845 带三态输出的8位总线接口D锁存器74846 带三态输出的8位总线接口D反相锁存器74990 8位透明读回锁存器计数器宏模块名称功能描述lpm_conter参数化计数器(仅限FLEX系列器件)gray4 格雷码计数器unicnt 通用4位加/减计数器,可异步设置、读取、清零和级联的左/右移位寄存器16cudslr 16位2进制加/减计数器,带异步设置的左/右移位寄存器16cudsrb 16位2进制加/减计数器,带异步清零和设置的左/右移位寄存器4count 4位2进制加/减计数器,同步/异步读取,异步清零8count 8位2进制加/减计数器,同步/异步读取,异步清零7468 双10进制计数器7469 双12进制计数器7490 10/2进制计数器7492 12进制计数器7493 4位2进制计数器74143 4位计数/锁存器,带7位输出驱动器74160 4位10进制计数器,同步读取,异步清零74161 4位2进制加法计数器,同步读取,异步清零74162 4位2进制加法计数器,同步读取,同步清零74163 4位2进制加法计数器,同步读取,同步清零74168 同步4位10进制加/减计数器74169 同步4位2进制加/减计数器74176 可预置10进制计数器74177 可预置2进制计数器74190 4位10进制加/减计数器,异步读取74191 4位2进制加/减计数器,异步读取74192 4位10进制加/减计数器,异步清零74193 4位2进制加/减计数器,异步清零74196 可预置10进制计数器74197 可预置2进制计数器74290 10进制计数器74292 可编程分频器/数字定时器74293 2进制计数器74294 可编程分频器/数字定时器74390 双10进制计数器74393 双4位加法计数器,异步清零74490 双4位10进制计数器74568 10进制加/减计数器,同步读取,同步和异步清零74569 2进制加/减计数器,同步读取,同步和异步清零74590 8位2进制计数器,带三态输出寄存器74592 8位2进制计数器,带输入寄存器74668 同步10进制加/减计数器74669 同步4位2进制加/减计数器74690 同步10进制计数器,带输出寄存器,多重三态输出,异步清零74691 同步2进制计数器,带输出寄存器,多重三态输出,异步清零74693 同步2进制计数器,带输出寄存器,多重三态输出,同步清零74696 同步10进制加/减计数器,带输出寄存器,多重三态输出,异步清零74697 同步2进制加/减计数器,带输出寄存器,多重三态输出,异步清零74698 同步10进制加/减计数器,带输出寄存器,多重三态输出,同步清零74699 同步2进制加/减计数器,带输出寄存器,多重三态输出,同步清零分频器宏模块名称功能描述Freqdiv 2,4,8,16分频器7456 双时钟5,10分频器7457 双时钟5,6,10分频器多路复用器宏模块名称功能描述lpm_mux 参数化多路复用器2lmux 2线-1线多路复用器16lmux 16线-1线多路复用器2X8mux 8位总线的2线-1线多路复用器8lmux 8线-1线多路复用器74151 8线-1线多路复用器74151b 8线-1线多路复用器74153 双4线-1线多路复用器74157 四2线-1线多路复用器74158 带反相输出的四2线-1线多路复用器74251 带三态输出的8线-1线数据选择器74253 带三态输出的双4线-1线数据选择器74257 带三态输出的四2线-1线多路复用器74258 带三态反相输出的四2线-1线多路复用器74298 带存储功能的四2输入多路复用器74352 带反相输出的双4线-1线数据选择器/多路复用器74353 带三态反相输出的双4线-1线数据选择器/多路复用器74354 带三态输出的8线-1线数据选择器/多路复用器74356 带三态输出的8线-1线数据选择器/多路复用器74398 带存储功能的四2输入多路复用器74399 带存储功能的四2输入多路复用器移位寄存器宏模块名称功能描述lpm_clshift参数化组合逻辑移位器lpm_shiftreg参数化移位寄存器barrelst 8位桶形移位器barrlstb 8位桶形移位器7491 串入串出移位寄存器7494 带异步预置和异步清零端的4位移位寄存器7495 4位并行移位寄存器7496 5位移位寄存器7499 带JK串入串出端的4位移位寄存器74164 串入并出移位寄存器74164b 串入并出移位寄存器74165 并行读入8位移位寄存器74165b 并行读入8位移位寄存器74166 带时钟禁止端的8位移位寄存器74178 4位移位寄存器74179 带清零端的4位移位寄存器74194 带并行读入端的4位双向移位寄存器74195 4位并行移位寄存器74198 8位双向移位寄存器74199 8位双向移位寄存器74295 带三态输出端的4位左右移位寄存器74299 8位通用移位/存储寄存器74350 带三态输出端的4位移位寄存器74395 带三态输出端的4位可级联移位寄存器74589 带输入锁存和三态输出端的8位移位寄存器74594 带输入锁存的8位移位寄存器74595 带输入锁存和三态输出端的8位移位寄存器74597 带输入寄存器的8位移位寄存器74671 带强制清零和三态输出端的4位通用移位寄存器/锁存器Quartus II开发软件中的宏模块--运算电路宏模块加法器和减法器宏模块名称功能描述lpm_add_sub 参数化加法器/减法器8fadd 8位全加器8faddb 8位全加器7480 门控全加器7482 2位2进制全加器7483 带快速进位的4位2进制全加器74183 双进位存储全加器74283 带快速进位的4位全加器74385 带清零端的4位加法器/减法器乘法器宏模块名称功能描述lpm_mult 参数化乘法器mult2 2位带符号数乘法器mult24 2X4位并行2进制乘法器mult4 4位并行2进制乘法器mult4b 4位并行2进制乘法器tmult4 4X4位并行2进制乘法器7497 同步6位速率乘法器74261 2位并行2进制乘法器74284 4X4位并行2进制乘法器(输出结果的最高4位)74285 4X4位并行2进制乘法器(输出结果的最低4位)除法器divide和lpm_divide绝对值运算lpm_abs数值比较器宏模块名称功能描述lpm_compare 参数化比较器8mcomp 8位数值比较器8mcompb 8位数值比较器7485 4位数值比较器74518 8位恒等比较器74518b 8位恒等比较器74684 8位数值/恒等比较器74686 8位数值/恒等比较器74688 8位恒等比较器编码器模块名称功能描述74147 10线-3线BCD编码器74148 8线-3线8进制编码器74384 带三态输出的8线-3线优先权编码器译码器宏模块名称功能描述lpm_decode 参数化译码器16dmux 4位2进制-16线译码器16ndmux 4位2进制-16线译码器7442 1线-10线BCD-10进制译码器7443 余3码-10进制译码器7444 余3格雷码-10进制译码器7445 BCD码-10进制译码器7446 BCD码-7段译码器7447 BCD码-7段译码器7448 BCD码-7段译码器7449 BCD码-7段译码器74137 带地址锁存的3线-8线译码器74138 3线-8线译码器74139 双2线-4线译码器74145 BCD码-10进制译码器74154 4线-16线译码器74155 双2线-4线译码器/多路输出选择器74156 双2线-4线译码器/多路输出选择器74246 BCD码-7段译码器74247 BCD码-7段译码器74248 BCD码-7段译码器74445 BCD码-10进制译码器奇偶校验器宏模块名称功能描述74180 9位奇偶产生器/校验器74180b 9位奇偶产生器/校验器74280 9位奇偶产生器/校验器74280b 9位奇偶产生器/校验器LPM库单元列表模块分类宏单元简要说明门单元模块lpm_and 参数化与门lpm_bustri 参数化三态缓冲器lpm_clshift 参数化组合逻辑移位器lpm_constant 参数化常数产生器lpm_decode 参数化译码器lpm_inv 参数化反向器lpm_mux 参数化多路选择器busmux 参数化总线选择器mux 多路选择器lpm_or 参数化或门lpm_xor 参数化异或门算术运算模块lpm_abs 参数化绝对值运算lpm_add_sub 参数化的加/减法器lpm_compare 参数化比较器lpm_counter 参数化计数器lpm_mult 参数化乘法器存储器模块lpm_ff 参数化D触发器lpm_latch 参数化锁存器lpm_ram_dq 输入输出分开的参数化RAMlpm_ram_io 输入输出复用的参数化RAMlpm_rom 参数化ROMlpm_shitreg 参数化移位寄存器csfifo class="style8">参数化先进先出队列csdpram 参数化双口RAM其它功能模块pll 参数化锁相环电路。
QuartusⅡ中宏功能模块的使用-精选文档

西安邮电学院计算机系
QuartusⅡ中宏功能模块的使用
QuartusⅡ软件针对常用的功能,提供了参数化 (Parameterized)的宏功能(megafunctions)模块, 通过调用宏功能模块,可以减少工作量,加快设计的 进程。 用户可以通过向导工具MegaWizard Plug-In Manager 调用宏功能。
2019/3/23
9
QuartusⅡ中宏功能模块的使用
选择读出端是 否加D触发器
图9 西安邮电学院计算机系
2019/3/23
10
QuartusⅡ中宏功能模块的使用
选择存储空间初始 化方式及初始值
图 10 西安邮电学院计算机系
2019/3/23
11
QuartusⅡ中宏功能模块的使用
仿真与综合相关信息
图形输入调用: 新建图形输入文件, 在空白区域双击左键 弹出元件选取对话框 如图,Project目录下 将出现实例化 ram4k 元件供调用
图 13 西安邮电学院计算机系
2019/3/23
14
QuartusⅡ中宏功能模块的使用
也可在程序中嵌入以下语句实现调用:
… ram4k ram4k ( .data ( ), .rdaddress ( ), .rdclock ( ), .wraddress ( ), .wrclock ( ), .wren ( ), .q ( ) ); … 这段程序将实现子程序模块的例化
图1 2019/3/23 西安邮电学院计算机系
图2 3
QuartusⅡ中宏功能模块的使用
选择新建一个宏功能实例,进入下一步(图4)。
图3
2019/3/23
第7章 QuartusⅡ中的宏功能模块及应用

第7章 QuartusⅡ中的宏功能模块及 应用
Altera宏功能模块是复杂或更高级构建模块,可在 QuartusⅡ设计文件中,与逻辑门或触发器等基本单元一起 使用。 QuartusⅡ7.2开发软件提供的各种宏功能模块,如计数 器、乘法器、存储器、寄存器、锁存器等。
8)单击“Finish”按钮,则原理图编辑窗口中出现了 刚才定制的计数器的图形,添加输入输出端口后,如下图 所示。
参数化四位加法计数器原理图
第七章 结束
lpm_counter元件选择窗口
3)弹出宏功能模块定制管理器对话框2: 对lpm_counter元件的各种参数进行选择,定制适合设计需要的 模块,NEXT。
4)弹出定制lpm_counter元件对话框3: 在“How wide should the ‘q’ output bus be?”此处输入“4”位; 并选择“Up only”(为双边沿有效 ),NEXT。
1 宏功能模块与LPM函数
Altera提供的可参数化宏功能模块和LPM函数均为Altera
器件结构做了优化使用宏功能模块能节省时间,不需要用 户对逻辑进行编码,只需调用合适的宏功能模块即可; 使用宏功能模块方便快捷,通过设置参数便可方便地 将宏功能模块伸缩为不同的大小。
使用宏功能模块能优化设计,可参数化宏功能模块和 LPM函数能更有效地对设计文件进行逻辑综合和器件实现。
2 知识产权IP核
IP核是指将一些在数字电路中常用但比较复杂的功 能块,如FIR滤波器,SDRAM控制器,PCI接口等设计 成可修改参数的模块,让其他用户可以直接调用这些模 块。
3 宏功能模块定制管理器
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) 。
FPGAQuartus宏功能模块应用

4.1流水线乘法累加器设计
4.1.3 电路时序仿真与测试
图3-12FP基GA于Qu逻art辑us宏宏功单能模元块的应用设计报告
4.1流水线乘法累加器设计
4.1.3 电路时序仿真与测试
图3-13 基于F专PG用AQ嵌ua入rtu式s宏乘功能法模器块应模用块的设计报告
4.1流水线乘法累加器设计
4.1.2 电路结构与工作原理 1. 调用乘法器
图3F-P5GA设Qu置artu乘s宏法功器能模结块构应用类型
4.1流水线乘法累加器设计
4.1.2 电路结构与工作原理 1. 调用乘法器
图3-6将LPFMPG乘AQ法uar器tus设宏功置能为模块流应水用 线工作方式
4.1流水线乘法累加器设计
4.1流水线乘法累加器设计
4.1.3 电路时序仿真与测试
图3-14 基于逻辑宏FP单GA元Qu的art流us宏水功线能模乘块法应用累加器时序分析报告
4.1流水线乘法累加器设计
4.1.3 电路时序仿真与测试
图3-15基于专用嵌入F式PG乘AQ法uar器tus模宏功块能的模块流应水用线乘法累加器时序分析报告
4.3 在系统存储器数据读写编辑器应用
1. 锁定引脚
图3-29 引脚锁定
FPGAQuartus宏功能模块应用
4.3 在系统存储器数据读写编辑器应用
2. 打开在系统存储单元编辑窗
图3-30 In-System MemFPGoArQyuaCrtuosn宏功te能n模t块E应d用itor编辑窗中硬件通信口设置
图FPG3A-Q2ua5rtu增s宏加功能异模步块应清用0控制
4.2 逻辑数据采样电路设计
原理图与宏功能模块设计

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宏功能模块
选择芯片和设置参考时钟
Quartus中宏功能模块的使用

图 10
2020/1/28
西安邮电学院计算机系
10
QuartusⅡ中宏功能模块的使用
2020/1/28
图 11 西安邮电学院计算机系
仿真与综合相关信息 11
QuartusⅡ中宏功能模块的使用
2020/1/28
图 12 西安邮电学院计算机系
选取输出的文件 .bsf 文件: 图形编辑器中使用的宏 功能模块符号 .v文件: Verilog HDL实例化的 宏功能模块包装文件
2020/1/28
西安邮电学院计算机系
15
完
2020/1/28
西安邮电学院计算机系
16
选择新建一个宏功能实例,进入下一步(图4)。
图3
2020/1/28
西安邮电学院计算机系
3
QuartusⅡ中宏功能模块的使用
这里列举了可供调用的宏功能模块
数学运算功能类,包括代码纠正、 浮点加/减/乘法器、计数器、平方根 等功能模块。
逻辑门类功能类,包括与/或/非门 常数发生器、反相器模块等。
I/O接口功能类,包括数据收发器 锁相环、I/O缓冲模块等。
该向导工具帮助用户建立或修改包含自定义宏功能模 块变量的设计文件,这些设计文件可以在用户的设计 中进行实例化。
2020/1/28
西安邮电学院计算机系
1
QuartusⅡ中宏功能模块的使用
在QuartusⅡ软件中使用MegaWizard Plug-In Manager对宏功能模块进行实例 化的步骤如下:
特别是针对一些与Altera器件底层结构相关的特性,必须通过Megafunction实现,例 如一些存储器模块(DPRAM、SPRAM、FIFO、CAM等),DSP模块,LVDS驱动器,PLL,高 速串行收发器(SERDERS),DDR输入/输出(DDIO)等。另外一些诸如乘法器、计数器、 加法器、滤波器等电路虽然也可以直接用代码描述,然后用通用逻辑资源实现,但是 这种描述方法不但费时费力,在速度和面积上与Megafunction的实现结果仍然有较大 的差距。
Quartus提供的宏模块

Quartus II开发软件中的宏模块一、RAM电路宏模块RAM宏模块宏模块名称功能描述csdpram 参数化循环共享双端口RAMlpm_ram_dp 参数化双端口RAMlpm_ram_dq 参数化RAM,输入/输出端分离lpm_ram_io 参数化RAM,输入/输出端公用一个端口FIFO宏模块宏模块名称功能描述csfifo 参数化循环共享FIFOdcfifo 参数化双时钟FIFOscfifo 参数化单时钟FIFOlpm_fifo 参数化单时钟FIFOlpm_fifo_dc 参数化双时钟FIFOROM的设计lpm_rom二、时序电路宏模块触发器宏模块名称功能描述lpm_ff 参数化D或T触发器lpm_dff 参数化D触发器和移位寄存器lpm_tff 参数化T触发器enadff 带使能端的D触发器expdff 用扩展电路实现的D触发器7470 带预置和清零端的与门JK触发器7471 带预置端的JK触发器7472 带预置和清零端的与门JK触发器7473 带清零端的双JK触发器7474 带异步预置和异步清零端的双D触发器7476 带异步预置和异步清零端的双JK触发器7478 带异步预置、公共清零和公共时钟端的双JK触发器74107 带清零端的双JK触发器74109 带预置和清零端的双JK触发器74112 带预置和清零端的双JK时钟下降沿触发器74113 带预置端的双JK时钟下降沿触发器74114 带异步预置、公共清零和公共时钟端的双JK时钟下降沿触发器74171 带清零端的4D触发器74172 带三态输出的多端口寄存器74173 4位D型寄存器74174 带公共清零端的16进制D触发器74174b 带公共清零端的16进制D触发器74175 带公共时钟和清零端的4D触发器74273 带异步清零端的8进制触发器74273b 带异步清零端的8进制触发器74276 带公共预置和清零端的4JK触发器寄存器74374 带三态输出和输出使能端的8进制D触发器74374b 带三态输出和输出使能端的8进制D触发器74376 带公共时钟和公共清零端4JK触发器74377 带使能端的8进制D触发器74377b 带使能端的8进制D触发器74378 带使能端的16进制D触发器74379 带使能端的4D触发器74396 8进制存储寄存器74548 带三态输出的8位两级流水线寄存器74670 带三态输出的4位寄存器74821 带三态输出的10位总线接口触发器74821b 带三态输出的10位D触发器74822 带三态反相输出的10位总线接口触发器74822b 带三态反相输出的10位D触发器74823 带三态输出的9位总线接口触发器74823b 带三态输出的9位D触发器74824 带三态反相输出的9位总线接口触发器74824b 带三态反相输出的9位D触发器74825 带三态反相输出的8位总线接口触发器74825b 带三态输出的8进制D触发器74826 带三态反相输出的9位总线接口触发器74826b 带三态反相输出的8进制D触发器锁存器宏模块名称功能描述lpm_latch 参数化锁存器explatch 用扩展电路实现的锁存器Inpltch 用扩展电路实现的输入锁存器nandltch 用扩展电路实现的SR(非)与非门锁存器norltch 用扩展电路实现的SR或非门锁存器7475 4位双稳态锁存器7477 4位双稳态锁存器74116 带清零端的双4位锁存器74259 带清零端、可设定地址的锁存器74279 4路SR(非)锁存器74373 带三态输出的8进制透明D锁存器74373b 带三态输出的8进制透明D锁存器74375 4位双稳态锁存器74549 8位二级流水线锁存器74604 带三态输出的8进制2输入多路锁存器74841 带三态输出的10位总线接口D锁存器74841b 带三态输出的10位总线接口D锁存器74842 带三态输出的10位总线接口D锁存器74842b 带三态输出的10位总线接口D反相锁存器74843 带三态输出的9位总线接口D锁存器74844 带三态输出的9位总线接口D反相锁存器74845 带三态输出的8位总线接口D锁存器74846 带三态输出的8位总线接口D反相锁存器74990 8位透明读回锁存器计数器宏模块名称功能描述lpm_conter 参数化计数器(仅限FLEX系列器件)gray4 格雷码计数器unicnt 通用4位加/减计数器,可异步设置、读取、清零和级联的左/右移位寄存器16cudslr 16位2进制加/减计数器,带异步设置的左/右移位寄存器16cudsrb 16位2进制加/减计数器,带异步清零和设置的左/右移位寄存器4count 4位2进制加/减计数器,同步/异步读取,异步清零8count 8位2进制加/减计数器,同步/异步读取,异步清零7468 双10进制计数器7469 双12进制计数器7490 10/2进制计数器7492 12进制计数器7493 4位2进制计数器74143 4位计数/锁存器,带7位输出驱动器74160 4位10进制计数器,同步读取,异步清零74161 4位2进制加法计数器,同步读取,异步清零74162 4位2进制加法计数器,同步读取,同步清零74163 4位2进制加法计数器,同步读取,同步清零74168 同步4位10进制加/减计数器74169 同步4位2进制加/减计数器74176 可预置10进制计数器74177 可预置2进制计数器74190 4位10进制加/减计数器,异步读取74191 4位2进制加/减计数器,异步读取74192 4位10进制加/减计数器,异步清零74193 4位2进制加/减计数器,异步清零74196 可预置10进制计数器74197 可预置2进制计数器74290 10进制计数器74292 可编程分频器/数字定时器74293 2进制计数器74294 可编程分频器/数字定时器74390 双10进制计数器74393 双4位加法计数器,异步清零74490 双4位10进制计数器74568 10进制加/减计数器,同步读取,同步和异步清零74569 2进制加/减计数器,同步读取,同步和异步清零74590 8位2进制计数器,带三态输出寄存器74592 8位2进制计数器,带输入寄存器74668 同步10进制加/减计数器74669 同步4位2进制加/减计数器74690 同步10进制计数器,带输出寄存器,多重三态输出,异步清零74691 同步2进制计数器,带输出寄存器,多重三态输出,异步清零74693 同步2进制计数器,带输出寄存器,多重三态输出,同步清零74696 同步10进制加/减计数器,带输出寄存器,多重三态输出,异步清零74697 同步2进制加/减计数器,带输出寄存器,多重三态输出,异步清零74698 同步10进制加/减计数器,带输出寄存器,多重三态输出,同步清零74699 同步2进制加/减计数器,带输出寄存器,多重三态输出,同步清零分频器宏模块名称功能描述Freqdiv 2,4,8,16分频器7456 双时钟5,10分频器7457 双时钟5,6,10分频器多路复用器宏模块名称功能描述lpm_mux 参数化多路复用器2lmux 2线-1线多路复用器16lmux 16线-1线多路复用器2X8mux 8位总线的2线-1线多路复用器8lmux 8线-1线多路复用器74151 8线-1线多路复用器74151b 8线-1线多路复用器74153 双4线-1线多路复用器74157 四2线-1线多路复用器74158 带反相输出的四2线-1线多路复用器74251 带三态输出的8线-1线数据选择器74253 带三态输出的双4线-1线数据选择器74257 带三态输出的四2线-1线多路复用器74258 带三态反相输出的四2线-1线多路复用器74298 带存储功能的四2输入多路复用器74352 带反相输出的双4线-1线数据选择器/多路复用器74353 带三态反相输出的双4线-1线数据选择器/多路复用器74354 带三态输出的8线-1线数据选择器/多路复用器74356 带三态输出的8线-1线数据选择器/多路复用器74398 带存储功能的四2输入多路复用器74399 带存储功能的四2输入多路复用器移位寄存器宏模块名称功能描述lpm_clshift 参数化组合逻辑移位器lpm_shiftreg 参数化移位寄存器barrelst 8位桶形移位器barrlstb 8位桶形移位器7491 串入串出移位寄存器7494 带异步预置和异步清零端的4位移位寄存器7495 4位并行移位寄存器7496 5位移位寄存器7499 带JK串入串出端的4位移位寄存器74164 串入并出移位寄存器74164b 串入并出移位寄存器74165 并行读入8位移位寄存器74165b 并行读入8位移位寄存器74166 带时钟禁止端的8位移位寄存器74178 4位移位寄存器74179 带清零端的4位移位寄存器74194 带并行读入端的4位双向移位寄存器74195 4位并行移位寄存器74198 8位双向移位寄存器74199 8位双向移位寄存器74295 带三态输出端的4位左右移位寄存器74299 8位通用移位/存储寄存器74350 带三态输出端的4位移位寄存器74395 带三态输出端的4位可级联移位寄存器74589 带输入锁存和三态输出端的8位移位寄存器74594 带输入锁存的8位移位寄存器74595 带输入锁存和三态输出端的8位移位寄存器74597 带输入寄存器的8位移位寄存器74671 带强制清零和三态输出端的4位通用移位寄存器/锁存器三、运算电路宏模块加法器和减法器宏模块名称功能描述lpm_add_sub 参数化加法器/减法器8fadd 8位全加器8faddb 8位全加器7480 门控全加器7482 2位2进制全加器7483 带快速进位的4位2进制全加器74183 双进位存储全加器74283 带快速进位的4位全加器74385 带清零端的4位加法器/减法器乘法器宏模块名称功能描述lpm_mult 参数化乘法器mult2 2位带符号数乘法器mult24 2X4位并行2进制乘法器mult4 4位并行2进制乘法器mult4b 4位并行2进制乘法器tmult4 4X4位并行2进制乘法器7497 同步6位速率乘法器74261 2位并行2进制乘法器74284 4X4位并行2进制乘法器(输出结果的最高4位)74285 4X4位并行2进制乘法器(输出结果的最低4位)除法器divide和lpm_divide绝对值运算lpm_abs数值比较器宏模块名称功能描述lpm_compare 参数化比较器8mcomp 8位数值比较器8mcompb 8位数值比较器7485 4位数值比较器74518 8位恒等比较器74518b 8位恒等比较器74684 8位数值/恒等比较器74686 8位数值/恒等比较器74688 8位恒等比较器编码器模块名称功能描述74147 10线-3线BCD编码器74148 8线-3线8进制编码器74384 带三态输出的8线-3线优先权编码器译码器宏模块名称功能描述lpm_decode 参数化译码器16dmux 4位2进制-16线译码器16ndmux 4位2进制-16线译码器7442 1线-10线BCD-10进制译码器7443 余3码-10进制译码器7444 余3格雷码-10进制译码器7445 BCD码-10进制译码器7446 BCD码-7段译码器7447 BCD码-7段译码器7448 BCD码-7段译码器7449 BCD码-7段译码器74137 带地址锁存的3线-8线译码器74138 3线-8线译码器74139 双2线-4线译码器74145 BCD码-10进制译码器74154 4线-16线译码器74155 双2线-4线译码器/多路输出选择器74156 双2线-4线译码器/多路输出选择器74246 BCD码-7段译码器74247 BCD码-7段译码器74248 BCD码-7段译码器74445 BCD码-10进制译码器奇偶校验器宏模块名称功能描述74180 9位奇偶产生器/校验器74180b 9位奇偶产生器/校验器74280 9位奇偶产生器/校验器74280b 9位奇偶产生器/校验器。
quartus中调用宏模块中文介绍

quartus -->tool -->MegaWizard Plug-In Manager 就可以进入了置于参数设置要看是什么模块了,你根据自己的需求选择就是了quarts 最后会自动生成一个你命名的这个模块文件verilog语言就是"你为这个模块起的名字.v"你可以在工程里面找到它打开看看你只需在你的工程里面例化它就可以了就像你例化自定义模块一样。
Gate FunctionLPM_and : 可编程的按位做与运算的与门LPM_bustri :可编程的三态门(可单向,也可双向)enabletr(高电平有效)使能tridata => resultenabledt(高电平有效)使能data => tridataLPM_clshift : 可编程的组合逻辑移位器。
方向和距离是可以编程的。
LPM_constant: 可编程常数生成器LPM_decode : 可编程译码器LPM_inv : 可编程反向器(位数可控)LPM_mux : 可编程多路选择器(sel选择哪路输出)busmus : 可编程2路选择器(LPM_mux的特殊情况)mux : 可编程多路选择器,只有一位输出结果(LPM_mux的宽度为1) LPM_or : 可编程的按位做或运算的或门LPM_xor : 可编程的按位做异或运算的异或门Arithmetic FuntionsLMP_abs : 求绝对值(如果data = 1000000,overflow=1)LPM_add_sub : 可编程加减法器(可以由管脚决定)LPM_compare : 可编程的比较器(可以设定各种输出)LPM_counter : 可编程计数器LPM_mult : 可编程乘法器LPM_divide : 可编程除法器divide : 可编程除法器(与LPM_divide没有什么区别)Parallel_add : 可编程多路并行加法器altmult_accum : 可编程乘加器altaccumulate : 可编程累加器altmemmult :Storage FunctionsLPM_ff : 可编程的触发器(D触发器或T触发器)LPM_latch : 可编程的锁存器(gate=0锁存)LPM_ram_dq : 可编程的同步或异步单端口RAM(两套地址线).LPM_ram_dp : 可编程的简单双端口和真正双端口RAM().LPM_ram_io : 可编程的RAM(地址线一套,数据线为双向的IO)LPM_rom : 可编程的ROMLPM_shiftreg : 可编程的移位寄存器Custom Parameterized Functions csfifo : 可编程的FIFOcsdpram : 可编程的双口RAM。
EDA第七章_宏功能模块与IP应用

【例7-2】用其他编辑器(如记事本)产生.mif格式文件 WIDTH = 8; DEPTH = 64; ADDRESS_RADIX = HEX; 正弦波数据可以使用C语言程序来生成 DATA_RADIX = HEX; #include <stdio.h> CONTENT BEGIN #include “math.h” 0 : FF; main() 1 : FE; { 2 : FC; int i; 3 : F9; float s; 4 : F5; for( i=0; i<64; i++ ) …(数据略去) { s = sin(atan(1)*8*i/64); 3D : FC; printf( "%x : %x;\n", i, (int)( (s+1)/2*255) 3E : FE; ); 3F : FF; } END; } 把上述程序编译成可执行文件romgen.exe, 可在DOS命令行下执行: romgen > sin_rom.mif;
(主要用于不支持该Megafunction的第三方EDA工具例化和调用,避免出 现找不到源文件的情况(当然,也就不能实现其功能))
6. 包含仿真波形的html文件:根据用户的配置信息得到的仿真波形,
可供设计者初步评估该定制Megafunction的参数配置是否符合需要。
7.1.3 对Megafunction进行例化
其余宏功能模块在Quartus II上只有其网络链接 使用资料:Help Megafunctions/LPM 利用Megafunction进行项目设计的步骤:
1.利用MegaWizard Plug-In Manager(MegaWizard 插件管理器)建立或修 改包含自定义宏功能模块的设计文件 2.在顶层设计文件中对这些文件进行例化。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Quartus II开发软件中的宏模块一、RAM电路宏模块RAM宏模块宏模块名称功能描述csdpram 参数化循环共享双端口RAMlpm_ram_dp 参数化双端口RAMlpm_ram_dq 参数化RAM,输入/输出端分离lpm_ram_io 参数化RAM,输入/输出端公用一个端口FIFO宏模块宏模块名称功能描述csfifo 参数化循环共享FIFOdcfifo 参数化双时钟FIFOscfifo 参数化单时钟FIFOlpm_fifo 参数化单时钟FIFOlpm_fifo_dc 参数化双时钟FIFOROM的设计lpm_rom二、时序电路宏模块触发器宏模块名称功能描述lpm_ff 参数化D或T触发器lpm_dff 参数化D触发器和移位寄存器lpm_tff 参数化T触发器enadff 带使能端的D触发器expdff 用扩展电路实现的D触发器7470 带预置和清零端的与门JK触发器7471 带预置端的JK触发器7472 带预置和清零端的与门JK触发器7473 带清零端的双JK触发器7474 带异步预置和异步清零端的双D触发器7476 带异步预置和异步清零端的双JK触发器7478 带异步预置、公共清零和公共时钟端的双JK触发器74107 带清零端的双JK触发器74109 带预置和清零端的双JK触发器74112 带预置和清零端的双JK时钟下降沿触发器74113 带预置端的双JK时钟下降沿触发器74114 带异步预置、公共清零和公共时钟端的双JK时钟下降沿触发器74171 带清零端的4D触发器74172 带三态输出的多端口寄存器74173 4位D型寄存器74174 带公共清零端的16进制D触发器74174b 带公共清零端的16进制D触发器74175 带公共时钟和清零端的4D触发器74273 带异步清零端的8进制触发器74273b 带异步清零端的8进制触发器74276 带公共预置和清零端的4JK触发器寄存器74374 带三态输出和输出使能端的8进制D触发器74374b 带三态输出和输出使能端的8进制D触发器74376 带公共时钟和公共清零端4JK触发器74377 带使能端的8进制D触发器74377b 带使能端的8进制D触发器74378 带使能端的16进制D触发器74379 带使能端的4D触发器74396 8进制存储寄存器74548 带三态输出的8位两级流水线寄存器74670 带三态输出的4位寄存器74821 带三态输出的10位总线接口触发器74821b 带三态输出的10位D触发器74822 带三态反相输出的10位总线接口触发器74822b 带三态反相输出的10位D触发器74823 带三态输出的9位总线接口触发器74823b 带三态输出的9位D触发器74824 带三态反相输出的9位总线接口触发器74824b 带三态反相输出的9位D触发器74825 带三态反相输出的8位总线接口触发器74825b 带三态输出的8进制D触发器74826 带三态反相输出的9位总线接口触发器74826b 带三态反相输出的8进制D触发器锁存器宏模块名称功能描述lpm_latch 参数化锁存器explatch 用扩展电路实现的锁存器Inpltch 用扩展电路实现的输入锁存器nandltch 用扩展电路实现的SR(非)与非门锁存器norltch 用扩展电路实现的SR或非门锁存器7475 4位双稳态锁存器7477 4位双稳态锁存器74116 带清零端的双4位锁存器74259 带清零端、可设定地址的锁存器74279 4路SR(非)锁存器74373 带三态输出的8进制透明D锁存器74373b 带三态输出的8进制透明D锁存器74375 4位双稳态锁存器74549 8位二级流水线锁存器74604 带三态输出的8进制2输入多路锁存器74841 带三态输出的10位总线接口D锁存器74841b 带三态输出的10位总线接口D锁存器74842 带三态输出的10位总线接口D锁存器74842b 带三态输出的10位总线接口D反相锁存器74843 带三态输出的9位总线接口D锁存器74844 带三态输出的9位总线接口D反相锁存器74845 带三态输出的8位总线接口D锁存器74846 带三态输出的8位总线接口D反相锁存器74990 8位透明读回锁存器计数器宏模块名称功能描述lpm_conter 参数化计数器(仅限FLEX系列器件)gray4 格雷码计数器unicnt 通用4位加/减计数器,可异步设置、读取、清零和级联的左/右移位寄存器16cudslr 16位2进制加/减计数器,带异步设置的左/右移位寄存器16cudsrb 16位2进制加/减计数器,带异步清零和设置的左/右移位寄存器4count 4位2进制加/减计数器,同步/异步读取,异步清零8count 8位2进制加/减计数器,同步/异步读取,异步清零7468 双10进制计数器7469 双12进制计数器7490 10/2进制计数器7492 12进制计数器7493 4位2进制计数器74143 4位计数/锁存器,带7位输出驱动器74160 4位10进制计数器,同步读取,异步清零74161 4位2进制加法计数器,同步读取,异步清零74162 4位2进制加法计数器,同步读取,同步清零74163 4位2进制加法计数器,同步读取,同步清零74168 同步4位10进制加/减计数器74169 同步4位2进制加/减计数器74176 可预置10进制计数器74177 可预置2进制计数器74190 4位10进制加/减计数器,异步读取74191 4位2进制加/减计数器,异步读取74192 4位10进制加/减计数器,异步清零74193 4位2进制加/减计数器,异步清零74196 可预置10进制计数器74197 可预置2进制计数器74290 10进制计数器74292 可编程分频器/数字定时器74293 2进制计数器74294 可编程分频器/数字定时器74390 双10进制计数器74393 双4位加法计数器,异步清零74490 双4位10进制计数器74568 10进制加/减计数器,同步读取,同步和异步清零74569 2进制加/减计数器,同步读取,同步和异步清零74590 8位2进制计数器,带三态输出寄存器74592 8位2进制计数器,带输入寄存器74668 同步10进制加/减计数器74669 同步4位2进制加/减计数器74690 同步10进制计数器,带输出寄存器,多重三态输出,异步清零74691 同步2进制计数器,带输出寄存器,多重三态输出,异步清零74693 同步2进制计数器,带输出寄存器,多重三态输出,同步清零74696 同步10进制加/减计数器,带输出寄存器,多重三态输出,异步清零74697 同步2进制加/减计数器,带输出寄存器,多重三态输出,异步清零74698 同步10进制加/减计数器,带输出寄存器,多重三态输出,同步清零74699 同步2进制加/减计数器,带输出寄存器,多重三态输出,同步清零分频器宏模块名称功能描述Freqdiv 2,4,8,16分频器7456 双时钟5,10分频器7457 双时钟5,6,10分频器多路复用器宏模块名称功能描述lpm_mux 参数化多路复用器2lmux 2线-1线多路复用器16lmux 16线-1线多路复用器2X8mux 8位总线的2线-1线多路复用器8lmux 8线-1线多路复用器74151 8线-1线多路复用器74151b 8线-1线多路复用器74153 双4线-1线多路复用器74157 四2线-1线多路复用器74158 带反相输出的四2线-1线多路复用器74251 带三态输出的8线-1线数据选择器74253 带三态输出的双4线-1线数据选择器74257 带三态输出的四2线-1线多路复用器74258 带三态反相输出的四2线-1线多路复用器74298 带存储功能的四2输入多路复用器74352 带反相输出的双4线-1线数据选择器/多路复用器74353 带三态反相输出的双4线-1线数据选择器/多路复用器74354 带三态输出的8线-1线数据选择器/多路复用器74356 带三态输出的8线-1线数据选择器/多路复用器74398 带存储功能的四2输入多路复用器74399 带存储功能的四2输入多路复用器移位寄存器宏模块名称功能描述lpm_clshift 参数化组合逻辑移位器lpm_shiftreg 参数化移位寄存器barrelst 8位桶形移位器barrlstb 8位桶形移位器7491 串入串出移位寄存器7494 带异步预置和异步清零端的4位移位寄存器7495 4位并行移位寄存器7496 5位移位寄存器7499 带JK串入串出端的4位移位寄存器74164 串入并出移位寄存器74164b 串入并出移位寄存器74165 并行读入8位移位寄存器74165b 并行读入8位移位寄存器74166 带时钟禁止端的8位移位寄存器74178 4位移位寄存器74179 带清零端的4位移位寄存器74194 带并行读入端的4位双向移位寄存器74195 4位并行移位寄存器74198 8位双向移位寄存器74199 8位双向移位寄存器74295 带三态输出端的4位左右移位寄存器74299 8位通用移位/存储寄存器74350 带三态输出端的4位移位寄存器74395 带三态输出端的4位可级联移位寄存器74589 带输入锁存和三态输出端的8位移位寄存器74594 带输入锁存的8位移位寄存器74595 带输入锁存和三态输出端的8位移位寄存器74597 带输入寄存器的8位移位寄存器74671 带强制清零和三态输出端的4位通用移位寄存器/锁存器三、运算电路宏模块加法器和减法器宏模块名称功能描述lpm_add_sub 参数化加法器/减法器8fadd 8位全加器8faddb 8位全加器7480 门控全加器7482 2位2进制全加器7483 带快速进位的4位2进制全加器74183 双进位存储全加器74283 带快速进位的4位全加器74385 带清零端的4位加法器/减法器乘法器宏模块名称功能描述lpm_mult 参数化乘法器mult2 2位带符号数乘法器mult24 2X4位并行2进制乘法器mult4 4位并行2进制乘法器mult4b 4位并行2进制乘法器tmult4 4X4位并行2进制乘法器7497 同步6位速率乘法器74261 2位并行2进制乘法器74284 4X4位并行2进制乘法器(输出结果的最高4位)74285 4X4位并行2进制乘法器(输出结果的最低4位)除法器divide和lpm_divide绝对值运算lpm_abs数值比较器宏模块名称功能描述lpm_compare 参数化比较器8mcomp 8位数值比较器8mcompb 8位数值比较器7485 4位数值比较器74518 8位恒等比较器74518b 8位恒等比较器74684 8位数值/恒等比较器74686 8位数值/恒等比较器74688 8位恒等比较器编码器模块名称功能描述74147 10线-3线BCD编码器74148 8线-3线8进制编码器74384 带三态输出的8线-3线优先权编码器译码器宏模块名称功能描述lpm_decode 参数化译码器16dmux 4位2进制-16线译码器16ndmux 4位2进制-16线译码器7442 1线-10线BCD-10进制译码器7443 余3码-10进制译码器7444 余3格雷码-10进制译码器7445 BCD码-10进制译码器7446 BCD码-7段译码器7447 BCD码-7段译码器7448 BCD码-7段译码器7449 BCD码-7段译码器74137 带地址锁存的3线-8线译码器74138 3线-8线译码器74139 双2线-4线译码器74145 BCD码-10进制译码器74154 4线-16线译码器74155 双2线-4线译码器/多路输出选择器74156 双2线-4线译码器/多路输出选择器74246 BCD码-7段译码器74247 BCD码-7段译码器74248 BCD码-7段译码器74445 BCD码-10进制译码器奇偶校验器宏模块名称功能描述74180 9位奇偶产生器/校验器74180b 9位奇偶产生器/校验器74280 9位奇偶产生器/校验器74280b 9位奇偶产生器/校验器。