《電子技術應用》
您所在的位置:首頁 > 可編程邏輯 > 設計應用 > 基于DMA的并行數字信號高速采集系統
基于DMA的并行數字信號高速采集系統
王 俊,鄭 焱,王 紅,楊士元
清華大學 自動化系,北京100084
摘要: 本系統采用基于FPGA的DMA技術高速緩存多路并行數據,通過數據重組將數據有序發送給處理系統,用于數據的顯示與分析。系統采用了嵌入式技術,達到了便攜效果,從而更好地適應設備的工作環境。并行數字信號采集實驗結果表明,系統能以5 MHz、2.5 MHz、500 kHz、50 Hz 4檔采樣頻率進行62路并行數字信號采集,各路采集結果正確,并保存了各路之間的同步信息。
中圖分類號: TP391.5
文獻標識碼: B
DMA-based high-speed parallel acquisition system of digital signals
WANG Jun,ZHENG Yan,WANG Hong,YANG Shi Yuan
Department of Automation, Tsinghua University, Beijing 100084,China
Abstract: The proposed FPGA-based system uses DMA technology to cache multi-channel parallel data, and to send data to processing system orderly after data re-organization for display and analysis. Embedded technology is used to make system portable for operation environment of electronic equipment. Parallel digital signal acquisition experiment result shows that this system can acquire 62 channel digital signals correctly and synchronously at four gear sampling frequency of 5 MHz, 2.5 MHz, 500 kHz, and 50 Hz.
Key words : DMA;high-speed parallel acquisition;FPGA;embedded system


    隨著數字電子技術的發展,大型電子設備中數字電路的比例越來越大[1]。為便于故障診斷,一些電子設備(如雷達系統)預留了大量的數字信號檢測口[2]。采用示波器采集此類測試接口的信號時,由于示波器采集通道數的限制,無法保留同步信息;采用邏輯分析儀或ATE設備不但價格昂貴,而且不便于攜帶,不適宜廣泛使用。因此,設計一款便攜式并行數字信號高速同步采集系統,為大型電子設備的維護提供支持是十分必要的。
    此類檢測口信號采集中多通路、高采樣率的特性要求瞬時大量數據的高速緩存實現方法。文獻[3]以硬盤為存儲介質,采用DMA技術實現了接近6 MB/s的存儲速率。文獻[4],文獻[5],基于SoPC技術采用SDRAM作為存儲介質,相對硬盤存儲速度有了很大的提高。但是當通道數超過SDRAM數據位數時,SoPC的處理速度就會影響數據的存儲速度,適用于多通路同步采集。本文采用讀寫速度最高的SRAM作為存儲介質,并利用虛擬多個DMA通道的技術極大地提高了數據存儲速度,實現多路并行數字信號的高速同步采集。
1 系統整體設計
    采集系統采用了嵌入式技術達到便攜性的目的,由FPGA子系統和ARM子系統兩部分組成,如圖1所示。

    FPGA子系統接收ARM子系統的指令,完成數據的采集、緩存和發送功能。數字信號緩沖電路用于數字信號的電平轉換和驅動。輸入數字信號可能是TTL或CMOS電平,采用緩沖電路一方面減小對原電路的影響,另一方面將電平轉換為FPGA輸入所需的CMOS電平。FPGA子系統以Altera公司EP1C12Q240C6芯片為核心,EP1C12Q240C6擁有12 060個邏輯單元以及173個用戶可使用IO,能充分滿足開發及調試中的要求。FPGA搭配SRAM采用DMA的方式實現數據的高速緩存,選用SRAM容量為1 MB,訪問時間為10 ns,利用SRAM訪問速度快的特點,可達到200 MB/s的數據訪問速率。同時,FPGA還實現了與ARM的通信接口,完成緩存數據的打包發送功能。
    ARM子系統實現數據的存儲和人機交互界面。采集到的數據可以通過ARM子系統以類似于邏輯分析儀的方式圖形化地呈現給用戶,方便用戶管理數據采集過程。
