- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
審阅文章的心得笔记
阅读笔记
看相关资料最好看官网上的权威资料,编写代码时要有硬件思维,每一条代码都有实在的对应代码。多提问,多思考,多记录。当代码写完之后,考虑工作频率能不能再提高一些,资源还能不能够再节省一些。代码的风格是能够让别人在最短的时间里看懂你的代码,在代码风格上,不要进行太多的创新。
一 FPGA书写格式要求
二 FPGA 语法规范
//?程序说明开始//?===========================================================////?功能:?完成两个输入数的相加。//?参数:?strByDelete,strToDelete//?输入参数//?输出参数//?主要思路:本算法主要采用2级流水线完成相加//?日期:起始日期,如:2007/8/21.9:40--2007/8/23.21:45//?版本://?程序编写人员://?程序调试记录://?==========================================================/
三 FPGA 相关知识
3.1什么是同步逻辑和异步逻辑,同步电路和异步电路的区别是什么?电路设计可分类为同步电路和异步电路设计。同步电路利用时钟脉冲使其子系统同步运作,而异步电路不使用时钟脉冲做同步,其子系统是使用特殊的“开始”和“完成”信号使之同步。由于异步电路具有下列优点--无时钟歪斜问题、低电源消耗、平均效能而非最差效能、模块性、可组合和可复用性异步电路主要是组合逻辑电路,用于产生地址译码器、FIFO或RAM的读写控制信号脉冲,其逻辑输出与任何时钟信号都没有关系,译码输出产生的毛刺通常是可以监控的。同步电路是由时序电路(寄存器和各种触发器)和组合逻辑电路构成的电路,其所有操作都是在严格的时钟控制下完成的。这些时序电路共享同一个时钟CLK,而所有的状态变化都是在时钟的上升沿(或下降沿)完成的。同步逻辑是时钟之间有固定的因果关系。异步逻辑是各时钟之间没有固定的因果关系。电路设计可分类为同步电路和异步电路设计。同步电路利用时钟脉冲使其子系统同步运作,而异步电路不使用时钟脉冲做同步,其子系统是使用特殊的“开始”和“完成”信号使之同步。由于异步电路具有下列优点--无时钟歪斜问题、低电源消耗、平均效能而非最差效能、模块性、可组合和可复用性异步电路主要是组合逻辑电路,用于产生地址译码器、FIFO或RAM的读写控制信号脉冲,其逻辑输出与任何时钟信号都没有关系,译码输出产生的毛刺通常是可以监控的。同步电路是由时序电路(寄存器和各种触发器)和组合逻辑电路构成的电路,其所有操作都是在严格的时钟控制下完成的。这些时序电路共享同一个时钟CLK,而所有的状态变化都是在时钟的上升沿(或下降沿)完成的。同步设计得优越性:1.同步电路比较容易使用寄存器的异步复位/置位端,以使整个电路有一个确定的初始状态;2.在可编程逻辑器件中,使用同步电路可以避免器件受温度,电压,工艺的影响,易于消除电路的毛刺,使设计更可靠,单板更稳定;3.同步电路可以很容易地组织流水线,提高芯片的运行速度,设计容易实现;4.同步电路可以很好地利用先进的设计工具,如静态时序分析工具等,为设计者提供最大便利条件,便于电路错误分析,加快设计进度。二 同步设计得规则:1.尽可能在整个设计中只使用一个主时钟和同一个时钟沿,主时钟走全局时钟网络。2.在FPGA设计中,推荐所有输入、输出信号均应通过寄存器寄存,寄存器接口当作异步接口考虑。3.当全部电路不能用同步电路思想设计时,即需要多个时钟来实现,则可以将全部电路分成若干局部同步电路(尽量以同一个时钟为一个模块),局部同步电路之间接口当作异步接口考虑。4.当必须采用多个时钟设计时,每个时钟信号的时钟偏差(T)要严格控制。5.电路的实际最高工作频率不应大于理论最高工作频率,留有设计余量,保证芯片可靠工作。6.电路中所有寄存器、状态机在单板上电复位时应在一个已知的状态。异步设计中常见问题及其解决方法
异步电路设计主要体现在时钟的使用上,如使用组合逻辑时钟、级连时钟和多时钟网络;另外还有采用异步置位、复位、自清零、自复位等。这些异步电路的大量存在,一是增加设计难度,二是在出现错误时,电路分析比较困难,有时会严重影响设计进度。很多异步设计都可以转化为同步设计,对于可以转化的逻辑必须转化,不能转化的逻辑,应将异步的部分减到最小,而其前后级仍然应该采用同步设计。1.组合逻辑产生的时钟2.行波计数器/行波时钟4.不规则的计数器5.分频器6.多时钟的同步化7.RS触发器8.上升沿检测9.下降沿检测10.上升/下降沿检测11.对计数器的译码对计数器译码,可能由于竞争冒险产生毛刺。如果后级采用了同步电路,我们完全可以对此不予理会。如果对毛刺
文档评论(0)