当前位置:文档之家› 第6章 LPM宏模块应用

第6章 LPM宏模块应用

6.1 LPM计数器模块调用6.1.1 计数器模块文本的调用与参数设置

Quartus提供的宏模块

Quartus II开发软件中的宏模块 一、RAM电路宏模块 RAM宏模块 宏模块名称功能描述 csdpram 参数化循环共享双端口RAM lpm_ram_dp 参数化双端口RAM lpm_ram_dq 参数化RAM,输入/输出端分离 lpm_ram_io 参数化RAM,输入/输出端公用一个端口 FIFO宏模块 宏模块名称功能描述 csfifo 参数化循环共享FIFO dcfifo 参数化双时钟FIFO scfifo 参数化单时钟FIFO lpm_fifo 参数化单时钟FIFO lpm_fifo_dc 参数化双时钟FIFO ROM的设计 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型寄存器

5.宏模块(macro)

macro(宏)相当于定义一个配置模板,可以应用到接口或全局。 【配置】 Catalyst 3550交换机: 示例1: SW1(config)#macro name IF_CONF 定义名为IF_CONF的宏 Enter macro commands one per line. End with the character '@'. 进入宏定义模式,输入@结束 switchport mode access switchport access vlan 10 spanning-tree portfast @ SW1(config)#int f0/1 SW1(config-if)#macro apply IF_CONF 在接口下应用名为IF_CONF的宏 SW1(config-if)#end 查看接口F0/1的配置如下: SW1#show run int f0/1 Building configuration... Current configuration : 135 bytes ! interface FastEthernet0/1 switchport access vlan 10 switchport mode access macro description IF_CONF spanning-tree portfast end 示例2: Switch(config)#define interface-range ACCESS f0/1-10 定义名为ACCESS的interface-range(等同于命令interface range f0/1-10) Switch(config)#interface range macro ACCESS Switch(config-if-range)#switchport mode accsee Switch(config-if-range)#switchport access vlan 10 Catalyst 3750交换机: 示例3:Auto Smartports (自动的智能端口)--交换机能够根据端口检测到的对端设备,自动完成相对应的配置。 本例中交换机的f1/0/23口和f1/0/24口对端是交换机设备, 步骤1:在没有应用auto smartport前,这2个端口的配置: interface FastEthernet1/0/23 end interface FastEthernet1/0/24 end 步骤2:在全局应用对端设备是交换机时的auto smartport。 Switch(config)#macro auto global processing Switch(config)#macro auto device switch f1/0/23和f1/0/24发现对端设备为交换机,auto smartport特性开始生效。 *Mar 1 00:07:45.173: %SYS-5-CONFIG_I: Configured from console by vty0 *Mar 1 00:07:45.181: %AUTOSMARTPORT-5-INSERT: Device Switch detected on interface FastEthernet1/0/24, executed CISCO_SWITCH_EVENT Switch# *Mar 1 00:07:48.679: %SYS-5-CONFIG_I: Configured from console by vty0

Quartus II中的宏模块

宏模块名称功能描述 csdpram 参数化循环共享双端口RAM lpm_ram_dp 参数化双端口RAM lpm_ram_dq 参数化RAM,输入/输出端分离 lpm_ram_io 参数化RAM,输入/输出端公用一个端口 FIFO宏模块 宏模块名称功能描述 csfifo 参数化循环共享FIFO dcfifo 参数化双时钟FIFO scfifo 参数化单时钟FIFO lpm_fifo 参数化单时钟FIFO lpm_fifo_dc 参数化双时钟FIFO ROM的设计 lpm_rom Quartus 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进制触发器

实验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(时钟至输出延时)

quartus宏功能模块介绍

----------------------------------------------------- RAM宏模块 宏模块名称功能描述 csdpram 参数化循环共享双端口RAM lpm_ram_dp 参数化双端口RAM lpm_ram_dq 参数化RAM,输入/输出端分离 lpm_ram_io 参数化RAM,输入/输出端公用一个端口 FIFO宏模块 宏模块名称功能描述 csfifo 参数化循环共享FIFO dcfifo 参数化双时钟FIFO scfifo 参数化单时钟FIFO lpm_fifo 参数化单时钟FIFO lpm_fifo_dc 参数化双时钟FIFO ROM的设计 lpm_rom Quartus 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进制触发器

VBA中四种自动运行的宏以及模块的含义

在Excel的“标准模块”中可以创建4种自动运行的宏,它们分别是Auto_Open(打开工作簿时自动运行), Auto_Close, Auto_Activate, Auto_Deactivate。这些自动运行的宏是为了与Excel5和95兼容而保留下来的。现在可以使用工作簿的 Open,Close,Activate,Deactivate 事件来代替它们。 那么,什么是“标准模块”呢?其实就是我们在VBE中插入的那个模块,微软称它为“标准模块”。而其余的三类:Microsoft Excel对象,窗体,类模块也属于模块,他们之间的关系可以见这个帖子:https://www.doczj.com/doc/3912939632.html,/thread-170289-1-1.html (一)什么是模块,VBA都包含什么模块呢? 首先我们来看微软VBA帮助中的三个定义: 模块:一组声明集合,其后为过程 声明:不可执行的代码,它命名一常数、变量或过程,并且指定其特性,比如数据类型。对于DLL procedures,声明指定名称、库和参数。 过程:命名的语句序列,可作为单元来执行。例如,Function、Property和 Sub 都是过程类型。总是在模块级别定义过程的名称,所有可执行的代码必须包含在过程内,一过程不能套在其它过程中。 通过这三个定义我们了解到了什么信息,我们平常写的代码是什么东西,对,就是声明和过程,也就是在Sheet1,Sheet2,Sheet3,ThisWorkbook,UserForm1,模块1,类1这些东西里面编写的代码,所以我们可以得出结论,Sheet1,Sheet2,Sheet3,ThisWorkbook,UserForm1,模块1,类1都是模块。

