當系統運行了一個嵌入式實時操作系統時(RTOS),操作系統通常都是使用非易失的存儲器來運行軟件以及采集數據。存儲器的選擇面很廣闊,其中包括電池供電的SRAM(靜態隨機訪問儲存器),各種各樣的閃存以及串口EEPROM(電可擦的,可編程的只讀存儲器)。 那么哪個才是最好的呢? “對于存儲器的選擇的答案就是上述這幾種的綜合,”Wind River的Chen回答道。 由于考慮到對于靜態運行時的要求,所以現在還沒有一種形式是可以適合所有的系統的。RTOS及其他的應用軟件總和有可能超過幾百兆字節,在系統啟動的時候可能被儲存并且在以后的絕大多數時間內不會被使用。而另一方面,過程數據可能只有幾個字節但是一直在被采集及存儲。 一個簡單的方法可以替代PC機上運行的硬盤,就是使用一個閃存芯片。固態驅動通常都很小,可適用于惡劣的環境并且耗電量很小。他們可以按需要來進行替換或甚至可以通過對讀/寫操作的整理來減輕運行RTOS的處理器的一些負擔。 固態驅動也變得越來越實用。Gary Drossel(在加州的SiliconSystems of Aliso Viejo公司的固態驅動制造開發部副經理),回憶道,在以前,同樣轉速的固態磁盤可是將近現在價格的40倍。這還是不久以前的事情。“我們開始看到大概兩到三倍的價格溢價。”他說道。 并不是所有的動態驅動都一樣提供糾錯及耗損平衡功能。后者通過保證比特不會由于過量使用而過早的損耗從而延長了磁盤的壽命。有些設備可以將一部分區域變成寫保護區域的功能,這功能就可以保證RTOS及應用軟件保持原有功能。 但是不同轉速的固態驅動可以分享一些信息。如今運行一個最小的固態驅動只需要十幾兆。 對于小存儲量的需求,用戶可以選擇使用閃存,電池供電的RAM或串口EEPROM。有幾個影響選擇的因素,比如可能會用到的數據量及寫數據的頻率。 典型的RTOS及應用軟件會儲存在閃存內,因此現在的問題是如何處理過程數據。如果只涉及到很小的過程數據的話,那么串口EEPROM就可以解決了,Martin Bowman (Microchip Technology of Chandler公司存儲器分布的高級工程師)提醒道。對于工業應用來說這是相當正確的,但是設備的長期使用壽命也是必須的。 “使用串口EEPROM技術的一個優勢就是可以知道擦/寫循環的次數。”Bowman說道。 錯誤位在10000次左右個循環后會在閃存中出現,而串口EEPROM只有在百萬次后才可能會出現錯誤位。而且EEPROM的下降趨勢比閃存更為緩慢而且不會像閃存那樣因為需要大存儲量而使成本變大。 最后的辦法是通過以太網或無線連接來遠程存儲信息,使用電池供電的SRAM使得當連接中斷時進行數據保存。這樣就不會有位耗損問題并且寫和讀數據更為快捷。但是關于電池還有個問題,那就是什么來監視及維護電池的電量。不然的話,可能會造成電子“失憶癥”及數據的丟失。 |