- 1、本文档共137页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
WZSMaxplusII教程
* * 第九章 基于LPM的设计功能 LPM(可调参数元件)使用 Max+plusII 中为增加元件库的灵活性,为一些常用功能模块提供了参数化元件,这些元件的规模及具体功能可由用户直接指定。如同可编程元件。这类元件的使用同其他元件类似,仅要求用户按自己需要设置一些具体参数。下面以lpm_counter元件为例讲述参数化元件的使用方法。 例:使用可调参数元件lpm_counter直接构成一个模为12,具有异步清零,计数使能功能的计数器。 返回目录 * * 9.1调入参数化元件 (1) 调入参数化元件。 首先建立一个图形输入文件“cntm12l.gdf”,在图形编辑器中,双击空白处,打开元件输入对话框,如左图所示。调入元件,击占‘OK“按钮。 LPM库 在可变参数库mega_lpm中选择符号lpm_counter,可调参数元件lpm_counter 是一个二进制计数器,可以实现加、减或加/减计数、数控分频器等,可以选择同步或异步清零/置数功能。我们用它实现模为12,具有异步清零,计数使能功能的计数器。 9.2设置元件参数 (2) 在出现的对话框中,按需要设置lpm_counter的具体参数。 我们仅需计数器具有异步清零,计数使能功能,因此在“Ports”区,选择使用“aclr cnt_en clock q[LPM_WIDTH-1..0]”,其他信号选择不用,即“Unused”。为实现这一步,只要在“Ports”区的“Name”下点中某信号,然后在“Port Status”区选择“Used”或“Unused”即可。 在“Parameters”区的“Name”下面选中一具体参数,如“LPM_MODULUS”,其代表计数器的模值,这时“LPM_MODULUS”会出现在“Parameters Name”旁的编辑行中,然后在“Parameters Value”旁的编辑区添上“12”,单击按钮“Change”即可完成此参数设置。按同样步骤,将“LPM_WIDTH” 设为4,代表四位计数器。 注:单击“Help on LPM_Counter”按钮可获得所有关于lpm_counter的信息:每个参数含义,取值等。 * * 9.3完成设计 (3) 设置好后按“OK”按钮,这时在图形编辑区出现刚才所定制的计数器符号,如下图所示。 加上具体输入输出管脚、编译、器件选择、管脚锁定、仿真、配置,最后完成该设计,方法参考第四章。注意,图中“q[]”的宽度为4,因此输出信号宽度也要为4,如qcnt[3..0];qout[3..0]等。 符号 具体参数区: 若想改变此参数,只需双击该区,进入设置对话框,重新设置参数 * * 9.4关于EP1K30QC208-2中EAB的说明 返回目录 (4) 在Altera的ACEX1K系列器件中,每个嵌入式阵列块(EAB)具有高达16位寻址能力的双口RAM,在EP1K30QC208-2中有六块EAB,每块大小为4K位,可构成4096×1,2048×2,1024×4,512×8,256×16共五种类型RAM/ROM中任意一种。比如使用LPM_ROM元件,利用内部一块EAB构成一个28×8的一个ROM用于存放九九乘法表(可参考EDA-E的示例课件中基于LPM的四位乘法器的设计示例,在这里不再详细说明)。 本章介绍了LPM_COUNTER的用法,其它大量的LPM元件的调用方法都是一样的,只不过功能不同,功能设置可参考帮助文件,课后同学们不防调用几个LPM元件了解一下。 * * 第十章 应用中常见错误及处理方法 返回目录 在设计中碰到的一般错误已在前面几章有所说明,在整个设计中错误大多数在编译输入文件时碰到,所以重点说一下编译时碰到错误的处理方法。Max+plusII不仅给出错误提示还可以将错误定位。下面以常见错误但不易定位或排除的例子,讲述如何定位及排除。 * * 10.1输出短接 (1) 回到原来“clock.gdf”文件,若将cntm60的cout与cntm12的h0连接在一起,如下图所示: * * 10.1编译出错分析 (2) 将其编译,发现如图1-69所示的两条错误信息: 错误信息告诉三态驱动有误,但我们设计中并没有用到三态门。实际上,这是错误定位不明确,但考虑到,三态门是允许输出接在一起的,此错误信息还是恰当的。 * * 10.1错误定位分析 (3) 为找出错误之处,双击第一条错误信息,显示下图。可看到,错误定位在f74161.gdf的一个触发器上,好象与我们设计无关。 使用菜单“file”下“hierarchy”的“UP”回到“f74161.gdf”上一层“74161.tdf”;继续使用“file”下“hierarchy”的“UP”回到“74161.tdf”上一层“cntm1
文档评论(0)