如何在兩個(gè)不相關(guān)的器件之間實(shí)現(xiàn)數(shù)字與模擬“鴻溝”的橋接是一個(gè)不小的設(shè)計(jì)挑戰(zhàn),而這對(duì)于有嚴(yán)格空間和功耗限制的可穿戴設(shè)備來(lái)說(shuō)更是難上加難。同時(shí),發(fā)展迅速的市場(chǎng)要求設(shè)計(jì)工程師緊跟消費(fèi)者不斷變化的需求,快速升級(jí)現(xiàn)有產(chǎn)品的功能并推出全新的產(chǎn)品。
本文將針對(duì)可穿戴產(chǎn)品的設(shè)計(jì)挑戰(zhàn)進(jìn)行研究,并將探索如何使用可編程邏輯產(chǎn)品來(lái)解決這些問(wèn)題。文章相關(guān)的設(shè)計(jì)實(shí)例旨在說(shuō)明如何將專(zhuān)用可編程器件應(yīng)用于以下三個(gè)方面:
擴(kuò)展。使用額外的邏輯和定制功能擴(kuò)展現(xiàn)有ASIC和ASSP的功能和使用壽命。
升級(jí)。使用可編程邏輯產(chǎn)品實(shí)現(xiàn)新協(xié)議和標(biāo)準(zhǔn),并通過(guò)橋接實(shí)現(xiàn)互不兼容元器件間的互連,以此升級(jí)可穿戴設(shè)備的設(shè)計(jì)。
創(chuàng)新。無(wú)需為ASIC開(kāi)發(fā)投入大量時(shí)間和費(fèi)用,使用可編程邏輯產(chǎn)品提供的靈活平臺(tái)來(lái)實(shí)現(xiàn)高級(jí)功能或全新的特性。
可穿戴設(shè)備帶來(lái)前所未有的設(shè)計(jì)挑戰(zhàn)
可穿戴電子產(chǎn)品正處于發(fā)展早期,技術(shù)尚未成熟,就像地球上的生命進(jìn)化過(guò)程一樣,將發(fā)生像寒武紀(jì)生命大爆發(fā)一樣百花齊放的技術(shù)創(chuàng)新??梢灶A(yù)見(jiàn)至少在未來(lái)的3到5年內(nèi)將不斷有各種各樣的產(chǎn)品和試作面世,形成具備以下特征的市場(chǎng):
● 市場(chǎng)快速創(chuàng)新,而消費(fèi)者的需求也以同樣的速度快速變化;
● 全新類(lèi)型的產(chǎn)品出現(xiàn)和發(fā)展,有時(shí)候也會(huì)最終消失;
● 出現(xiàn)眾多相互競(jìng)爭(zhēng)的產(chǎn)品,但未能形成標(biāo)準(zhǔn)的功能集;
● 即使有也只有很少的標(biāo)準(zhǔn)化架構(gòu)或接口標(biāo)準(zhǔn)。
在這段蓬勃發(fā)展的時(shí)期里,產(chǎn)品依托的半導(dǎo)體器件的發(fā)展將跟不上產(chǎn)品本身迭代更新的速度。由于IC開(kāi)發(fā)通常需要12至18個(gè)月,如果制造商堅(jiān)持為可穿戴市場(chǎng)開(kāi)發(fā)ASIC,很可能導(dǎo)致產(chǎn)品上市時(shí)功能并不盡如人意或已然過(guò)時(shí)。
沒(méi)有專(zhuān)為應(yīng)用優(yōu)化的微控制器(MCU)和ASSP,可穿戴設(shè)備設(shè)計(jì)工程師就必須使用通用的MCU或使用來(lái)自更成熟應(yīng)用的高度集成器件,如來(lái)自智能手機(jī)、平板電腦以及其他手持/移動(dòng)設(shè)備中的器件。上述這兩種方式都為設(shè)計(jì)工程師提供了高集成度的嵌入式計(jì)算平臺(tái),無(wú)需為開(kāi)發(fā)專(zhuān)用器件投入大量的時(shí)間和成本。不僅如此,很多開(kāi)發(fā)工具和應(yīng)用軟件都支持大多數(shù)這些現(xiàn)成器件,這也是額外的優(yōu)勢(shì)。
雖然在可穿戴應(yīng)用中使用這類(lèi)移動(dòng)專(zhuān)用器件可獲得諸多優(yōu)勢(shì),但是設(shè)計(jì)工程師還是會(huì)在設(shè)計(jì)過(guò)程中面臨諸多挑戰(zhàn)。第一個(gè)挑戰(zhàn)是可穿戴設(shè)備市場(chǎng)的變化非常快,最初產(chǎn)品中所使用的嵌入式計(jì)算器件可能不具備相關(guān)的接口和I/O功能用以支持下一代產(chǎn)品所需的所有新功能。為了跟上市場(chǎng)變化的步伐,設(shè)計(jì)工程師必須要為產(chǎn)品設(shè)計(jì)增加擴(kuò)展電路或?qū)ふ夜δ芨鼜?qiáng)的MCU/ASSP。
第二個(gè)挑戰(zhàn), 也正是更普遍的問(wèn)題—大部分這些嵌入式計(jì)算器件并不具備相關(guān)接口用于可穿戴應(yīng)用中最常用的各類(lèi)傳感器、顯示屏和其他I/O器件。在某些情況下,傳感器或顯示屏的接口不匹配系統(tǒng)的數(shù)據(jù)總線,或不兼容系統(tǒng)應(yīng)用處理器使用的格式,這將導(dǎo)致“數(shù)字?jǐn)嗔?DigitalDisconnect)”的發(fā)生(圖1)。
圖1:“數(shù)字?jǐn)嗔?rdquo;常見(jiàn)于大多數(shù)CMOS圖像傳感器的LVDS接口和許多常用應(yīng)用處理器使用的CSI-2 I/O總線之間。
例如,常用于CMOS圖像傳感器的Sub-LVDS接口采用與許多常用應(yīng)用處理器使用的CSI-2接口不同的數(shù)據(jù)幀格式(圖1)。此外,器件的接口還可能具備不同數(shù)量的串行通道。另一個(gè)導(dǎo)致“數(shù)字?jǐn)嗔?rdquo;的原因是,許多通用MCU具備GPIO以及其他并行接口,其必須要轉(zhuǎn)換成一種現(xiàn)在大多數(shù)傳感器和顯示屏使用的串行格式。此外,可穿戴應(yīng)用中采用的緊湊封裝MCU的引腳數(shù)量太少,限制了其可直接訪問(wèn)的器件數(shù)量。
應(yīng)用處理器所支持的接口與眾多傳感器和輸出設(shè)備所要求的接口之間也存在著“ 功能性鴻溝” 。一個(gè)簡(jiǎn)單的例子是,可穿戴設(shè)備可實(shí)現(xiàn)電視機(jī)或其他電子產(chǎn)品的紅外遠(yuǎn)程控制。而這種情況下,大多數(shù)MCU并不具備的LED驅(qū)動(dòng)能力成為了應(yīng)用處理器和紅外(IR)LED之間的“功能性鴻溝”。
IR編碼器是一種純數(shù)字功能,至少?gòu)睦碚撋蟻?lái)說(shuō)可以由MCU的應(yīng)用處理器實(shí)現(xiàn)。但是在許多情況中,這并不是最理想的解決方案,因?yàn)閷?shí)時(shí)編碼需要占用的處理器資源已經(jīng)超過(guò)了系統(tǒng)能夠節(jié)省的資源。并且,應(yīng)用處理器在編碼任務(wù)上花費(fèi)的額外時(shí)間將導(dǎo)致消耗過(guò)多有限的系統(tǒng)功耗,因此最好使用硬件實(shí)現(xiàn)。
[page]
基于FPGA的解決方案
現(xiàn)在,F(xiàn)PGA可提供高性?xún)r(jià)比的方式來(lái)實(shí)現(xiàn)接口間的橋接以及為現(xiàn)有的器件添加新功能并縮短設(shè)計(jì)周期。而早期的可編程邏輯器件相對(duì)來(lái)說(shuō)過(guò)于昂貴,并且功耗驚人,所以常用來(lái)作為初代設(shè)計(jì)或小批量產(chǎn)品的原型設(shè)計(jì)工具和“膠合”元件。
步入21世紀(jì)后,深亞微米工藝和新架構(gòu)的發(fā)展帶動(dòng)了性能和通用性增強(qiáng)的新型FPGA的實(shí)現(xiàn),并顯著降低了成本和功耗。這使得現(xiàn)在的FPGA能夠在可穿戴電子設(shè)備中發(fā)揮多種作用。
當(dāng)然,F(xiàn)PGA仍在其傳統(tǒng)的應(yīng)用領(lǐng)域中不斷發(fā)揮作用,如提供“ 膠合”邏輯、實(shí)現(xiàn)基礎(chǔ)功能,包括提供額外的邏輯單元(門(mén)電路、鎖存器、觸發(fā)器等),添加輸入信號(hào)調(diào)節(jié)(電平轉(zhuǎn)換、施密特觸發(fā)器和反相器),以及為已有的主機(jī)處理器I/O互連提供擴(kuò)展路徑。
FPGA還能用于實(shí)現(xiàn)前文所提到的更復(fù)雜的功能。其最簡(jiǎn)單的形式是提供橋接功能,如圖2所示,F(xiàn)PGA能解決圖1中展示的傳感器Sub-LVDS接口與應(yīng)用處理器的CSI-2 I/O總線之間的橋接問(wèn)題。
在串/并轉(zhuǎn)換應(yīng)用中也經(jīng)常使用基于FPGA的橋接。圖3展示了可編程邏輯器件是怎樣將應(yīng)用處理器的標(biāo)準(zhǔn)并行總線轉(zhuǎn)換成現(xiàn)在的可穿戴設(shè)備顯示屏最常用的MIPI DSI接口的串行格式的。在該應(yīng)用中,F(xiàn)PGA負(fù)責(zé)實(shí)現(xiàn)以下功能:
重新定義圖像傳感器的LVDS輸出格式,以匹配應(yīng)用處理器支持的通道數(shù)量和數(shù)據(jù)速率;
將傳感器的數(shù)據(jù)時(shí)鐘信號(hào)傳輸至應(yīng)用處理器,實(shí)現(xiàn)任何所需的信號(hào)編碼;
使用可編程邏輯而不是應(yīng)用處理器有限的機(jī)器周期來(lái)實(shí)現(xiàn)屏幕刷新動(dòng)作。
橋接功能也可用作基于FPGA的更大系統(tǒng)元件的構(gòu)建模塊,如實(shí)現(xiàn)圖4中的雙輸入橋接/處理器,它將接收來(lái)自2個(gè)獨(dú)立圖像傳感器的CSI-2串行數(shù)據(jù)流,并將其處理為單個(gè)CSI-2或并行或HiSPI輸出。根據(jù)所選的算法,可對(duì)獨(dú)立的數(shù)據(jù)流進(jìn)行色彩調(diào)整或在時(shí)間或空間上進(jìn)行補(bǔ)償生成單幅3D圖像,或在屏幕坐標(biāo)空間的不同位置對(duì)其單獨(dú)顯示產(chǎn)生畫(huà)中畫(huà)效果。
FPGA助力節(jié)能技術(shù)
在前面的幾個(gè)例子中,設(shè)計(jì)的主要目的是為了增強(qiáng)應(yīng)用處理器本身的互連或功能。但這些基于FPGA的解決方案還提供了另一個(gè)重要的好處:使得MCU或ASSP無(wú)需同時(shí)執(zhí)行一個(gè)或多個(gè)計(jì)算密集型任務(wù),從而節(jié)省了有限的處理器資源。
但是,在許多情況下,這些設(shè)計(jì)的功耗降低具有更重要的意義。例如,圖3中的設(shè)計(jì)包含了一個(gè)硬件屏幕刷新功能,其僅需消耗傳統(tǒng)處理器內(nèi)核所需功率的一小部分。同樣,圖4中的一些小尺寸、低功耗FPGA邏輯器件獨(dú)立于主機(jī)處理器執(zhí)行圖像處理任務(wù),這使得主機(jī)處理器大部分時(shí)間可處于節(jié)能睡眠模式。
下面探討的許多應(yīng)用都使用這種節(jié)能設(shè)計(jì)方法,適用于大多數(shù)有低功耗需求的可穿戴應(yīng)用。
FPGA可加速設(shè)計(jì)升級(jí)和新設(shè)計(jì)實(shí)現(xiàn)
可穿戴電子設(shè)備發(fā)展迅速,每一代新產(chǎn)品都比上一代添加了更多的功能和特性。在這些應(yīng)用中,小尺寸、低成本的FPGA經(jīng)常被用來(lái)擴(kuò)展可穿戴式設(shè)備應(yīng)用處理器的基本功能。
許多現(xiàn)代的微控制器都有強(qiáng)大的計(jì)算能力來(lái)管理傳感器和處理其產(chǎn)生的數(shù)據(jù),并將它與其他數(shù)據(jù)流進(jìn)行整合。但使用微控制器來(lái)完成這些工作會(huì)占用寶貴的I/O資源,并要求處理器長(zhǎng)時(shí)間處于工作狀態(tài),從而會(huì)影響電池壽命。
而FPGA可以用來(lái)創(chuàng)建半自主的I/O模塊,能夠從多個(gè)傳感器收集數(shù)據(jù),并在沒(méi)有處理器干預(yù)的情況下完成其他高級(jí)功能。“永遠(yuǎn)在線”的低功耗計(jì)步器采用3軸加速度計(jì)作為主要傳感器,記錄佩戴者的步數(shù),計(jì)算所走的距離并測(cè)定燃燒的卡路里以及運(yùn)動(dòng)時(shí)間。
在該設(shè)計(jì)中,一些FPGA邏輯單元被配置用作加速度計(jì)的I2C接口和應(yīng)用處理器SP I/O總線之間的橋接。其他的FPGA功能塊用于配置和管理加速度計(jì)??删幊踢壿嬕部梢杂糜谔幚碓嫉募铀俣扔?jì)數(shù)據(jù),針對(duì)帶有噪聲的數(shù)據(jù)流采用統(tǒng)計(jì)學(xué)濾波和步數(shù)檢測(cè)算法。FPGA的另一部分功能是用來(lái)緩存得到的步數(shù)和加速度信息,直到主機(jī)處理器從低功耗睡眠狀態(tài)喚醒并收集這些數(shù)據(jù)。采用可編程邏輯內(nèi)核來(lái)執(zhí)行這些計(jì)算密集型任務(wù),可使應(yīng)用處理器長(zhǎng)時(shí)間處于睡眠模式,從而有助于減少計(jì)步器的功耗。通過(guò)FPGA實(shí)現(xiàn)這些功能也使設(shè)計(jì)人員能夠在不影響計(jì)步器的性能和精度的情況下,使用更簡(jiǎn)單、更低功耗的微控制器。
FPGA提供可擴(kuò)展的解決方案
采用FPGA的另一個(gè)優(yōu)點(diǎn)是,F(xiàn)PGA廠商通常會(huì)提供一系列類(lèi)似的器件,每個(gè)器件有不同的可編程邏輯和I/O組合。使用FPGA作為ASIC的補(bǔ)充或替代,設(shè)計(jì)工程師可以選擇他們目前所需的邏輯門(mén)數(shù)量,開(kāi)發(fā)大小合適的解決方案。
由于同一FPGA系列的器件共享參數(shù)、特性和開(kāi)發(fā)資源,各種邏輯密度和I/O配置選擇使得制造商可以采取“升級(jí)時(shí)再購(gòu)買(mǎi)”的策略,為現(xiàn)有的設(shè)計(jì)添加新的功能,或重組現(xiàn)有的功能開(kāi)發(fā)新的產(chǎn)品。由于同一系列器件共享通用的工具鏈和IP庫(kù),設(shè)計(jì)工程師可以迅速將升級(jí)和后續(xù)設(shè)計(jì)從設(shè)想變?yōu)楫a(chǎn)品推向市場(chǎng)。
總結(jié)
可穿戴設(shè)備的標(biāo)準(zhǔn)架構(gòu)、功能集和專(zhuān)用芯片的缺失為本來(lái)就面臨緊張成本、功耗和尺寸約束的移動(dòng)消費(fèi)電子設(shè)計(jì)帶來(lái)了許多前所未有的挑戰(zhàn)。本文介紹了FPGA能夠通過(guò)一些簡(jiǎn)單的方法幫助設(shè)計(jì)工程師解決上述問(wèn)題,例如:為現(xiàn)有微控制器、傳感器、顯示器等之間的接口橋接,為現(xiàn)有的微控制器和ASSP 添加新的互連和功能,以及在某些情況下提供了一種替代ASIC或SoC的選擇。
由于其靈活性、可擴(kuò)展性和較低的解決方案成本,F(xiàn)PGA為許多類(lèi)型的產(chǎn)品重新定義了傳統(tǒng)的設(shè)計(jì)周期,為設(shè)計(jì)工程師提供了許多超越傳統(tǒng)ASIC的優(yōu)點(diǎn)。
相關(guān)閱讀:
解析:低功耗、可穿戴設(shè)備的設(shè)計(jì)
可穿戴設(shè)備面臨挑戰(zhàn),生物阻抗電路設(shè)計(jì)“挑大梁”
可穿戴產(chǎn)品終于有救了:高精度傳感就是“救星”