2 DMA高速數據緩存
    由于ARM系統通信速度的限制,要想避免數據的溢出,采集的數據需要先緩存到FPGA子系統的SRAM中。對于62路并行數據信號進行同步采集,采集頻率為5 MHz時,數據量達310 Mb/s,因而選用了DMA的方式來高速地緩存采集數據。基于FPGA系統,數字信號首先在采樣時刻被存放到FPGA的寄存器中,并在2個連續采樣時刻之間的采樣間隔內將FPGA寄存器中的數據通過多個虛擬的DMA通道存儲到SRAM中。DMA高速數據緩存結構如圖2所示。

    采集系統選用了1片16 bit的SRAM,62路數字信號需要分為4組緩存入SRAM中,因而構建了4個DMA通道分時與SRAM連接。由于SRAM的訪問時鐘是FPGA系統中的最高時鐘,所以SRAM的訪問時鐘選用了系統時鐘。SRAM的訪問時間為10 ns,系統時鐘必須低于100 MHz,才能保證每次能將數據完整正確地寫入SRAM中。本FPGA系統選用了50 MHz的系統時鐘,這樣采樣時鐘頻率最高為5 MHz,一個采樣周期內的數據有10個系統時鐘周期的時間來處理。在FPGA系統的控制下,一個采樣周期內的10個系統時鐘有1個用于等待數據寫入FPGA寄存器,4個用于向SRAM寫入數據。數字信號并行采集的數據緩存時序如圖3所示。

    圖3中‘0’時刻為采樣時鐘上升沿,此時刻FPGA系統將并行的62路數字信號緩存入62 bit寄存器中。由于傳輸延時時間受系統布線和FPGA內部布局的影響,系統時鐘和采樣時鐘上升沿不一定是同步的,圖中‘0’時刻到‘2’時刻之間可能有1~2個系統時鐘周期,這段時間內,系統不動作等待采集信號可靠地寫入寄存器,這樣可以避免‘0’和‘1’時間間隔過小,采集的數據未完全寫入寄存器的情況。在之后的‘2’時刻至下一周期‘0’時刻,系統完成寫入SRAM的工作。其中‘2’時刻至‘3’時刻為第一寫入周期,系統將寄存器中的0 bit~15 bit寫入SRAM中;‘3’時刻至‘4’時刻為第二寫入周期,系統將寄存器中的16 bit~31 bit寫入SRAM中;‘4’時刻至‘5’時刻為第三寫入周期,系統將寄存器中的32 bit~47 bit寫入SRAM中;‘5’時刻至下一周期‘0’時刻為第四寫入周期,系統將寄存器中的48 bit~61 bit寫入SRAM中。這樣,同一采樣時刻的62通路的數字信號被分時地寫入SRAM中,信號保持真實的同步信息。此時,系統的數據緩存速率達310 Mb/s。
    上述方法中,‘5’時刻至下一周期‘0’時刻只進行了一次寫入,實際上這段時間可以容納6個寫入周期,時間并沒有被充分地利用。對其進一步擴展,將系統時鐘周期充分地利用,可以同時采集更多通路的信號,將第六到第十個系統時鐘周期也用于信號緩存,則可以同時緩存16×9=144路數字信號。這種情況下,系統的數據緩存速率可達720 Mb/s。
    考慮采用SRAM的極限訪問速率的情況,可以選用100 MHz的系統時鐘,這時系統的數據緩存速率可達1 520 Mb/s。
    選用的SRAM的數據寫入極限速率為1 600 Mb/s,此種方法的數據緩存速率達SRAM數據緩存極限的95%,實現了高速的數據緩存。
3 緩存數據重組織
    按照上述數據緩存的方法,同一通道的數據不是連續地存儲在SRAM中。SRAM中的數據存儲順序如圖4所示。圖中第一列表示SRAM地址,offset為數據存儲的初始地址偏移;第一行表示數據位,選用的SRAM中一個地址對應2字節數據,有16個數據位;剩余每個方格表示一個數據存儲單元,方格里的數字表示該單元用于存儲第幾通道的數據。

    定位一個通道的一位數據需要知道其對應的SRAM地址和位號。假設通道m的第i位數據由[addr(m,i),bit(m,i)]定位。分析SRAM中的數據存儲順序可知:
    addr(m,i)=offset+1+[(m-1)/16]+(i-1)×4;
    bit(m,i)=(m-1)%16。
    其中m=1,2,3,…,64;i=1,2,3,4,…。
    FPGA系統向ARM系統發送數據時,將同一通路的數據抽取出來,以一個字節為單位連續發送,所以需要對存儲的數據進行重組織。在FPGA系統中,使用6 bit變量dch[5:0]表示通道號,其中000000(b)表示通道1(m=1),000001(b)表示通道2(m=2),依此類推。數據位計數i使用N位變量bitcnt[N-1:0]來表示,其中N由存儲的總數據量決定,與通道號類似,全零表示i=1情況,1(b)表示i=2情況,依此類推。因而有:
    [(m-1)/16]=dch[5:4];
    (i-1)×4={bitcnt[N-1:0],00(b)};
    (m-1)%16=dch[3:0]。
    數據由FPGA中的變量定位表示為:
    addr=offset+1+{bitcnt[N-1:0],dch[5:4]};
    bit=dch[3:0]。
    FPGA系統根據以上公式將各個通道數據逐位地從SRAM中讀出,并移入移位寄存器中,從而把同一通路的數據以字節為單位連續地組織起來。
