衡阳派盒市场营销有限公司

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

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

3天內不再提示

如何設計高效PL和PS數據交互通路的AXI接口

454398 ? 來源:CSDN博主 ? 作者:肅寧老趙 ? 2020-11-13 16:43 ? 次閱讀

(一)AXI接口

如何設計高效的 PL 和 PS 數據交互通路是 ZYNQ 芯片設計的重中之重。AXI 全稱 Advanced eXtensible Interface,是 Xilinx 從 6 系列的 FPGA 開始引入的一個接口協議,主要描述了主設備和從設備之間的數據傳輸方式。在 ZYNQ 中繼續使用,版本是 AXI4,所以我們經常會看到 AXI4.0, ZYNQ 內部設備都有 AXI 接口。其實 AXI 就是 ARM 公司提出的AMBA(Advanced Microcontroller Bus Architecture)的一個部分,是一種高性能、高帶寬、低延遲的片內總線。

AXI 協議主要描述了主設備和從設備之間的數據傳輸方式,主設備和從設備之間通過握手信號建立連接。當從設備準備好接收數據時,會發出 READY 信號。當主設備的數據準備好時,會發出和維持 VALID 信號,表示數據有效。數據只有在 VALID 和 READY 信號都有效的時候才開始傳輸。當這兩個信號持續保持有效,主設備會繼續傳輸下一個數據。主設備可以撤銷VALID 信號,或者從設備撤銷 READY 信號終止傳輸。 AXI 的協議如圖, T2 時,從設備的 READY信號有效, T3 時主設備的 VILID 信號有效,數據傳輸開始。

在 ZYNQ 中,支持 AXI-Lite, AXI4 和 AXI-Stream 三種總線,通過表以看到這三種AXI 接口的特性。

1、AXI4-Lite:

具有輕量級,結構簡單的特點,適合小批量數據、簡單控制場合。不支持批量傳輸,讀寫時一次只能讀寫一個字(32bit)。主要用于訪問一些低速外設和外設的控制。

2、AXI4:

接口和 AXI-Lite 差不多,只是增加了一項功能就是批量傳輸,可以連續對一片地址進行一次性讀寫。也就是說具有數據讀寫的 burst 功能。

上面兩種均采用內存映射控制方式,即 ARM 將用戶自定義 IP 編入某一地址進行訪問,讀寫時就像在讀寫自己的片內 RAM編程也很方便,開發難度較低。代價就是資源占用過多,需要額外的讀地址線、寫地址線、讀數據線、寫數據線、寫應答線。

3、AXI4-Stream:

這是一種連續流接口,不需要地址線(很像 FIFO,一直讀或一直寫就行)。對于這類 IP,ARM 不能通過上面的內存映射方式控制(FIFO 根本沒有地址的概念),必須有一個轉換裝置,例如 AXI-DMA 模塊來實現內存映射到流式接口的轉換。 AXI-Stream 適用的場合有很多:視頻流處理;通信協議轉換;數字信號處理;無線通信等。其本質都是針對數值流構建的數據通路,從信源(例如 ARM 內存、 DMA、無線接收前端等)到信宿(例如 HDMI 顯示器、高速 AD 音頻輸出,等)構建起連續的數據流。這種接口適合做實時信號處理。

在 ZYNQ 芯片內部用硬件實現了 AXI 總線協議,包括 9 個物理接口,分別為 AXI-GP0~AXIGP3, AXI-HP0~AXI-HP3, AXI-ACP 接口。AXI_ACP 接口,是 ARM 多核架構下定義的一種接口,中文翻譯為加速器一致性端口,用來管理 DMA 之類的不帶緩存的 AXI 外設, PS 端是 Slave 接口。AXI_HP 接口,是高性能/帶寬的 AXI3.0 標準的接口,總共有四個, PL 模塊作為主設備連接。主要用于 PL 訪問 PS 上的存儲器(DDR 和 On-Chip RAM)AXI_GP 接口,是通用的 AXI 接口,總共有四個,包括兩個 32 位主設備接口和兩個 32 位從設備接口。

只有兩個 AXI-GP 是 Master Port,即主機接口,其余 7 個口都是 Slave Port(從機接口)。主機接口具有發起讀寫的權限, ARM 可以利用兩個 AXI-GP 主機接口主動訪問 PL 邏輯,其實就是把 PL 映射到某個地址,讀寫 PL 寄存器如同在讀寫自己的存儲器。其余從機接口就屬于被動接口,接受來自 PL 的讀寫,逆來順受。

另外這 9 個 AXI 接口性能也是不同的。 GP 接口是 32 位的低性能接口,理論帶寬600MB/s,而 HP 和 ACP 接口為 64 位高性能接口,理論帶寬 1200MB/s。

