本文解釋了如何使用現成的串行 EEPROM 的 EPROM 仿真模式以及不尋常的編碼方案來解決問題。
動機
出于保修原因,有時需要對某些事件進行計數和記錄,例如電源循環、操作時間、硬(按鈕)重置和超時。用于此目的的傳統電子計數器由觸發器構建,使用二進制代碼,如圖 1 所示。當所有觸發器都設置時達到最大計數,因此計數器的大小由在感興趣的時間間隔內要計數的最大事件數。
在自然二進制代碼中,位值從一位到下一位加倍。
滿足要求
雖然基于觸發器的計數器很容易構建,但它有很大的缺點。當它達到計數限制時,它會歸零(重置自身)。它的操作也是不穩定的——它需要電力來維持其計數狀態。第一個問題可以通過在達到極限時凍結計數器來解決;您可以通過連接電池來保持柜臺電源來解決第二個問題。但是這些措施可能是不可接受的,因為它們會增加成本并且只能在有限的時間內起作用。
有一個替代方案。您可以在 EEPROM 或某種其他形式的非易失性 (NV) 存儲中備份計數值。下次上電時,計數器可以預加載存儲在此 NV 存儲器中的值。除非將 NV 內存嵌入到另一個芯片(如微控制器或 FPGA)中,否則內存內容并不安全,因為內存芯片很容易在電路板上移除、重新編程(重置)和更換。因此,這種方法不滿足不可復位的要求。
過去的詭計
EPROM 是另一種不需要電池的非易失性存儲器。隨著微處理器的出現,EPROM 在 1970 年代開始流行。剛出廠時,所有 EPROM 字節都讀取 FFh。通過將單個位從 1(已擦除)到 0(已編程)進行編程來存儲數據;編程需要 12V 到 13V 的脈沖。在加載新數據之前,您必須通過封裝中內置的窗口將芯片暴露在高強度紫外線下來擦除整個內存。一次性可編程 (OTP) EPROM 沒有窗口,因此無法擦除。由于這些不便之處,EPROM 的普及已經逐漸減少,取而代之的是 EEPROM 和高密度閃存,它們都可以在 5V 或更低的電壓下操作和編程。盡管如此,通過將 OTP EPROM 的單向編程(1 到 0)和不可擦除性與現代 EEPROM 技術相結合,您可以獲得一種稱為 EPROM 仿真模式的新功能。EPROM 仿真模式是實現非易失性、不可復位計數器的關鍵技術。
EPROM 仿真模式
串行接口 EEPROM 的一個共同特征是頁面寫入緩沖器,它可以讓您一次性編程整個存儲器頁面。收到寫命令后,系統會自動將來自尋址存儲器頁面的數據加載到頁面寫入緩沖區。對于 EPROM 仿真模式,寫緩沖器被實現為一個移位寄存器(圖 2)。傳入的新數據 (D-IN) 在進入緩沖區 (S-IN) 之前饋入一個與門,該門將其與緩沖區數據 (S-OUT) 組合在一起。因此,與門確保存儲位在被編程為 0 后不能更改為 1。在頁面的所有位的完整循環之后,緩沖區中的數據再次與存儲頁中的數據對齊。現在可以開始寫周期,將整個緩沖區復制回非易失性 EEPROM。
EPROM 仿真將新數據和現有數據的按位邏輯與寫回內存。
編輯:hfy
-
存儲器
+關注
關注
38文章
7502瀏覽量
163937 -
EEPROM
+關注
關注
9文章
1022瀏覽量
81661 -
觸發器
+關注
關注
14文章
2000瀏覽量
61198 -
非易失性存儲器
+關注
關注
0文章
107瀏覽量
23451
發布評論請先 登錄
相關推薦
評論