4 采集實驗結果
    為了進行測試,基于FPGA設計了專用信號發生器,產生62路數字信號用于測試。62路數字信號中包括4.07 kHz~520.8 kHz(50 MHz的96分頻)的TTL信號及恒高、恒低電平信號。
    由于數字信號通道數較多,這里以其中不包含恒高和恒低的9~12通道來說明采集精度,采集結果如表1。

    依此可知,各通道采集結果與輸入信號對應,說明個通道采集結果正確,本采集系統可靠。
    以某型雷達做為被測對象,系統進行了實際工作測試。采集性能如表2所示。

    本文介紹基于嵌入式技術的并行數字信號采集系統的設計,系統采用DMA技術實現了62路數字信號同步采集,用于某型雷達預留測試接口信號的采集,整體采集速率達310 Ms/s。利用本設計中提出的DMA方法,系統可以進一步擴展,從而實現128路數字信號同步采集,并使整體采集速率達1 520 Ms/s,此時SRAM的寫入速度已成為主要的限制。

參考文獻
[1] 唐玉蘭,陶偉,于宗光.一種實現數模混合電路中的DAC測試的BIST結構[J].電子器件,2006,29(1):231-234.
[2] 張開德.1553B數據總線技術在某艇作戰系統中的應用[J].艦船科學技術,1994,(003):48-51.
[3] 詹艷艷.數據采集系統并行存儲的實現[J].科技資訊,2009(4).
[4] 奚素霞.基于SOPC的高速數據采集系統的分析與設計[J].電子元器件應用,2009,11(4).
[5] 馮萍,李秀華.基于FPGA的高速高精度數據采集系統的研究[J].中國科技信息,2008,(021):105-106.

