【FPGA】Buffer专题介绍(一)

目录

 

背景

BUFG

BUFGCE

BUFGCE_1

BUFGMUX and BUFGMUX_1

BUFGP

BUFH

BUFIO2

BUFIO2FB


背景

在数据手册 Spartan-6 Libraries Guide for HDL Designs中看到了有关buffer的一些介绍,这里就根据掌握简记之。

从手册的开头声明,或许可以看出看这些东西有什么用途:

This HDL guide is part of the ISE documentation collection. A separate version of this guide is available if you prefer to work with schematics.
This guide contains the following:
• Introduction.
• A list of design elements supported in this architecture, organized by functional categories.
• Individual descriptions of each available primitive.

此HDL指南是ISE文档集的一部分。 如果您更喜欢使用原理图,可以使用本指南的单独版本。
本指南包含以下内容:
• 介绍。
•此体系结构中支持的设计元素列表,按功能类别组织。
•每个可用原语的单独描述。

即便如此,即使我不喜欢用原理图设计,了解这部分知识也大有裨益,作为一个硬件工作中,怎么能不了解FPGA设计中支持的设计元素呢?并且一些原语的描述对于我们了解它们在FPGA电路中的作用是很有帮助的。

在正式介绍本部分知识之前,还有必要掌握一些前提性的知识:

For each design element in this guide, Xilinx evaluates the four options and recommends what we believe is the best solution for you. The four options are:

• Instantiation - This component can be instantiated directly into the design. This method is useful if you want to control the exact placement of the individual blocks.

• Inference - This component can be inferred by most supported synthesis tools. You should use this method if you want to have complete flexibility and portability of the code to multiple architectures. Inference also gives the tools the ability to optimize for performance, area, or power, as specified by the user to the synthesis tool.

• Coregen & Wizards - This component can be used through Coregen or Wizards. You should use this method if you want to build large blocks of any FPGA primitive that cannot be inferred. When using this flow, you will have to re-generate your cores for each architecture that you are targeting.

• Macro Support - This component has a UniMacro that can be used. These components are in the UniMacro library in the Xilinx tool, and are used to instantiate primitives that are complex to instantiate by just using the primitives. The synthesis tools will automatically expand the unimacros to their underlying primitives.

对于本指南中的每个设计元素,Xilinx评估了四个选项,并推荐我们认为最适合您的解决方案。 四个选项是:
•实例化 - 可以将此组件直接实例化到设计中。 如果要控制各个块的确切位置,此方法很有用。

buffer原语一般只需要实例化就可以用了。


•推理 - 大多数支持的综合工具都可以推断出该组件。 如果希望将代码具有完全的灵活性和可移植性,则应使用此方法。 推理还使工具能够根据用户对综合工具的指定来优化性能,面积或功率。

这个我还不是太了解,我们还是用到了再分析吧。

•Coregen和Wizards - 此组件可通过Coregen或Wizards使用。 如果要构建无法推断的任何FPGA原语的大块,则应使用此方法。 使用此方法时,您必须为要定位的每个体系结构重新生成核。

这个就比较常见了,就是产生一个IP核。


•宏支持 - 该组件具有可以使用的UniMacro。 这些组件位于Xilinx工具的UniMacro库中,用于实例化一些很难仅通过原语实例化的原语。 综合工具将自动将unimacros扩展到其底层原语。

宏就是赛灵思提供的一些硬件宏,例如MUX,RAM等。

好了,大致了解这么多就可以了,本博文是有关buffer的专题介绍,那就开始这块内容了。


BUFG

全局时钟Buffer

FPGA buffer是指用于对端口时钟信号和其他重要信号的缓冲和驱动的原语。它们被用来满足FPGA底层硬件综合布线规则,以正确且充分地利用FPGA全局时钟树资源。 除了对端口时钟信号的缓冲和驱动,FPGA内部的普通logic信号也可以通过BUFG(Buffer)来利用全局时钟树走线。需要注意的是,logic信号到BUFG之间可能会有大约10ns的延迟。 另外,FPGA乒乓buffer设计电路是一个用于从外部读入有效数据并按照一定规则输出的电路。其中的输入信号包括时钟CLK,由外部输入的信号data_vld,data_in[7:0]等。这个电路可以将不连续的数据按照16位连续输出。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* [Xilinx-FPGA关于BUFFER(时钟/普通IO信号)的使用总结](https://blog.csdn.net/weixin_42483560/article/details/125643424)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] - *3* [乒乓buffer.png](https://download.csdn.net/download/quan_heng/12683703)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

李锐博恩

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值