基于MSP430和CC1100的有源RFID設(shè)計
射頻識別(Radio Frequency Identification,RFID)技術(shù)是一種利用無線射頻通信實現(xiàn)的非接觸式自動識別技術(shù),與目前廣泛采用的條形碼技術(shù)相比,RFID具有容量大、識別距離遠、穿透能力強、抗污性強等特點。RFID技術(shù)已經(jīng)發(fā)展得比較成熟并獲得了大規(guī)模商用。隨著RFID便攜式設(shè)備的提出,功耗就成為一個需要重點考慮的問題。本文將具體闡述基于MSP430F2012和CC1100低功耗設(shè)計理念的雙向有源標簽的軟硬件實現(xiàn)方法。
1.低功耗設(shè)計
1.1低功耗概述
功耗基本定義為能量消耗的速率,可分為瞬態(tài)功耗和平均功耗兩類。兩者意義不同,有不同的應(yīng)用背景和優(yōu)化策略,通常被籠統(tǒng)地概括為低功耗設(shè)計。實際研究中可根據(jù)不同情況區(qū)分為:
(1)瞬態(tài)功耗優(yōu)化:目標是降低峰值功耗,解決電路可靠性問題。
(2)平均功耗優(yōu)化:目標是降低給定時間內(nèi)的能量消耗,主要針對電池供電的便攜電子設(shè)備,以延長電池壽命或減輕設(shè)備重量。
1.2功耗的物理來源
芯片電路的功耗主要來自兩方面:動態(tài)功耗和靜態(tài)功耗。動態(tài)功耗主要是電容的充放電和短路電流。靜態(tài)功耗主要是漏電流,包括PN結(jié)反向電流和亞閾值電流,以及穿透電流。如果工作時序及軟件算法設(shè)計有缺陷,會降低系統(tǒng)工作效率、延長工作時間,也會直接增加系統(tǒng)能量的消耗。
1.3低功耗設(shè)計策略
算法級功耗優(yōu)化:在電路設(shè)計的開始,就要進行算法的選擇,應(yīng)該盡量選擇功耗效率高的算法。首先,從實現(xiàn)算法所需邏輯的大小來看,算法中操作的數(shù)目、所需要的帶寬、存儲操作、端口操作越少,此算法應(yīng)用到的電路功耗越低。在實際的設(shè)計中,需要按照應(yīng)用的要求進行總體性能和功耗的均衡。同時,算法中需要的協(xié)處理必須考慮,算法所需的協(xié)處理越簡單、協(xié)作模塊越少、實現(xiàn)算法所需要的功耗就越小。此外,算法中臨時變量少、臨時變量有效的時間短、循環(huán)的合理運用都會降低算法所需的功耗。
系統(tǒng)級功耗設(shè)計與管理:系統(tǒng)級的功耗管理主要是動態(tài)功耗管理。通常的做法是處于空閑狀態(tài)的時候,運作于睡眠狀態(tài),只有部分設(shè)備處于工作之中;當產(chǎn)生一個中斷時,由這個中斷喚醒其它設(shè)備。實際上,這一部分需要硬件的支持,如:電源系統(tǒng)的低功耗技術(shù);系統(tǒng)軟硬件的劃分,在于決定哪些功能模塊由軟件來實現(xiàn)功耗較小,哪些功能模塊由硬件實現(xiàn)功耗較小;低功耗處理器的選擇。
2.系統(tǒng)硬件設(shè)計
綜合考慮系統(tǒng)功耗來源與低功耗設(shè)計策略,硬件設(shè)計選擇具有低功耗特性的單片機及射頻收發(fā)芯片,并盡量簡化電路減少功耗開支。
2.1主要芯片的選擇
MSP430系列單片機的結(jié)構(gòu)完全以系統(tǒng)低功耗運行為核心,電源采用1.8~3.6V低電壓,活動模式耗電250μA/MIPS,RAM數(shù)據(jù)保持方式下耗電僅0.1μA.由于系統(tǒng)在90%以上的時間內(nèi)都是處于休眠或低功耗狀態(tài),因此漏電流成為影響系統(tǒng)功耗的另一個重要因素,其I/O輸入端口的漏電流最大僅為50nA.加上有獨特的時鐘系統(tǒng)設(shè)計,包括兩個不同的時鐘系統(tǒng):基本時鐘系統(tǒng)和鎖頻環(huán)(FLL和FLL+)時鐘系統(tǒng)或DCO數(shù)字震蕩器時鐘系統(tǒng)。由時鐘系統(tǒng)產(chǎn)生CPU和各功能模塊所需的時鐘,并且這些時鐘可以在指令的控制下打開或關(guān)閉,從而實現(xiàn)對總體功耗的控制。由于系統(tǒng)運行時使用的模塊不同,即采用不同的工作模式,芯片的功耗會有明顯的差別。在系統(tǒng)中共有一種活動模式(AM)和五種低功耗模式(LPM0~LPM4)。另外,MSP430系列單片機采用矢量中斷,支持十多個中斷源,并可以任意嵌套。用中斷請求把CPU喚醒只需要6μs,通過合理編程,既可以降低系統(tǒng)功耗,又可以對外部請求做出快速響應(yīng)。
射頻芯片是整個RFID卡最核心的部分,直接關(guān)系到標簽的讀寫距離和可靠性,同時也直接影響到整個系統(tǒng)的功耗。CC1100是Chipcon公司推出的單片UHF無線發(fā)射芯片,體積小,功耗低,數(shù)據(jù)速率支持1.2~500kbps的可編程控制,其工作電壓范圍為1.9~3.6V,可以工作在915MHz.、868MHz.、433MHz和315MHz四個波段,還可通過程序配置在所有頻段提供-30~10 dBm輸出功率內(nèi)置地址解碼器、先入先出堆棧區(qū)、調(diào)制處理器、時鐘處理器、GFSK濾波器、低噪聲放大器、頻率合成器,功率放大器等功能模塊。它具有兩種低功耗工作模式:關(guān)機模式和空閑模式,在關(guān)機模式下工作電流小于200nA.本文中CC1100工作在433MHz的頻率上,采用FSK調(diào)制方式,數(shù)據(jù)速率為100kbps,信道間隔為200kHz.
2.2電路設(shè)計
為簡化系統(tǒng)結(jié)構(gòu),本系統(tǒng)僅由必須的微處理器單元、射頻收發(fā)單元、天線及電池單元組成。省去電池到器件之間的穩(wěn)壓電路,直接由電池給系統(tǒng)供電。節(jié)省了穩(wěn)壓電路所帶來的靜態(tài)電流消耗,使電池壽命進一步延長。為防止發(fā)射狀態(tài)較大的電流造成電池電壓瞬態(tài)降低,使用較大容量電容與電池并聯(lián)。MSP430F2012內(nèi)部集成的零功耗欠壓復(fù)位(BOR)保護功能,可以在電壓低于安全操作范圍時執(zhí)行完全復(fù)位,很好地解決了單片機復(fù)位不完全而產(chǎn)生的隨機錯誤操作問題。
3.軟件設(shè)計
盡量用軟件來代替硬件也是低功耗系統(tǒng)設(shè)計常常采取的措施。本次程序開發(fā)綜合考慮了時序調(diào)度和工作效率兩方面問題,以降低系統(tǒng)的功耗。
3.1合理設(shè)計工作時序
由于CPU的運行時間對系統(tǒng)的功耗影響極大,應(yīng)盡可能縮短其工作時間,較長地處于空閑方式或掉電方式是軟件設(shè)計降低單片機系統(tǒng)功耗的關(guān)鍵。程序運行流程圖如圖2(a)、(b)所示,當系統(tǒng)上電完成初始化操作即刻進入低功耗模式,只在系統(tǒng)接收到正確信息產(chǎn)生中斷時才會喚醒單片機進入工作模式,盡量在短時間內(nèi)完成對信息或數(shù)據(jù)的處理,當處理結(jié)束立即返回低功耗模式等待下一個中斷到來。
3.2提高工作效率
用宏定義來代替子程序調(diào)用。因為CPU進入子程序時,會首先將當前CPU寄存器推入堆棧(RAM),在離開時又將CPU寄存器彈出堆棧,這樣至少帶來兩次對RAM的操作,所以讀RAM會比讀Flash帶來更大的功耗。用宏定義來代替子程序調(diào)用,無疑會降低系統(tǒng)的功耗。
盡量減少CPU的運算量,將一些運算的結(jié)果預(yù)先算好,放在Flash中,用查表的方法替代實時的計算,減少CPU的運算工作量,可以有效降低CPU的功耗;不可避免的實時計算,精度夠了就結(jié)束;盡量使用短的數(shù)據(jù)類型:如盡量使用字符型的8位數(shù)據(jù)替代16位的整型數(shù)據(jù),盡量使用分數(shù)運算而避免浮點數(shù)運算等。
評論