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

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

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

淺析三種AXI接口的特點(diǎn)

汽車玩家 ? 來源:CSDN ? 作者:肅寧老趙 ? 2020-03-15 17:04 ? 次閱讀

(一)AXI接口

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

AXI 協(xié)議主要描述了主設(shè)備和從設(shè)備之間的數(shù)據(jù)傳輸方式,主設(shè)備和從設(shè)備之間通過握手信號(hào)建立連接。當(dāng)從設(shè)備準(zhǔn)備好接收數(shù)據(jù)時(shí),會(huì)發(fā)出 READY 信號(hào)。當(dāng)主設(shè)備的數(shù)據(jù)準(zhǔn)備好時(shí),會(huì)發(fā)出和維持 VALID 信號(hào),表示數(shù)據(jù)有效。數(shù)據(jù)只有在 VALID 和 READY 信號(hào)都有效的時(shí)候才開始傳輸。當(dāng)這兩個(gè)信號(hào)持續(xù)保持有效,主設(shè)備會(huì)繼續(xù)傳輸下一個(gè)數(shù)據(jù)。主設(shè)備可以撤銷VALID 信號(hào),或者從設(shè)備撤銷 READY 信號(hào)終止傳輸。 AXI 的協(xié)議如圖, T2 時(shí),從設(shè)備的 READY信號(hào)有效, T3 時(shí)主設(shè)備的 VILID 信號(hào)有效,數(shù)據(jù)傳輸開始。

淺析三種AXI接口的特點(diǎn)

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

淺析三種AXI接口的特點(diǎn)

1、AXI4-Lite:

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

2、AXI4:

接口和 AXI-Lite 差不多,只是增加了一項(xiàng)功能就是批量傳輸,可以連續(xù)對(duì)一片地址進(jìn)行一次性讀寫。也就是說具有數(shù)據(jù)讀寫的 burst 功能。

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

3、AXI4-Stream:

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

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

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

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

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

下圖為 Vivado 下的各種 DMA IP:

淺析三種AXI接口的特點(diǎn)

幾個(gè)常用的 AXI 接口 IP 的功能:

AXI-DMA:實(shí)現(xiàn)從 PS 內(nèi)存到 PL 高速傳輸高速通道 AXI-HP<---->AXI-Stream 的轉(zhuǎn)換

AXI-FIFO-MM2S:實(shí)現(xiàn)從 PS 內(nèi)存到 PL 通用傳輸通道 AXI-GP<----->AXI-Stream 的轉(zhuǎn)換

AXI-Datamover:實(shí)現(xiàn)從 PS 內(nèi)存到 PL 高速傳輸高速通道 AXI-HP<---->AXI-Stream 的轉(zhuǎn)換,只不過這次是完全由 PL 控制的, PS 是完全被動(dòng)的。

AXI-VDMA:實(shí)現(xiàn)從 PS 內(nèi)存到 PL 高速傳輸高速通道 AXI-HP<---->AXI-Stream 的轉(zhuǎn)換,只不過是專門針對(duì)視頻、圖像等二維數(shù)據(jù)的。

AXI-CDMA:這個(gè)是由 PL 完成的將數(shù)據(jù)從內(nèi)存的一個(gè)位置搬移到另一個(gè)位置,無需 CPU 來插手。

(二)AXI 交換機(jī)

AXI 協(xié)議嚴(yán)格的講是一個(gè)點(diǎn)對(duì)點(diǎn)的主從接口協(xié)議,當(dāng)多個(gè)外設(shè)需要互相交互數(shù)據(jù)時(shí),我們需要加入一個(gè) AXI Interconnect 模塊,也就是 AXI 互聯(lián)矩陣,作用是提供將一個(gè)或多個(gè) AXI 主設(shè)備連接到一個(gè)或多個(gè) AXI 從設(shè)備的一種交換機(jī)制(有點(diǎn)類似于交換機(jī)里面的交換矩陣)。這個(gè) AXI Interconnect IP 核最多可以支持 16 個(gè)主設(shè)備、 16 個(gè)從設(shè)備,如果需要更多的接口,可以多加入幾個(gè) IP 核。

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