宏与模块实验要求

宏与模块的设计 第1题 【操作要求】 打开“05宏与模块实验要求及素材\1”文件夹,在此文件夹下有一个数据库文件samp5-1. accdb,其中已经设计好一个“库存情况”窗体和一个“产品定额储备”表,请按照如下要求完成操作: (1)创建一个宏,使其能打开“产品定额储备”表,将所建宏命名为“打开”; (2)对“库存情况”窗体进行如下设置。将窗体页脚高度设置为1. 616cm,在距窗体页脚左边为5. 5cm、距上边为0.4cm处放置一个命令按钮,命令按钮的宽度为2 cm,功能是单击“打开”按钮时运行宏,所运行的宏名为“打开”,按钮上显示文本“打开”,名称为“命令1”。 第2题 【操作要求】 打开“05宏与模块实验要求及素材\2”文件夹,在此文件夹下存在一个数据库文件samp5-2. accdb,其中有一个“库存情况”窗体和一个“产品定额储备”表及“产品定额储备”查询,请按照以下要求完成操作: (1)创建一个宏,使其能删除“产品定额储备”查询,将所建宏命名为“删除”; (2)对“库存情况”窗体进行如下设置:将窗体页脚高度设置为1. 8cm,在距窗体页脚左边5.3cm、距上边0.45cm处放置一个命令按钮,命令按钮的宽度为2cm,功能是单击“删除”按钮时运行宏,所运行的宏名为“删除”,按钮上显示文本“删除”,名称为“命令1”。 提示:不使用“命令按钮向导”创建命令按钮。 第4题 【操作要求】 打开“05宏与模块实验要求及素材\4”文件夹,在此文件夹下存在一个数据库文件samp5-4. accdb,其中已经设计好表对象“产品”、“供应商”,查询对象“按供应商查询”和宏对象“打开产品表”、“运行查询”、“关闭窗口”。试按以下要求完成设计。 创建一个名为fMenu的窗体,要求如下: (1)对窗体进行如下设置,在距窗体左边1cm,距上边0. 6 cm处依次水平放置三个命令按钮“显示修改产品表”(名为bt1)、“查询”(名为bt2)和“退出”(名为bt3),命令按钮的宽度为2cm,高度为1. 5cm,每个命令按钮相隔1cm; (2)设置窗体“标题”为“主菜单”; (3)当单击“显示修改产品表”命令按钮时,运行宏“打开产品表”,就可以浏览“产品”表; (4)当单击“查询”命令按钮时,运行宏“运行查询”,即可启动查询“按供应商查询”; (5)当单击“退出”命令按钮时,运行宏“关闭窗口”,关闭fMenu窗体,返回到数据库窗口下。 第5题 【操作要求】 打开“05宏与模块实验要求及素材\5”文件夹,在此文件夹下存在一个数据库文件

quartus宏功能模块

RAM宏模块 宏模块名称功能描述 csdpram 参数化循环共享双端口RAM lpm_ram_dp 参数化双端口RAM lpm_ram_dq 参数化RAM,输入/输出端分离 lpm_ram_io 参数化RAM,输入/输出端公用一个端口 FIFO宏模块 宏模块名称功能描述 csfifo 参数化循环共享FIFO dcfifo 参数化双时钟FIFO scfifo 参数化单时钟FIFO lpm_fifo 参数化单时钟FIFO lpm_fifo_dc 参数化双时钟FIFO ROM的设计 lpm_rom Quartus 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触发器

FPGA中两种对宏功能模块例化的方法

两种对宏功能模块例化的方法 ——Block Editor和MegaWizard Plug-In Manager 最近在用FPGA做历年的电赛的题目。由于我们第一个实验题目为“简易逻辑分析仪”,其中涉及到对波形采样的存储要用到ROM,这需要使用宏功能模块定制LPM_RAM,所以对宏功能模块例化进行了学习。下面针对DE0实验板就两个比较简单的例子做一个详细的说明。 在Block Editor中直接例化 实验:LPM_counter定制的4位计数器。 一、在已经建好的工程中新建一个block diagram/schematic File文件。 二、在block diagram中双击空白部分,在对话框中的Name中输入lpm_counter即得到如下的对话框;

三、单击OK出现lpm_counter的定制,依次单击next对以下对话框进行设置 选取V erilog HDL 语言和文件名

输出宽度为4位 使能以及进位设置

同步或是异步的清除、装载、置位 定制完后的预览,点击Finish 完成设计,即可以调入元件

四、完成剩下的原理图,如下: 五、绑定管脚,进行编译下载,完成实验。 使用MegaWizard Plug-In Manager调用宏功能 实验:正弦信号发生器 一、定制初始化数据文件(mif或者是hex文件,这里详细介绍mif) 建立MIF文件,单击OK

设置数据个数为64点数据位宽为8位。单击OK 在表格中填入64个地址分别对应的数值(位宽为8位)完成后保存 二、定制LPM_ROM元件 在Tools菜单中选择MegaWizard Plug-In Manager,产生如下对话框 分别有创建、编辑、拷贝等功能,单击Next

相关主题
文本预览
相关文档 最新文档