91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

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

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

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

ZYNQ中DMA與AXI4總線

FPGA之家 ? 來(lái)源:FPGA之家 ? 作者:FPGA之家 ? 2020-11-02 11:27 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

ZYNQ中DMA與AXI4總線

為什么在ZYNQ中DMA和AXI聯(lián)系這么密切?通過(guò)上面的介紹我們知道ZYNQ中基本是以AXI總線完成相關(guān)功能的:

圖4?34連接 PS 和 PL 的 AXI 互聯(lián)和接口的構(gòu)架

在ZYNQ中,支持AXI-Lite,AXI4和AXI-Stream三種總線,但PS與PL之間的接口卻只支持前兩種,AXI-Stream只能在PL中實(shí)現(xiàn),不能直接和PS相連,必須通過(guò)AXI-Lite或AXI4轉(zhuǎn)接。PS與PL之間的物理接口有9個(gè),包括4個(gè)AXI-GP接口和4個(gè)AXI-HP接口、1個(gè)AXI-ACP接口。

Xilinx提供的從AXI到AXI-Stream轉(zhuǎn)換的IP核有:AXI-DMA,AXI-Datamover,AXI-FIFO-MM2S以及AXI-vDMA等

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)換,只不過(guò)這次是完全由PL控制的,PS是完全被動(dòng)的。

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

除了上面的還有一個(gè)AXI-CDMA IP核,這個(gè)是由PL完成的將數(shù)據(jù)從內(nèi)存的一個(gè)位置搬移到另一個(gè)位置,無(wú)需CPU來(lái)插手。

上面的IP是完成總線協(xié)議轉(zhuǎn)換,如果需要做某些處理(如變換、迭代、訓(xùn)練……),則需要生成一個(gè)自定義Stream類(lèi)型IP,與上面的Stream接口連接起來(lái),實(shí)現(xiàn)數(shù)據(jù)輸入輸出。用戶的功能在自定義Stream類(lèi)型IP中實(shí)現(xiàn)。

綜上,在ZYNQ中DMA和AXI是不可分割的兩者,所以介紹DMA也是必須的。

1.1.1DMA簡(jiǎn)介

DMA是一種內(nèi)存訪問(wèn)技術(shù),允許某些計(jì)算機(jī)內(nèi)部的硬件子系統(tǒng)可以獨(dú)立的直接讀寫(xiě)內(nèi)存,而不需要CPU介入處理,從而不需要CPU的大量中斷負(fù)載,否則,CPU需要從來(lái)源把每一片段的數(shù)據(jù)復(fù)制到寄存器,然后在把他們?cè)俅螌?xiě)回到新的地方,在這個(gè)時(shí)間里,CPU就無(wú)法執(zhí)行其他的任務(wù)。

DMA是一種快速數(shù)據(jù)傳送方式,通常用來(lái)傳送數(shù)據(jù)量較多的數(shù)據(jù)塊。使用DMA時(shí),CPU向DMA控制器發(fā)送一個(gè)存儲(chǔ)器傳輸請(qǐng)求,這樣當(dāng)DMA控制器在傳輸?shù)臅r(shí)候,CPU執(zhí)行其他的操作,傳輸完成時(shí)DMA以中斷的方式通知CPU。

DMA傳輸過(guò)程的示意圖為:

圖4?35DMA傳輸過(guò)程的示意圖

DMA的傳輸過(guò)程為:

1、為了配置用DMA傳輸數(shù)據(jù)到存儲(chǔ)器,處理器(Cortex-A9)發(fā)出一條指令。

2、DMA控制器把數(shù)據(jù)從外設(shè)傳輸?shù)酱鎯?chǔ)器或者從存儲(chǔ)器傳輸?shù)酱鎯?chǔ)器,從而較少CPU處理的事務(wù)量。

3、輸出傳輸完成后,向CPU發(fā)出一個(gè)中斷通知DMA傳輸可以關(guān)閉。

為了發(fā)起傳輸事務(wù),DMA控制器必須得到以下信息:

(1)、源地址——數(shù)據(jù)被讀出的地址

(2)、目的地址——數(shù)據(jù)被寫(xiě)入的地址

(3)、傳輸長(zhǎng)度——應(yīng)傳輸?shù)淖止?jié)數(shù)

