手表不再只是用來(lái)講述時(shí)間。智能手表通過(guò)啟用短信,電話和健康監(jiān)控,將我們的手腕變成了智能手機(jī)皮套??纱┐髟O(shè)備是用戶“幾乎總是”佩戴的無(wú)線設(shè)備。例如,健身監(jiān)測(cè)器是一種可穿戴設(shè)備,可以通過(guò)監(jiān)測(cè)心率,運(yùn)動(dòng),睡眠習(xí)慣,體溫,汗水等參數(shù)來(lái)跟蹤一個(gè)人的健康狀況。這些設(shè)備具有多個(gè)傳感器,通??梢耘c連接到互聯(lián)網(wǎng)的設(shè)備(如智能手機(jī)或PC)進(jìn)行通信。這些設(shè)備有三個(gè)主要功能:
始終開(kāi)啟:由于健身監(jiān)視器持續(xù)運(yùn)行,因此這些設(shè)備需要較長(zhǎng)的電池壽命。設(shè)計(jì)可穿戴設(shè)備時(shí)的一大挑戰(zhàn)是它們耗電量大,并且通??梢匀菁{的電池尺寸有限。
監(jiān)控活動(dòng):健身監(jiān)控器感知、處理、記錄和報(bào)告用戶活動(dòng)。這包括監(jiān)控多個(gè)傳感器和執(zhí)行“傳感器融合”,其中來(lái)自多個(gè)傳感器的數(shù)據(jù)使用類似DSP的引擎進(jìn)行關(guān)聯(lián),以分析更復(fù)雜的行為,并以用戶可以理解和使用的方式跟蹤它們。
交換數(shù)據(jù):這包括將收集和分析的信息傳達(dá)給其他設(shè)備的能力,例如向/從智能手機(jī)發(fā)送通知和警報(bào)。
圖2顯示了使用嵌入式MCU(如PSoC 6 BLE)實(shí)現(xiàn)可穿戴健身監(jiān)測(cè)器的情況。
活動(dòng)監(jiān)控:計(jì)步器和卡路里計(jì)數(shù)器計(jì)算一個(gè)人走的步數(shù),并計(jì)算燃燒的卡路里數(shù)。要檢測(cè)步驟,需要加速度計(jì)傳感器。壓力傳感器還用于測(cè)量步行/跑步時(shí)的海拔變化。大多數(shù)傳感器都有一個(gè)數(shù)字接口,通常是 I2C、SPI 或 UART。需要對(duì)采集的數(shù)據(jù)進(jìn)行額外的過(guò)濾和處理,以計(jì)算步數(shù)、海拔、燃燒的卡路里等值。這些傳感器還用于實(shí)現(xiàn)低功耗系統(tǒng)功能,例如在檢測(cè)到運(yùn)動(dòng)時(shí)喚醒整個(gè)系統(tǒng),以便執(zhí)行實(shí)時(shí)分析。為了支持可穿戴設(shè)備可能需要的多個(gè)傳感器,嵌入式MCU將需要幾個(gè)數(shù)字接口。理想情況下,這些接口可以在 I2C、SPI 和 UART 之間進(jìn)行配置,為開(kāi)發(fā)人員提供最大的傳感器選擇和實(shí)現(xiàn)靈活性。此外,嵌入式MCU需要支持雙核架構(gòu),其中MCU能夠執(zhí)行傳感器融合和復(fù)雜分析,低功耗MCU用于執(zhí)行運(yùn)動(dòng)喚醒等系統(tǒng)任務(wù)。
環(huán)境監(jiān)測(cè):監(jiān)視器可能還需要收集環(huán)境數(shù)據(jù),例如紫外線暴露測(cè)量值、環(huán)境溫度、大氣壓力、指南針航向等。
全球定位系統(tǒng): GPS傳感器通常是帶有UART接口的數(shù)字傳感器。GPS 傳感器提供位置(緯度和經(jīng)度)、速度和高度信息。
音頻:在通過(guò)無(wú)線鏈路傳輸音頻數(shù)據(jù)之前,數(shù)字域中的音頻信號(hào)處理是任何音頻系統(tǒng)的重要組成部分。數(shù)據(jù)通常使用基于 PDM 麥克風(fēng)的聲音計(jì)收集,然后對(duì)其進(jìn)行測(cè)量、過(guò)濾和/或壓縮。具有集成DSP功能和音頻功能的嵌入式MCU可以大大簡(jiǎn)化高質(zhì)量、不間斷聲學(xué)音頻子系統(tǒng)的設(shè)計(jì)。
安全:可穿戴設(shè)備需要能夠跟上不斷變化的安全協(xié)議和措施。具有安全啟動(dòng)功能的嵌入式MCU可確??纱┐髟O(shè)備僅執(zhí)行經(jīng)過(guò)身份驗(yàn)證的代碼。此外,設(shè)備可以支持無(wú)線 (OTA) 更新,以使更新對(duì)用戶透明。
用戶界面:今天的用戶已經(jīng)習(xí)慣了使用按鈕、滑塊和接近感應(yīng)的觸摸顯示器。嵌入式MCU還可以支持不同的輸出類型,可以支持各種顯示技術(shù),如Eink,OLED等。
無(wú)線連接:設(shè)備需要支持低功耗藍(lán)牙 (BLE) 連接,并為可穿戴設(shè)備操作提供必要的服務(wù)。
支持所有這些功能需要全面的固件流程(請(qǐng)參閱圖 3)。支持可穿戴設(shè)備應(yīng)用的制造商可以提供完整的庫(kù),以加速開(kāi)發(fā)并降低整體設(shè)計(jì)投資。
任務(wù)架構(gòu)
在任何可穿戴設(shè)計(jì)中,都有三個(gè)關(guān)鍵任務(wù):
獲取數(shù)據(jù)
處理數(shù)據(jù)
與用戶通信 – 輸入和輸出(顯示)
通常,傳感器采集需要比其他任務(wù)更高的處理器操作速率,因?yàn)榇祟愄幚戆ㄟ\(yùn)行在大樣本基底上的濾波器。因此,使用低功耗內(nèi)核(如 Arm Cortex-M0+)執(zhí)行傳感器數(shù)據(jù)采集更具能效。處理傳感器數(shù)據(jù)取決于所用算法的復(fù)雜性,開(kāi)發(fā)人員必須在功耗效率和處理速度之間做出權(quán)衡。對(duì)于光處理,可以使用用于采集傳感器數(shù)據(jù)的相同低功耗內(nèi)核。但是,為了獲得更多的實(shí)時(shí)操作,需要更高性能的處理器,例如Arm Cortex M3 / M4內(nèi)核。當(dāng)涉及到簡(jiǎn)單的可穿戴顯示器和輸入時(shí),用戶界面通常是一個(gè)輕量級(jí)的過(guò)程,可以由任一內(nèi)核處理,但理想情況下是在低功耗內(nèi)核上實(shí)現(xiàn)的。因此,為了在低功耗可穿戴設(shè)備中實(shí)現(xiàn)最佳性能,需要雙核架構(gòu)。請(qǐng)注意,可以利用雙核架構(gòu)來(lái)流水線化固件框架,通過(guò)加快任務(wù)完成速度來(lái)提高響應(yīng)能力,并通過(guò)在內(nèi)核之間共享資源(如時(shí)鐘、RAM、Flash 等)來(lái)減少資源和功耗。
低功耗處理器(如 Cortex M0+)運(yùn)行一個(gè)簡(jiǎn)單的任務(wù)調(diào)度程序,用于處理頻繁的低帶寬任務(wù),例如:
傳感器數(shù)據(jù)采集
電容感應(yīng)掃描和處理
BLE 鏈路層控制器,用于維護(hù) BLE 連接和通告
系統(tǒng)管理,包括安全任務(wù)和傳感器控制
高性能處理器(如 Cortex M4)可用作運(yùn)行 RTOS 的應(yīng)用處理器,并處理處理器密集型應(yīng)用級(jí)任務(wù),例如:
傳感器數(shù)據(jù)處理(即方向計(jì)算、高度計(jì)算等)
顯示圖形,如繪圖文本、圖像、形狀等。
完整的指紋處理,包括匹配和注冊(cè)算法
BLE 主機(jī)層任務(wù),包括所有服務(wù)、配置文件和連接身份驗(yàn)證
由于共享內(nèi)存和內(nèi)核之間的快速處理器間通信(IPC)通道橋接,與讓兩個(gè)設(shè)備進(jìn)行外部通信相比,通信延遲幾乎不存在。
低功耗核心任務(wù)架構(gòu)
在高級(jí)別上,低功耗內(nèi)核執(zhí)行兩種類型的任務(wù) - 級(jí)別 1:在每個(gè)周期中執(zhí)行的定期任務(wù)和級(jí)別 2:周期性但每 ‘n’ 個(gè)周期(n = 任務(wù)周期/每個(gè)周期持續(xù)時(shí)間)執(zhí)行一次的時(shí)隙任務(wù)。定時(shí)器可用于產(chǎn)生中斷以指示周期的開(kāi)始,例如每10 ms(100 Hz)。級(jí)別 1 任務(wù)在中斷事件上逐個(gè)執(zhí)行。時(shí)隙變量可以每次中斷遞增并傳遞到2級(jí)任務(wù)管理器。根據(jù)插槽號(hào),將執(zhí)行相應(yīng)的 2 級(jí)任務(wù)。
表 1 提供了可在低功耗內(nèi)核中實(shí)現(xiàn)的各種任務(wù)的示例。
桌子 1. 低功耗核心任務(wù)
在完成數(shù)據(jù)采集任務(wù)或需要與高性能內(nèi)核上運(yùn)行的其他任務(wù)通信的任何事件(如檢測(cè)到手勢(shì))時(shí),將形成消息數(shù)據(jù)包并通過(guò)IPC發(fā)送到高性能內(nèi)核。在高性能內(nèi)核上引發(fā)中斷,處理消息數(shù)據(jù)包,并將數(shù)據(jù)適當(dāng)?shù)貍鬟f給在高性能內(nèi)核上執(zhí)行的預(yù)期任務(wù)。
高性能核心任務(wù)架構(gòu)
高性能內(nèi)核使用實(shí)時(shí)操作系統(tǒng)來(lái)管理 BLE、運(yùn)動(dòng)感應(yīng)、顯示更新、GPS、壓力/溫度、紫外線和指紋檢測(cè)等任務(wù)。除了BLE、運(yùn)動(dòng)感應(yīng)和指紋檢測(cè)之外,其他任務(wù)都在等待來(lái)自低功耗內(nèi)核的數(shù)據(jù)。
BLE 任務(wù)可以定期運(yùn)行(每個(gè)連接間隔運(yùn)行一次)。完成后,任務(wù)將自行掛起,直到下一次所需的喚醒。
運(yùn)動(dòng)感應(yīng)任務(wù)可以是非周期性任務(wù),每當(dāng)運(yùn)動(dòng)傳感器本身引起中斷時(shí)就會(huì)運(yùn)行。像Invensense MPU9255這樣的運(yùn)動(dòng)傳感器包括一個(gè)數(shù)字運(yùn)動(dòng)處理器(DMP),該處理器在片上FIFO上收集數(shù)據(jù),并以預(yù)配置的速率中斷高性能內(nèi)核。中斷時(shí),運(yùn)動(dòng)傳感器任務(wù)通過(guò)SPI接口讀取運(yùn)動(dòng)傳感器中的FIFO,并處理數(shù)據(jù)以計(jì)算方向,步數(shù),燃燒的卡路里等。
指紋檢測(cè)任務(wù)可以是非周期性任務(wù),每當(dāng)用戶注冊(cè)、驗(yàn)證或刪除指紋時(shí)都會(huì)運(yùn)行。當(dāng)注冊(cè)用戶指紋且顯示屏鎖定時(shí),此任務(wù)也會(huì)運(yùn)行。已注冊(cè)的用戶指紋可用于解鎖和保護(hù)可穿戴設(shè)備。
顯示任務(wù)也可以是非周期性任務(wù),每當(dāng)需要在屏幕上更新數(shù)據(jù)(即傳感器數(shù)據(jù)、時(shí)間、電池和其他任務(wù)的BLE通知)或從低功耗內(nèi)核報(bào)告電容感應(yīng)手勢(shì)事件時(shí),都會(huì)運(yùn)行。
GPS、壓力/溫度和 UV 任務(wù)可以是偽周期性任務(wù),因?yàn)樗鼈儾粫?huì)定期掛起和喚醒。相反,任務(wù)喚醒是在低功耗內(nèi)核從相應(yīng)的傳感器收集數(shù)據(jù)后觸發(fā)的。由于低功耗內(nèi)核中的數(shù)據(jù)收集速率是周期性的,因此這些任務(wù)可以在高性能內(nèi)核上定期執(zhí)行。
表 2 顯示了高性能內(nèi)核管理的任務(wù)示例。
桌子 2. 高性能核心任務(wù)
處理器間通信架構(gòu)
同時(shí)運(yùn)行的兩個(gè)內(nèi)核需要一種機(jī)制來(lái)保護(hù)共享數(shù)據(jù)和通信,以同步固件中的任務(wù)。雙核架構(gòu)需要支持多種IPC機(jī)制,如IPC鎖定、消息傳遞和中斷/通知。任務(wù)代碼可以使用 IPC 鎖定功能來(lái)保護(hù)共享數(shù)據(jù)和 IPC 消息傳遞,以便在內(nèi)核之間交換通知和數(shù)據(jù)。
IPC鎖:每當(dāng)訪問(wèn)共享數(shù)據(jù)進(jìn)行修改時(shí),訪問(wèn)核心/任務(wù)都會(huì)嘗試獲取與數(shù)據(jù)相對(duì)應(yīng)的鎖。如果鎖是空閑的,則向核心/任務(wù)授予對(duì)數(shù)據(jù)的訪問(wèn)權(quán)限。更新/處理完成后,任務(wù)可以釋放鎖,以將數(shù)據(jù)的訪問(wèn)權(quán)限授予其他掛起的任務(wù)。這可以保護(hù)數(shù)據(jù)不被多個(gè)嘗試同時(shí)更新/使用數(shù)據(jù)的源損壞。
IPC 消息:除了保護(hù)共享數(shù)據(jù)外,還需要一種通信方式來(lái)同步內(nèi)核之間的任務(wù)。這可以通過(guò)在內(nèi)核之間傳遞的“命令和參數(shù)”消息包來(lái)實(shí)現(xiàn)。每當(dāng)一個(gè)內(nèi)核希望另一個(gè)內(nèi)核執(zhí)行操作時(shí),它就會(huì)將具有任何必需參數(shù)的操作/命令 ID 打包到消息中,并通過(guò) IPC 傳遞消息。消息數(shù)據(jù)包準(zhǔn)備就緒后,內(nèi)核會(huì)在另一個(gè)內(nèi)核上觸發(fā) IPC 中斷,在該內(nèi)核中解析命令,然后對(duì)其執(zhí)行操作。
審核編輯:郭婷
-
處理器
+關(guān)注
關(guān)注
68文章
19100瀏覽量
228813 -
嵌入式
+關(guān)注
關(guān)注
5059文章
18973瀏覽量
302015 -
可穿戴設(shè)備
+關(guān)注
關(guān)注
55文章
3801瀏覽量
166790
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論