作者:Nilesh Badodekar,賽普拉斯
幾十年來,,遠程控制節(jié)點的基本架構都是由控制器,、傳感器、本地存儲器,、網(wǎng)絡連接接口和電池組成,。這一架構廣泛應用于實際操作所控制的系統(tǒng)中。在工業(yè)自動化系統(tǒng)中,,控制器以不同速率監(jiān)控多個傳感器,,將已標記時間的傳感器數(shù)據(jù)保存在本地或擴展存儲器內(nèi),然后通過ProfiBus等工業(yè)標準總線傳輸數(shù)據(jù),。在高級駕駛輔助系統(tǒng)(ADAS)或車輛事件記錄器(EDR)中,,多個MCU能夠同時采集、控制汽車電子系統(tǒng)的數(shù)據(jù),,從而提供優(yōu)質(zhì)的駕駛體驗與無故障的數(shù)據(jù)保障,。醫(yī)療系統(tǒng)也有類似的應用:通過傳感器獲得的關鍵患者數(shù)據(jù),將被存儲在本地,,或者定期上傳進行集中存儲,。
這些系統(tǒng)都在試圖解決數(shù)據(jù)采集、關鍵數(shù)據(jù)存儲以及基于數(shù)據(jù)分析采取相應行動過程中的核心和基礎問題,。但是,,不同系統(tǒng)解決問題的側(cè)重點也有所不同。工業(yè)系統(tǒng)傾向于在很短的時間間隔內(nèi),,從眾多不同的傳感器中采集海量數(shù)據(jù),,同時必須在本地和遠程留存詳細的日志記錄。汽車系統(tǒng)數(shù)據(jù)生成速率較低,,但數(shù)據(jù)重要性高,。在某些情況下,數(shù)據(jù)的丟失或?qū){駕乘人員的生命安全,。大多數(shù)汽車的使用壽命都超過十年,,因此在選擇存儲器時,,其使用壽命與可靠性便成為了十分重要的考量標準。便攜式醫(yī)療系統(tǒng)在選擇理想的數(shù)據(jù)存儲時,,則注重功耗的表現(xiàn),。由于植入式醫(yī)療器械、助聽器等設備都是由電池進行驅(qū)動,,因此它們更傾向于選擇能耗低同時數(shù)據(jù)存儲精確度高的存儲器,。兼具長期可靠性和低能耗的無故障數(shù)據(jù)存儲,往往成為系統(tǒng)設計師選擇存儲產(chǎn)品的重大挑戰(zhàn),。
隨著物聯(lián)網(wǎng)的逐步興起,,所有設備都開始通過網(wǎng)絡實現(xiàn)互聯(lián)。保守估計,,2020年將有100億臺設備實現(xiàn)聯(lián)網(wǎng),,其中包括汽車、工業(yè)自動化設備,、植入式醫(yī)療器械,、可穿戴設備和智能家居等新一代產(chǎn)品。下一代5G網(wǎng)絡已經(jīng)開始在某些地區(qū)部署并有望承擔上述設備產(chǎn)生的大部分流量,。但是,,數(shù)據(jù)科學家和系統(tǒng)設計師仍有幾個尚未解決的問題:
哪些設備需要與云連接?需要傳播多少信息,?有多少信息能在本地處理,?誰來支付云的費用?
一個方案是把所有信息都上傳到云,,遠程對信息進行處理,。但這一方案只適用于規(guī)模小而分散的系統(tǒng)。隨著世界互聯(lián)的程度不斷提高,,將會有大量甚至過剩的系統(tǒng)進行信息的上傳,,在這樣的情況下我們需要考慮網(wǎng)絡和本地兩種存儲和處理的成本差異。在行駛過程中,,一輛自動駕駛汽車每小時將會生成數(shù)G的數(shù)據(jù),。因此為了預測未來的需求,我們現(xiàn)在必須決定哪些信息需要實時傳送,、哪些可以在本地存儲,,從而日后再進行壓縮傳送。工業(yè)和醫(yī)療領域的系統(tǒng)設計師面臨著同樣的問題,。在“工業(yè)4.0”的進程中,,“上傳所有數(shù)據(jù)到云”的方式正在逐步轉(zhuǎn)變成為“本地處理,智能上傳”的方式。因此,,如何選擇最好的本地數(shù)據(jù)存儲對未來的系統(tǒng)發(fā)展極為重要。
為了保存重要數(shù)據(jù),,這些系統(tǒng)均需要高可靠,、低能耗、高安全性的存儲器,。一個方法是使用現(xiàn)有的閃存來記錄數(shù)據(jù),。閃存技術具有高效讀取的能力,因此已經(jīng)被廣泛用于啟動代碼和固件的存儲,。對于現(xiàn)有系統(tǒng)的設備,,在執(zhí)行寫入操作時,設計師無需了解閃存的技術限制,,即可使用閃存來記錄數(shù)據(jù),。閃存單元只有在事先已被擦除的情況下才能存儲新數(shù)據(jù)。對閃存單元進行編程時,,可將邏輯值由“1”變?yōu)椤?”,。在下一次升級中,如果存儲單元需要保持邏輯值“1”,,就需要擦除數(shù)據(jù),。為了加快擦除速度、縮短程序時間,,閃存制造商設計了各種頁,、塊和扇區(qū)架構。頁是能夠一次編程寫入閃存的最小數(shù)據(jù)存儲單位,。閃存設備設有內(nèi)部的頁容量緩沖區(qū),,用于臨時數(shù)據(jù)存儲。當外部接口的數(shù)據(jù)傳輸完成時,,設備將立即對主陣列中被擦除的頁執(zhí)行頁程序,。如果該頁包含舊數(shù)據(jù),則必須在程序啟動前予以擦除,。每次執(zhí)行擦除時,,閃存單元都會退化。這一現(xiàn)象通常作為在閃存的耐久性指標進行量化記錄,。耐久性最好的閃存設備一般可以承受10萬次的擦除程序循環(huán),,在達到這一限值后將無法保證存儲的穩(wěn)定性。盡管這一數(shù)字看起來很巨大,,但這一數(shù)字甚至連低端的數(shù)據(jù)記錄系統(tǒng)的需求都很難滿足,。
某些制造商則采用字節(jié)編程,并且把編程由緩沖區(qū)推到閃存進行。盡管這一設計可以簡化設備內(nèi)的程序運行,,但卻不能使閃存擺脫潛在的耐久性限制,。為了抵消上述限制,系統(tǒng)設計師被迫采用一種復雜的文件系統(tǒng)來保證閃存單元的耗損均衡(wear levelling),。文件系統(tǒng)的軟件會減緩系統(tǒng)的運行速度,。
設想一種情況,設計師考慮使用一種基于閃存的存儲器來記錄數(shù)據(jù),。在工業(yè)自動化和資產(chǎn)管理系統(tǒng)中,,傳感器節(jié)點會以每秒數(shù)次的速度抓取數(shù)據(jù),并定期對各種傳感器進行取樣,,然后整理數(shù)據(jù)包上傳網(wǎng)絡,。一般來說,數(shù)據(jù)包的取樣數(shù)從16字節(jié)到128字節(jié)不等,。由于停電的風險不可能完全避免,,為了防止數(shù)據(jù)丟失,設計師使用非易失性存儲器來存儲數(shù)據(jù),。振動傳感器或步進電機位置傳感器每幾毫秒都會發(fā)送脈沖式數(shù)據(jù),,而溫度或濕度傳感器則每隔幾秒才發(fā)送一次數(shù)據(jù),數(shù)據(jù)包則存儲眾多傳感器的數(shù)據(jù),。
下表為數(shù)據(jù)包容量與取樣率的比較分析,,以及數(shù)據(jù)記錄時耗損閃存的規(guī)律。分析使用了10萬次耐久循環(huán)的8兆閃存
以下圖表對這一數(shù)據(jù)進行了明確解讀,。我們發(fā)現(xiàn),,對于每1毫秒記錄8-16字節(jié)數(shù)據(jù)的低端系統(tǒng),8兆閃存會在5年內(nèi)損耗,。但是,,汽車或工業(yè)系統(tǒng)的損耗期限應當超過10年。
F-RAM Space Traditional NV Memory
如果采用簡單增加閃存這種低成本,、高風險的的方式,,則需要復雜的文件系統(tǒng)對損耗均衡進行管理。如果沒有部署文件系統(tǒng),,系統(tǒng)則需要在替換整個存儲器之后,,定期執(zhí)行芯片擦除循環(huán)。在今天的物聯(lián)網(wǎng)世界中,,隨著數(shù)據(jù)采集終端的持續(xù)激增,,這一問題正在不斷惡化。對于存儲產(chǎn)品壽命期內(nèi)寫入循環(huán)次數(shù)不超過1000次的啟動代碼和固件程序來說,,基于閃存的存儲器是非常合適的,。解決這種數(shù)據(jù)記錄問題的一個理想方法是:使用高耐久性和非易失性的存儲器,,它們不會由于程序和擦除的延遲而造成數(shù)據(jù)風險。F-RAM具備承受高達1014次擦除循環(huán)的耐久性,,具備瞬間非易失性,,且無需編程和擦除操作,實時存儲進入設備接口的所有數(shù)據(jù),。例如,,一個4兆的 F-RAM存儲能夠在每10微秒處理128字節(jié)的數(shù)據(jù)流,在1000多年的時間內(nèi)都不會損耗完畢,。
F-RAM存儲器單元只有在寫入或讀取時才會耗電,待機能耗只有幾微安培,,因此F-RAM是那些依仗電池驅(qū)動產(chǎn)品的最佳解決方案,。F-RAM適用于對能耗要求較高的助聽器和用于心率采樣的高端可穿戴醫(yī)療設備。此外,,汽車系統(tǒng)中的數(shù)據(jù)會持續(xù)不斷地了錄入存儲器,,基于閃存的系統(tǒng)無法在閃存“編程”期間抓取數(shù)據(jù)。只有基于F-RAM的數(shù)據(jù)存儲,,可以為該系統(tǒng)提供高可靠性,。
具備近乎無限的耐久性、超低功耗和瞬間非易失性的F-RAM非常適合用于互聯(lián)世界中的重要數(shù)據(jù)存儲,。