国产精品久久久aaaa,日日干夜夜操天天插,亚洲乱熟女香蕉一区二区三区少妇,99精品国产高清一区二区三区,国产成人精品一区二区色戒,久久久国产精品成人免费,亚洲精品毛片久久久久,99久久婷婷国产综合精品电影,国产一区二区三区任你鲁

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

Xilinx原語(yǔ)IBUFDS、OBUFDS的使用及仿真

C29F_xilinx_inc ? 來(lái)源:賽靈思 ? 作者:賽靈思 ? 2022-02-16 16:21 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

1、介紹
IBUFDS、和OBUFDS都是差分信號(hào)緩沖器,用于不同電平接口之間的緩沖和轉(zhuǎn)換。IBUFDS 用于差分輸入,OBUFDS用于差分輸出。

2、IBUFDS
2.1、理論
IBUFDS是差分輸入緩沖器,支持低壓差分信號(hào)(如LVCMOS、LVDS等)。在IBUFDS中,一個(gè)電平接口用兩個(gè)獨(dú)特的電平接口(I和IB)表示。一個(gè)可以認(rèn)為是主信號(hào),另一個(gè)可以認(rèn)為是從信號(hào)。

IBUFDS原語(yǔ)示意圖如下所示:

poYBAGIMo8CAALk3AAEdiqFyBeM912.png

端口說(shuō)明如下表:

pYYBAGIMo8KABdfrAABz27Hr64s722.jpg

信號(hào)真值表如下:

pYYBAGIMo8OAWS7NAAB_UX4wMsI250.jpg

2.2、仿真
打開VIvado--Tools--Language Templates,搜索“IBUFDS”,可以找到Xilinx提供的模板如下:

IBUFDS #(
.DIFF_TERM("FALSE"), // Differential Termination
.IBUF_LOW_PWR("TRUE"), // Low power="TRUE", Highest
.IOSTANDARD("DEFAULT") // Specify the input I/O standard
) IBUFDS_inst (
.O(O), // Buffer output
.I(I), // Diff_p buffer input (connect directly to top-level port)
.IB(IB) // Diff_n buffer input (connect directly to top-level port)
);

DIFF_TERM、IBUF_LOW_PWR分別指定差分終端和性能模式,IOSTANDARD指定你需要輸出的電平標(biāo)準(zhǔn)。

接下來(lái)例化一個(gè)IBUFDS原語(yǔ)進(jìn)行測(cè)試,Verilog代碼如下:

//------------------------------------------------------------------------
//--IBUFDS測(cè)試模塊
//------------------------------------------------------------------------
//----------------------------------------------------
module IBUFDS_test(
input clk , //時(shí)鐘,50M
input rst_n , //復(fù)位,低電平有效
input data_p , //輸入數(shù)據(jù),差分+
input data_n , //輸入數(shù)據(jù),差分-

output out
);
//----------------------------------------------------
IBUFDS #(
.DIFF_TERM ("FALSE") , // Differential Termination
.IBUF_LOW_PWR ("TRUE") , // Low power="TRUE", Highest
.IOSTANDARD ("DEFAULT") // 選擇I/O電平標(biāo)準(zhǔn),這里選擇默認(rèn)
)
IBUFDS_inst (
.O (out) , // 輸出
.I (data_p) , // 差分輸入+(需要直接連接到頂層端口)
.IB (data_n) // 差分輸入-(需要直接連接到頂層端口)
);

endmodule

每隔20ns分別隨機(jī)生成2個(gè)1位2進(jìn)制數(shù)據(jù)作為差分輸入,觀察輸出,Testbench如下:

//------------------------------------------------
//--IBUFDS原語(yǔ)仿真
//------------------------------------------------
`timescale 1ns/1ns //時(shí)間單位/精度
//----------------------------------------------------
module tb_IBUFDS_test();

reg clk ;
reg rst_n ;
reg data_p ;
reg data_n ;

wire out ;
//----------------------------------------------------
IBUFDS_test IBUFDS_test_inst(
.clk (clk) ,
.rst_n (rst_n) ,
.data_p (data_p) ,
.data_n (data_n) ,

.out (out)
);
//----------------------------------------------------
initial begin
clk = 1'b1; //初始時(shí)鐘為1
rst_n data_p data_n #60 //60個(gè)時(shí)鐘周期后
rst_n end
//----------------------------------------------------------
always #10 clk = ~clk; //系統(tǒng)時(shí)鐘周期20ns

always #20 data_p always #20 data_n

endmodule

仿真結(jié)果如下:

poYBAGIMo8WAVpdHAABSPSP73JI139.png

每隔20ns,2個(gè)差分輸入端口分別隨機(jī)生成2個(gè)1位2進(jìn)制數(shù)據(jù);輸出輸入符合上述的真值表。

3、OBUFDS
3.1、理論
OBUFDS 是一個(gè)差分輸出緩沖器,用于將來(lái)自 FPGA 內(nèi)部邏輯的信號(hào)轉(zhuǎn)換成差分信號(hào)輸出,支持 TMDS、LVDS等電平標(biāo)準(zhǔn)。它的輸出用O和OB兩個(gè)獨(dú)立接口表示。一個(gè)可以認(rèn)為是主信號(hào),另一個(gè)可以認(rèn)為是從信號(hào)。

OBUFDS原語(yǔ)示意圖如下所示:

pYYBAGIMo8eAbDmlAAB2RftdfvY623.png

端口說(shuō)明如下表:

pYYBAGIMo8iAURjGAABz9h5PcJg152.jpg

信號(hào)真值表如下:

poYBAGIMo8qACBjeAABWnDTlHRQ858.jpg

可以看出,輸出+端與輸入一致,輸出-端與輸入相反。

3.2、仿真
打開VIvado--Tools--Language Templates,搜索“OBUFDS”,可以找到Xilinx提供的模板如下:

OBUFDS #(
.IOSTANDARD("DEFAULT"), // Specify the output I/O standard
.SLEW("SLOW") // Specify the output slew rate
) OBUFDS_inst (
.O(O), // Diff_p output (connect directly to top-level port)
.OB(OB), // Diff_n output (connect directly to top-level port)
.I(I) // Buffer input
);

其中IOSTANDARD指定你需要輸出的差分電平標(biāo)準(zhǔn),SLEW根據(jù)你的要求輸出FAST或者SLOW。

接下來(lái)例化一個(gè)OBUFDS原語(yǔ)進(jìn)行測(cè)試,Verilog代碼如下:

//------------------------------------------------------------------------
//--OBUFDS測(cè)試模塊
//------------------------------------------------------------------------
//----------------------------------------------------
module OBUFDS_test(
input clk , //時(shí)鐘,50M
input rst_n , //復(fù)位,低電平有效
input data , //輸入數(shù)據(jù)

output out_p , //輸出數(shù)據(jù),差分+
output out_n //輸出數(shù)據(jù),差分-
);
//----------------------------------------------------
OBUFDS #(
.IOSTANDARD ("DEFAULT") , // 選擇I/O電平標(biāo)準(zhǔn),這里選擇默認(rèn)
.SLEW ("SLOW") // 選擇輸出速率,這里選擇SLOW
)
OBUFDS_inst (
.O (out_p) , // 差分輸出+(需要直接連接到頂層端口)
.OB (out_n) , // 差分輸出-(需要直接連接到頂層端口)
.I (data) // 輸入
);

endmodule

每隔20ns隨機(jī)生成一個(gè)1位2進(jìn)制數(shù)據(jù),觀察差分輸出,Testbench如下:

//------------------------------------------------
//--OBUFDS原語(yǔ)仿真
//------------------------------------------------
`timescale 1ns/1ns //時(shí)間單位/精度
//----------------------------------------------------
module tb_OBUFDS_test();
reg clk ;
reg rst_n ;
reg data ;

wire out_p ;
wire out_n ;
//----------------------------------------------------
OBUFDS_test OBUFDS_test_inst(
.clk (clk),
.rst_n (rst_n),
.data (data),

.out_p (out_p),
.out_n (out_n)
);
//----------------------------------------------------
initial begin
clk = 1'b1; //初始時(shí)鐘為1
rst_n data #60 //60個(gè)時(shí)鐘周期后
rst_n end
//----------------------------------------------------------
always #10 clk = ~clk; //系統(tǒng)時(shí)鐘周期20ns
always #20 data

endmodule

仿真結(jié)果如下:

pYYBAGIMo8yAeXMTAABKljcqjio357.png

每隔20ns,data隨機(jī)生成0或者1,out_p與輸入一致,out_n與輸入相反;差分輸出信號(hào)符合上述的真值表。

審核編輯:符乾江

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • Xilinx
    +關(guān)注

    關(guān)注

    73

    文章

    2200

    瀏覽量

    131136
  • 仿真
    +關(guān)注

    關(guān)注

    54

    文章

    4483

    瀏覽量

    138272
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    RDMA設(shè)計(jì)46:RoCE v2原語(yǔ)功能:?jiǎn)芜呎Z(yǔ)義

    本博文主要交流設(shè)計(jì)思路,在本博客已給出相關(guān)博文約170篇,希望對(duì)初學(xué)者有用。注意這里只是拋磚引玉,切莫認(rèn)為參考這就可以完成商用IP設(shè)計(jì)。 續(xù)上,為便于查看,給出表1部分表1 RoCE v2原語(yǔ)功能
    發(fā)表于 03-01 23:14

    Xilinx FPGA中IDELAYCTRL參考時(shí)鐘控制模塊的使用

    IDELAYCTRL 是 Xilinx FPGA(特別是支持高速 I/O 的系列,如 Virtex-5/6/7、Kintex-7、Artix-7、Spartan-6/7 等)中用于管理和校準(zhǔn)輸入延遲模塊(IDELAYE2/IDELAYE3)的必須存在的參考時(shí)鐘控制模塊。
    的頭像 發(fā)表于 02-26 14:41 ?2686次閱讀

    RDMA設(shè)計(jì)45:RoCE v2 原語(yǔ)功能驗(yàn)證與分析2

    本博文主要交流設(shè)計(jì)思路,在本博客已給出相關(guān)博文約170篇,希望對(duì)初學(xué)者有用。注意這里只是拋磚引玉,切莫認(rèn)為參考這就可以完成商用IP設(shè)計(jì)。續(xù)上,為便于查看,給出表1部分 表1 RoCE v2原語(yǔ)功能
    發(fā)表于 02-26 07:52

    RDMA設(shè)計(jì)44:RoCE v2原語(yǔ)功能驗(yàn)證與分析

    它是RoCE v2協(xié)議進(jìn)行信息及數(shù)據(jù)交換的核心機(jī)制,也是DUT需要實(shí)現(xiàn)的核心機(jī)制之一,對(duì)該功能的仿真驗(yàn)證需要考慮指令的提交數(shù)據(jù)包的組裝及發(fā)送、數(shù)據(jù)的DMA處理等。
    的頭像 發(fā)表于 02-25 09:26 ?97次閱讀
    RDMA設(shè)計(jì)44:RoCE v2<b class='flag-5'>原語(yǔ)</b>功能驗(yàn)證與分析

    探索AMD XILINX Versal Prime Series VMK180評(píng)估套件,開啟硬件創(chuàng)新之旅

    探索AMD XILINX Versal Prime Series VMK180評(píng)估套件,開啟硬件創(chuàng)新之旅 在電子設(shè)計(jì)的領(lǐng)域中,快速實(shí)現(xiàn)原型設(shè)計(jì)并確保高性能是每一位工程師的追求。AMD XILINX
    的頭像 發(fā)表于 12-15 14:40 ?519次閱讀

    Xilinx FPGA串行通信協(xié)議介紹

    Xilinx FPGA因其高性能和低延遲,常用于串行通信接口設(shè)計(jì)。本文深入分析了Aurora、PCI Express和Serial RapidIO這三種在Xilinx系統(tǒng)設(shè)計(jì)中關(guān)鍵的串行通信協(xié)議。介紹了它們的特性、優(yōu)勢(shì)和應(yīng)用場(chǎng)景,以及如何在不同需求下選擇合適的協(xié)議。
    的頭像 發(fā)表于 11-14 15:02 ?2533次閱讀
    <b class='flag-5'>Xilinx</b> FPGA串行通信協(xié)議介紹

    板子的差分時(shí)鐘如何正確地轉(zhuǎn)化為單端

    正確的時(shí)序 看起來(lái)這兩種方法都是將差分轉(zhuǎn)為單端,可是實(shí)際上是不一樣的,我們進(jìn)入差分分頻IP核的代碼,可以看到如下內(nèi)容 IP核用的是IBUFDS原語(yǔ)將差分時(shí)鐘信號(hào)轉(zhuǎn)為了單端,所以真正的區(qū)別在于原語(yǔ)的區(qū)別
    發(fā)表于 10-27 07:29

    vivado仿真時(shí)GSR信號(hào)的影響

    利用vivado進(jìn)行設(shè)計(jì)xilinx FPGA時(shí),寫完設(shè)計(jì)代碼和仿真代碼后,點(diǎn)擊run simulation(啟動(dòng)modelsim進(jìn)行仿真)。
    的頭像 發(fā)表于 08-30 14:22 ?1370次閱讀
    vivado<b class='flag-5'>仿真</b>時(shí)GSR信號(hào)的影響

    詳解ADC電路的靜態(tài)仿真和動(dòng)態(tài)仿真

    ADC電路主要存在靜態(tài)仿真和動(dòng)態(tài)仿真兩類仿真,針對(duì)兩種不同的仿真,我們存在不同的輸入信號(hào)和不同的數(shù)據(jù)采樣,因此靜態(tài)仿真和動(dòng)態(tài)
    的頭像 發(fā)表于 06-05 10:19 ?1984次閱讀
    詳解ADC電路的靜態(tài)<b class='flag-5'>仿真</b>和動(dòng)態(tài)<b class='flag-5'>仿真</b>

    基于AD9613與Xilinx MPSoC平臺(tái)的高速AD/DA案例分享

    本文主要介紹基于Xilinx UltraScale+MPSoC XCZU7EV的高速AD采集與高速DA輸出案例
    的頭像 發(fā)表于 06-03 14:22 ?895次閱讀
    基于AD9613與<b class='flag-5'>Xilinx</b> MPSoC平臺(tái)的高速AD/DA案例分享

    XILINX XCZU67DR FPGA完整原理圖

    電子發(fā)燒友網(wǎng)站提供《XILINX XCZU67DR FPGA完整原理圖.pdf》資料免費(fèi)下載
    發(fā)表于 05-30 15:29 ?26次下載

    Xilinx Shift RAM IP概述和主要功能

    Xilinx Shift RAM IP 是 AMD Xilinx 提供的一個(gè) LogiCORE IP 核,用于在 FPGA 中實(shí)現(xiàn)高效的移位寄存器(Shift Register)。該 IP 核利用
    的頭像 發(fā)表于 05-14 09:36 ?1073次閱讀

    《聊一聊ZXDoc》之CAN總線仿真、面板仿真

    ZXDoc支持CAN總線仿真、面板仿真功能,通過虛擬化通信環(huán)境,提前驗(yàn)證、優(yōu)化和保障系統(tǒng)可靠性,降低開發(fā)成本與風(fēng)險(xiǎn),面板仿真還使其畫面實(shí)物化,便于操作和理解,仿真功能已成為ECU研發(fā)和
    的頭像 發(fā)表于 05-09 11:30 ?1486次閱讀
    《聊一聊ZXDoc》之CAN總線<b class='flag-5'>仿真</b>、面板<b class='flag-5'>仿真</b>

    ad9467沒有數(shù)據(jù)的輸出是怎么回事?

    ;// 用于時(shí)鐘觸發(fā)的寄存器信號(hào) wire adc_dco_ibuf_s;// 時(shí)鐘信號(hào) regadc_dco_reg; // IBUFDS: 將差分輸入信號(hào)轉(zhuǎn)換為單端信號(hào) IBUFDS i_dco
    發(fā)表于 04-28 07:52

    ISERDESE2原語(yǔ)端口及參數(shù)介紹

    前面在講解HDMI接口之前,講解過IDDR、ODDR、OSERDESE2、IBUF等原語(yǔ),之后一直有讀者在問什么時(shí)候更新ISERDESE2這個(gè)原語(yǔ)。前文講解過這些原語(yǔ)都在HDMI或者RGMII中使用過,但是ISERDESE2這個(gè)
    的頭像 發(fā)表于 03-17 10:52 ?2672次閱讀
    ISERDESE2<b class='flag-5'>原語(yǔ)</b>端口及參數(shù)介紹