电脑桌面
添加小米粒文库到电脑桌面
安装后可以在桌面快捷访问

VHDL常见错误分析VIP免费

VHDL常见错误分析_第1页
1/7
VHDL常见错误分析_第2页
2/7
VHDL常见错误分析_第3页
3/7
第 1 页 共 7 页 VHDL 常见错误分析 一、较好的 RTL 代码风格 1、可综合 用 HDL 语言编程,应时刻牢记所写代码能否反映期望的硬件及其功能,而且电路结构是可实现的。为保证设计的可综合,代码中的指令和数据类型必须是综合工具所支持的,同时代码的结构也必须使综合得到的硬件功能和代码所体现的功能一致。 2、简洁清晰,易于理解 最易懂的写法也就是效率最高的写法。使用一致的命名规则。 3、注释清楚 4、模块化程度高,易于修改、移植和复用 需要将代码中的常数写成参数化的形式。 5、模块例化时,为清楚起见,使用显示的端口说明 6、为了避免很大的路径延时,不要使用特别长的嵌套的 if 结构。 7、资源共享 资源共享的主要思想是通过数据缓冲器或多路选择的方法来共享数据通路中工作单元(为了提高速度,对于关键路径不要使用该技术。一般在算术单元和关键路径中不采用资源复用。) 8、避免使用门限时钟 门限时钟可能会引入短脉冲干扰,增加时钟延时、时钟扭曲以及其他一些后果。 9、代码中不要带有延时信息(行为级描述与 testbench 例外) 10、进行数学运算时,要有好的顺序和分组。好的顺序及分组可能影响综合结果。 ADD=A1+A2+A3+A4; --三级加法,较差 ADD=(A1+A2)+(A3+A4); --二级加法,较好 为了符合时序要求,综合工具能重新构造算术单元。我们还是要按所需结果书写代码。 11、代码中不要带初始化赋值语句。 综合工具会忽略掉这种初始化的语句,所以会导致综合前后仿真结果不一致。 二、对可综合设计的一些建议 1、在电路内部应尽量避免使用三态门,但是在电路边缘引脚处可以使用。 2、内部总线应该尽量避免使用双向总线,一般使用单向总线。 3、模块的划分应该尽量以寄存器为边界。 4、应该尽量避免使用锁存器,因为有可能传输毛刺,而寄存器不会传输毛刺。 5、时序逻辑应该注意信号边沿的检测,防止亚稳态的传输。 6、串并转换应尽量使用移位寄存器,少用计数器,以提高速度。 7、组合环应在边沿加上寄存器,使其在时钟的控制下工作。 8、时钟分频和倍频电路一般不易使用高层描述;分频后的信号一般不作为时钟信号,因为其驱动能力较弱,容易产生时钟偏斜。 9、在设计的顶层,最好不要实例化门,因为这可能导致代码难以优化。 10、如果要使用门限时钟,内部生成的时钟,或者使用时钟的两个沿,则应该构第 2 页 共 7 页 造一个时钟生成单元模块。 11、建议将状态机分成两个部...

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。
3、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。

碎片内容

VHDL常见错误分析

确认删除?
VIP
微信客服
  • 扫码咨询
会员Q群
  • 会员专属群点击这里加入QQ群
客服邮箱
回到顶部