实验2参数可设置宏功能模块lpm的应用._第1页
实验2参数可设置宏功能模块lpm的应用._第2页
实验2参数可设置宏功能模块lpm的应用._第3页
实验2参数可设置宏功能模块lpm的应用._第4页
实验2参数可设置宏功能模块lpm的应用._第5页
已阅读5页,还剩20页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、实验2参数参数ke ke 设置宏功能设置宏功能模块模块LPMLPM的应用的应用一、参数可设置模块库一、参数可设置模块库u参数可设置模块库参数可设置模块库(L Library of ibrary of P Parameterized arameterized MModulesodules,LPMLPM)是)是AlteraAltera公司提供的公司提供的以图形或者硬件描述语言模块以图形或者硬件描述语言模块形式方便调用的宏功能块形式方便调用的宏功能块u设计者可以根据设计电路的需要,选择设计者可以根据设计电路的需要,选择LPMLPM库中的适当模库中的适当模块,通过对其设置参数,完成自己的设计需要。块,

2、通过对其设置参数,完成自己的设计需要。u不必进行重复模块的设计,而将更多的精力放在其他功能不必进行重复模块的设计,而将更多的精力放在其他功能的实现上的实现上, ,极大地提高了电子设计的效率和可靠性。极大地提高了电子设计的效率和可靠性。一、参数可设置模块库(续一、参数可设置模块库(续1 1)1 1、ALTERAALTERA提供的宏功能模块提供的宏功能模块算术组件算术组件 如:累加器、加法器、乘法器、如:累加器、加法器、乘法器、LPMLPM算算 术函数术函数门电路门电路 如:多路复用器和如:多路复用器和LPMLPM门函数门函数 I/OI/O组件组件 如:时钟数据恢复(如:时钟数据恢复(CDRCDR

3、)、锁相环()、锁相环(PLLPLL)、千兆位)、千兆位收发器块(收发器块(GXBGXB)、)、LVDSLVDS接收器和发送器等接收器和发送器等存储组件和存储器编译器存储组件和存储器编译器如:如:LPM_ROMLPM_ROM、RAMRAM一、参数可设置模块库(续一、参数可设置模块库(续2 2)u算数组件算数组件序号序号 模块名称模块名称功能描述功能描述1 1altfp_add_sub浮点加法器、减法器模块2 2altfp_div浮点参数化除法器宏模块3 3altfp_mult浮点参数化乘法器宏模块4 4altmemmult参数化存储乘法器宏模块5 5altmult_accum参数化乘累加器宏模

4、块6 6altmult_add参数化乘加器宏模块7 7altfp_sqrt参数化整数平方根运算宏模块8 8divide参数化除法器宏模块9 9lpm_abs参数化绝对值运算宏模块(Altera推荐使用)1010lpm_add_sub参数化加法器-减法器宏模块(Altera推荐使用)1111lpm_compare参数化比较器宏模块(Altera推荐使用)1212lpm_counter参数化计数器宏模块(Altera推荐使用)1313lpm_divide参数化除法器宏模块(Altera推荐使用)一、参数可设置模块库(续一、参数可设置模块库(续3 3)u门电路门电路序号序号模块名称模块名称功能描述功

5、能描述1 1lpm_and/or/xor 参数化与门模块/或门/异或门模块2 2lpm_bustri参数化三态缓冲器模块3 3lpm_clshift参数化组合逻辑转化模块4 4lpm_constant参数化常数发生器模块5 5lpm_decode参数化解码器模块6 6lpm_inv参数化反向器模块7 7lpm_mux参数化多路转化器模块一、参数可设置模块库(续一、参数可设置模块库(续4 4)uI/OI/O组件组件序号序号模块名称模块名称功能描述功能描述1alt4gxb千兆位收发器模块2altdq数据滤波模块3altdqs参数化的双向数据滤波器模块4altlvds_rx低电压差分信号接收器5al

6、tlvds_tx低电压差分信号发送器6altpll参数化的锁相环模块一、参数可设置模块库(续一、参数可设置模块库(续5 5)u存储组件存储组件序号序号模块名称模块名称功能描述功能描述1lpm_dff参数化D触发器和移位寄存器模块2lpm_ff参数化触发器宏模块3lpm_fifo参数化单时钟FIFO宏模块4lpm_fifo_dc参数化双时钟FIFO宏模块5lpm_latch参数化锁存器宏模块6lpm_ram_dp参数化双端口RAM模块7lpm_rom参数化ROM宏模块一、参数可设置模块库(续一、参数可设置模块库(续6 6)2 2、调用宏功能模块的方法、调用宏功能模块的方法也可通过菜单也可通过菜单

7、ToolsToolsMegaWizard Plug-In ManagerMegaWizard Plug-In Manager新建原理图编辑文件,双新建原理图编辑文件,双击打开击打开SymbolSymbol对话框调用对话框调用二、利用二、利用lpm-romlpm-rom设计一个乘法器设计一个乘法器1 1、ROMROM工作原理工作原理u由地址线(由地址线(adderssadderss)数量确定存储单元个数)数量确定存储单元个数, ,如:如:8 8根地址根地址线线addressaddress(7.07.0),共有),共有256256个存储单元个存储单元u每个存储单元能够保存一定位数的二进制数,成为每

8、个存储单元能够保存一定位数的二进制数,成为数据位数据位宽宽2 2、实验原理、实验原理u 写存储单元时,地址和数据的表达形式写存储单元时,地址和数据的表达形式 地址:数据地址:数据0010,1000 : 0001,1000 8位地位地址低址低4位位8位地址位地址高高4位位存储的存储的数据数据乘数乘数a=2乘数乘数b=8乘积乘积C=16二、利用二、利用lpm-romlpm-rom设计一个乘法器设计一个乘法器u设置存储单元数目与数据宽度设置存储单元数目与数据宽度存储单存储单元数目元数目数据位数据位宽宽二、利用二、利用lpm-romlpm-rom设计一个乘法器设计一个乘法器3、实验步骤、实验步骤u配置

9、乘法表数据文件配置乘法表数据文件FileNewMemory FilesMemory Initialization File(或者(或者Hexadecimal Intel Format File)二、利用二、利用lpm-romlpm-rom设计一个乘法器设计一个乘法器u设置数据文件显示格式设置数据文件显示格式ViewCells Per Row改变表格每行改变表格每行显示单元个数显示单元个数地址显示进制地址显示进制存储数据显示存储数据显示进制进制二、利用二、利用lpm-romlpm-rom设计一个乘法器设计一个乘法器u完成数据文件(九九乘法表)完成数据文件(九九乘法表)保存,文件名保存,文件名ro

10、mdata.hexromdata.hex地址低地址低4位,位,十六进制表示十六进制表示9地址高地址高4位,位,十六进制表示十六进制表示9存储数据存储数据9 9=81二、利用二、利用lpm-romlpm-rom设计一个乘法器设计一个乘法器u定制定制lpm_romlpm_rom元件元件ToolsMegaWizard Plug-In Manager二、利用二、利用lpm-romlpm-rom设计一个乘法器设计一个乘法器u选择元件及保存位置等选择元件及保存位置等二、利用二、利用lpm-romlpm-rom设计一个乘法器设计一个乘法器u设置设置lpm_romlpm_rom参数参数数据数据位宽位宽存储单存

11、储单元数目元数目二、利用二、利用lpm-romlpm-rom设计一个乘法器设计一个乘法器u设置设置lpm_romlpm_rom参数(续)参数(续)是否添加是否添加使能信号使能信号是否添加是否添加清零信号清零信号本例中可以不选择使本例中可以不选择使能信号和清零信号,能信号和清零信号,直接直接NEXT进入下一进入下一步设置步设置二、利用二、利用lpm-romlpm-rom设计一个乘法器设计一个乘法器u设置设置lpm_romlpm_rom参数(续)参数(续)单击单击Browse选择选择数据文数据文件件二、利用二、利用lpm-romlpm-rom设计一个乘法器设计一个乘法器u完成完成lpm_romlp

12、m_rom设置设置添加定制添加定制结果到当结果到当前工程中前工程中二、利用二、利用lpm-romlpm-rom设计一个乘法器设计一个乘法器u顶层文件的设计顶层文件的设计 两种形式:两种形式:VHDLVHDL语言或者原理图调用语言或者原理图调用lpm_romlpm_rom模块模块例例1:采用:采用VHDL语言语言library ieee;use ieee.std_logic_1164.all;entity multip is -定义顶层实体 port(clk :in std_logic; a :in std_logic_vector(3 downto 0); -乘数a,即rom地址低4位 b :

13、in std_logic_vector(3 downto 0); -乘数b,即rom地址高4位 q :out std_logic_vector(7 downto 0); -乘积q ,即存储单元内存储数据为abend;architecture one of multip iscomponent rom0 -调用rom0,即rom0.vhd声明 port(address :in std_logic_vector(7 downto 0); clock :in std_logic; q :out std_logic_vector(7 downto 0);end component;beginu1:ro

14、m0 port map (clock=clk,address(7 downto 4)=b,address(3 downto 0)=a,q=q); end;二、利用二、利用lpm-romlpm-rom设计一个乘法器设计一个乘法器例例2:采用原理图:采用原理图需要在打开需要在打开rom0.vhd文件的情况下,选择文件的情况下,选择FileCreate/UpdateCreate Symbol Files for Current File,将其转化为原理图元件,将其转化为原理图元件总线形式结构总线形式结构注意:另存为与rom0不同名的文件名即可!二、利用二、利用lpm-romlpm-rom设计一个乘法

15、器设计一个乘法器u波形仿真波形仿真新建波形文件新建波形文件调入节点端口调入节点端口设置仿真激励(过程同全设置仿真激励(过程同全加器波形仿真)加器波形仿真) 设置时钟信号设置时钟信号时钟周期时钟周期设置设置二、利用二、利用lpm-romlpm-rom设计一个乘法器设计一个乘法器u波形仿真(续)波形仿真(续) 设置乘数、被乘数设置乘数、被乘数 选择数选择数制制 设置设置数值数值 取消数值加取消数值加1操作操作二、利用二、利用lpm-romlpm-rom设计一个乘法器设计一个乘法器u波形仿真(续)波形仿真(续) 设置完成后保存波形文件,仿真设置完成后保存波形文件,仿真u硬件验证硬件验证: :用用8 8个按键来表示乘数和被乘数(高个按键来表示乘数和被乘数(高4 4位和低位和低4 4位)位)如如2 2* *3 3,0010 00110010 0011,用,用8 8个个LEDLED表示乘机,表示乘机,00000110 00000110 。 该该部分请同学们自行完成部分请同学们自行完成三、利用三、利用lpm_multilpm_multi设计一个设计一个8 8位有位有符号乘法器符号乘法器序号序号端口名称端口名称功能描述功能描述1 1dataa被乘

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论