當(dāng)前位置:首頁 > 智能硬件 > 智能硬件
[導(dǎo)讀]文章介紹循環(huán)存儲(chǔ)器的結(jié)構(gòu)、循環(huán)存儲(chǔ)的實(shí)現(xiàn)方法以及文件管理的過程;指出該方法的優(yōu)越性。

  摘要:一種I2C總線EEPROM存儲(chǔ)器,在數(shù)據(jù)記錄系統(tǒng)中,用來保存當(dāng)前時(shí)刻以前一段時(shí)間內(nèi)的多組數(shù)據(jù)。使用時(shí)設(shè)計(jì)成首尾地址相接的環(huán)型存儲(chǔ)結(jié)構(gòu),實(shí)現(xiàn)數(shù)據(jù)文件的循環(huán)存儲(chǔ)。文章介紹循環(huán)存儲(chǔ)器的結(jié)構(gòu)、循環(huán)存儲(chǔ)的實(shí)現(xiàn)方法以及文件管理的過程;指出該方法的優(yōu)越性。

    關(guān)鍵詞:EEPROM 循環(huán)存儲(chǔ) I2C總線 IC卡

絕大多數(shù)的IC卡采用的都是I2C總線型的EEPROM存儲(chǔ)器。在現(xiàn)場(chǎng)數(shù)據(jù)記錄系統(tǒng)中,經(jīng)常需要保存的是當(dāng)前時(shí)刻之前一段時(shí)間內(nèi)的數(shù)據(jù)。由于EEPROM單字節(jié)寫入時(shí)間太長(zhǎng),不易采用數(shù)據(jù)在存儲(chǔ)器中內(nèi)整體位置移動(dòng)的方法管理;而單純采用自存儲(chǔ)器頂端向下順序?qū)懭氲姆椒?,?huì)出現(xiàn)存儲(chǔ)器寫滿的現(xiàn)象。為解決這個(gè)問題,我們?cè)O(shè)計(jì)了環(huán)型存儲(chǔ)的管理方法,使用首尾相接的存儲(chǔ)環(huán),配合以目錄管理功能,完成順的循環(huán)寫入,實(shí)現(xiàn)了EEPROM存儲(chǔ)器內(nèi)文件的的高效保存和管理。

1 存儲(chǔ)器及文件目錄結(jié)構(gòu)

這里以1片4KB的I2C總線型EEPROM為例。微處理器采用Atmel的AT89S52;EEPROM的0000H~003FH作為IC卡內(nèi)文件的目錄管理區(qū),為直線結(jié)構(gòu);目錄區(qū)最多可以記錄30個(gè)數(shù)據(jù)文件。存儲(chǔ)器及目錄結(jié)構(gòu)如圖1所示。0040H~0FFFH設(shè)計(jì)成首尾相接的環(huán)型存儲(chǔ)結(jié)構(gòu),用來作為文件存儲(chǔ)區(qū)。數(shù)據(jù)文件從0040H處開始依次記入,每寫入一個(gè)字節(jié),地址指針自動(dòng)加1,然后判斷該指針是否到了存儲(chǔ)環(huán)的交界處。地址過界,即地址大于0FFFH時(shí),將寫入地址指針再修改成0040H,將最早形成的文件記錄自動(dòng)覆蓋掉。AT89S52內(nèi)部RAM的40H~7FH作為EEPROM文件目錄區(qū)的映像,系統(tǒng)復(fù)位后由單片機(jī)將EEPRM中0000H~003FH的內(nèi)容讀出并記入到該映像區(qū)。每一組現(xiàn)場(chǎng)數(shù)據(jù)作為一個(gè)記錄文件輸入后,單片機(jī)都要及時(shí)修改目錄映像中當(dāng)前文件的結(jié)束地址。每建立一個(gè)新文件記錄,映像區(qū)整個(gè)數(shù)據(jù)都要向地址增大方向移動(dòng)2個(gè)字節(jié),超出7DH的自動(dòng)丟棄。新建立的文件首位地址記入40H~43H,最后將該映像再重新寫回到EEPROM目錄區(qū)。文件目錄中只有當(dāng)前文件記錄了起始地址和結(jié)束地址。當(dāng)前文件的起始地址是前一文件結(jié)束地址的下一個(gè)地址,因此在前文件只記錄其起始地址。目錄區(qū)沒有文件的空間用#0FFH填充。另外,每一個(gè)文件的長(zhǎng)度不應(yīng)超過文件數(shù)據(jù)存儲(chǔ)區(qū)的總長(zhǎng)度。單個(gè)文件的長(zhǎng)度越短,存儲(chǔ)器可存儲(chǔ)的文件數(shù)越多。存儲(chǔ)器的大小可視一般記錄文件和系統(tǒng)要求而定。

2 存儲(chǔ)器清除及文件建立

