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

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

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

Vivado HLS中常見的接口類型

454398 ? 來源:CSDN 博主 ? 作者:weixin_41967965 ? 2020-12-26 11:44 ? 次閱讀

Vivado HLS中常見的接口類型有:

1. ap_none

默認類型,該類型不適用任何I/O轉(zhuǎn)換協(xié)議,它用于表示只讀的輸入信號,對應于HDL中的wire類型。

2. ap_stable

只用于輸入信號,其具體實現(xiàn)方式仍為ap_none。它用于向Vivado HLS的綜合器表明該信號在兩次復位之間值是不變的。

3. ap_vld

在數(shù)據(jù)端口port_name的基礎上創(chuàng)建一個額外的數(shù)據(jù)有效信號指示_vld。

4. ap_ack

在數(shù)據(jù)端口port_name的基礎上創(chuàng)建一個額外的應答信號指示_ack。

5. ap_hs

使用該類型,則會同時創(chuàng)建額外的數(shù)據(jù)有效信號和應答信號,其效果相當于ap_vld與ap_ack之和。

6. ap_ovld

對于輸入信號,其效果與ap_none是一樣的。

對于輸出信號,其效果與ap_vld是一樣的。

對于雙向(inout)類型的信號,輸入使用ap_none,輸出使用ap_vld進行處理。

7. ap_memory

把對數(shù)組的讀寫等效為對外部RAM的引用。

8. ap_fifo

把對數(shù)組、指針和參數(shù)引用的讀寫用FIFO的方式來實現(xiàn)。

9. ap_bus

把對指針和參數(shù)引用的讀寫用總線接口的方式來實現(xiàn)。

在TCL腳本中,我們也可以對接口類型進行更改。在圖形化的開發(fā)界面中,可以直接在directives.tcl中進行規(guī)則的編輯,如圖1所示。

圖1 通過TCL配置改變端口類型

圖1 通過TCL配置改變端口類型

此外,我們還可以通過在Vivado HLS中的Directive視圖中選擇INTERFACE來進行更改,如圖2所示。

圖2 接口的類型選擇

例如:

void adders_io(intin1,intin2,int*in_out1)

{

*in_out1 = in1 + in2 + *in_out1;

}

這里我們使用了指針。從其本質(zhì)上來說,指針是一個“雙向”的類型,即它即可以做為輸入,同時也可以用來輸出。在默認的情況下,端口的綜合結果如圖3所示。

圖3 默認情況下的端口綜合結果

圖3 默認情況下的端口綜合結果

如果按照圖1中的示例對端口類型進行指定,則C綜合之后的結果如圖4所示。

圖4 自定義端口類型之后的端口綜合結果

圖4 自定義端口類型之后的端口綜合結果

在圖1的示例中,我們指定了端口的類型,所以對比圖3與圖4,可以看出,端口in1和in2的類型從默認的ap_none變?yōu)樽远x的ap_vld,并且分別具有了對應的數(shù)據(jù)有效指示位in1_ap_vld和in2ap_vld。

一、Block-level接口協(xié)議(塊級接口協(xié)議,與函數(shù)本身相關聯(lián),不與任何數(shù)據(jù)端口相關聯(lián))

Block-Level Interface端口:
顧名思義,Block端口的作用就是用來控制Block的操作。它在c參數(shù)中沒有直接的對應,但是它對應了c函數(shù)的調(diào)用/返回過程。默認Block端口都會加上,如果不需要,可以對函數(shù)頂層設置ap_none。

ap_ctrl_none:沒有塊級I/O控制協(xié)議

ap_ctrl_chain:它同ap_ctrl_hs幾乎一樣,除了多出一個輸入信號ap_continue,它可以使得下游模塊控制上游模塊的運行/終止。不過這種模式比較不常用,所以有興趣的讀者,可以自己去研究相關的文檔。

ap_ctrl_hs:塊級I/O控制握手協(xié)議,我們已經(jīng)采用的(ap_start,ap_ready,ap_idle,ap_done)

ap_ctrl_hs是默認的端口類型,它綜合出來的端口會有額外的4個系統(tǒng)控制信號,如下所示:
圖片居中使用:

