日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當前位置:首頁 > 嵌入式 > 嵌入式教程
[導讀]嵌入式系統(tǒng)中非易失、不可復位計數(shù)器的實現(xiàn)

本文介紹如何利用常見串行EEPROM的EPROM仿真模式及編碼機制解決這一問題。 
 

設計目標

有些應用中,考慮到質保期的要求,希望能夠對特定的事件進行計數(shù)和記錄,例如上電次數(shù)、工作時間、硬(按鈕)復位和超時。傳統(tǒng)的電子計數(shù)器通常由雙穩(wěn)態(tài)多諧振蕩器組成,采用二進制編碼,如圖1所示。當全部觸發(fā)器復位時,則達到最大計數(shù)值,計數(shù)器規(guī)模由核查期限內允許發(fā)生某些事件的最大次數(shù)決定。
 

Bit Number
n+1 n ... 8 7 6 5 4 3 2 1
2n 2n-1 ... 27 26 25 24 23 22 21 20

圖1. 二進制碼中,下一位比上一位位值翻倍。
 

定位需求

盡管基于觸發(fā)器的計數(shù)器很容易搭建,但它存在一個缺點。當達到計數(shù)限值時,計數(shù)器反轉為零(自動復位)。工作狀態(tài)也是易失的—需要電源維持其計數(shù)狀態(tài)。第一個問題可通過達到限值時凍結計數(shù)器解決;也可以通過安裝電池維持計數(shù)器的供電,從而解決第二個問題。但這些措施在實際應用中可能無法接受,因為增加了成本,且工作時間有限。

一種替代方案是:將計數(shù)值備份在EEPROM或其它形式的非易失(NV)存儲器中。下次上電時,將該NV存儲器中儲存的數(shù)值加載到計數(shù)器。然而,除非NV存儲器嵌入另一個芯片,例如微控制器或FPGA,否則存儲器內容并不安全,因為存儲器芯片很容易拆除、重新編程(復位),然后重新安裝到電路板上。因此,這種方法不滿足不可復位的要求。
 

傳統(tǒng)設計

EPROM是另一種不需要電池的非易失存儲器。EPROM在上世紀70年代隨著微處理器的出現(xiàn)得到廣泛使用。出廠時,EPROM的全部字節(jié)為FFh。通過將某一位從1 (擦除)置為0 (編程)來儲存數(shù)據(jù);編程需要12V至13V脈沖電壓。加載新數(shù)據(jù)之前,必須用高強度紫外線通過封裝上的窗口照射芯片,從而擦除整個存儲器。一次性編程(OTP) EPROM器件沒有窗口,因此不可擦除。由于這些不便之處,EPROM的主導地位逐漸被EEPROM和高密度閃存所取代,后兩者的工作和編程電壓為5V或更低。雖然如此,將OTP EPROM一次可編程(1至0)及不可擦除的特點與現(xiàn)代EEPROM技術相結合,能夠得到EPROM仿真模式的新特性。EPROM仿真模式是實現(xiàn)非易失、不可復位計數(shù)器的關鍵技術。
 

EPROM仿真模式

串口EEPROM的一個常用功能是充當寫入頁的緩存器,能夠一次編程整個存儲器頁。收到寫命令時,系統(tǒng)自動裝載包含尋址存儲器數(shù)據(jù)的頁緩存器內容。對于EPROM仿真模式,按照移位寄存器寫緩存器(圖2)。輸入新數(shù)據(jù)(D-IN)送到一個“與”門,在進入緩存器(S-IN)之前將其與緩存器數(shù)據(jù)(S-OUT)相組合。因此,“與”門確保存儲器位在置為0后不會變?yōu)?。經過一個完整的頁操作周期后,緩存器的數(shù)據(jù)再次與存儲器頁中的數(shù)據(jù)對齊。隨后可以開始一個寫周期,將整個緩存器內容復制到非易失EEPROM。


圖2. EPROM仿真將新數(shù)據(jù)與已有數(shù)據(jù)位相“與”,寫回到存儲器。
 

EPROM計數(shù)

由于EPROM位只能在一個方向改變,不支持傳統(tǒng)的計數(shù)器設計思路,而是將整個存儲器陣列視為一個n位的單體。初始狀態(tài)下,n位存儲單元均未編程(為1)。為了對事件計數(shù),必須將未編程的位更改為0??梢院唵蔚仉S機選擇下一個編程位,但圖3所示方法更容易實現(xiàn)。該方法從最低有效位開始依次計數(shù),直到對一個字節(jié)的所有位進行編程。然后再逐位編程下一個字節(jié),依此循環(huán)。EPROM仿真模式下,1024位存儲器芯片可以對1024個事件計數(shù)。
 

Count
Value
Hex
Code
Bit Number
8 7 6 5 4 3 2 1
0 FFh 1 1 1 1 1 1 1 1
1 FEh 1 1 1 1 1 1 1 0
2 FCh 1 1 1 1 1 1 0 0
3 F8h 1 1 1 1 1 0 0 0
4 F0h 1 1 1 1 0 0 0 0
5 E0h 1 1 1 0 0 0 0 0
6 C0h 1 1 0 0 0 0 0 0
7 80h 1 0 0 0 0 0 0 0
8 00h 0 0 0 0 0 0 0 0

圖3. EPROM計數(shù)要求對每一位設置相同值。
 [!--empirenews.page--]

盡管EPROM仿真模式容易實現(xiàn),但在本文發(fā)表時只有Maxim提供此類產品,提供存儲容量為1Kb (DS2431、DS28CN01和DS28E01)和20Kb (DS28EC20)的存儲器件,所有這些芯片都帶有唯一序列號。除DS2431和DS28EC20外,具有EPROM仿真模式的產品均為安全存儲器;只有產生器件密鑰信息認證碼的主控制器才擁有寫權限。
 

流程圖

以DS2431存儲器芯片為例說明,將其存儲器頁0配置為在EPROM仿真模式下實現(xiàn)256位計數(shù)。采用64位中間結果存儲器作為中間存儲器,能夠以8字節(jié)數(shù)據(jù)塊更新32字節(jié)頁。圖4所示算法檢測第一個具有未編程位的數(shù)據(jù)塊,遞增計數(shù)值,然后將數(shù)據(jù)塊寫回EEPROM。


圖4. 該算法遞增32字節(jié)存儲器頁的計數(shù)器。
 

結論

具有EPROM仿真模式的EEPROM是實現(xiàn)非易失、不可復位計數(shù)器的首選產品。存儲器芯片的序列號可以用來檢測篡改操作—即用較低計數(shù)值的芯片代替合法存儲器芯片的動作。為防止未經授權增大計數(shù)值,應采用需要消息認證碼才允許寫操作的安全存儲器。

本站聲明: 本文章由作者或相關機構授權發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內容真實性等。需要轉載請聯(lián)系該專欄作者,如若文章內容侵犯您的權益,請及時聯(lián)系本站刪除( 郵箱:macysun@21ic.com )。
換一批
延伸閱讀
關閉