VIVADO的差分转单端IBUFDS的使用
外部控制器与FPGA通信的输入输出都是采用的差分信号,所以在FPGA内部处理的时候,对于输入信号需要差分转单端,输出信号需要单端转差分。
直接使用IBUFDS和OBUFDS来实现。
` //差分转单端
IBUFDS RXD_FPGA_diff
(
.I(RXD_P_FPGA),
.IB(RXD_N_FPGA),
.O(RXD_FPGA)
);
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
`
//单端转差分
OBUFDS TXD_FPGA_diff
(
.O(TXD_P_FPGA),
.OB(TXD_N_FPGA),
.I(TXD_FPGA)
);
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
不过IBUFDS模块在仿真时报错,如下
- 1
[VRFC 10-529] concurrent assignment to a non-net RXD_FPGA is not permitted [“F:/PP/VIVADO/QF81705/QF81705.srcs/sources_1/new/FPGA_COMM_RX.v”:59]
原来是因为我把 RXD_FPGA和TXD_FPGA都定义为的reg信号。但是IBUFDS里面的.O是输出信号,应该使用的ASSIGN,所以只能定义为 wire RXD_FPGA;所以会报错。
- 1
![](https://i-blog.csdnimg.cn/blog_migrate/c435921c498fd8cf48f9f07527be548a.png)
xilinx kc705 时钟输入电路
这个电路是差分时钟输出,我想肯定有办法将差分信号转为单端信号,就去查阅了一下资料,
IBUFDS、IBUFGDS和OBUFDS都是差分信号缓冲器,用于不同电平…
![](https://i-blog.csdnimg.cn/blog_migrate/f1865d482bfc2a8f9b374e2b9ff223b5.png)
![表情包](https://i-blog.csdnimg.cn/blog_migrate/3df739fbf0a0daf6dcc4d6d06cae3040.png)
![](https://i-blog.csdnimg.cn/blog_migrate/98fb45ff3ee45819903f5955b5ec12f1.png)
![](https://i-blog.csdnimg.cn/blog_migrate/bc1b0995e6e4f0d0bc3101c48030f87b.png)
![](https://i-blog.csdnimg.cn/blog_migrate/2fa1cadbd6f9667972aa68dac296e32b.png)
![](https://i-blog.csdnimg.cn/blog_migrate/62460b89fb4c26ce71bf3789a389cfce.png)
![](https://i-blog.csdnimg.cn/blog_migrate/951829b0880772706ebde1134f3ec49c.png)
![](https://i-blog.csdnimg.cn/blog_migrate/b17ec15f3075b478637ebb713ad52690.png)
![](https://i-blog.csdnimg.cn/blog_migrate/ca9d6829319576e722bf6b0c3d26f56d.png)
![](https://i-blog.csdnimg.cn/blog_migrate/27c20afc0e17c9b94fdf931b1b2a13f0.png)
![](https://i-blog.csdnimg.cn/blog_migrate/aee3957e06083a436fec6f52f02bf929.png)
![](https://i-blog.csdnimg.cn/blog_migrate/9d0266bfaa3e93ba4dd8f71b58fc2d57.png)
![](https://i-blog.csdnimg.cn/blog_migrate/f0cbf30a9cde3bfea150285ba823f241.png)
![](https://i-blog.csdnimg.cn/blog_migrate/9bdbfa5b63e2a41661fa969fd10d77ce.png)
![](https://i-blog.csdnimg.cn/blog_migrate/837414786bd6006c4a63b6ce4e93ca7e.png)
![](https://i-blog.csdnimg.cn/blog_migrate/6b4162d001afa75b032b938d66e5b4f5.png)
![](https://i-blog.csdnimg.cn/blog_migrate/191cfce78416d6734c3b34fadbc4f834.png)
![](https://i-blog.csdnimg.cn/blog_migrate/3f8f8581a3b9b9390a1fb45879a9c4da.png)
![](https://i-blog.csdnimg.cn/blog_migrate/1bb9b491090e15c3ae2ad1c4dc56a82f.png)
![](https://i-blog.csdnimg.cn/blog_migrate/69323fb546c998bff6aad082dda13ddb.png)
![](https://i-blog.csdnimg.cn/blog_migrate/cab96bb8c57e124d6e1d883024e77bc5.png)
![](https://i-blog.csdnimg.cn/blog_migrate/492214adf07e239ddf755f60bcd793f3.png)
![](https://i-blog.csdnimg.cn/blog_migrate/a927d443b4275fbb493279cbb7a6b9a1.png)
![](https://i-blog.csdnimg.cn/blog_migrate/395e04f0965050e192d1a6533d02e2ae.png)
![](https://i-blog.csdnimg.cn/blog_migrate/ed76e065f4757bee9744df3e4937e3b7.png)
![](https://i-blog.csdnimg.cn/blog_migrate/787c3814a18b74b33b542afc78b6f1a3.png)
![](https://i-blog.csdnimg.cn/blog_migrate/7e1cf50b2c808b5031de6d054dbebfd5.png)
![](https://i-blog.csdnimg.cn/blog_migrate/a0eeabdb135fef217c0230029c55683c.png)
![](https://i-blog.csdnimg.cn/blog_migrate/807a9b55b2dd24aa5bfe31d92a8bb7f2.png)
![](https://i-blog.csdnimg.cn/blog_migrate/e0c3f123fcf84e37465a0f759e6f5a80.png)
![](https://i-blog.csdnimg.cn/blog_migrate/f341bd3ddfac7d7ed3735b6db259cc0d.png)
![](https://i-blog.csdnimg.cn/blog_migrate/667ded19275da4d9c2c7bd92aaa73956.png)
![](https://i-blog.csdnimg.cn/blog_migrate/03dc527a9b36a5f6330f6417b05f5171.png)
![](https://i-blog.csdnimg.cn/blog_migrate/03ce5692d5f5f91c1e221109827fbb49.png)
![](https://i-blog.csdnimg.cn/blog_migrate/44921c707af3ef9384111b786ac4e543.png)
![](https://i-blog.csdnimg.cn/blog_migrate/ba1ca17339b10b548457d1c5c9b48325.png)
![](https://i-blog.csdnimg.cn/blog_migrate/0f8cc2c64f7876317ce0f21ec0cbbe54.png)
![](https://i-blog.csdnimg.cn/blog_migrate/9f844eb7f7cf69760c54b78b0b9fcdab.png)
![](https://i-blog.csdnimg.cn/blog_migrate/83eed18a779a02c8ab512ed3e55e0e04.png)
![](https://i-blog.csdnimg.cn/blog_migrate/5ab297c793a759c5709d5a2a760d9613.png)
![](https://i-blog.csdnimg.cn/blog_migrate/8f38bd1a5ba1fd60c1ac086902c4ac7e.png)
![](https://i-blog.csdnimg.cn/blog_migrate/f9050c3f95e7630966e015f579d3e61b.png)
![](https://i-blog.csdnimg.cn/blog_migrate/e32b824a919ddac30b4bb6a56f7641a3.png)
![](https://i-blog.csdnimg.cn/blog_migrate/acaa1c9ae1ba6752619cd5b27f468aaa.png)
![](https://i-blog.csdnimg.cn/blog_migrate/204932a385689f89d8fce1b39d662905.png)
![](https://i-blog.csdnimg.cn/blog_migrate/d78c05f751f66bd249257b450716ceb5.png)
![](https://i-blog.csdnimg.cn/blog_migrate/3388ee84b8a8739fbecb00ecdd974727.png)
![](https://i-blog.csdnimg.cn/blog_migrate/cfc2d8c0c6c537993fa46ea6b370ebe7.png)
![](https://i-blog.csdnimg.cn/blog_migrate/263a81eff908bd0082aabf65123e3a49.png)
![](https://i-blog.csdnimg.cn/blog_migrate/5bf1b07c76c4148b0f9804c7213003b4.png)
![](https://i-blog.csdnimg.cn/blog_migrate/c2c098a7f1e7d2a672e7773e05dc743f.png)
![](https://i-blog.csdnimg.cn/blog_migrate/70859dcc09460749f196e56ee3459537.png)
![](https://i-blog.csdnimg.cn/blog_migrate/35e6064f79f43916699ed60c0301768a.png)
![](https://i-blog.csdnimg.cn/blog_migrate/bbc87b72fefd291a2a37504edb56bdd0.png)
![](https://i-blog.csdnimg.cn/blog_migrate/a453d15321953344f237f7f4cf825fd1.png)
![](https://i-blog.csdnimg.cn/blog_migrate/a5a663da6816c53a10751c4c132c3918.png)
![](https://i-blog.csdnimg.cn/blog_migrate/30fda9e7e929a0ff564bbc8ede1cc5cc.png)
![](https://i-blog.csdnimg.cn/blog_migrate/10b0a4aad7077098659fa43d875699f1.png)
![](https://i-blog.csdnimg.cn/blog_migrate/0672cf608a10a0b6d469a8a0be9561cf.png)
![](https://i-blog.csdnimg.cn/blog_migrate/0abb57ec30c3864a497c5b80883e6bc5.png)
![](https://i-blog.csdnimg.cn/blog_migrate/505f4e17d9b788f5c24e74919c131177.png)
![](https://i-blog.csdnimg.cn/blog_migrate/8e146d100a236d8a8a9855a5df4b2d3d.png)
![](https://i-blog.csdnimg.cn/blog_migrate/bf4036ae16bb04ee29c92d8769f1f0b7.png)
![](https://i-blog.csdnimg.cn/blog_migrate/0a08bf8d22490890270645b015c65f1e.png)
![](https://i-blog.csdnimg.cn/blog_migrate/c83c656b5353c7aa1728456cb8647c06.png)
![](https://i-blog.csdnimg.cn/blog_migrate/979dedf9196d70044a28182460b819cd.png)
![](https://i-blog.csdnimg.cn/blog_migrate/c928d384e503dcf98f49060659086e87.png)
![](https://i-blog.csdnimg.cn/blog_migrate/de84146bf805e0d5ad43202af5fe034b.png)
![](https://i-blog.csdnimg.cn/blog_migrate/56db96d99ce089c3a6ba4ac206a10175.png)
![](https://i-blog.csdnimg.cn/blog_migrate/33bdb911ec395abf0ef8c81254cf1107.png)
![](https://i-blog.csdnimg.cn/blog_migrate/efaa72156b4138c36d68d0aa89dd853e.png)
![](https://i-blog.csdnimg.cn/blog_migrate/b46f523f29569b55b03cb9c839814c6e.png)
![](https://i-blog.csdnimg.cn/blog_migrate/2db0f9ced16b56177e4b301c0352a2de.png)
![](https://i-blog.csdnimg.cn/blog_migrate/d1bca1722ae4a8fce2fad7eb4d8a43da.png)
![](https://i-blog.csdnimg.cn/blog_migrate/c435921c498fd8cf48f9f07527be548a.png)
IBUFDS 是差分输入的时候用,OBUFDS是差分输出的时候用,而IBUFGDS则是时钟信号专用的输入缓冲器。
下面详细说明:
IBUFDS
Differential Signaling Input Buffer with Selectable I/O Interf
![](https://i-blog.csdnimg.cn/blog_migrate/c435921c498fd8cf48f9f07527be548a.png)
目前,越来越多的工程师会用到Vivado IP Integrator(IPI)。它的强大之处在于通过实例化和互连IP构建复杂的设计。现在的IPI中,不仅可以添加Vivado IP,还可以添加用户代码,使其以Block的形式出现在IPI中(IPI的设计被称之为Block Design)。同时,IPI提供的Designer Assistance功能也进一步提升了工程师的工作效率。
如前所述,IPI中可以添加各种IP,除了一些AXI接口的IP外,还有一些小巧的IP,在
![](https://i-blog.csdnimg.cn/blog_migrate/c435921c498fd8cf48f9f07527be548a.png)
![](https://i-blog.csdnimg.cn/blog_migrate/c435921c498fd8cf48f9f07527be548a.png)
![](https://i-blog.csdnimg.cn/blog_migrate/c435921c498fd8cf48f9f07527be548a.png)
IBUFDS、IBUFGDS和OBUFDS都是差分信号缓冲器,用于不同电平接口之间的缓冲和转换。IBUFDS 是差分输入的时候用,OBUFDS是差分输出的时候用,而IBUFGDS则是时钟信号专用的输入缓冲器。
下面详细说明:
IBUFDS
Diffe
目前,大型设计一般推荐使用同步时序电路。同步时序电路基于时钟触发沿设计,对时钟的周期、占空比、延时和抖动提出了更高的要求。为了满足同步时序设计的要求,一般在FPGA设计中采用全局时钟资源驱动设计的主时钟,以达到最低的时钟抖动和延迟…
![](https://i-blog.csdnimg.cn/blog_migrate/c435921c498fd8cf48f9f07527be548a.png)
![](https://i-blog.csdnimg.cn/blog_migrate/c435921c498fd8cf48f9f07527be548a.png)
![](https://i-blog.csdnimg.cn/blog_migrate/c435921c498fd8cf48f9f07527be548a.png)
1.双口RAM概述
2.Vivado 双口RAM IP核
2.1 Block Memory Generator概述
2.2 真双口RAM的设置
2.2.1 Basic设置
2.2.2 Port设置
3.双口RAM例程
4.仿真
4.后记
5.参考文献
1.双口RAM概述
双口RAM(dual port RAM)在异构系统中应用广泛,通过双口RAM,不同硬件架构的芯片可…
![](https://i-blog.csdnimg.cn/blog_migrate/c435921c498fd8cf48f9f07527be548a.png)
…
![](https://i-blog.csdnimg.cn/blog_migrate/c435921c498fd8cf48f9f07527be548a.png)
![](https://i-blog.csdnimg.cn/blog_migrate/c435921c498fd8cf48f9f07527be548a.png)
IBUFDS #(
.DIFF_TERM(“FALSE”), // Differential Termination
.IBUF_LOW_PWR(“TRUE”), // Low power=“TRUE”, Highest performance=“FALSE”
.IOSTANDARD("DEFAUL…
![](https://i-blog.csdnimg.cn/blog_migrate/c435921c498fd8cf48f9f07527be548a.png)
用OBUFDS原语(Primitive)可以进行单端转差分输出,其实使用该原语就是在FPGA IO Bank使用了一个LVDS发送器。
对应的,用IBUFDS原语可以进行差分信号的接收,…
![](https://i-blog.csdnimg.cn/blog_migrate/c435921c498fd8cf48f9f07527be548a.png)
- IBUFG 即输入全局缓冲,是与专用全局时钟输入管脚相连接的首级全局缓冲。所有从全局时钟管脚输入的信号必须经过IBUFG单元,否则在布局布线时会报错。IBUFG支持AGP,CTT,GTL,GTLP,HSTL,LVCMOS,LVDCI,LVPECL,LVTTL,PCI,PCIX,,SSTL等多种…
![](https://i-blog.csdnimg.cn/blog_migrate/c435921c498fd8cf48f9f07527be548a.png)
xilinx原语位OBUFDS,用法如下:
OBUFDS instance_name (
.O (clk_output_n),
.OB (clk_output_p),
.I (clk_input)
)…
![](https://i-blog.csdnimg.cn/blog_migrate/c435921c498fd8cf48f9f07527be548a.png)
简述:变分模态分解由Konstantin Dragomiretskiy于2014年提出,可以很好抑制EMD方法的模态混叠现象(通过控制带宽来避免混叠现象)。与EMD原理不同,VMD分解方式是利用迭代搜索变分模型最优解来确定每个分解的分量中心频率及带宽,属于完全非递归模型,该模型寻找模态分量的集合及其各自的中心频率,而每个模态在解调成基带之后是平滑的,Konstantin Dragomiretskiy通过实…