最適合的選擇——ZigBee SoC解決方案
在開發(fā)2.4 GHz ZigBee®無線網(wǎng)絡(luò)應用時,設(shè)計工程師通常會面臨系統(tǒng)分割的選擇:對ZigBee的連接性及網(wǎng)絡(luò)處理解決方案而言,最佳的整合層級為何?從效能、功耗及成本的角度來看,何者是最適合的選擇——是將2.4 GHz無線收發(fā)器及處理核心整合為單芯片解決方案的ZigBee系統(tǒng)單芯片(SoC)比較好?還是具有獨立收發(fā)器及主處理器的離散式方案較佳?
在解決這些問題之前,先讓我們仔細分析ZigBee技術(shù)。根據(jù)IEEE針對低功率無線網(wǎng)絡(luò)所推出的802.15.4 MAC/PHY規(guī)格,ZigBee憑借增加網(wǎng)狀網(wǎng)絡(luò)協(xié)議及應用文件檔案來擴展IEEE 802.15.4,讓各裝置之間能夠完全互相操作。ZigBee使用高可靠、可擴充的網(wǎng)狀網(wǎng)絡(luò)協(xié)議,可支持數(shù)千個節(jié)點。ZigBee應用文件檔案則針對家庭/商業(yè)自動化、智慧能源、健康醫(yī)療及零售設(shè)備定義共通語言。ZigBee也提供設(shè)備的測試及認證,以確保從射頻到應用層的互相操作性。
針對傳感及控制網(wǎng)絡(luò),ZigBee已被設(shè)計為高度可靠、低成本、低功率的無線網(wǎng)絡(luò)解決方案。系統(tǒng)分區(qū)的選擇最終將對ZigBee解決方案的網(wǎng)絡(luò)效能、功耗及成本造成極大的影響。
系統(tǒng)分區(qū)
圖1顯示三種基本的系統(tǒng)分區(qū)選擇:ZigBee系統(tǒng)單芯片、ZigBee網(wǎng)絡(luò)協(xié)同處理器(NCP)加上主處理器,以及ZigBee收發(fā)器加上主處理器。
在系統(tǒng)單芯片的設(shè)計中,IEEE 802.15.4的標準,射頻是嵌入式處理器的一個外設(shè),所有的封包處理及應用處理都在單芯片內(nèi)執(zhí)行。系統(tǒng)單芯片一般會包括微處理器的硬件外設(shè) ,以支持運算負荷繁重的功能,例如AES(高級加密標準)的加密。
在網(wǎng)絡(luò)協(xié)同處理器(NCP)的設(shè)計中,ZigBee協(xié)議棧是在射頻及網(wǎng)絡(luò)處理器芯片上運作,然后運用其SPI或UART接口連接至主處理器。主處理器僅處理那些被設(shè)備應用傳送或接收的封包。至于那些路由封包的處理,包括安全處理,則是在網(wǎng)絡(luò)處理器上進行,毋需中斷主處理器。因此,SPI或UART處理時間的影響僅會發(fā)生在封包的來源或目的地。
一個ZigBee收發(fā)器僅包含RF收發(fā)器及關(guān)鍵時序的MAC/PHY功能,主處理器則支持MAC的上層、網(wǎng)絡(luò)協(xié)議及應用編碼。所有的封包都必須傳送至主處理器進行處理。僅進行路由的那些封包則會被傳送至主處理器后再返回至射頻端,以進行再次傳輸,基本上是通過UART或SPI接口進行。通常AES加密的運作是在收發(fā)器芯片上執(zhí)行;因此需要額外的UART或SPI傳輸來支持安全處理?! ?/p>
圖1:ZigBee系統(tǒng)分區(qū)選擇
網(wǎng)絡(luò)性能
系統(tǒng)設(shè)計必須考慮吞吐量(throughput)及延遲(latency),以確保網(wǎng)絡(luò)可符合產(chǎn)品的設(shè)計目標。吞吐量是用來測量網(wǎng)絡(luò)可支持多少的數(shù)據(jù)傳輸量,這是非常關(guān)鍵的指標,用來測定網(wǎng)絡(luò)的擴充性。延遲則是測量節(jié)點間的訊息傳輸速度,這也是非常關(guān)鍵的指標,用來測定網(wǎng)絡(luò)的響應能力。吞吐量及延遲都與組件分割有關(guān),系統(tǒng)架構(gòu)必須納入考慮。
ZigBee是一種復合式的網(wǎng)狀網(wǎng)絡(luò)協(xié)議,包括保持在啟動狀態(tài)的路由器中樞,以及一般是在睡眠狀態(tài)中的終端裝置。路由器負責在終端裝置間;或是從終端裝置至中央控制器傳遞訊息。ZigBee網(wǎng)絡(luò)的吞吐量及延遲會與路由器處理數(shù)據(jù)封包及將它們傳送至適當目的地的速度有關(guān)。
本文選自電子發(fā)燒友網(wǎng)6月《智能工業(yè)特刊》Change The World欄目,轉(zhuǎn)載請注明出處。
路由器的效率與系統(tǒng)分區(qū)有關(guān)。若系統(tǒng)使用系統(tǒng)單芯片或網(wǎng)絡(luò)協(xié)同處理器,則可以在不喚醒或中斷主處理器的情況下處理所有的路由,封包一般會在5-10 ms內(nèi)被傳送。若系統(tǒng)使用收發(fā)器,則這個收發(fā)器就必須喚醒或中斷主處理器去處理每一個封包。這樣的喚醒或中斷延遲時間可能會大于100 µs。此外,數(shù)據(jù)封包必須在收發(fā)器和主處理器之間傳送。ZigBee封包可能大至127字節(jié)(1016位),以一般的SPI/UART數(shù)據(jù)傳輸率傳送一個封包至處理器后再返回收發(fā)器,可能需耗費0.5-4 ms。ZigBee在MAC及網(wǎng)絡(luò)層、有時甚至在應用層都會使用AES加密。如果主處理器或收發(fā)器都未支持高效AES加密,則可能需要額外的UART或SPI數(shù)據(jù)傳輸。
圖2顯示系統(tǒng)分割對于小型5字節(jié)有效負載的網(wǎng)絡(luò)效能的影響,其中僅ZigBee收發(fā)器有支持AES加密。在使用系統(tǒng)單芯片或網(wǎng)絡(luò)協(xié)同處理器的網(wǎng)絡(luò)中,單一中繼點(hop)的延遲為10 ms,在使用收發(fā)器的網(wǎng)絡(luò)中則是20 ms。由于每個節(jié)點需要花費兩倍的時間去處理一個封包,因此使用收發(fā)器的網(wǎng)絡(luò)吞吐量會減少50%,這會讓可支持裝置的最大活動數(shù)量減半。針對那些極為重視時間的應用,例如照明,延遲的增加將限制可允許的中繼點最大數(shù)量,如此會降低網(wǎng)絡(luò)的擴充性及可靠性。
圖2:延遲vs.系統(tǒng)分割
功耗
ZigBee通訊協(xié)議的設(shè)計,是為了讓休眠中的裝置可控制其電池壽命。休眠中的裝置會設(shè)定自己喚醒及與網(wǎng)絡(luò)互動的時程,讓設(shè)計人員能在電池壽命及數(shù)據(jù)更新之間取得適當?shù)钠胶?。此外,當原本休眠中的終端裝置喚醒時,ZigBee協(xié)議毋需再次進行同步化,因此可以很有效率地將數(shù)據(jù)傳送至源頭。
在ZigBee網(wǎng)絡(luò)中,最重要的功耗指標是終端節(jié)點的電池壽命。由電池供電的終端節(jié)點一般會處于休眠狀態(tài),僅會定期喚醒檢查是否有任何有用的數(shù)據(jù)自網(wǎng)絡(luò)傳送過來。當電池供電的終端裝置處于休眠狀態(tài)時,電力消耗主要是由漏電流所造成。
在數(shù)據(jù)傳輸期間,電池供電的終端裝置必須喚醒處理器、啟動收發(fā)器、執(zhí)行明確的信道評估、傳送數(shù)據(jù)要求、接收同意,而且可能還要接收來自網(wǎng)絡(luò)的數(shù)據(jù)。這些功能大部分是在MAC層執(zhí)行,無需與網(wǎng)絡(luò)堆?;?。若網(wǎng)絡(luò)有數(shù)據(jù)要傳送給終端節(jié)點,則將數(shù)據(jù)由路由器傳送至終端節(jié)點所需的時間,便和系統(tǒng)分區(qū)有關(guān)。若此路由器是一個系統(tǒng)單芯片或網(wǎng)絡(luò)協(xié)同處理器,則資料要求可在內(nèi)部處理,而路由器響應的時間一般是在2-3 ms內(nèi)。若此路由器使用收發(fā)器,則此收發(fā)器必須喚醒或中斷主處理器、等待處理器創(chuàng)造數(shù)據(jù)封包,以及經(jīng)由串行端口接收封包,因此會增加約10 ms的延遲。在延遲期間,終端節(jié)點的接收器仍然需維持啟用狀態(tài),而這會大幅降低電池壽命。很不幸的,路由器上的組件分割對于終端裝置的電池壽命會產(chǎn)生負面的影響。
對成本的影響
單芯片無線SoC解決方案,例如Silicon Labs的 Ember® ZigBee® SoC或NCP的成本通常會低于兩個芯片的收發(fā)器/主處理器解決方案。印制電路板(PCB)的成本也會較低,因為所需的電路板面積較少,組裝組件以及裝置間需要路由的信號也較少。硅芯片的總成本也降低了,因為消除了多余的功能,例如MAC/PHY和網(wǎng)絡(luò)層所需的AES硬件加速,另外也除去了用來溝通收發(fā)器及主處理器的串行端口及引腳。若系統(tǒng)擁有較大型的處理器,則開發(fā)人員通常會認為在設(shè)計中增加一個收發(fā)器是較具成本效益的,然而,在這些系統(tǒng)中,應該將對于延遲及吞吐量的影響列為設(shè)計選擇的考慮因素。
結(jié)論
針對不需主處理器的終端裝置及路由器,單芯片無線SoC系統(tǒng)分區(qū)方法可提供最佳的網(wǎng)絡(luò)性能、最低的功耗及最低的總成本。若系統(tǒng)需具有一個主處理器,則NCP系統(tǒng)分割方法可提供最佳的性能及最低的功耗,且最不會影響主處理的性能。
本文選自電子發(fā)燒友網(wǎng)6月《智能工業(yè)特刊》Change The World欄目,轉(zhuǎn)載請注明出處。
評論