尤慶伸 張持健 江明 陳航
【摘要】隨著信息領域各技術的發展,數據釆集方面也取得了長足的進步,釆集數據的信息化是目前社會發展的主流方向,各種領域都用得到數據采集。隨著實時測控系統被廣泛的應用,以嵌入式為核心的數據采集系統已在測控領域中占到統治地位。本文研究如何利用SOPC技術來設計實現多路數據采集系統。嵌入式軟核處理器、采集數據處理部分和LCD顯示是系統設計中的三個重要部分。系統中嵌入式軟核CPU的設計,運用Nios II嵌入式軟核處理器控制數據釆集系統工作,達到系統設計任務和要求。
【關鍵詞】SOPC 數據采集;NiosⅡ處理器;多路數據選擇
1.引言
在二十世紀九十年代后期,不斷創新和發展的微電子技術以及半導體產業,大大提高了集成電路的生產技術水平,可編程邏輯器件(PLD)能夠在一個單一的可編程器件實現整個系統,一個完整的單芯片系統(SOC)的概念是指在一個芯片上實現用戶定義的系統。SOC設計將涵蓋包括微處理器、DSP芯片、存儲器、I/O模塊、混合信號模塊和控制邏輯等。
數據采集在現代工業生產及科學研究中的重要地位日益突出,并且實時高速數據采集的要求也不斷提高。隨著微電子技術的一系列成就以及微型計算機的廣泛應用,不僅為高速數據采集系統的應用開拓了廣闊的前景,也對高速數據采集技術的發展產生了深刻的影響。在現代工業生產和科學研究中,對數據采集的要求日益提高,在瞬態信號測量、語音、圖像處理等一些高速、高精度、高實時性的測量中,需要進行高速數據采集。傳統的數據采集方法以單片機為核心控制多個通道的信號采集、預處理和數據傳輸,由于單片機處理速度的局限性, 限制了數在一定程度上據采集的速度、準確性和精度。片上可編程系統(System-on-a-Programmable-Chip SOPC)是一種靈活、高效的SOC解決方案, 它將處理器、緩存、存儲器、I/O口、高速總線等功能模塊集成到一個FPGA 器件上,可裁減、擴充和升級。具有靈活的設計方式;還有小容量高速RAM 資源和豐富的IP Core資源供靈活選擇,用戶可以構成各種不同的系統,如單處理器、多處理器;還包含部分可編程模擬電路和可編程邏輯資源,用于附加邏輯的實現[1~3]。
本文根據嵌入式系統的發展現狀,利用SOPC技術的特點,將處理器與存儲器以及I/O接口、硬件協處理器和普通的用戶邏輯等功能模塊在一個FPGA芯片里集成,從而構建一個可編程的片上系統。然后利用該技術在FPGA芯片上進行Nios II軟核處理器以及相關的接口模塊配置從而完成系統的主要硬件電路,結合系統的軟件設計來控制硬件。
2.系統總體設計
通過SOPC技術而構建的多路數據采集系統基本上是由前端信號處理器和NiosII處理器及相關模塊而構成的。詳細系統組成信息如圖2-1所示。在前端信號處理器中,信號衰減放大電路主要負責對相關輸出、輸入信號進行合理調整,保證系統的穩定運行;濾波器主要負責劃分頻率界限;信號采樣主要負責現信號數字化功能。NiosII嵌入式處理器系統包括NiosII CPU、調試端口(JTAG)、電源模塊、SDRAM控制器、片內ROM/RAM、三態橋、LCD顯示驅動電路、通用 I/O、CompactFlash 接口、PCI 接口、FIFO 接口等。
圖2-1 系統總體框圖
其中基于SOPC技術的NiosII處理器是整個系統的核心,主要是運用該處理器控制數據采集系統工作。基本工作原理首先通過傳感器來采集數據,通過調整電路(衰減放大)進行信號的穩定調整,再通過濾波器來獲取有用的信號,將信號送入多路模擬開關,通過多路模擬幵關來選擇數據的輸出,此時的數據時模擬的,通過A\D進行模數轉換。通過NiosII來控制數據的采集、處理、存儲及顯示。
3.數據采集處理設計
本多路數據采集系統由兩大模塊組成,它們分別是前端信號調整電路和基于Nios II軟核處理器以及各相關的功能模塊。前端信號調整電路如圖3-1所示。
圖3-1 前端信號調整電路
3.1 衰減和放大電路
若要使整個系統能夠最大程度的呈現動態,必須采用衰減和放大電路的方式,這種方式可以對觀測的信號進行適度的擴大。其工作原理是以衰減和放大兩個設備為介質,對信號進行相應的調整。如小信號要使用放大器進行信號的放大,反之,則使用衰減器對其進行衰減;此外,為了使通過設備器進行處理過的被測信號不受任何影響,輸入端口在進行配置的時候,必須將相應的阻抗調高,此時則需要由高阻變低阻旳變換電路。
前置通道衰減放大電路主要包括開關、繼電器、衰減器、放大器和運放偏置電路等。其框圖如圖3-2所示。
圖3-2 前置通道衰減放大電路框圖
3.2 濾波器電路
信號傳遞的過程要通過高低通濾波器,在經過高通濾波器時它的截止頻率是2Hz,然后流向低通濾波器的時候將轉變為IKHz,此時為了獲取所需信號就要借助多路模擬開關,將其獲取的一系列信號轉送入A/D芯片里。經過這一路處理和轉換后,模擬信號將成功轉化為數字信號,并根據既定設置將信號輸出,模擬信號就己經轉變成為數字信號被輸出。
3.3 衰減器
信號輸入的變化范圍不是靜態的,而是一直在較大范圍內變化,有時最小可以是幾十毫伏,有時最大也可以是幾十伏特。如此一來,如果沒有好的控制設備,ADC將難以維持正常的運行,因此在這里將使用衰減器對其進行處理。通常我們使用的衰減器由高阻和低阻兩種衰減器;其中,高阻衰減器主要對大信號進行10倍的衰減處理,如1倍、10倍、100倍……一次類推,它的位置通常在輸入端;而低阻衰減器則是將其衰減到1、2、4、10倍,其位置通常設置在阻抗變換器的后面。
高阻衰減器電路原理圖如圖所示。其工作原理是基于RC電路,其在進行信號衰減時統一經過繼電器進行轉換且為既定倍數,其不會因為電路形式不同而有任何變化。它的衰減量則是輸出電壓及輸入電壓的商值,同時也和圖中VC1,R1并聯阻抗與R2、C2和(R3+l/(jwc))并聯阻抗的分壓商值相等。如果圖中V0和VI的商與R2/(R2+R1)的商相差無幾,可以認定為此時,分壓比與頻率是沒有任何關聯性的,如此一來,R和C的值就是最佳補償值。通過研究證實,若衰減器是100:1,圖3-3中R1=990KΩ、R2=10.1KΩ、R3=10KΩ、Cl=220pF、C2=82pF、VC=3pF、VC2=10pF。
圖3-3 高阻衰減器電路圖
3.4 放大器
前面被衰減后的信號是在5V范圍內,再將其經過放大器放大到正負lOOmV后,其對電路的要求與之前相比要精確的多,頻帶寬度指標也要求更寬廣。
主放大器顧名思義,其核心功能就是將信號進行放大后,對其進行既定偏置,把正負主100 mV的信號二次進行10倍的放大,然后把最終放大值調整為0~2V的電壓,再提供給A/D。
3.5 Nios II嵌入式軟核處理器系統
所謂的Nios II處理器系統指的就是:在一個芯片上,它包含一個或是多個可配置Nios II CPU軟核、與CPU相連接的片內外設和存儲器以及片外存儲器和外設相連的接口等[1]。所有組件在一個FPGA芯片上實現。Nios n嵌入式軟核處理器系統主要有三大部分組成,有Nios II處理器和Avalon交換結構總線以及外部設備。Nios II處理系統的結構圖如圖3-4所示。通過FPGA內部的邏輯單元和RAM資源來實現Nois II處理器、總線以及各外部設備等部件的電路設計。這是SOPC系統與傳統的SOC系統最大不同。
4.系統仿真波形
系統采集數據的仿真效果圖如圖4-1所示,采集樣本數據頻率的控制系統通過CLK的外部時鐘實現;復位系統(RESET)的作用為連接系統以外的復位信號,可以分別控制采樣幵始和結束:MAX196 WR,RD-ADC,INT-DC和EPM7128(控制邏輯數據的芯片)等,實現連接系統的引腳。按照圖4-1所示,完成系統復位后,輸出數據時通過CLK實現,出現A/D轉換的次數增多,FIFO隊列中數據信息增加,相反的,若FIFO隊列中存儲量達到要求后,請求現場可編程門陣列(FPGA)對數據中斷,并作出響應,同時FIFO隊列中的值在直接內存取(DMA)中讀入數據,相比可編程門陣列(FPGA)數據讀入時速度很快,所以在A/D轉換不需要有暫停,這就實現了實時采樣和實時處理。
5.結束語
在FPGA內生成實現CPU是FPGA在今后的發展中必須要走的道路。事實表明,使用基于Nios處理器核心的SOPC設計研究能極大地縮短開發時間,擴展了 SOPC系統開發的靈活性。它設計非常簡單,設計時只考慮接口電路以及部分外設設備。開發周比較期短,產品應市的時間比較快。系統不需要再對片內進行電路設計,這樣開發時間就會大大的縮短。具有很強的通用性,升級也方便。隨著Nios軟核嵌入式處理器的不斷推出以及其開發工具的不斷升級,它的性能在一步步進行優化。而且具有占用空問少、功耗低等優勢,可用于多媒體信息處理,信息安全以及嵌入式WEB服務器等等。
參考文獻
[1]董秀杰,楊艷,周游.FPGA/CPLD選型與設計優化[J].化工自動化與儀表,2009,36(3):60-63.
[2]袁偉濤,張斌珍,劉文怡.箭載遙測變換器測試臺的設計與實現[J].電子技術應用,2008,34(2):87-90.
[3]任勇峰,秦麗,張斌珍.高速PCM 碼信號源及其解碼電路的設計[J].測試技術學報,2001,15(2):71-74.
[4]Nios II Processer Reference Handbook Altera 公司網站提供資料.
[5]林鵬.SOPC的技術研究—基于SOPC的數據釆集系統[D].天津理工大學研究生學位論文,2005.12.
[6]張慧,孫惠章.共享資源NiosII多處理器系統研究[R].陜西:現代電子技術,2013(16):52-55.
作者簡介:
尤慶伸(1989—),男,碩士研究生,研究方向:嵌入式開發與智能控制。
張持健(1964—),男,博士,教授,研究方向:人工智能與自動控制技術。
江明(1990—),男,碩士研究生,研究方向:人工智能與嵌入式系統。
陳航(1988—),男,碩士研究生,研究方向:嵌入式系統開發。