位于 PS 端的 ARM 直接有硬件支持 AXI 接口,而 PL 則需要使用邏輯實現相應的 AXI 協議。Xilinx 在 Vivado 開發環境里提供現成 IP 如 AXI-DMA, AXI-GPIO, AXI-Dataover, AXI-Stream 都實現了相應的接口,使用時直接從 Vivado 的 IP 列表中添加即可實現相應的功能。

下圖為 Vivado 下的各種 DMA IP:

幾個常用的 AXI 接口 IP 的功能:

AXI-DMA:實現從 PS 內存到 PL 高速傳輸高速通道 AXI-HP<---->AXI-Stream 的轉換

AXI-FIFO-MM2S:實現從 PS 內存到 PL 通用傳輸通道 AXI-GP<----->AXI-Stream 的轉換

AXI-Datamover:實現從 PS 內存到 PL 高速傳輸高速通道 AXI-HP<---->AXI-Stream 的轉換,只不過這次是完全由 PL 控制的, PS 是完全被動的。

AXI-VDMA:實現從 PS 內存到 PL 高速傳輸高速通道 AXI-HP<---->AXI-Stream 的轉換,只不過是專門針對視頻、圖像等二維數據的。

AXI-CDMA:這個是由 PL 完成的將數據從內存的一個位置搬移到另一個位置,無需 CPU 來插手。

(二)AXI 交換機

AXI 協議嚴格的講是一個點對點的主從接口協議,當多個外設需要互相交互數據時,我們需要加入一個 AXI Interconnect 模塊,也就是 AXI 互聯矩陣,作用是提供將一個或多個 AXI 主設備連接到一個或多個 AXI 從設備的一種交換機制(有點類似于交換機里面的交換矩陣)。這個 AXI Interconnect IP 核最多可以支持 16 個主設備、 16 個從設備,如果需要更多的接口,可以多加入幾個 IP 核。

AXI Interconnect 基本連接模式有以下幾種:

N-to-1 Interconnect

to-N Interconnect

N-to-M Interconnect (Crossbar Mode)

N-to-M Interconnect (Shared Access Mode)

ZYNQ 內部的 AXI 接口設備就是通過互聯矩陣的的方式互聯起來的,既保證了傳輸數據的高效性,又保證了連接的靈活性。 Xilinx 在 Vivado 里我們提供了實現這種互聯矩陣的 IP 核axi_interconnect,我們只要調用就可以。

編輯:hfy

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

    關注

    134

    文章

    9169

    瀏覽量

    369247
  • Zynq
    +關注

    關注

    10

    文章

    610

    瀏覽量

    47298
  • AXI
    AXI
    +關注

    關注

    1

    文章

    128

    瀏覽量

    16713