o4YBAF9uImKAXuooAAB5NwFc8lM104.png

其端口行為時序如下:

o4YBAF9uImWAcPaUAAILFJ4vGe8191.png

在ap_rst釋放后,ap_start高電平啟動模塊的運行,然后ap_idle立即拉低表明模塊不再空閑。

ap_ready拉高表明本模塊已經(jīng)準備好接收新的輸入,不過它的行為會稍微有些復雜,在non-pipelined實現(xiàn)中,ap_ready和ap_done會同時拉高;在pipelined實現(xiàn)中,它可能會隨時拉高。

o4YBAF9uImiAHBsxAAFmYJIe09Y263.jpg

二、Port-level接口協(xié)議

Port端口會跟c的參數(shù)有直接的對應關系。按照c參數(shù)的不同,標量,數(shù)組,指針,HLS綜合后的rtl端口也有很多中不同的類型可供選

a) ap_ovid :一般用于in-out指針

b) ap_none

c) ap_hs:包括ap_vld(使能)ap_sck(應答)

其中Port level是我們需要重點關注的,它又可以細分為4中類型:(出處:http://xilinx.eetrend.com/blog/9935 )

A. AXI4-Interface:支持Stream,Lite,F(xiàn)ull共3中類型
B. NO I/O協(xié)議:無端口協(xié)議
C. Wire Handshakes:握手協(xié)議
D. Memory Interface:內(nèi)存訪問型的端口協(xié)議

各種rtl端口協(xié)議和c參數(shù)類型的對應關系如下:

pIYBAF9uImmAc8N9AADCuQ0I0mE194.jpg


o4YBAF9uImuAZZA3AADoB9bmNsg287.png

三、其他

1.可以IO口添加寄存器,目的是可以控制輸入輸出波形。(添加寄存器條件是要配置成:ap_hs)


2.可以對設計添加全局使能端口。

pIYBAF9uIneAfnkSAANp9Wu6l2Y865.png

編輯:hfy


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

    關注

    19

    文章

    805

    瀏覽量

    66226
  • HLS
    HLS
    +關注

    關注

    1

    文章

    128

    瀏覽量

    23993
收藏 人收藏

    評論

    相關推薦

    如何選擇適合的音頻線接口類型

    。 常見的音頻線接口類型 3.5mm 音頻接口 用途 :這是最常見的音頻接口,廣泛用于智能手機、筆記本電腦、耳機和便攜式音樂播放器。 特點
    的頭像 發(fā)表于 10-30 15:22 ?170次閱讀

    光纖跳線常用接口類型—— 以山澤品牌為例

    在現(xiàn)代網(wǎng)絡建設中,光纖跳線是不可或缺的關鍵組件。不同的應用場景需要不同類型的光纖跳線接口。今天,我們就來詳細介紹幾種常見的光纖跳線接口類型,并以山澤品牌的產(chǎn)品為例,幫助你在選擇時更加得
    的頭像 發(fā)表于 10-18 15:58 ?204次閱讀

    天線接口類型有哪幾種

    天線接口類型是指天線與無線電設備連接的物理接口,它們對于確保信號的有效傳輸至關重要。以下是一些常見的天線接口類型,以及它們的特點和應用場景: SMA
    的頭像 發(fā)表于 10-15 16:06 ?471次閱讀

    傳輸接口類型有哪些

    ,其中數(shù)據(jù)位按順序一個接一個地通過單一通道傳輸。以下是一些常見的串行接口類型: 1.1 RS-232 RS-232是一種標準的串行通信協(xié)議,廣泛應用于計算機與外設(如調(diào)制解調(diào)器、鼠標、打印機等)之間的通信。它使用9針或25針的D-sub連接器,傳
    的頭像 發(fā)表于 10-12 14:04 ?201次閱讀

    簡述內(nèi)存的接口類型

    內(nèi)存的接口類型多種多樣,這些接口不僅決定了內(nèi)存與主板之間的連接方式,還影響了內(nèi)存的傳輸速度和穩(wěn)定性。
    的頭像 發(fā)表于 09-10 14:24 ?1259次閱讀

    CAN總線的接口類型

    CAN總線(Controller Area Network)是一種基于廣播的串行通信協(xié)議,廣泛用于連接分布式系統(tǒng)中的各個設備,實現(xiàn)它們之間的數(shù)據(jù)交換和控制。CAN總線接口的定義涵蓋了物理層和數(shù)據(jù)鏈路層的多個方面,包括接口類型、引腳定義、通信速率等。以下是對CAN總線
    的頭像 發(fā)表于 09-03 14:13 ?1135次閱讀

    研華工控機購買指南:常見電源接口類型,如何選擇合適的電源接口

    在選擇研華工控機時,了解其電源接口的相關信息是確保系統(tǒng)穩(wěn)定運行和兼容性的關鍵。下面就隨蘇州研訊電子科技有限公司一起繼續(xù)來看 研華工控機 購買指南系列之常見電源接口類型,如何選擇合適的工控機電源
    的頭像 發(fā)表于 07-03 16:08 ?516次閱讀
    研華工控機購買指南:<b class='flag-5'>常見</b>電源<b class='flag-5'>接口類型</b>,如何選擇合適的電源<b class='flag-5'>接口</b>

    電路設計中常用的接口類型介紹

    電路設計中,接口類型的選擇直接影響到系統(tǒng)的可靠性、穩(wěn)定性和傳輸效率。 TTL電平接口 TTL電平接口的運行速度通常被限制在30MHz以內(nèi)。這是因為雙極結型晶體管(BJT)輸入端固有的幾皮法拉(pF
    的頭像 發(fā)表于 06-09 16:52 ?609次閱讀

    HDMI常見接口類型及應用領域

    易用等特點,成為了數(shù)字娛樂、信息傳遞和多媒體設備連接的重要接口。本文將詳細介紹HDMI常見接口類型及其在不同領域的應用,以期為讀者提供全面而深入的理解。
    的頭像 發(fā)表于 05-29 16:48 ?2507次閱讀

    伺服電機應用中常見干擾類型和產(chǎn)生途徑

    伺服電機應用中常見干擾類型和產(chǎn)生途徑
    的頭像 發(fā)表于 01-07 17:56 ?1333次閱讀

    家用游戲機的控制器接口類型

    家用游戲機的控制器接口類型是游戲機和手柄之間進行連接和通信的關鍵部分。它決定了用戶如何與游戲機進行交互,并直接影響到游戲體驗的質(zhì)量和多樣性。本文將詳細介紹幾種常見的家用游戲機控制器接口類型,包括有線
    的頭像 發(fā)表于 01-04 11:23 ?1294次閱讀

    筆記本光驅(qū)接口類型介紹

    、筆記本光驅(qū)接口類型 CD-ROM接口 CD-ROM接口是筆記本電腦上最常見的光驅(qū)接口類型,主要用于讀取CD光盤的數(shù)據(jù)。這種
    的頭像 發(fā)表于 12-30 16:07 ?5798次閱讀

    CN0409模塊的接口類型是什么?能在stm32上使用嗎?

    請問,CN0409模塊的接口類型是什么?能在stm32上使用嗎?有沒有使用說明?
    發(fā)表于 12-27 07:05

    條形液晶屏有哪些接口類型?

    條形液晶屏有哪些接口類型? 隨著科技的不斷發(fā)展,條形液晶屏已成為眾多領域的重要顯示設備。為了更好地滿足不同的應用需求,條形液晶屏提供了多種接口類型。接下來條形液晶屏廠家將對條形液晶屏的接口類型及其
    的頭像 發(fā)表于 11-24 16:35 ?1162次閱讀

    使用Vivado高層次綜合(HLS)進行FPGA設計的簡介

    電子發(fā)燒友網(wǎng)站提供《使用Vivado高層次綜合(HLS)進行FPGA設計的簡介.pdf》資料免費下載
    發(fā)表于 11-16 09:33 ?0次下載
    使用<b class='flag-5'>Vivado</b>高層次綜合(<b class='flag-5'>HLS</b>)進行FPGA設計的簡介