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

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

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

3天內不再提示

英創(chuàng)信息技術ESM335x工控主板ISA總線DMA數據傳輸簡介

英創(chuàng)信息技術 ? 來源:英創(chuàng)信息技術 ? 作者:英創(chuàng)信息技術 ? 2020-02-07 10:42 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

在《EM335x主板ISA總線的高級應用》一文中介紹了WEC7版的ESM335x精簡ISA總線數據"塊"讀寫方法,對于多字節(jié)數據塊的連續(xù)讀寫,采用塊讀寫方式可以減少驅動程序API的調用次數,提高ISA總線的訪問效率。

數據塊讀寫功能是通過設備驅動的DeviceIoControl來完成的,需要用到以下數據結構:

typedef struct

{

PBYTE pReadBuf; //ISA讀數據buffer, 只能一個buffer有效

PBYTE pWriteBuf; //ISA寫數據buffer, 只能一個buffer有效

DWORD dwDataLength; //length of data in byte

DWORD dwDataPortOfs; //讀寫的起始地址 = 0x00 – 0xFF

DWORD dwInc; //= 0: 固定地址, > 0: 讀寫后地址自動增加

} ISA_BLOCK_INFO, *PISA_BLOCK_INFO;

在上述數據結構中:

pReadBuf為進行讀操作時的數據buffer,讀操作具體為8-bit數據讀。注意:數據結構中,pReadBuf和pWrietBuf只能有一個有效。

pWriteBuf為進行寫操作時的數據buffer,寫操作具體為8-bit數據讀。注意:數據結構中,pReadBuf和pWrietBuf只能有一個有效。

dwDataPortOfs為讀寫的端口地址,范圍為0x00 – 0xFF。

dwDataLength為本數據塊讀或寫的字節(jié)數。

dwInc為每次讀寫后,地址的自動增量,dwInc = 0:表示固定地址讀寫,dwInc > 0: 表示每次讀寫后,地址會自動增加dwInc,作為下一次的讀寫地址。當地址超過0xFF時,會折回到地址0x00。

數據塊讀寫方式雖然減少了頻繁調用系統(tǒng)API而產生的系統(tǒng)開銷,但數據讀寫過程還是需要CPU的全程參與,為了進一步提高CPU的利用效率,我們升級了ISA的驅動程序,實現了DMA方式的數據傳輸?;谥С諨MA操作的ISA驅動,應用程序在調用DeviceIoControl進行塊讀寫操作時,如果訪問固定地址(即將設置參數dwInc為0),則驅動程序就會自動啟用DMA方式進行數據傳輸。