此內容為AET網站原創,未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
国产精品成av人在线视午夜片| 激情成人亚洲| 久久久精品一品道一区| 在线综合亚洲欧美在线视频| 亚洲激情在线视频| 久久精品123| 欧美一级一区| 小黄鸭精品密入口导航| 亚洲伊人色欲综合网| 一区二区三区鲁丝不卡| 日韩亚洲一区二区| 亚洲美女中出| 亚洲免费av电影| 亚洲人成在线免费观看| 亚洲三级毛片| 亚洲精品之草原avav久久| 亚洲精品久久久久中文字幕欢迎你| 亚洲第一天堂av| 亚洲成人在线| 亚洲国产va精品久久久不卡综合| 在线日韩av片| 亚洲福利专区| 亚洲精品之草原avav久久| 亚洲精品国产精品国自产观看浪潮| 亚洲高清中文字幕| 亚洲欧洲久久| 日韩视频在线观看国产| 99视频精品免费观看| 夜夜嗨av一区二区三区网站四季av | 国产精品丝袜久久久久久app| 国产精品久久久久久久7电影| 国产精品久久久对白| 国产精品成人一区二区| 国产精品视频久久| 国产亚洲永久域名| 激情久久综合| 91久久精品国产91久久| 亚洲日本成人在线观看| 一区二区三区欧美在线| 亚洲女人天堂av| 久久精品国产清高在天天线| 91久久精品久久国产性色也91| 99国产精品久久久久久久久久| 一区二区欧美亚洲| 欧美一区二区三区免费观看 | 葵司免费一区二区三区四区五区| 免费影视亚洲| 欧美日一区二区三区在线观看国产免| 国产精品久久久久久av福利软件| 国产欧美日韩综合一区在线观看 | 一区二区三区自拍| 亚洲人线精品午夜| 亚洲影视九九影院在线观看| 久久激情视频久久| 一本大道久久a久久综合婷婷 | 欧美国产欧美亚州国产日韩mv天天看完整 | 欧美日韩天堂| 国产一区二区0| 亚洲黄色成人久久久| 中日韩午夜理伦电影免费| 欧美一区二区三区免费大片| 亚洲免费av网站| 欧美一区二区三区精品| 欧美精品国产一区二区| 国产精品麻豆成人av电影艾秋| 好吊成人免视频| 99re视频这里只有精品| 久久福利视频导航| 亚洲一区二区三区成人在线视频精品 | 欧美一区二区日韩一区二区| 亚洲美女在线视频| 性刺激综合网| 欧美成人蜜桃| 国产精品日韩在线播放| 亚洲国产精品一区制服丝袜| 亚洲欧美日韩区| 99re66热这里只有精品3直播| 香蕉久久精品日日躁夜夜躁| 欧美大片专区| 国产私拍一区| 一区二区免费在线观看| 久久激情视频久久| 午夜精品一区二区三区在线播放 | 在线一区二区日韩| 亚洲人线精品午夜| 久久国产免费| 欧美四级剧情无删版影片| 狠狠爱综合网| 亚洲综合999| 在线综合欧美| 欧美激情欧美狂野欧美精品| 国产三区精品| 亚洲四色影视在线观看| 日韩亚洲精品电影| 美女图片一区二区| 国产欧美亚洲视频| 亚洲色无码播放| 亚洲美女黄色| 欧美成人蜜桃| 狠狠色狠狠色综合日日五| 亚洲综合精品四区| 亚洲午夜精品一区二区| 欧美黑人在线播放| 伊人婷婷欧美激情| 欧美与欧洲交xxxx免费观看 | 国内精品久久久久久久果冻传媒| 中文av一区二区| 亚洲免费av电影| 久久久亚洲午夜电影| 国产精品外国| 国产精品99久久久久久久久久久久 | 久热精品视频在线| 国产一区二区三区成人欧美日韩在线观看 | 日韩一本二本av| 欧美成人午夜视频| 伊人成人网在线看| 欧美在线不卡视频| 久久狠狠亚洲综合| 国产热re99久久6国产精品| 亚洲午夜高清视频| 亚洲一区欧美二区| 欧美亚州一区二区三区| 日韩系列在线| 国产精品99久久99久久久二8 | 免费成人高清| 1769国产精品| 亚洲日本在线视频观看| 免费看的黄色欧美网站| 亚洲第一黄色网| 91久久精品国产91久久性色tv| 欧美jizzhd精品欧美巨大免费| 在线看欧美日韩| 亚洲欧洲中文日韩久久av乱码| 蜜桃久久av一区| 亚洲电影免费观看高清完整版在线 | 在线亚洲激情| 欧美色网在线| 在线亚洲国产精品网站| 亚洲专区一区| 国产精品高潮呻吟视频| 亚洲视屏在线播放| 欧美在线视频免费| 激情成人综合| 亚洲精品日日夜夜| 欧美精品一区在线| 妖精视频成人观看www| 午夜国产精品视频| 国产亚洲女人久久久久毛片| 亚洲国产精品久久久久秋霞蜜臀 | 亚洲午夜三级在线| 欧美影院精品一区| 在线电影国产精品| 一区二区三区四区五区在线| 国产精品免费一区二区三区在线观看| 亚洲欧美一区二区视频| 老司机午夜精品视频| 91久久精品日日躁夜夜躁欧美 | 国产日韩一区二区三区| 亚洲国产精品黑人久久久| 欧美极品一区二区三区| 在线一区二区三区四区五区| 久久国产精品99国产精| 在线日韩成人| 亚洲制服av| 好看不卡的中文字幕| 一本到12不卡视频在线dvd| 国产精品久久久久久久久久久久久久| 午夜亚洲性色福利视频| 麻豆精品一区二区综合av| 亚洲美女免费精品视频在线观看| 欧美一级久久久| 在线免费观看视频一区| 亚洲免费在线| 伊人成人网在线看| 亚洲综合丁香| 亚洲国产成人久久综合一区| 亚洲尤物视频网| 狠狠色狠色综合曰曰| 正在播放亚洲一区| 国产一区二区三区久久久久久久久 | 欧美一区二区三区四区视频| 亚洲第一区色| 欧美一级片久久久久久久| 亚洲国产一区二区三区a毛片| 亚洲欧美日韩一区二区在线 | 亚洲精品国产无天堂网2021| 午夜久久久久久| 亚洲激情第一页| 久久精品视频免费观看| 亚洲美女一区| 麻豆成人在线观看| 亚洲男人第一av网站| 欧美福利一区二区三区| 亚洲欧美日韩在线| 欧美精品一区二区三区在线播放| 欧美一区二区三区的| 国产精品久久久久av| 日韩午夜免费| 精品99视频| 欧美一区二区久久久|