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

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

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

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

英創(chuàng)信息技術(shù)精簡ISA總線Linux編程 – Part3簡介

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

掃碼添加小助手

加入工程師交流群

精簡ISA總線接口是一種8-bit寬度的雙向并行擴展總線,其特點是地址數(shù)據(jù)分時復(fù)用8位總線,加上4條總線控制信號,即可實現(xiàn)對外部數(shù)據(jù)的快速讀寫。若再使能一條總線時鐘信號(共13條信號),就可實現(xiàn)高達10MB/s以上的數(shù)據(jù)傳輸。精簡ISA總線作為英創(chuàng)主板的特色功能之一,在ESM6802、ESM7000、ESM7100、ESM335x等多款型號中均有配置。

關(guān)于對精簡ISA總線接口的應(yīng)用編程的基本方法,請參考《精簡ISA總線編程– Part 1》;應(yīng)用程序直接啟動DMA做定長數(shù)據(jù)的傳送方法,請參考《精簡ISA總線編程– Part 2》。本文介紹由外部硬件觸發(fā)DMA傳送,應(yīng)用程序通過ISA驅(qū)動(/dev/em_isa)讀取采集數(shù)據(jù)的方法。

硬件DMA的基本工作原理

下圖是基于硬件DMA實現(xiàn)高速數(shù)據(jù)采集功能的系統(tǒng)框圖:

●應(yīng)用程序通過常規(guī)的異步ISA讀寫操作,對AD采集單元進行必要配置。

●通過特殊的isa_write_buf(..)操作啟動硬件DMA。

●當(dāng)AD采集單元轉(zhuǎn)換數(shù)據(jù)準備好,發(fā)出DMA請求信號(DMAREQ置高,脈沖寬度400ns – 1000ns)。

●DMA控制器感受到DMAREQ信號,連續(xù)產(chǎn)生4個同步總線周期,讀取AD單元內(nèi)已準備好的數(shù)據(jù),每個同步周期讀取2個字節(jié),共讀取8個字節(jié)。從DMAREQ請求開始,到DMA數(shù)據(jù)傳輸完畢,整個過程大約1840ns。之后DMA將等待一下一個DMAREQ脈沖信號。

●DMA讀取的數(shù)據(jù)將自動存入驅(qū)動程序內(nèi)部的環(huán)形Buffer中,當(dāng)DMA讀取的數(shù)據(jù)達到一定閾值(4KB)時,驅(qū)動將通過事件觸發(fā)應(yīng)用程序讀取整塊數(shù)據(jù)。

由于AD單元中的數(shù)據(jù)是通過DMA硬件存入系統(tǒng)緩沖區(qū)的,由此產(chǎn)生的CPU開銷就很低。應(yīng)用程序可在數(shù)據(jù)采集的同時,完成必要的數(shù)據(jù)處理、顯示、通訊等功能塊。另一方面,由于AD采集單元不再需要保存轉(zhuǎn)換的數(shù)據(jù),可有效降低硬件成本。

實現(xiàn)基于硬件DMA的數(shù)據(jù)采集,需要以下信號:

ESM7000信號管腳 實際信號功能
ISA_AD0 ISA地址數(shù)據(jù)總線,LSB
ISA_AD1 ISA地址數(shù)據(jù)總線
ISA_AD2 ISA地址數(shù)據(jù)總線
ISA_AD3 ISA地址數(shù)據(jù)總線
ISA_AD4 ISA地址數(shù)據(jù)總線
ISA_AD5 ISA地址數(shù)據(jù)總線
ISA_AD6 ISA地址數(shù)據(jù)總線
ISA_AD7 ISA地址數(shù)據(jù)總線,MSB
ISA_CSn ISA片選控制信號CS,低電平有效
GPIO24 ISA同步總線周期時鐘BCLK
ISA_ADVn ISA地址鎖存控制信號ADV,低電平有效
ISA_RDn ISA數(shù)據(jù)讀控制信號RD,低電平有效
ISA_WEn ISA數(shù)據(jù)寫控制信號WE,低電平有效
GPIO12 DMA請求信號DMAREQ,輸入,高電平有效

注意:在使用硬件DMA數(shù)據(jù)傳輸時,將禁止使用掛角GPIO12和GPIO24的GPIO功能、禁止使用CAN2端口。

DMA傳輸總線時序說明

圖1是一次完整的DMA傳輸總體時序圖。

圖1硬件DMA傳輸總線時序

