<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > 一種專用高速數(shù)據(jù)記錄器的設計和實現(xiàn)

          一種專用高速數(shù)據(jù)記錄器的設計和實現(xiàn)

          作者:齊亞軍 趙鳳軍 時間:2008-08-04 來源:無憂電子開發(fā)網(wǎng) 收藏

            在持續(xù)系統(tǒng)中,數(shù)據(jù)是一項關(guān)鍵技術(shù)。常規(guī)的數(shù)據(jù)記錄器多采用總線型設計思路。過去的做法是通過內(nèi)存將采集和聯(lián)系起來。外部采集到的數(shù)據(jù)經(jīng)由總線送入系統(tǒng)內(nèi)存,然后再由主機把數(shù)據(jù)寫入磁介質(zhì)存儲器。由于數(shù)據(jù)兩次經(jīng)由總線進出內(nèi)存,總線效率降低一半,速度也降低很多。

            隨著對總線和總線接口協(xié)議以及計算機系統(tǒng)結(jié)構(gòu)的了解愈加深入,現(xiàn)在多采用映射內(nèi)存及總線主控技術(shù),使適配器對PCI采集設備直接進行訪問。由于避開了系統(tǒng)內(nèi)存這一環(huán)節(jié),速度得到了很大的提高。

            一種常規(guī)的做法是在微機系統(tǒng)加一塊PCI-接口卡,使數(shù)據(jù)通過高速PCI接口,由SCSI總線處理器將高速數(shù)據(jù)寫入SCSI硬盤。其缺點在于數(shù)據(jù)速度受到PCI帶寬的限制,而且由于對微機系統(tǒng)的依賴,系統(tǒng)難以實現(xiàn)模塊化設計。

            本文提出了一種專用的高速數(shù)據(jù)記錄系統(tǒng)設計。設計脫離了微機系統(tǒng),由控制將高速數(shù)據(jù)實時持續(xù)的寫入SCSI硬盤,在存儲容量和傳輸速度等方面都具有很大的優(yōu)勢。此外,設備還支持數(shù)據(jù)的高速回寫。

          本文引用地址:http://www.ex-cimer.com/article/86569.htm

            1.    SCSI總線和硬盤

            SCSI是英文Small Computer System Interface的縮寫,譯為小型計算機系統(tǒng)接口。SCSI是美國ANSI9.2委員會定義的計算機和外設之間的接口標準。本系統(tǒng)采用SCSI硬盤,因為SCSI接口本身具有很多優(yōu)點:(1)SCSI提供了一個高速傳輸通道,目前Ultra320 SCSI總線數(shù)據(jù)傳輸速度可以達到320MB/s,雖然在實際應用中達不到這個理論值,但百兆比特的數(shù)據(jù)傳輸速度完全可以達到;(2)由于有專門的SCSI協(xié)議控制器和內(nèi)嵌的處理器處理SCSI信號和數(shù)據(jù)傳輸,因此SCSI設備對CPU占用率低。此外還支持多任務工作模式;(3)SCSI總線占用系統(tǒng)資源少,還可以同時串接多臺不同設備,最多時可達15個;(4)SCSI硬盤在標識硬盤扇區(qū)時使用了線形的概念,即硬盤只有順序的第1扇區(qū)、第2扇區(qū),第n扇區(qū),不像IDE硬盤的“柱面/磁頭/扇區(qū)”三維格局。這種線形編排方式的優(yōu)點是訪問時間小,可以有效地加快磁盤存取速度,尤其在持續(xù)大容量數(shù)據(jù)存儲時,優(yōu)勢更為明顯。此外,通過掛接多個硬盤組成磁盤陣列可以大大地增加數(shù)據(jù)的存儲容量。

            2.    系統(tǒng)結(jié)構(gòu)設計

              整個系統(tǒng)的設計結(jié)構(gòu)[1]框圖如圖1所示,主要包括以下幾部分:高速數(shù)據(jù)源(不在本文設計中)、光電轉(zhuǎn)換和串并轉(zhuǎn)換單元、高速大容量的數(shù)據(jù)緩存、微處理器、控制器、SCSI協(xié)議處理器以及高速SCSI硬盤。下面逐一介紹。

            2.1 光電轉(zhuǎn)換和串并轉(zhuǎn)換單元

            系統(tǒng)的高速數(shù)據(jù)源為光接口,記錄器接收到光信號后,首先經(jīng)過光電轉(zhuǎn)換變?yōu)榇械碾娦盘?,再?jīng)過串并轉(zhuǎn)換變?yōu)?6位的并行數(shù)據(jù)。

            采用光接口的主要原因在于:光纖通道(Fibre Channel) 是一種高性能的串行數(shù)據(jù)接口,支持SCSI、ATM等上層數(shù)據(jù)傳輸協(xié)議,具有可靠性高、速度快和傳輸距離遠的特點,特別適合高速大容量的信息傳輸。

            2.2 高速大容量的數(shù)據(jù)緩存


          圖1:高速數(shù)據(jù)記錄器結(jié)構(gòu)框圖

           
             數(shù)據(jù)緩存的主要作用在于實現(xiàn)速度匹配,為高速傳輸做好準備。

            普通的SRAM存儲器只有一套數(shù)據(jù)、地址和控制總線,無法同時進行讀寫操作。雙口RAM有兩套數(shù)據(jù)、地址和控制總線,可以同時進行讀寫操作。但其編譯碼電路復雜,而且價格相對較高。由于我們對數(shù)據(jù)不進行任何處理,只是單純的數(shù)據(jù)存儲,緩存單元在結(jié)構(gòu)上相當于一個先入先出(FIFO: First In First Out),先到的數(shù)據(jù)先被存儲。設計中,我們利用現(xiàn)場可編程門陣列(FPGA:Field Programmable Gate Array)實現(xiàn)一個高速FIFO,省去了復雜的編譯碼電路,大大簡化了系統(tǒng)設計。而且,從外部數(shù)據(jù)接口看來,設備就是一個寫不滿的FIFO,也大大簡化了對設備數(shù)據(jù)接口的操作。

            2.3 微處理器

            用來控制設備中各部分的工作,實現(xiàn)設備的特定功能。高速數(shù)據(jù)記錄器主要實現(xiàn)數(shù)據(jù)持續(xù)高速存儲,對數(shù)據(jù)處理的速度要求較高。通常采用數(shù)字信號處理器(:Digital Signal Processing)作為微處理器。

            2.4 控制器

            設計中,為保證大量數(shù)據(jù)的高速持續(xù)傳輸,采用直接存儲器訪問(DMA:Direct Memory Access)方式,因此需要DMA控制器單元。為了簡化電路,提高效率,設備采用FPGA構(gòu)造一個單獨的DMA控制器。

            2.5 SCSI協(xié)議處理器

            無論還是FPGA,通常都不會集成SCSI協(xié)議控制器。因此我們用專門的SCSI協(xié)議控制器來實現(xiàn)SCSI協(xié)議,輔助DSP來實現(xiàn)SCSI協(xié)議和通信。

            2.6 SCSI硬盤

            采用SCSI硬盤可以實現(xiàn)數(shù)據(jù)高速存儲,而且通過增加磁盤數(shù)目可以很方便的擴展存儲容量。

            3.    硬件電路的實現(xiàn)

            前面我們已經(jīng)逐一介紹了系統(tǒng)各部分的功能,下面我們介紹一下高速數(shù)據(jù)記錄器的硬件電路的實現(xiàn)。

            由于設備采用光接口,當高速數(shù)據(jù)流進入設備后,首先我們需要進行光電轉(zhuǎn)換和串并轉(zhuǎn)換。光電轉(zhuǎn)換可以通過專門的光電轉(zhuǎn)換芯片實現(xiàn),而串并轉(zhuǎn)換我們利用某些FPGA內(nèi)嵌的收發(fā)器模塊(Transceiver)來實現(xiàn)。這樣做既可以保證數(shù)據(jù)的高速傳輸,又可以有效地保證時鐘同步,實現(xiàn)字對齊,可靠性高。

            高速數(shù)據(jù)緩存通常采用專用FIFO,但價格較高。我們利用FPGA來實現(xiàn)一個大容量的FIFO,即簡化了系統(tǒng),又提高了效率。前面已經(jīng)介紹過專用的DMA控制器連接電路復雜,我們用FPGA來設計一個單獨的DMA控制器同樣可以簡化電路,提高效率。

            設計中,串并轉(zhuǎn)換單元、高速數(shù)據(jù)緩存和DMA控制器都利用FPGA編程實現(xiàn)(如圖1虛線所示)。用高度集成的FPGA取代分立元件進行高速數(shù)據(jù)傳輸設計是本文的一個重要特點。

            微處理器我們采用德克薩斯儀器(TI:Texas Instruments)公司生產(chǎn)的數(shù)字信號處理器MS320F206;SCSI協(xié)議控制器則選用Qlogic公司的FAS660。

            下面我們對SCSI協(xié)議控制器FAS660[3]做進一步的介紹。

            FAS660是Qlogic公司推出的一款高性能SCSI引擎,它源于Qlogic公司的TEC485三重嵌入式控制器系列??商峁〧ast-160的同步傳輸速率,支持先進的SCSI自動配置模式SCAM的1層和2層協(xié)議。內(nèi)部嵌有微控制器,能夠用編程的方法靈活的協(xié)調(diào)SCSI作業(yè)隊列。FAS660和主流SCSI接口芯片最大的區(qū)別在于:主流SCSI接口芯片采用的是PCI總線接口,而FAS660采用的是微處理器和DMA接口的結(jié)構(gòu)。這使得FAS660更為靈活,可以根據(jù)需要進行多種接口設計,尤其適合應用在一些專用SCSI總線控制場合。

            4.    系統(tǒng)的軟件設計

            在硬件設計的基礎上,還需要軟件模塊

            負責對相關(guān)硬件進行控制和協(xié)調(diào),最終實現(xiàn)SCSI協(xié)議、硬盤的控制和DMA傳輸?shù)?。軟件模塊的設計是本系統(tǒng)的難點和重點。本系統(tǒng)中,軟件設計主要分為兩部分:DSP控制軟件和FPGA實現(xiàn)的DMA控制器,此外還有FPGA實現(xiàn)的串并轉(zhuǎn)換和高速FIFO。程序的優(yōu)劣關(guān)系到整個系統(tǒng)數(shù)據(jù)存儲的性能,下面分別進行討論。

            4.1 FPGA設計

            FPGA設計主要包括異步收發(fā)器模塊、高速異步FIFO緩沖模塊、DMA控制器模塊以及時鐘生成模塊。FPGA作為設計中的重要一部分,用來實現(xiàn)數(shù)據(jù)傳輸?shù)臏蕚洌òù⑥D(zhuǎn)換、高速緩沖以及加入奇偶校驗、CRC校驗)和對讀寫邏輯的控制。


          圖2 DMA控制器狀態(tài)機

            DMA控制器是FPGA設計的主要工作。我們通過DMA控制器,實現(xiàn)傳輸數(shù)據(jù)的控制邏輯,同時對前端傳來的數(shù)據(jù)(沒有任何保護)加以保護(通常指奇偶校驗保護和CRC校驗保護)。它的控制邏輯相當簡單。當FAS660發(fā)送數(shù)據(jù)傳輸請求(聲明DREQ),如果FIFO非空,則經(jīng)過延時后,開始數(shù)據(jù)傳輸(聲明DACK)。FAS660的讀寫操作非常相似,但也有一些差別。讀操作在DACK有效后的第二個DMA時鐘周期開始傳輸,而寫操作在DACK有效后的第一個DMA時鐘周期開始傳輸。在FPGA設計的內(nèi)部邏輯時尤其需要注意。

            Altera公司為StratixGX系列FPGA提供了gxb(吉比特收發(fā)器) 、fifo(先入先出)、pll(鎖相環(huán))等MEGAFUCTION,通過對它們進行例化可以很方便地實現(xiàn)高速收發(fā)器,高速FIFO和時鐘生成等模塊。

            4.2 DSP控制軟件

            基于FAS660的系統(tǒng)可以通過DSP微處理器和FAS660(內(nèi)部有單獨的微控制器和SCSI控制器用來實現(xiàn)SCSI協(xié)議)的協(xié)調(diào)工作來實現(xiàn)系統(tǒng)功能。一般來說,要完成一次數(shù)據(jù)交換必須完成SCSI總線的仲裁、選擇、消息、命令、數(shù)據(jù)和狀態(tài)等階段,這些階段通過為處理器TMS320F206對FAS660寄存器[4]的讀寫命令來實現(xiàn)。

            SCSI控制軟件流程如圖3所示。首先初始化設備,然后建立同步傳輸協(xié)議,檢測硬盤。硬盤準備好后就可以進行數(shù)據(jù)傳輸。


          圖3 DSP控制軟件流程

            5.    結(jié)束語

            本文介紹了一種光接口的專用高速數(shù)據(jù)記錄器的設計。它脫離了微機平臺,用DSP微處理器做控制,用專門的SCSI總線控制器處理SCSI總線信號,并建立了一個高速DMA通道,將數(shù)據(jù)高速持續(xù)的存儲到SCSI磁盤陣列中。設計速度高,容量大,可移植性好,可以靈活應用到各種系統(tǒng)中。

            本文作者創(chuàng)新點:

            1.專用型記錄器的設計思路,避免了總線帶寬限制,可以達到更高的傳輸速度。

            2.用DSP做為本地CPU,控制整個系統(tǒng),脫離了微機系統(tǒng),實現(xiàn)了模塊化設計。

            3.用高度集成的FPGA取代了多個分立元件(FIFO,串并轉(zhuǎn)換,DMA控制器)。

            4.源端數(shù)據(jù)采用光接口傳輸,可靠性高,速度快。

            參考文獻:

            [1]姜鳳山,雷宏. 一種基于FAS466的合成孔徑雷達高速數(shù)據(jù)記錄器的設計.電子技術(shù)應用,2004.6。

            [2]何蘇勤,王忠勇.TMS320C2000系列DSP原理及實用技術(shù).北京:電子工業(yè)出版社,2003.9。

            [3]Qlogic Corporation.FAS660 fast architecture SCSI processor technical manual,2002.7。

            [4]Qlogic Corporation.FAS660 Fast Architecture SCSI Processor Designer’Guide,2003.1。

            [5]吳志祥,汪波,基于ISCSI的存儲系統(tǒng)實現(xiàn)方法. 微計算機信息,2006,3-3。

          合成孔徑雷達相關(guān)文章:合成孔徑雷達原理


          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();