在IC卡第一次使用之前,首先應(yīng)該通過功能程序?qū)⒖▋?nèi)目錄管理區(qū)清空,即將0000H~003DH寫入#0FFH.。003EH寫入#00H,表示卡內(nèi)沒有文件。003FH寫入自定義的卡編寫,這一過程需要0.6s完成。只有使用經(jīng)過初始清除處理的IC卡,才能保證后續(xù)文件建立和數(shù)據(jù)寫入的正確性。

文件的建立依賴于系統(tǒng)的功能指令。當(dāng)系統(tǒng)得到建立新文件的指令時(shí),立即啟動(dòng)新文件建立程序,完成文件起始地址配置以及目錄區(qū)管理,具體過程見圖2。

圖2

3 文件寫入及目錄管理

文件數(shù)據(jù)的寫入按照I2C總線規(guī)約逐字節(jié)寫入。特殊之處在于,每寫完一個(gè)字節(jié)之后,地址指針加1,調(diào)整后的指針如果超過0FFFH,則重新高速為0040H,這將意味著“吃掉“(覆蓋掉)最早建立的文件或其它在前文件。這里,通過目錄管理了程序找出被“吃掉”的文件,并將從目錄中刪除。由于在所選用存儲(chǔ)時(shí)已經(jīng)有效使存儲(chǔ)空間遠(yuǎn)大于單個(gè)文件的長(zhǎng)度,因此不會(huì)出現(xiàn)同一個(gè)文件“吃掉”自身的情況。只有當(dāng)多個(gè)文件的總長(zhǎng)度超過存儲(chǔ)空間時(shí),才會(huì)出現(xiàn)在前文件被“吃掉”的現(xiàn)象。不過,被吃掉的文件永遠(yuǎn)是最早形成的文件,是按照系統(tǒng)設(shè)計(jì)已經(jīng)可以丟棄的文件。

目錄管理的主要功能是:實(shí)時(shí)統(tǒng)計(jì)IC卡內(nèi)實(shí)際文件的數(shù)量,記載新建立的文件,及時(shí)刪除已經(jīng)被覆蓋掉的文件。文件檢索過程只有目錄映像區(qū)進(jìn)行,根據(jù)文件目錄映像區(qū)的結(jié)構(gòu),讀出所有已記錄的在前文件的地址,與當(dāng)前文件地址比較。如果所檢查的在前文件地址進(jìn)入當(dāng)前文件首尾地址范圍內(nèi),則認(rèn)定為該文件已經(jīng)被當(dāng)前文件覆蓋,應(yīng)用從目錄中刪除。

由于存儲(chǔ)器空間被安排成環(huán)狀結(jié)構(gòu),會(huì)出現(xiàn)當(dāng)前文件的結(jié)尾地址大于開始地址的情況,因此不能簡(jiǎn)單地根據(jù)地址的絕對(duì)大小判斷覆蓋問題??紤]到單一文件的長(zhǎng)度遠(yuǎn)小于存儲(chǔ)數(shù)據(jù)空間,以及目錄映像區(qū)文件次序的前后排列關(guān)系,我們采取自前一文件到最早文件的次序檢索方法。如果遇到某個(gè)文件被覆蓋,則后續(xù)文件一定被覆蓋。由于在前文件的起始地址存在大于或小于當(dāng)前文件結(jié)尾地址的情況,因此應(yīng)分兩種情況進(jìn)行分析,統(tǒng)計(jì)出有效文件的數(shù)量并找到到被覆蓋的文件,將其從目錄中刪除,過程見圖3。R2為文件數(shù)量計(jì)數(shù)器,初值為零。

圖3

結(jié)語

EEPROM循環(huán)寫入的方法避免了大塊數(shù)據(jù)在存儲(chǔ)器內(nèi)移動(dòng)的問題,同時(shí)消除了存儲(chǔ)器寫滿后影響后續(xù)寫入的問題,充分使用了存儲(chǔ)空間;文件檢索和目錄修改在RAM映像區(qū)完成,加快了程序運(yùn)行速度。循環(huán)寫入方案在運(yùn)達(dá)公司一種記錄棋譜的電子棋盤中已經(jīng)得到了應(yīng)用,實(shí)用可靠。此方法在類似產(chǎn)品或記錄設(shè)備中具有相當(dāng)?shù)膶?shí)用價(jià)值。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

倫敦2024年8月29日 /美通社/ -- 英國(guó)汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對(duì)日本游戲市場(chǎng)的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對(duì)環(huán)境變化,經(jīng)營(yíng)業(yè)績(jī)穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤(rùn)率延續(xù)升勢(shì) 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長(zhǎng) 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競(jìng)爭(zhēng)力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競(jìng)爭(zhēng)優(yōu)勢(shì)...

關(guān)鍵字: 通信 BSP 電信運(yùn)營(yíng)商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國(guó)電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場(chǎng) NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長(zhǎng)三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡(jiǎn)稱"軟通動(dòng)力")與長(zhǎng)三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