收藏 人收藏

    評論

    相關推薦

    ZYNQ基礎---AXI DMA使用

    前言 在ZYNQ中進行PL-PS數據交互的時候,經常會使用到DMA,其實在前面的ZYNQ學習當中,也有學習過DMA的使用,那就是通過使用自定義的IP,完成HP接口向內存寫入和讀取
    的頭像 發表于 01-06 11:13 ?509次閱讀
    ZYNQ基礎---<b class='flag-5'>AXI</b> DMA使用

    AMBA AXI4接口協議概述

    AMBA AXI4(高級可擴展接口 4)是 ARM 推出的第四代 AMBA 接口規范。AMD Vivado Design Suite 2014 和 ISE Design Suite 14 憑借半導體產業首個符合
    的頭像 發表于 10-28 10:46 ?312次閱讀
    AMBA <b class='flag-5'>AXI</b>4<b class='flag-5'>接口</b>協議概述

    復旦微PS+PL異構多核開發案例分享,基于FMQL20SM國產處理器平臺

    典型應用領域 axi_uart_demo案例演示案例說明PS端通過AXI4-Lite總線發送命令至PLAXI Uartlite IP核,I
    發表于 08-22 14:04

    FM20S用戶手冊-PS + PL異構多核案例開發手冊

    ;,可看到UART1已配置成EMIO模式。 2 emio_can_demo案例 2.1案例功能 案例功能:PS端通過EMIO方式使用CAN接口進行數據收發 CON6通過CAN總線隔離芯片引出P
    發表于 07-25 16:14

    Xilinx NVMe AXI4主機控制器,AXI4接口高性能版本介紹

    NVMe AXI4 Host Controller IP可以連接高速存儲PCIe SSD,無需CPU,自動加速處理所有的NVMe協議命令,具備獨立的數據寫入和讀取AXI4接口,不但適用
    的頭像 發表于 07-18 09:17 ?646次閱讀
    Xilinx NVMe <b class='flag-5'>AXI</b>4主機控制器,<b class='flag-5'>AXI</b>4<b class='flag-5'>接口</b>高性能版本介紹

    有關PL端利用AXI總線控制PS端DDR進行讀寫(從機wready信號一直不拉高)

    一直拉高的。這與寫數據通道好像有點區別。 我不清楚PS 端的DDR到底發生了什么,但是和MIG核就是有點不一樣,通過仿真MIG核可以發現,PL端的DDR是會先一直發出wready信號的。這個問題就是我
    發表于 05-31 12:04

    SoC設計中總線協議AXI4與AXI3的主要區別詳解

    AXI4和AXI3是高級擴展接口(Advanced eXtensible Interface)的兩個不同版本,它們都是用于SoC(System on Chip)設計中的總線協議,用于處理器和其它外設之間的高速
    的頭像 發表于 05-10 11:29 ?7311次閱讀
    SoC設計中總線協議<b class='flag-5'>AXI</b>4與<b class='flag-5'>AXI</b>3的主要區別詳解

    FPGA通過AXI總線讀寫DDR3實現方式

    AXI總線由一些核心組成,包括AXI主處理器接口AXI4)、AXI處理器到協處理器接口
    發表于 04-18 11:41 ?1345次閱讀

    高效1.5MHz 1.2A同步降壓穩壓器PL5900A數據手冊

    電子發燒友網站提供《高效1.5MHz 1.2A同步降壓穩壓器PL5900A數據手冊.pdf》資料免費下載
    發表于 04-16 09:25 ?4次下載

    高效、環保的電源管理——PL5900A 1.2A同步降壓調節器”

    PL5900A 1.2A同步降壓調節器:高效電源管理新選擇” “高效能源之星:深入解析PL5900A 1.2A同步降壓調節器” “PL
    的頭像 發表于 03-29 11:42 ?695次閱讀
    “<b class='flag-5'>高效</b>、環保的電源管理——<b class='flag-5'>PL</b>5900A 1.2A同步降壓調節器”

    高效充電解決方案:PL7501CL雙節鋰電池充電管理芯片”

    PL7501CL雙節鋰電池充電管理芯片:高效充電新選擇” “探索PL7501CL充電芯片:移動電源與藍牙音箱的理想搭檔” “PL7501CL鋰電池充電管理芯片:智能充電,安全無憂
    的頭像 發表于 03-29 11:40 ?793次閱讀
    “<b class='flag-5'>高效</b>充電解決方案:<b class='flag-5'>PL</b>7501CL雙節鋰電池充電管理芯片”

    .PL7501C:雙節鋰電池高效充電新選擇

    .PL7501C:雙節鋰電池高效充電新選擇
    的頭像 發表于 03-25 15:32 ?699次閱讀
    .<b class='flag-5'>PL</b>7501C:雙節鋰電池<b class='flag-5'>高效</b>充電新選擇

    高效同步升壓轉換芯片PS7526數據手冊

    PS7526 是一顆高效同步升壓轉換芯片,內部集成低阻抗功率MOS。具有短路保護功能內部集成軟啟動電路,無需外部補償電容,外部反饋網絡。PS7526 為移動電源等高效升壓應用領域提供了
    發表于 02-25 09:15 ?3次下載

    PCIe-AXI-Cont用戶手冊

    Transaction layer的所有功能特性,不僅內置DMA控制器,而且具備AXI4用戶接口,提供一個高性能,易于使用,可定制化的PCIe-AXI互連解決方案,同時適用于ASIC和FPGA。
    發表于 02-22 09:15 ?3次下載

    AMBA總線之AXI設計的關鍵問題講解

    首先我們看一下針對AXI接口的IP設計,在介紹之前我們先回顧一下AXI所具有的一些feature。
    的頭像 發表于 02-20 17:12 ?1989次閱讀
    AMBA總線之<b class='flag-5'>AXI</b>設計的關鍵問題講解
    大发888博必发| 东方夏威夷娱乐| 仁寿县| 保单百家乐官网游戏机厂家| 澳门百家乐经历| 大发888游戏平台hana| 百家乐官网也能赢钱么| 皇马百家乐官网的玩法技巧和规则 | 百家乐官网实战玩法| 免费百家乐官网奥秘| 百家乐官网德州扑克发牌盒| 闲和庄百家乐娱乐城| 怀来县| 百家乐技巧阅读| 百家乐事电影| 大发888娱乐场游戏| 百家乐官网波音平台有假吗| 百家乐投注科学公式| 棋牌评测| 百家乐官网网上娱乐场开户注册| 伯爵百家乐娱乐| 百家乐官网美女真人| 百家乐长龙怎么预判| 和记网上娱乐| 百家乐官网园是真的不| 大发888注册优惠代码| 澳门百家乐官网的故事| 南宁百家乐赌| 百家乐官网交流群号| 百家乐游戏机说明书| 网上真钱麻将游戏| 百家乐百家乐视频| 博九娱乐网| 百家乐正确的打法| 天上人间娱乐城| 功夫百家乐官网的玩法技巧和规则 | 百家乐导航| 百家乐官网上分器定位器| 百家乐娱乐网代理佣金| 百家乐官网机械投注法| 郑州百家乐的玩法技巧和规则|