FPGA 设计技巧
文章平均质量分 81
小苍蝇别闹
FPGA开发和电路设计;集成电路测试
展开
-
48bits进位选择补码加法器的两种实现方法的性能对比
本文使用进位选择的结构实现补码加法器,并且对比了使用内部逻辑实现和使用专用DSP单元实现时的性能差别。当然Xilinx FPGA中的DSP单元可以直接实现48位的运算,本文主要目的是验证进位选择结构加法器的实现和性能对比,这种结构可以运用到更大位宽的加法中。...原创 2020-06-14 22:28:14 · 698 阅读 · 0 评论 -
正则表达式在Vivado约束文件(xdc)中的应用
使用xdc文件进行管脚、位置、时序和属性等约束的时候,经常会使用各种get命令。Vivado提供了很丰富的匹配表达式,比如等于==、不等于!=、匹配=~、不匹配!~、<、>、<=、>=等等,这些表达式可以通过&&和||进行组合;同时还有大量的状态、属性和单元名称可用,比如DIRECTION、IN、IS_LOC_FIXED、IS_PRIMITIVE、NAME等等。 我在xdc文件中匹配目标的时候,在可行的情况下更倾向于使用正则表达式。本文就介绍一下我常...原创 2020-05-29 23:00:25 · 2347 阅读 · 0 评论 -
RAM的多种例化和初始化方法
目录RAM的例化RAM的初始化IP Catalog例化的RAM的初始化自定义数组和XPM RAM的初始化初始化数据的可读性本文所述的内容均以使用Xilinx器件为前提,不需要进行修改,或者做出少量修改就可以在Altera器件上应用。RAM的例化我常使用的例化方法主要有三种。使用IP Catalog例化 通过代码让编译器推断出RAM 调用原语上述方法各...原创 2020-02-28 14:39:41 · 6035 阅读 · 0 评论 -
使用BRAM实现数据延迟
目录为何使用BRAM实现延时实现与仿真为何使用BRAM实现延时在一些设计中需要对数据进行多个周期的延时。延时方法有多种,比如使用SLICEM生成移位寄存器,或者使用FF。但是对于大位宽、深延时的数据,使用上述方法会消耗过多资源,功耗也较大。此时使用BRAM进行延时将是更优的选择。实现与仿真...原创 2020-02-26 23:58:55 · 2186 阅读 · 0 评论