采用DMA進行數據傳輸可以進一步提高ISA總線的數據傳輸速度,同時大大降低總線數據傳輸對CPU負載率的影響。當不使用DMA進行數據傳輸,ESM335x CPU全速運行時(CPU負載100%),ISA總線的讀寫速度在3MB/s左右,使用DMA方式后,ESM335x ISA總線速度可達到5MB/s左右,扣除驅動程序必要處理開銷,在應用層實測的數據塊讀速度為4.17MB/s、數據塊寫速度為4.5MB/s,而此時CPU的負載率在15%左右。

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

    關注

    7

    文章

    6107

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    DS92LV241x:高速數據傳輸的理想選擇

    DS92LV241x:高速數據傳輸的理想選擇 在當今的電子設備設計中,高速、可靠的數據傳輸至關重要。DS92LV2411(Serializer)和DS92LV2412(Deserializer
    的頭像 發(fā)表于 12-25 14:30 ?425次閱讀

    深入剖析DS92LV242x:高速數據傳輸的理想之選

    深入剖析DS92LV242x:高速數據傳輸的理想之選 在電子設計領域,高速、穩(wěn)定且高效的數據傳輸一直是工程師們追求的目標。德州儀器(TI)的DS92LV242x芯片組,作為一款專注于2
    的頭像 發(fā)表于 12-24 15:50 ?305次閱讀

    探索DS92LV042x:高速數據傳輸解決方案的理想之選

    探索DS92LV042x:高速數據傳輸解決方案的理想之選 在當今高速數據傳輸的時代,對于能夠高效、穩(wěn)定地處理數據的芯片需求日益增長。DS92LV042
    的頭像 發(fā)表于 12-24 14:05 ?354次閱讀

    探索DS92LV242x:高速數據傳輸的理想之選

    探索DS92LV242x:高速數據傳輸的理想之選 在電子設計領域,高速、可靠的數據傳輸一直是工程師們追求的目標。今天,我們將深入探討德州儀器(TI)的DS92LV242x芯片組,它由
    的頭像 發(fā)表于 12-24 13:55 ?306次閱讀

    CW32 DMA的主要特性

    和 CPU 對外設總線控制權的仲裁,以及多 DMA 通道之間的調度執(zhí)行。 主要特性有: ?5 條獨立 DMA 通道 ?3 種數據傳輸寬度:8bit、16bit、32bit ?4 種
    發(fā)表于 12-16 07:14

    Amphenol ICC SD Express Push - Push連接器:高速數據傳輸新選擇

    Amphenol ICC SD Express Push - Push連接器:高速數據傳輸新選擇 在電子設備不斷追求高速數據傳輸的今天,存儲設備與主板之間的連接技術顯得尤為重要。Amp
    的頭像 發(fā)表于 12-15 10:15 ?344次閱讀

    單片機之間可以進行無線數據傳輸

    ) 1. 使用其他無線通信技術:如果單片機之間的距離較近,可以考慮使用如Wi-Fi、藍牙、ZigBee等短距離無線通信技術進行數據傳輸。這些技術通常支持設備間的直接通信,但
    發(fā)表于 11-28 08:15

    RVMCU課堂「18」: 手把手教你玩轉RVSTAR—DMA數據傳輸

    ?在之前的內容里,我們使用過UART、SPI、I2C等接口進行過數據傳輸,在處理通信數據時,幾乎都是在主程序或中斷服務程序中進行數據的轉存,這樣耗費了大量的CPU時間。幸運的是,微控制器的設計者也
    發(fā)表于 10-30 08:29

    多通道數據傳輸終端 LoRa/LTE雙模通信終端

    數據傳輸
    穩(wěn)控自動化
    發(fā)布于 :2025年10月24日 13:57:21

    基于FPGA的USB數據傳輸

    你也許會有疑問,明明有這么多通信方式和數據傳輸(SPI、I2C、UART、以太網)為什么偏偏使用USB呢?
    的頭像 發(fā)表于 08-06 14:47 ?4880次閱讀
    基于FPGA的USB<b class='flag-5'>數據傳輸</b>

    像這樣一款體積小巧的DTU數據傳輸終端你見過嗎?

    數據傳輸
    才茂通信
    發(fā)布于 :2025年06月04日 14:33:29

    SPI數據傳輸緩慢問題求解

    我遇到了 SPI 數據傳輸速率問題。 盡管將 SPI 時鐘頻率設置為 20 MHz,但我只獲得了 2 Kbps 的數據傳輸速率。 我正在以 115200 的波特率通過 UART 監(jiān)控數據。 我正在 cyfxusbspidmamo
    發(fā)表于 05-15 08:29

    捷多邦的IoT PCB:數據傳輸的未來

    在物聯網(IoT)技術迅猛發(fā)展的背景下,數據傳輸的穩(wěn)定性成為智能設備運行的關鍵。專用PCB(印制電路板)的設計和制造對于確保這一穩(wěn)定性至關重要。以下探討的是,一家領先的PCB制造商如何通過其產品提升
    的頭像 發(fā)表于 04-07 10:23 ?753次閱讀

    無線采發(fā)儀 振弦、溫度及多類型信號采集 多種數據傳輸方式

    數據傳輸
    穩(wěn)控自動化
    發(fā)布于 :2025年03月10日 11:18:58