1,、 引 言
智能傳感器技術是一門正在蓬勃發(fā)展的現(xiàn)代傳感器技術,,是涉及微機械和微電子技術,、計算機技術,、網(wǎng)絡與通信技術,、信號處理技術,、電路與系統(tǒng)、傳感技術,、神經(jīng)網(wǎng)絡技術,、信息融合技術、小波變換理論,、遺傳理論,、模糊理論等多種學科的綜合技術。
智能傳感器中智能功能如:數(shù)字信號輸出,、信息存儲與記憶,、邏輯判斷、決策,、自檢,、自校、自補償都是以微處理器為基礎的,?;谖⑻幚砥鞯膫鞲衅鲝暮唵蔚臄?shù)字化與信息處理已發(fā)展到了目前具有網(wǎng)絡通信功能、神經(jīng)網(wǎng)絡,、模糊理論,、遺傳理論、小波變換理論,、多傳感器信息融合等新理論新技術逐步完善的現(xiàn)代智能傳感器,。其微處理器硬件也經(jīng)歷了從單CPU結構到多CPU甚至DSP、ASIC與MCU相混合的結構,。然而微處理器在可靠性,、功耗、功能復用等多方面存在著與生俱來的一些不可克服的缺點與不足,,阻礙了智能傳感器的進一步發(fā)展,。由系統(tǒng)IC向SOC(System on ChIP)轉變已成為歷史發(fā)展的必然趨勢。SOC用硬件實現(xiàn)了以往軟件實現(xiàn)的功能,。與一般MCU 相比,,它具有可靠性高、價格低,、速度快,、體積小、功能復用,、保密性好等一系列優(yōu)點,。傳統(tǒng)的S OC設計是以超深亞微米IC設計技術為基礎的,具有集成電路ASIC設計的復雜程度,。隨著SOC平臺和EDA 技術發(fā)展以及IP新經(jīng)濟模式的推動,,在SOC應用設計上越來越多的從傳統(tǒng)的硅片設計轉到利用大規(guī)模可編程的FPGA 芯片設計,?;贔PGA 的SOC設計其開發(fā)周期短、開發(fā)工具及語言標準化,、設計和器件無關等特點,,使得它與使用單片機一樣容易。大量的FPGA 成功應用的報道都是在圖像處理,、電力系統(tǒng)等領域,。在傳感器智能化領域上的應用仍處于開發(fā)研究階段。傳感器方面的少量應用也僅限于用它作為一個或幾個獨立功能模塊,,如:通信模塊,、自補償模塊等都不具有系統(tǒng)的作用與功能,不能真正地成為片上系統(tǒng)(SOC),。本文將提出集采集系統(tǒng),、補償校正、數(shù)據(jù)處理,、數(shù)據(jù)通信,、任務調(diào)度、人機界面,、IP功能復用等功能模塊于一體的智能傳感器SOC/IP設計及基于FPGA與ARM7微處理器芯片的實現(xiàn)方法,。
2、 SOC/IP概念與智能傳感器SOC設計方法
SOC:System on Chip指建立在單芯片上的系統(tǒng),。
IP: Intellectual Property 自主知識產(chǎn)權,。
傳統(tǒng)的智能傳感器設計方法是以功能設計為基礎的。而SOC設計方法以功能復用與搭建為基礎,,在芯片上用若干個宏模塊來構建復雜系統(tǒng),。這些已經(jīng)開發(fā)的宏模塊就是通用的IP核。IP核的重用可以降低產(chǎn)品設計的復雜度,,減少產(chǎn)品上市時間,。
利用SOC/IP芯片能組成完整的智能傳感器系統(tǒng),。智能傳感器傳感參數(shù)可能是多種多樣的。但從功能模塊組成來講,,它主要包括數(shù)據(jù)采集模塊,、補償與校正模塊、數(shù)據(jù)處理模塊,、數(shù)據(jù)網(wǎng)絡通信模塊,、人機界面和任務管理與調(diào)度模塊等功能單元。從而基于IP的智能傳感器SOC設計過程為:首先正確建立智能傳感器的通用模塊模型;然后合理劃分各摸塊功能規(guī)范,,制定各模塊之間的接口協(xié)議與標準;再設計出一系列通用的IP核;最后把所需的通用IP核搭建整合在一起構成完整的智能傳感器系統(tǒng),。
3 、智能傳感器IP核設計與SOC構建
智能傳感器涉及到數(shù)據(jù)采集,、信號處理(程控放大,、線性化、信號濾波,、信號補償,、人工神經(jīng)網(wǎng)絡、遺傳理論,、多傳感器融合,、模糊理論等) 、數(shù)據(jù)通信,、人機界面及任務調(diào)度等各種功能,。在IP核設計與SOC構建中,為了簡化工作,,降低復雜度,,我們選用基于FPGA的IP核及基于ARM7TDMI-SCPU 的IP核兩種SOC設計方式,其中FPGA的IP核主要完成數(shù)據(jù)采集與信號處理模塊,,基于ARM7 的IP核完成數(shù)據(jù)通信,、人機界面及任務調(diào)度工作。
3.1 數(shù)據(jù)采集
傳統(tǒng)的傳感器信號數(shù)字化大多采用的是VFC,、串行A/D,、并行A/D 等方案。每一方案都可設計成相應的IP核,。雖然已經(jīng)有人用FPGA完成數(shù)據(jù)采集,,但都是以特定應用的方式,而不是以通用的IP核方式設計的,。我們介紹采用MAX125完成的并行A/D接口IP核設計,。MAX125 8通道14bit的并行A/D芯片。在FPGA A/D IP核設計中,,提供給MAX125信號有啟動轉換及轉換結束后的時序信號,,讀取轉換結果并存儲到FPGA 芯片內(nèi)部RAM中的數(shù)據(jù)信號,。該A/D IP核我們已經(jīng)開發(fā)成功,并獲得了很好的使用,。
3.2 信號處理
信號處理是智能傳感器的主要內(nèi)容之一,。通常包含線性化、濾波,、各類補償、人工神經(jīng)網(wǎng)絡,、模糊理論,、遺傳算法、多傳感器融合等工作,。在濾波中,,除了常規(guī)的FFT、DFT之外,,近幾年還出現(xiàn)了小波變換,。由于芯片速度上的優(yōu)勢,如何實現(xiàn)各信號處理IP核通用化設計,,已成為相關信號處理算法IP核設計的關鍵,。
如在線性化處理設計中,我們把各類傳感器的線性化算法都設計到一個通用的線性化IP核中,。在任務調(diào)用時再根據(jù)不同類型傳感器線性化算法要求,,組態(tài)選擇出相應的算法IP核,供實際需要使用,。
3.3 數(shù)據(jù)通信
設置數(shù)據(jù)通信接口主要是考慮芯片還可以同外部CPU或網(wǎng)絡構成更加復雜的測控系統(tǒng),。為了方便芯片的設計,節(jié)省芯片資源,,我們選用基于ARM7的philIPs LPC2106 芯片進行通信IP核設計,。它可以將一系列不同的通信接口(如: CAN、以太網(wǎng),、TCP/IP,、RS232/485、I2C,、SPI) 以及不同的通信規(guī)程用一個通用的微處理器實現(xiàn),。通過與上位機與各類網(wǎng)絡的聯(lián)接,實現(xiàn)遠程遙測,、網(wǎng)絡遠程智能測量節(jié)點等功能,。通信IP核設計主要任務是通信規(guī)約算法設計。而大多數(shù)接口因為基于ARM7的微處理器都能提供,,所以就不需要做太多的工作,。
3.4 人機界面與任務調(diào)度
人機界面與任務調(diào)度IP核也用ARM7微處理器設計,。人機界面主要設計鍵盤接口及LCD/LED/CRT等顯示接口。利用ARM7強大的GPIO功能是不難加以實現(xiàn)的,。
任務調(diào)度IP主要包括數(shù)據(jù)采集調(diào)度,、信號處理調(diào)度、數(shù)據(jù)通信調(diào)度及人機界面調(diào)度等工作,。我們采用以源碼公開的嵌入式操作 系統(tǒng)μC/OS-Ⅱ2.52版為基礎,,將它移植到LPC2106 ARM微處理器中。在μC/OS-Ⅱ嵌入式操作系統(tǒng)基礎上開發(fā)各種應用軟件,,完成智能傳感器所需要的各類任務調(diào)度與組態(tài)工作,。
4 、應用舉例
有了基本的IP內(nèi)核,,我們就可以根據(jù)需要通過對IP核的組態(tài)(在嵌入式操作系統(tǒng)μC/OS-Ⅱ的調(diào)度下)構成各類所需的智能傳感器系統(tǒng),。圖1 所示是用于熱電偶溫度測溫的智能傳感器的SOC設計實例。所有算法IP模塊都加載到ALTERA公司的APEX20K的多芯片F(xiàn)PGA 上,,完成溫度信號采集,、A/D變換、低端補償,、線性化,、程控放大等功能。芯片的總體外部引腳包括A/D接口的數(shù)據(jù)線和控制線,、微處理器接口的數(shù)據(jù)線和控制線,、程控放大的控制線等。微處理器選用具有ARM IP核的Philips公司的LPC2106芯片,。它完成通信功能,、實時時鐘功能、人機接口功能及任務調(diào)度功能,。通信IP包括I2C總線,、RS232/RS485總線、CAN總線,、TCP/IP協(xié)議,、以態(tài)網(wǎng)等。
圖1 基于IP的智能傳感器的SOC設計
圖2 是基于以上系統(tǒng)芯片構成的熱電偶智能傳感器的組成框圖,。其核心是兩片SOC,,其中FPGA SOC選用的是APEX20K,MCU SOC選用的是具有ARM IP核的ARM7 TDMI-S 微處理器,。該智能傳感器的樣機已經(jīng)完成,。FPGA 的片上芯片經(jīng)硬件仿真測試,其A/D采樣、線性化算法,、冷端溫度補償,、多傳感器融合等功能與算法都已通過實驗驗證。MCU的SOC在48MHz 系統(tǒng)時鐘的運行下,,通過了通信,、人機界面、實時日歷時鐘,、任務調(diào)度管理等功能的實驗,,驗證了該設計的可行性。
圖2 基于SOC芯片構成的熱電偶智能傳感器的組成框圖
5 ,、結束語
本文通過實例介紹了智能傳感器IP/SOC設計的方法,。在設計通用智能傳感器IP核的基礎上,通過IP復用,,只需改變或重新設置數(shù)據(jù)與任務調(diào)用模塊就能設計出應用于其他各類智能傳感器的SOC系統(tǒng)。
FPGA的可現(xiàn)場編程特點使基于SOC/IP的智能傳感器設計更加靈活,,各IP模塊并行處理的特點使以往用單一CPU無法實現(xiàn)的,,如需要高速數(shù)據(jù)處理的傳感器校正算法、補償算法,、神經(jīng)網(wǎng)絡傳感算法,、模糊傳感算法、多傳感器融合等復雜算法得以實現(xiàn),??蛇M一步提高測量精度、測量范圍與測量內(nèi)容,。同時,,用硬件實現(xiàn)以往軟件的功能,能解決干擾引起的程序死機問題,,極大地提高了智能傳感器系統(tǒng)的可靠性,。