藍(lán)牙技術(shù)是一種無(wú)線數(shù)據(jù)與數(shù)字通信的開放性規(guī)范。它以低成本、近距離無(wú)線連接為基礎(chǔ),為固定與移動(dòng)設(shè)備建立了一種完整的通信方式和技術(shù)。藍(lán)牙技術(shù)的實(shí)質(zhì)是建立通用無(wú)線接口及其控制軟件的標(biāo)準(zhǔn),使移動(dòng)通信與計(jì)算機(jī)網(wǎng)絡(luò)之間能實(shí)現(xiàn)無(wú)縫連接,由此,為不同廠家生產(chǎn)的便攜式設(shè)備提供了近距離(10m~100m)范圍內(nèi)的互操作通道。
在工業(yè)控制系統(tǒng)和許多應(yīng)用領(lǐng)域,隨著電子技術(shù)的發(fā)展,目前控制器和傳感器已經(jīng)實(shí)現(xiàn)了智能化。在一般的傳感器或測(cè)試儀表中,大量使用CPU 控制下的數(shù)字化技術(shù),因此,許多控制系統(tǒng)或傳感器系統(tǒng)已經(jīng)實(shí)現(xiàn)了數(shù)字化傳輸。如果在數(shù)字化的控制系統(tǒng)和傳感器中嵌入藍(lán)牙技術(shù),則可以實(shí)現(xiàn)系統(tǒng)數(shù)據(jù)和控制命令的無(wú)線傳輸,這對(duì)于許多應(yīng)用領(lǐng)域都是十分重要的。
本文通過(guò)對(duì)藍(lán)牙協(xié)議棧結(jié)構(gòu)的討論,提出一個(gè)嵌入式SoC 器件結(jié)構(gòu)。這個(gè)嵌入式SoC 器件是一種具有藍(lán)牙通信功能的SoC 器件;SoC 中的CPU 對(duì)用戶開放,用戶可以使用這種結(jié)構(gòu)的SoC 器件實(shí)現(xiàn)智能傳感器或控制器單元。
1 藍(lán)牙協(xié)議棧
藍(lán)牙技術(shù)規(guī)范1.0 版本作了如下規(guī)定。
藍(lán)牙工作在全球通用的2.4GHz ISM(Industrial ,Scientific and Medical)免付費(fèi)、免申請(qǐng)的無(wú)線電頻段。
采用快速確認(rèn)和跳頻技術(shù),以確保鏈路的穩(wěn)定。
采用二進(jìn)制調(diào)頻(FM)技術(shù)的跳頻收發(fā)器,抑制干擾和防止衰落。
采用前向糾錯(cuò)(FEC)技術(shù),抑制長(zhǎng)距離鏈路的隨機(jī)噪聲。
數(shù)據(jù)傳輸速率為1Mb/s 。
采用時(shí)分雙工傳輸,其基帶協(xié)議是電路交換和分組交換的結(jié)合。
一個(gè)跳頻頻率發(fā)送一個(gè)同步分組,每個(gè)分組占用一個(gè)時(shí)隙,也可擴(kuò)展到5 個(gè)時(shí)隙。
支持一個(gè)異步數(shù)據(jù)通道,或3 個(gè)并發(fā)的同步語(yǔ)音通道,或一個(gè)同時(shí)傳送異步數(shù)據(jù)和同步語(yǔ)音的通道。每一個(gè)語(yǔ)音通道支持64Kbps 的同步話音。異步通道支持最大速率為721Kbps 、反向應(yīng)答速率為57.6Kbps 的非對(duì)稱連接,或者是432.6bps 的對(duì)稱連接。
目前,工作在2.4GHz 頻段上的無(wú)線局域網(wǎng)技術(shù)中,除了藍(lán)牙技術(shù)外,還有IEEE802.11、HomeRF 和紅外技術(shù)。總的來(lái)說(shuō),IEEE802.11 比較適合于辦公室無(wú)線網(wǎng)絡(luò),HomeRF 適用于家庭中的移動(dòng)數(shù)據(jù)、語(yǔ)音設(shè)備等與主機(jī)之間的通信,而藍(lán)牙技術(shù)則可以應(yīng)用于任何允許無(wú)線方式替代線纜的場(chǎng)合。
在實(shí)際應(yīng)用中,藍(lán)牙技術(shù)的應(yīng)用一般采用嵌入式技術(shù)。在應(yīng)用系統(tǒng)中嵌入藍(lán)牙協(xié)議棧,可為系統(tǒng)提供一個(gè)透明的無(wú)線網(wǎng)絡(luò)通信層。
藍(lán)牙技術(shù)協(xié)議棧的設(shè)計(jì)只有符合藍(lán)牙技術(shù)規(guī)范的要求,才能實(shí)現(xiàn)不同廠家產(chǎn)品的無(wú)縫對(duì)接。藍(lán)牙技術(shù)規(guī)范(specification)包括協(xié)議(protocol)和應(yīng)用規(guī)范(profile)兩個(gè)部分。完整的藍(lán)牙協(xié)議棧如圖1 所示。
協(xié)議規(guī)范中定義了各功能元素的工作方式,提供了藍(lán)牙技術(shù)實(shí)現(xiàn)中功能元素間的橫向體系結(jié)構(gòu)。應(yīng)用規(guī)范則介紹了實(shí)現(xiàn)特定應(yīng)用模型,描述了各層協(xié)議間的協(xié)同機(jī)制,從而提供了技術(shù)實(shí)現(xiàn)的縱向體系結(jié)構(gòu)。藍(lán)牙協(xié)議包括核心協(xié)議層、替代電纜協(xié)議層、電話控制協(xié)議層和選用協(xié)議層。
核心協(xié)議。核心協(xié)議包括基帶協(xié)議、鏈路管理協(xié)議(LMP)、邏輯鏈路控制和適配協(xié)議(L2CAP)、服務(wù)發(fā)現(xiàn)協(xié)議(SDP)。
替代電纜協(xié)議。替代電纜協(xié)議包括串行電路仿真協(xié)議( RFCOMM ) ,用于實(shí)現(xiàn)數(shù)據(jù)的轉(zhuǎn)換。
電話替代協(xié)議。本協(xié)議包括二元電話控制規(guī)范(TCS Binary)與AT- 命令(AT-command)。用于提供音頻通信的處理規(guī)范和相應(yīng)的控制命令。
選用協(xié)議。選用協(xié)議與用戶的應(yīng)用有關(guān),包括點(diǎn)到點(diǎn)協(xié)議(PPP)、用戶數(shù)據(jù)報(bào)/ 傳輸控制協(xié)議/ 互聯(lián)網(wǎng)協(xié)議(UDP 和TCP/IP)、目標(biāo)交換協(xié)議(OBEX)、無(wú)線應(yīng)用協(xié)議(WAP)、無(wú)線應(yīng)用環(huán)境(WAE)、vCard 、vCal 、紅外移動(dòng)通信(IrMC)。選用協(xié)議層的具體內(nèi)容由應(yīng)用系統(tǒng)根據(jù)需要選擇。
除了以上協(xié)議層外,藍(lán)牙協(xié)議棧中還應(yīng)包括二個(gè)接口:一個(gè)是主機(jī)控制接口(HCI),用來(lái)為基帶控制器、鏈路控制器以及訪問(wèn)硬件狀態(tài)和控制寄存器等提供了命令接口;另一個(gè)是與基帶處理部分直接相連的音頻接口,用以傳遞音頻數(shù)據(jù)。
在藍(lán)牙協(xié)議棧中,HCI 以上部分通常用軟件實(shí)現(xiàn),包括邏輯鏈路控制和適配協(xié)議L2CAP 、串行仿真RFCOMM 、鏈路管理協(xié)議(LMP)、電話替代協(xié)議和選用協(xié)議;而HCI 以下部分則用硬件實(shí)現(xiàn),包括基帶協(xié)議和鏈路管理協(xié)議(LMP) ,這部分也叫作藍(lán)牙協(xié)議體系結(jié)構(gòu)中的底層硬件模塊。
2 藍(lán)牙核心協(xié)議棧硬件電路結(jié)構(gòu)
底層模塊是藍(lán)牙技術(shù)的核心模塊,主要由射頻(RF)單元電路、基帶層(base band)電路和鏈路管理層(LMP,Link Manger Protocol)電路組成。
(1)射頻(RF)單元
RF 單元電路為藍(lán)牙技術(shù)提供了通信中的物理層,也叫作藍(lán)牙收發(fā)器。通過(guò)2.4GHz 的微波,實(shí)現(xiàn)數(shù)據(jù)流的過(guò)濾和傳輸。藍(lán)牙協(xié)議提供了有關(guān)藍(lán)牙收發(fā)器的各項(xiàng)技術(shù)指標(biāo)。
(2)基帶層電路
基帶層提供了基帶數(shù)字信號(hào)處理硬件,其功能是提供鏈路控制,因此也叫作基帶及鏈路控制層電路。通過(guò)基帶層電路,可以建立藍(lán)牙通信網(wǎng)絡(luò)中的物理鏈路,從而形成微微網(wǎng)(piconet)。基帶層中有兩種物理鏈路,一種是面向連接的同步鏈路(SCO) ,另一種是異步無(wú)連接鏈路(ACL) 。此外,基帶層還可為語(yǔ)音和數(shù)據(jù)分組提供不同水平的前向糾錯(cuò)(FEC)或循環(huán)冗余度校驗(yàn)(CRC)處理,并可對(duì)數(shù)據(jù)進(jìn)行加密。同時(shí),基帶層電路還為不同類型的數(shù)據(jù)( 包括傳輸信息數(shù)據(jù)、鏈路管理和控制信息) 提供特定的信道。
(3)鏈路管理層(LMP)電路
鏈路管理層電路也叫作鏈路管理器電路,功能是提供鏈路管理通信協(xié)議。鏈路管理協(xié)議用來(lái)對(duì)鏈路進(jìn)行設(shè)置和控制,并負(fù)責(zé)建立和撤銷各藍(lán)牙設(shè)備間的連接、功率控制以及認(rèn)證和加密,同時(shí)還控制藍(lán)牙設(shè)備的工作狀態(tài)(保持hold 、休眠park 、呼吸sniff 和活動(dòng)active )。鏈路管理層的主要功能由軟件完成,鏈路管理器電路提供運(yùn)行于藍(lán)牙設(shè)備的處理器中的軟件。鏈路管理器之間的通信協(xié)議稱為鏈路管理協(xié)議(LMP) 。
藍(lán)牙技術(shù)整體框架以HCI(Host Controller Interface)為界,區(qū)分為硬件模塊以及上層軟件協(xié)議兩部分。藍(lán)牙技術(shù)標(biāo)準(zhǔn)中,選擇了USB、UART 或是RS232 作為硬件模塊與主機(jī)間的接口。當(dāng)藍(lán)牙模塊以USB、UART或RS232 中的任何一個(gè)接口與主機(jī)連接時(shí),HCI 接口上層的通信協(xié)議由主機(jī)負(fù)責(zé)處理,而HCI 接口下層的通信協(xié)議則由模塊內(nèi)的基帶層芯片與RF 芯片負(fù)責(zé)。根據(jù)藍(lán)牙標(biāo)準(zhǔn),藍(lán)牙系統(tǒng)的基本組成包括天線、收發(fā)器、基帶控制器。由此可知,在天線、RF 收法器和基帶控制器的支持下,藍(lán)牙系統(tǒng)的組成可以十分靈活,即可實(shí)現(xiàn)多種不同的實(shí)現(xiàn)方案。
嵌入式藍(lán)牙系統(tǒng)是將RF 和基帶部分集成在一塊芯片上,單芯片藍(lán)牙硬件模塊結(jié)構(gòu)如圖2 所示。在嵌入式藍(lán)牙器件中,硬件結(jié)構(gòu)可分為鏈路管理器、鏈路控制器與RF 模塊3 部分,負(fù)責(zé)處理LMP 層、基帶層與RF 層的協(xié)議。鏈路管理器內(nèi)包含處理器(CPU)、內(nèi)存等組件。鏈路管理器與基帶層芯片合稱為鏈路控制器。RF 模塊內(nèi)含RF 射頻發(fā)射組件,與主機(jī)相連接的接口位于鏈路控制器上。
在嵌入式方案中,藍(lán)牙協(xié)議的上層軟件協(xié)議也全部固化在芯片中,芯片通過(guò)USB 或UART 接口與應(yīng)用系統(tǒng)相連接。由于片內(nèi)嵌入了CPU ,所以,嵌入式藍(lán)牙系統(tǒng)實(shí)際上是一個(gè)智能終端,適合于任何具有CPU 器件的系統(tǒng)。例如,智能傳感器中,只要增加一個(gè)單芯片藍(lán)牙器件,就可以組成一個(gè)以藍(lán)牙為通信方式的傳感器。
由圖2 可知,它由微處理器(CPU) 、無(wú)線收發(fā)器(RF)、基帶控制器(BB) 、閃存( Flash 程序存儲(chǔ)器) 、通用異步收發(fā)器UART(Universal Asynchronous Receiver Transmitter)、通用串行接口USB(Universal Serial Bus)及藍(lán)牙測(cè)試模塊組成。其中藍(lán)牙基帶控制器是藍(lán)牙硬件模塊的關(guān)鍵模塊。其主要功能是在微處理器控制下,實(shí)現(xiàn)藍(lán)牙基帶部分的所有實(shí)時(shí)處理功能,包括負(fù)責(zé)對(duì)接收的bit 流進(jìn)行符號(hào)定時(shí)提取和恢復(fù);分組頭及凈荷的循環(huán)冗余度校驗(yàn)(CRC) ,分組頭及凈荷的前向糾錯(cuò)碼FEC 處理,加密和解密處理等,且能提供從基帶控制器到其它芯片的接口等。CPU一般采用RISC 結(jié)構(gòu)的嵌入式微處理器,如ARM7TDMI微處理器,才能滿足對(duì)藍(lán)牙核心協(xié)議的高速處理和大量數(shù)據(jù)bit 流的處理。Flash 存儲(chǔ)器用于存放基帶和鏈路管理層中的所有協(xié)議軟件。SRAM 作為CPU 的運(yùn)行空間,在工作時(shí)把Flash 中的軟件調(diào)入SRAM 中處理。射頻收發(fā)器負(fù)責(zé)接收或發(fā)送高頻的通信信號(hào)。UART 和USB 接口提供到HCI 的主機(jī)控制器接口傳輸層的物理連接,是上層協(xié)議與藍(lán)牙硬件模塊進(jìn)行通信的通道。藍(lán)牙測(cè)試模塊主要提供無(wú)線層和基帶層的認(rèn)證和一致性規(guī)范,同時(shí)還管理產(chǎn)品的生產(chǎn)和售后的測(cè)試,為可選模塊。
評(píng)論
查看更多