我們可以理解,無(wú)論是程序控制方式還是中斷控制方式,數(shù)據(jù)的傳輸都必須經(jīng)過(guò)處理器。而在一個(gè)嵌入式微處理器為主控的應(yīng)用系統(tǒng)中,當(dāng)有大量數(shù)據(jù)在存儲(chǔ)器和外設(shè)之間傳輸時(shí),采用程序控制方式顯然不合適,但是若采用中斷控制方式,會(huì)造成中斷次數(shù)過(guò)于頻繁,不僅速度上不去,還需要處理器及時(shí)干預(yù)進(jìn)行處理,大大降低了工作的效率。

然而,使用DMA的好處就是它不需要CPU的干預(yù)而直接服務(wù)外設(shè),這樣CPU就可以去處理別的事務(wù),從而提高系統(tǒng)的效率,對(duì)于慢速設(shè)備,其作用只是降低CPU的使用率,但對(duì)于高速設(shè)備,它不只是降低CPU的使用率,而且能大大提高硬件設(shè)備的吞吐量。因?yàn)閷?duì)于這種設(shè)備,CPU直接供應(yīng)數(shù)據(jù)的速度太低。因CPU只能一個(gè)總線周期最多存取一次總線,而且對(duì)于處理器,它不能把內(nèi)存中A地址的值直接搬到B地址。它只能先把A地址的值搬到一個(gè)寄存器,然后再?gòu)倪@個(gè)寄存器搬到B地址。也就是說(shuō),對(duì)于處理器,要花費(fèi)兩個(gè)總線周期才能將A地址的值送到B地址。而DMA就不同了,一般系統(tǒng)中的DMA都有突發(fā)(Burst)傳輸?shù)哪芰?,在這種模式下,DMA能一次傳輸幾個(gè)甚至幾十個(gè)字節(jié)的數(shù)據(jù),所以使用DMA能使設(shè)備的吞吐能力大為增強(qiáng)。

鑒于上面的優(yōu)勢(shì),系統(tǒng)中使用DMA是必要的,能夠提高數(shù)據(jù)吞吐量,減輕了CPU的負(fù)擔(dān),使得整個(gè)系統(tǒng)的性能得到提高。

說(shuō)了這么多優(yōu)點(diǎn),那么DMA缺點(diǎn)是什么呢?DMA傳送期間CPU被掛起,部分或完全失去對(duì)系統(tǒng)總線的控制,這可能會(huì)影響CPU對(duì)中斷請(qǐng)求的及時(shí)響應(yīng)與處理。因此,在一些小系統(tǒng)或速度要求不高、數(shù)據(jù)傳輸量不大的系統(tǒng)中,一般并不用DMA方式。因?yàn)镈MA允許外設(shè)直接訪問(wèn)內(nèi)存,從而形成對(duì)總線的獨(dú)占。這在實(shí)時(shí)性強(qiáng)的硬實(shí)時(shí)系統(tǒng)嵌入式開(kāi)發(fā)中將會(huì)造成中斷延時(shí)過(guò)長(zhǎng)。

DMAC為DMA控制器

DMA傳送雖然脫離CPU的控制,但并不是說(shuō)DMA傳送不需要進(jìn)行控制和管理。通常是采用DMA控制器來(lái)取代CPU,負(fù)責(zé)DMA傳送的全過(guò)程控制。目前DMA控制器都是可編程的大規(guī)模集成芯片。

圖4?36DMAC結(jié)構(gòu)

DMA控制器是內(nèi)存儲(chǔ)器同外設(shè)之間進(jìn)行高速數(shù)據(jù)傳送時(shí)的硬件控制電路,是一種實(shí)現(xiàn)直接數(shù)據(jù)傳送的專用處理器,它必須能取代在程序控制傳送中由CPU和軟件所完成的各項(xiàng)功能。它的主要功能是:

(1)DMAC同外設(shè)之間有一對(duì)聯(lián)絡(luò)信號(hào)線--外設(shè)的DMA請(qǐng)求信號(hào)DREQ以及 DMAC向外設(shè)發(fā)出的DMA響應(yīng)信號(hào)DACK;(如下圖)
(2)DMAC在接收到DREQ后,同CPU之間也有一對(duì)聯(lián)絡(luò)信號(hào)線--DMAC向CPU 發(fā)出總線請(qǐng)求信號(hào)(HOLD或BUSRQ),CPU在當(dāng)前總線周期結(jié)束后向DMAC發(fā)出總線響應(yīng)信號(hào)(HLDA或BUSAK),DMAC接管對(duì)總線的控制權(quán),進(jìn)入DMA操作方式;
(3)能發(fā)出地址信息,對(duì)存儲(chǔ)器尋址,并修改地址指針,DMAC內(nèi)部必須有能自動(dòng)加1或減1的地址寄存器;
(4)能決定傳送的字節(jié)數(shù),并能判斷DMA傳送是否結(jié)束。DMA內(nèi)部必須有能自動(dòng)減1的字計(jì)數(shù)寄存器,計(jì)數(shù)結(jié)束產(chǎn)生終止計(jì)數(shù)信號(hào);
(5)能發(fā)出DMA結(jié)束信號(hào),釋放總線,使CPU恢復(fù)總線控制權(quán);
(6)能發(fā)出讀、寫(xiě)控制信號(hào),包括存儲(chǔ)器訪問(wèn)信號(hào)和I/O訪問(wèn)信號(hào)。DMAC內(nèi)部必須有時(shí)序和讀寫(xiě)控制邏輯。

圖4?37DMAC在DMA中的作用示意圖(一)

圖4?38DMAC在DMA中的作用示意圖(二)

責(zé)任編輯:xj

原文標(biāo)題:ZYNQ中DMA與AXI4總線-DMA簡(jiǎn)介

文章出處:【微信公眾號(hào):FPGA之家】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

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

    關(guān)注

    3

    文章

    581

    瀏覽量

    105913
  • AXI總線
    +關(guān)注

    關(guān)注

    0

    文章

    68

    瀏覽量

    14756
  • Zynq
    +關(guān)注

    關(guān)注

    10

    文章

    630

    瀏覽量

    49443

原文標(biāo)題:ZYNQ中DMA與AXI4總線-DMA簡(jiǎn)介