從上面的時序可見,DMAREQ請求開始,到第一個總線周期,大約有640ns的延時。整個傳輸周期大約1840ns。按2000ns計算,采用硬件DMA傳輸,可實現(xiàn)每秒4MB字節(jié)的數(shù)據(jù)傳輸率。若假設(shè)4路模擬通道,每個樣點16-bit量化,這樣就對應(yīng)每通道500ksps的采樣率。這樣的采樣率可滿足絕大部分的工控應(yīng)用需求。展開圖1觀察,可見:

圖2硬件觸發(fā)DMA傳輸時序前半部分

圖3硬件觸發(fā)DMA傳輸時序后半部分

從上面的時序圖可見,有DMA啟動的總線周期,每個周期只有6個BCLK脈沖,讀取2個數(shù)據(jù)字節(jié)。這與在《精簡ISA總線編程– Part 2》中介紹的CPU啟動的DMA操作不同。在使用時需特別注意。DMAREQ的脈沖寬度有一定要求:DMAREQ脈沖寬度應(yīng)大于240ns,才能保證可靠觸發(fā)DMA,其次DMAREQ應(yīng)在DMA傳輸周期結(jié)束前變低,否則可能誤觸發(fā)下一次DMA傳輸。

每個總線周期詳細的時序關(guān)系如下:

圖4硬件觸發(fā)DMA總線周期時序

圖5硬件觸發(fā)DMA總線周期時序參數(shù)標注

為了簡化AD采集單元的電路設(shè)計,硬件觸發(fā)DMA傳輸總線周期輸出的地址固定在0xE0。AD采集單元的其他寄存器應(yīng)避免使用0xE0 – 0xE1這兩個地址。

應(yīng)用程序設(shè)計要點

應(yīng)用程序啟動DMA數(shù)據(jù)傳輸,需要使用數(shù)據(jù)結(jié)構(gòu)struct isa_transfer的傳遞參數(shù)和數(shù)據(jù),struct isa_transfer的結(jié)構(gòu)定義如下:

structisa_transfer
{
void *rx_buf; /* != NULL: buffer for bus read */
void *tx_buf; /* != NULL: buffer for bus write */
unsigned len; /* buffer length in byte */
unsigned offset; /* offset,port address on isa bus */
unsigned inc; /* = 0: fixed offset, = 1: offset+1 after r/w */
};

啟動硬件觸發(fā)DMA傳輸,需要特殊的寫操作,代碼如下:

structisa_transfer t;
// start ext-trigger dma
memset(&t, 0, sizeof(structisa_transfer));
t.offset = 0x50E0;
t.len = 0xFFFFFFFF;
isa_write_buf(fd, &t);

注意在上述代碼中t.rx_buf和t.tx_buf均必須為空。停止硬件觸發(fā)DMA傳輸?shù)拇a為:

structisa_transfer t;
// stopext-trigger dma
memset(&t, 0, sizeof(structisa_transfer));
t.offset = 0x50E0;
t.len = 0;
isa_write_buf(fd, &t);

在啟動DMA后,應(yīng)用程序的數(shù)據(jù)接收線程需調(diào)用poll等待數(shù)據(jù)ready的消息:

structpollfdfds[1];
fds[0].fd = fd;
fds[0].events = POLLPRI;
// wait data ready with timeout 2 seconds
if(poll(fds, 1, 2) == -1) {
perror("poll failed!\n");
goto error;
}
// data is ready….

讀取數(shù)據(jù)的代碼為:

intrc, total_bytes;
structisa_transfer t;
externunsignedchargbuf[64 * 1024];
total_bytes = 0;
memset(&t, 0, sizeof(structisa_transfer));
// read data
t.rx_buf = gbuf;
t.offset = offset;
t.len = sizeof(gbuf);
rc = read(fd, &t, sizeof(structisa_transfer));
if(rc< 0) {
printf("%s dma data read failed %d\n", __func__, rc);
}
elseif(rc> 0) {
total_bytes += rc;
printf("%s dma data read %d\n", __func__, total_bytes);
}
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 嵌入式主板
    +關(guān)注

    關(guān)注

    7

    文章

    6107

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評論

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

    龍芯中科成功舉辦2025信息技術(shù)應(yīng)用創(chuàng)新產(chǎn)教融合交流會

    11月30日,在教育部教育管理信息中心、山東省電化教育館的支持和指導(dǎo)下,龍芯中科聯(lián)合浪潮集團、濟南幼兒師范高等專科學(xué)校(以下簡稱“濟南幼高?!保?,成功舉辦信息技術(shù)應(yīng)用創(chuàng)新產(chǎn)教融合交流會,并同步舉行信息技術(shù)應(yīng)用創(chuàng)新實踐基地啟用儀式
    的頭像 發(fā)表于 12-08 14:53 ?778次閱讀

    龍芯中科助力2025教育信息技術(shù)應(yīng)用創(chuàng)新大賽成功舉辦

    2025年11月13日-15日,由中國教育技術(shù)協(xié)會主辦、浙江大學(xué)與中國教育技術(shù)協(xié)會網(wǎng)絡(luò)安全專業(yè)委員會聯(lián)合承辦,中國電子工業(yè)標準化技術(shù)協(xié)會信息技術(shù)應(yīng)用創(chuàng)新工作委員會、浙江高校信
    的頭像 發(fā)表于 11-21 16:23 ?788次閱讀

    誠邁科技信創(chuàng)電腦助力2025第二屆教育信息技術(shù)應(yīng)用創(chuàng)新大賽圓滿收官

    11月15日,由中國教育技術(shù)協(xié)會主辦、浙江大學(xué)與中國教育技術(shù)協(xié)會網(wǎng)絡(luò)安全專業(yè)委員會聯(lián)合承辦,中國電子工業(yè)標準化技術(shù)協(xié)會信息技術(shù)應(yīng)用創(chuàng)新工作委員會、浙江高校信
    的頭像 發(fā)表于 11-17 17:58 ?673次閱讀
    誠邁科技信<b class='flag-5'>創(chuàng)</b>電腦助力2025第二屆教育<b class='flag-5'>信息技術(shù)</b>應(yīng)用創(chuàng)新大賽圓滿收官

    OBOO鷗柏|信創(chuàng)觸摸一體機兆芯115寸Linux國產(chǎn)系統(tǒng)技術(shù)智造

    BOO鷗柏信創(chuàng)觸摸一體機:兆芯115寸Linux智造新標桿在信息技術(shù)應(yīng)用創(chuàng)新浪潮中,【OBOO鷗柏】推出的信創(chuàng)觸摸一體機以其卓越性能和智能化設(shè)計,成為行業(yè)數(shù)字化轉(zhuǎn)型的重要工具。這款搭載
    的頭像 發(fā)表于 11-16 15:44 ?1258次閱讀
    OBOO鷗柏|信<b class='flag-5'>創(chuàng)</b>觸摸一體機兆芯115寸<b class='flag-5'>Linux</b>國產(chǎn)系統(tǒng)<b class='flag-5'>技術(shù)</b>智造

    寶馬南京信息技術(shù)有限公司開業(yè)

    今日,寶馬(南京)信息技術(shù)有限公司在南京正式“掛牌運行”。這家華晨寶馬全資子公司由領(lǐng)悅數(shù)字信息技術(shù)有限公司南京分公司“迭代”而來,代表著一次里程碑式的“進化”。這次升級不僅加速了寶馬在華數(shù)字化轉(zhuǎn)型進程,更通過深化本土創(chuàng)新,為“未來智慧出行”的發(fā)展譜寫了核心“代碼”。
    的頭像 發(fā)表于 10-29 15:17 ?620次閱讀

    易華錄入選國家級信息技術(shù)應(yīng)用創(chuàng)新典型解決方案

    近日,工業(yè)和信息化部網(wǎng)絡(luò)安全產(chǎn)業(yè)發(fā)展中心(工業(yè)和信息化部信息中心)公布了“2024年信息技術(shù)應(yīng)用創(chuàng)新解決方案”評選結(jié)果。易華錄申報的“基于節(jié)能高效藍光的超級智能存儲解決方案”憑借顯著的
    的頭像 發(fā)表于 08-07 15:35 ?1616次閱讀

    信息技術(shù)應(yīng)用產(chǎn)學(xué)協(xié)同人才培養(yǎng)行動計劃”正式發(fā)布,誠邁科技入選首批參與單位

    設(shè)在中國軟件評測中心。誠邁科技作為信創(chuàng)技術(shù)先鋒企業(yè),受邀成為首批參與單位,與國內(nèi)頂尖高校、領(lǐng)軍企業(yè)和權(quán)威機構(gòu)攜手,共同打造具有中國特色的信息技術(shù)人才培養(yǎng)新范式,為
    的頭像 發(fā)表于 08-06 17:29 ?1554次閱讀
    “<b class='flag-5'>信息技術(shù)</b>應(yīng)用產(chǎn)學(xué)協(xié)同人才培養(yǎng)行動計劃”正式發(fā)布,誠邁科技入選首批參與單位

    佛瑞亞如何通過信息技術(shù)推動業(yè)務(wù)增長

    在數(shù)字化、信息化的浪潮下,信息技術(shù)已經(jīng)不僅是后臺工具,更成為驅(qū)動企業(yè)發(fā)展的關(guān)鍵力量。本期Women Inspiring Mobility,我們采訪了佛瑞亞中國區(qū)信息技術(shù)總監(jiān)馬瑛,了解她和團隊如何將
    的頭像 發(fā)表于 07-29 14:00 ?902次閱讀

    飛騰主板為信創(chuàng)產(chǎn)業(yè)發(fā)展提高硬實力

    信息技術(shù)飛速發(fā)展的當(dāng)下,信創(chuàng)產(chǎn)業(yè)已成為我國實現(xiàn)科技自立自強、保障國家信息安全的關(guān)鍵領(lǐng)域。信創(chuàng),即信息技術(shù)應(yīng)用創(chuàng)新,其核心目標是實現(xiàn)
    的頭像 發(fā)表于 07-22 18:20 ?709次閱讀

    DEKRA德凱成為沙特通信和信息技術(shù)設(shè)備技術(shù)法規(guī)認證機構(gòu)

    近日,DEKRA德凱成功獲得沙特標準、計量和質(zhì)量組織(SASO)認可,正式成為沙特通信和信息技術(shù)設(shè)備技術(shù)法規(guī)(Technical Regulation for Communications
    的頭像 發(fā)表于 07-15 14:27 ?918次閱讀

    科普|信創(chuàng)是什么?一文讀懂“信息技術(shù)應(yīng)用創(chuàng)新”戰(zhàn)略

    什么是信創(chuàng)?信創(chuàng),即“信息技術(shù)應(yīng)用創(chuàng)新”,是國家推動IT系統(tǒng)自主可控、安全可控的重要戰(zhàn)略工程。它不僅是技術(shù)層面的創(chuàng)新,更承載著保障國家網(wǎng)絡(luò)安全、推動產(chǎn)業(yè)升級和實現(xiàn)數(shù)字主權(quán)的重任。簡單來
    的頭像 發(fā)表于 06-13 10:06 ?8259次閱讀
    科普|信<b class='flag-5'>創(chuàng)</b>是什么?一文讀懂“<b class='flag-5'>信息技術(shù)</b>應(yīng)用創(chuàng)新”戰(zhàn)略

    軟通動力中標揚子江藥業(yè)信息技術(shù)部基礎(chǔ)架構(gòu)與安全咨詢項目

    軟通動力成功中標揚子江藥業(yè)集團信息技術(shù)部基礎(chǔ)架構(gòu)與安全咨詢項目,將充分發(fā)揮自身專業(yè)咨詢能力,為揚子江藥業(yè)集團未來3-5年的IT基礎(chǔ)架構(gòu)與信息安全建設(shè)提供頂層規(guī)劃與實施路徑,攜手共赴高質(zhì)量發(fā)展新征程。
    的頭像 發(fā)表于 06-11 11:36 ?1021次閱讀

    2025第二屆教育信息技術(shù)應(yīng)用創(chuàng)新大賽正式開賽

    為進一步落實建設(shè)網(wǎng)絡(luò)強國和教育強國的戰(zhàn)略部署,推動各級教育行政部門及高校信息技術(shù)應(yīng)用創(chuàng)新能力提升,培養(yǎng)實戰(zhàn)型創(chuàng)新人才。龍芯中科聯(lián)合太初元碁、誠邁科技在2025第二屆教育信息技術(shù)應(yīng)用創(chuàng)新大賽共同發(fā)布信息技術(shù)應(yīng)用創(chuàng)新人工智能方向(賽
    的頭像 發(fā)表于 05-13 16:21 ?1439次閱讀

    Linux的作用

    學(xué)校和教育機構(gòu)使用Linux來教授計算機科學(xué)和信息技術(shù)相關(guān)的課程。 總之,Linux是一個功能強大、靈活且廣泛應(yīng)用的操作系統(tǒng),適用于各種不同的用途和場景。
    發(fā)表于 04-04 01:57

    Platform總線簡介

    平臺總線(Platform Bus)是 Linux 內(nèi)核中的一個基礎(chǔ)架構(gòu),用于支持硬件平臺上的設(shè)備驅(qū)動程序的開發(fā)和管理。它提供了一種統(tǒng)一的方式來表示和操作與特定平臺相關(guān)的設(shè)備。平臺總線的設(shè)計目標是將
    發(fā)表于 03-31 16:43