请教一下,节省宏单元的方法

[复制链接]
4333|10
 楼主| _horse 发表于 2007-9-19 21:24 | 显示全部楼层 |阅读模式
我做了一个设计,用的是epm7128,但是编译的时候&nbsp;提示宏单元不够使<br />需要159个宏单元,<br />我不打算换芯片<br />不知道是不是有别的方法可以&nbsp;节省下宏单元<br />比如说,在设计时要注意哪些原则<br />请高手指点<br />先谢谢了
风中De舞者 发表于 2007-9-20 08:02 | 显示全部楼层

省掉一些不必要的信号变量 尽量少用IF语句

  
zhang123 发表于 2007-9-20 11:42 | 显示全部楼层

说说你要干什么 实现思路 别人好帮你

  
 楼主| _horse 发表于 2007-9-23 10:35 | 显示全部楼层

请指点 谢谢

我想在CPLD内部做一个32位的累加器,有什么好方法可以节省资源的呢,请指点。<br />我是用verilog编的程序,占用了7128的75个宏单元。有没有更好的方法可以节省到60个宏单元呢<br />有可能节省到60个宏单元吗?<br />请指点,谢谢!
王紫豪 发表于 2007-9-23 22:08 | 显示全部楼层

位数减少吧,哈哈!对于cpld这等少宏单元的东西,我还是喜

  
xwj 发表于 2007-9-23 22:12 | 显示全部楼层

得看你的应用和写法了,当要从159优化到60估计很难做到哦

  
xwj 发表于 2007-9-23 22:15 | 显示全部楼层

LZ自己先找出哪里用的最多吧

然后针对性的优化
 楼主| _horse 发表于 2007-9-25 10:53 | 显示全部楼层

谢谢大家

我找出问题所在了,我刚刚开始做设计,之前对cpld内部资源不是很了解,<br />现在明白了,其实能够占用多少资源是可预见的,这是第一点。比如说,如果你做三十二位锁存器的话,就至少用32个宏单元。<br />另外,我原先设计累加器,是同步复位,占用了75个宏单元,后来在人指点下,改成了异步复位,就一下子省到了62个宏单元,至于为什么会是这样子,我还没有弄清楚,还请大家多指点。
 楼主| _horse 发表于 2007-9-25 10:55 | 显示全部楼层

补充

我试过用verilog编程和原理图输入两种方法,在电路不是很复杂的情况下,主要看你占用了多少个d触发器。我做的32位锁存器,两种方法都是占用32个宏单元。
风中De舞者 发表于 2007-9-26 09:26 | 显示全部楼层

使用原理图的方法可以有效减少多余的资源 提高利用率

  
peng61924 发表于 2013-1-16 16:15 | 显示全部楼层
我试了一下,好像计数器同步复位与异步复位用的宏单元一样的啊。。难道这个和具体的程序还有关吗?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

4

主题

61

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部