文章出處:【微信號(hào):zhuyandz,微信公眾號(hào):FPGA之家】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

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

    RDMA設(shè)計(jì)36:驗(yàn)證環(huán)境設(shè)計(jì)

    設(shè)計(jì),AXI4 總線用于 DUT 與系統(tǒng)內(nèi)存的連接,負(fù)責(zé)進(jìn)行數(shù)據(jù)傳輸。其由 DUT 驅(qū)動(dòng),并不需要驗(yàn)證平臺(tái)產(chǎn)生額外的激勵(lì)。此復(fù)合體包含一個(gè) Monitor,用于將總線信號(hào)轉(zhuǎn)換為
    發(fā)表于 02-04 15:22

    利用開(kāi)源uart2axi4實(shí)現(xiàn)串口訪問(wèn)axi總線

    microblaze和jtag-to-axi(jtag2axi)雖然也提供了訪問(wèn)axi總線的能力,但是依賴于xilinx平臺(tái)。而uart-to-ax
    的頭像 發(fā)表于 12-02 10:05 ?2052次閱讀
    利用開(kāi)源uart2<b class='flag-5'>axi4</b>實(shí)現(xiàn)串口訪問(wèn)<b class='flag-5'>axi</b><b class='flag-5'>總線</b>

    基于AXI DMA IP核的DDR數(shù)據(jù)存儲(chǔ)與PS端讀取

    添加Zynq Processing System IP核,配置DDR控制器和時(shí)鐘。7000系列的Zynq可以參考正點(diǎn)原子DMA回環(huán)測(cè)試設(shè)置。
    的頭像 發(fā)表于 11-24 09:25 ?3232次閱讀
    基于<b class='flag-5'>AXI</b> <b class='flag-5'>DMA</b> IP核的DDR數(shù)據(jù)存儲(chǔ)與PS端讀取

    使用AXI4接口IP核進(jìn)行DDR讀寫(xiě)測(cè)試

    本章的實(shí)驗(yàn)任務(wù)是在 PL 端自定義一個(gè) AXI4 接口的 IP 核,通過(guò) AXI_HP 接口對(duì) PS 端 DDR3 進(jìn)行讀寫(xiě)測(cè)試,讀寫(xiě)的內(nèi)存大小是 4K 字節(jié)。
    的頭像 發(fā)表于 11-24 09:19 ?3723次閱讀
    使用<b class='flag-5'>AXI4</b>接口IP核進(jìn)行DDR讀寫(xiě)測(cè)試

    RDMA設(shè)計(jì)4:技術(shù)需求分析2

    開(kāi)發(fā)。設(shè)計(jì)基于純邏輯電路,可以脫離 MCU 控制獨(dú)立運(yùn)行,兼容 SoC 環(huán)境與純邏輯環(huán)境。 (4)使用標(biāo)準(zhǔn) AXI 總線接口,設(shè)計(jì)使用標(biāo)準(zhǔn)化的 AXI4
    發(fā)表于 11-24 09:09

    Xilinx高性能NVMe Host控制器IP+PCIe 3.0軟核控制器IP,純邏輯實(shí)現(xiàn),AXI4AXI4-Stream DMA接口,支持PCIe 3.0和4.0

    )讀寫(xiě)、DMA讀寫(xiě)和數(shù)據(jù)擦除功能,提供用戶一個(gè)簡(jiǎn)單高效的接口實(shí)現(xiàn)高性能存儲(chǔ)解決方案。NVMe AXI4 Host Controller IP讀寫(xiě)的順序傳輸長(zhǎng)度是RTL運(yùn)行時(shí)動(dòng)態(tài)可配置的,最小
    發(fā)表于 11-14 22:40

    NVMe高速傳輸之?dāng)[脫XDMA設(shè)計(jì)23:UVM驗(yàn)證平臺(tái)

    NVMe over PCIe采用 AXI4-Lite 接口、AXI4 接口和 PCIe3.0X4 接口,其中AXI4-Lite 和 AXI4
    的頭像 發(fā)表于 08-25 18:53 ?3028次閱讀
    NVMe高速傳輸之?dāng)[脫XDMA設(shè)計(jì)23:UVM驗(yàn)證平臺(tái)

    RDMA簡(jiǎn)介8之AXI分析

    AXI4 總線是第四代 AXI 總線,其定義了三種總線接口,分別為:AXI4、
    的頭像 發(fā)表于 06-24 23:22 ?636次閱讀
    RDMA簡(jiǎn)介8之<b class='flag-5'>AXI</b>分析

    RDMA簡(jiǎn)介9之AXI 總線協(xié)議分析2

    ? 這里以功能完備的 AXI4 接口舉例說(shuō)明 AXI4 總線的相關(guān)特點(diǎn)。AXI4 總線采用讀寫(xiě)通道分離且數(shù)據(jù)通道與控制通道分離的方式,這樣的
    發(fā)表于 06-24 18:02

    RDMA簡(jiǎn)介8之AXI 總線協(xié)議分析1

    AXI 總線是一種高速片內(nèi)互連總線,其定義于由 ARM 公司推出的 AMBA 協(xié)議,主要用于高性能、高帶寬、低延遲、易集成的片內(nèi)互連需求。AXI4
    發(fā)表于 06-24 18:00

    NVMe IP之AXI4總線分析

    1AXI4總線協(xié)議 AXI4總線協(xié)議是由ARM公司提出的一種片內(nèi)總線協(xié)議 ,旨在實(shí)現(xiàn)SOC各模
    發(fā)表于 06-02 23:05

    NVMe簡(jiǎn)介之AXI總線

    NVMe需要用AXI總線進(jìn)行高速傳輸。而AXI總線是ARM公司提出的AMBA(Advanced Microcontroller Bus Architecture)協(xié)議
    的頭像 發(fā)表于 05-21 09:29 ?777次閱讀
    NVMe簡(jiǎn)介之<b class='flag-5'>AXI</b><b class='flag-5'>總線</b>

    NVMe協(xié)議簡(jiǎn)介之AXI總線

    高性能、高帶寬、低延時(shí)的片內(nèi)互連需求。AXI4總線則是AXI總線的第四代版本,主要包含三種類(lèi)型的接口,分別是面向高性能地址映射通信的AXI4
    發(fā)表于 05-17 10:27

    一文詳解AXI DMA技術(shù)

    AXI直接數(shù)值存?。―rect Memory Access,DMA)IP核在AXI4內(nèi)存映射和AXI4流IP接口之間提供高帶寬的直接內(nèi)存訪問(wèn)。DMA
    的頭像 發(fā)表于 04-03 09:32 ?2505次閱讀
    一文詳解<b class='flag-5'>AXI</b> <b class='flag-5'>DMA</b>技術(shù)

    AXI接口FIFO簡(jiǎn)介

    AXI接口FIFO是從Native接口FIFO派生而來(lái)的。AXI內(nèi)存映射接口提供了三種樣式:AXI4、AXI3和AXI4-Lite。除了Na
    的頭像 發(fā)表于 03-17 10:31 ?2117次閱讀
    <b class='flag-5'>AXI</b>接口FIFO簡(jiǎn)介