N-to-1 Interconnect

to-N Interconnect

N-to-M Interconnect (Crossbar Mode)

N-to-M Interconnect (Shared Access Mode)

淺析三種AXI接口的特點(diǎn)

淺析三種AXI接口的特點(diǎn)

淺析三種AXI接口的特點(diǎn)

ZYNQ 內(nèi)部的 AXI 接口設(shè)備就是通過互聯(lián)矩陣的的方式互聯(lián)起來的,既保證了傳輸數(shù)據(jù)的高效性,又保證了連接的靈活性。 Xilinx 在 Vivado 里我們提供了實(shí)現(xiàn)這種互聯(lián)矩陣的 IP 核axi_interconnect,我們只要調(diào)用就可以。

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

    關(guān)注

    33

    文章

    8451

    瀏覽量

    150732
  • IP核
    +關(guān)注

    關(guān)注

    4

    文章

    326

    瀏覽量

    49380
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    AMBA AXI4接口協(xié)議概述

    AMBA AXI4(高級(jí)可擴(kuò)展接口 4)是 ARM 推出的第四代 AMBA 接口規(guī)范。AMD Vivado Design Suite 2014 和 ISE Design Suite 14 憑借半導(dǎo)體產(chǎn)業(yè)首個(gè)符合
    的頭像 發(fā)表于 10-28 10:46 ?128次閱讀
    AMBA <b class='flag-5'>AXI</b>4<b class='flag-5'>接口</b>協(xié)議概述

    mosfet的三種工作狀態(tài)及工作條件是什么

    的工作狀態(tài)及工作條件對(duì)于理解和設(shè)計(jì)相關(guān)電路至關(guān)重要。以下是MOSFET的三種主要工作狀態(tài)及其工作條件的介紹。 一、MOSFET的三種工作狀態(tài) MOSFET根據(jù)其柵源電壓(VGS)和漏源電壓(VDS
    的頭像 發(fā)表于 10-06 16:51 ?748次閱讀

    單片機(jī)的三種總線結(jié)構(gòu)

    、控制信號(hào)傳遞和地址選擇中發(fā)揮著至關(guān)重要的作用。下面將詳細(xì)闡述這三種總線結(jié)構(gòu)的特點(diǎn)及其在單片機(jī)系統(tǒng)中的應(yīng)用。
    的頭像 發(fā)表于 09-10 11:32 ?1347次閱讀

    放大電路的三種組態(tài)可以放大什么

    放大電路是電子學(xué)中非常重要的組成部分,它們可以將輸入信號(hào)的幅度放大,以滿足各種應(yīng)用的需求。放大電路的三種基本組態(tài)包括共射放大電路、共集放大電路和共基放大電路。每種組態(tài)都有其特定的應(yīng)用和特點(diǎn)。以下
    的頭像 發(fā)表于 07-09 14:31 ?753次閱讀

    有關(guān)PL端利用AXI總線控制PS端DDR進(jìn)行讀寫(從機(jī)wready信號(hào)一直不拉高)

    怎么判斷他到底采用了這三種握手里面的哪種握手,這實(shí)在令人費(fèi)解。還是PS端的DDR的機(jī)制的問題。 5.31 update: 問題找到部分: 情形一:接口的設(shè)置上,如果是設(shè)置為AXI4,如圖所示, 那么
    發(fā)表于 05-31 12:04

    淺析FreeRTOS任務(wù)調(diào)度器的三種調(diào)度算法和應(yīng)用

    FreeRTOS在MCU領(lǐng)域應(yīng)用非常廣泛,今天就給大家講解一下FreeRTOS調(diào)度器中的三種調(diào)度算法,以及在瑞薩RZ/T2L MPU中的應(yīng)用。
    的頭像 發(fā)表于 05-10 14:02 ?6385次閱讀
    <b class='flag-5'>淺析</b>FreeRTOS任務(wù)調(diào)度器的<b class='flag-5'>三種</b>調(diào)度算法和應(yīng)用

    FPGA通過AXI總線讀寫DDR3實(shí)現(xiàn)方式

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

    VMware虛擬機(jī)的三種網(wǎng)絡(luò)模式

    。VMware提供了三種網(wǎng)絡(luò)模式:橋接模式、NAT模式和主機(jī)模式。在本文中,我們將詳細(xì)介紹這三種網(wǎng)絡(luò)模式的特點(diǎn)和用途。 1. 橋接模式: 橋接模式是虛擬機(jī)最常用的網(wǎng)絡(luò)模式之一。在橋接模式下,虛擬機(jī)的網(wǎng)絡(luò)適配器與物理網(wǎng)絡(luò)適配器直接
    的頭像 發(fā)表于 02-04 11:17 ?1843次閱讀

    晶體管的三種工作狀態(tài)及其特點(diǎn)

    晶體管的三種工作狀態(tài)及其特點(diǎn)? 晶體管是一半導(dǎo)體器件,常用于電子電路中作為放大器、開關(guān)等功能的實(shí)現(xiàn)。晶體管具有三種基本的工作狀態(tài),包括截止?fàn)顟B(tài)、飽和狀態(tài)和放大狀態(tài)。 截止?fàn)顟B(tài)是指在晶
    的頭像 發(fā)表于 02-02 17:06 ?3566次閱讀

    運(yùn)放的三種應(yīng)用

    運(yùn)放在電路中主要存在三種應(yīng)用,放大器,濾波器,振蕩器。再這三種應(yīng)用電路中,運(yùn)放的兩大特點(diǎn)虛短虛斷仍然成立嗎? 在阻尼振蕩器中,工作過程是否按照我描述的這樣,在反相輸入端加一個(gè)近似鋸齒波的電流源,正半
    發(fā)表于 01-26 16:18

    變頻器的三種控制方式 | 變頻器三種控制方式的優(yōu)缺點(diǎn)

    ? ? ? 變頻器是一電力調(diào)節(jié)設(shè)備,它通過改變電機(jī)的工作頻率來調(diào)節(jié)電機(jī)的轉(zhuǎn)速。在實(shí)際應(yīng)用中,變頻器通常采用三種控制方式:開環(huán)控制、閉環(huán)控制和矢量控制。這三種控制方式各有優(yōu)缺點(diǎn),下面將詳細(xì)介紹它們
    的頭像 發(fā)表于 12-18 09:56 ?3231次閱讀
    變頻器的<b class='flag-5'>三種</b>控制方式 | 變頻器<b class='flag-5'>三種</b>控制方式的優(yōu)缺點(diǎn)

    晶體管三種接法的特點(diǎn)

    晶體管三種接法的特點(diǎn)? 晶體管是一常見的電子元器件,具有開關(guān)和放大功能。根據(jù)不同的接法,晶體管的特點(diǎn)也會(huì)有所不同。一般來說,晶體管的接法分為共集電極、共射極和共基極
    的頭像 發(fā)表于 12-12 14:23 ?1504次閱讀

    常見的socket三種類型

    常見的socket三種類型? Socket是計(jì)算機(jī)網(wǎng)絡(luò)中常用的通信機(jī)制,在網(wǎng)絡(luò)編程中起到了非常重要的作用。Socket可以分為三種類型:流套接字(Stream Socket)、數(shù)據(jù)報(bào)套接字
    的頭像 發(fā)表于 12-08 11:18 ?2311次閱讀

    XILINX FPGA IP之AXI Traffic Generator

    AXI Traffic Generator IP 用于在AXI4和AXI4-Stream互連以及其他AXI4系統(tǒng)外設(shè)上生成特定序列(流量)。它根據(jù)IP的編程和選擇的操作模式生成各種類型
    的頭像 發(fā)表于 11-23 16:03 ?2273次閱讀
    XILINX FPGA IP之<b class='flag-5'>AXI</b> Traffic Generator

    Xilinx FPGA IP之Block Memory Generator AXI接口說明

    之前的文章對(duì)Block Memory Generator的原生接口做了說明和仿真,本文對(duì)AXI接口進(jìn)行說明。
    的頭像 發(fā)表于 11-14 18:25 ?1646次閱讀
    Xilinx FPGA IP之Block Memory Generator <b class='flag-5'>AXI</b><b class='flag-5'>接口</b>說明