本申請請求2015年12月28日提交的法國專利申請?zhí)?5/63377的優(yōu)先權,該申請的內(nèi)容通過引用將其全部內(nèi)容以法律允許的最大范圍并入本申請。
本公開總體上涉及電子電路,并且尤其涉及使用閃速存儲器的電路。更具體地,本公開旨在閃速存儲器中的數(shù)據(jù)存儲管理。
背景技術:
微控制器中,閃速存儲器越來越多地用于非易失性的存儲數(shù)據(jù)。
由于所執(zhí)行的操作的粒度(granularity)、讀寫以字節(jié)執(zhí)行,而讀并且尤其是擦除以頁執(zhí)行,因此,閃速存儲器中的數(shù)據(jù)存儲具有各種時間約束。
在某些應用中,期望確認所執(zhí)行并存儲的事務(transaction)遵循原子性準則(atomicitycriterion)。事務的原子性相當于確認存儲器中的數(shù)據(jù)實際上具有可處理的狀態(tài)。這相當于確認非易失性存儲器中的數(shù)據(jù)是在事務前具有的它們的狀態(tài)還是在相關的事務后具有的它們的狀態(tài),但它們不具有中間狀態(tài)。
事務原子性管理尤其用于其中電路電源的中斷或者無意或有意干擾的發(fā)生可能造成數(shù)據(jù)存儲處于導致數(shù)據(jù)不可能順序處理或者在保密方面受到影響的狀態(tài)的情況下的應用中。
已知有很多原子性管理技術,更具體地在微控制器中應用所謂安全事務,例如,銀行事務、訪問控制等。
技術實現(xiàn)要素:
期望具有遵守被處理的數(shù)據(jù)的原子性標準的閃速存儲器中的數(shù)據(jù)存儲的解決方案。
期望具有尤其適于基于非接觸通信的事務的解決方案。
因此,實施例提供了一種非易失性存儲器中的數(shù)據(jù)存儲方法,在包含所述存儲器的電路和終端之間的離線事務期間,其中:
存儲器的頁被分配給每個事務;
每個事務的數(shù)據(jù)被順序存儲在相應的頁內(nèi);以及
分配給事務的頁在對應的事務結束時被鎖定在寫入模式中。
根據(jù)實施例,也存儲在非易失性存儲器中的計數(shù)器在每個事務結束時被更新。
根據(jù)實施例,計數(shù)器是事務數(shù)量的計數(shù)器。
根據(jù)實施例,如果計數(shù)器未達到與分配給事務的存儲器的頁的數(shù)量相對應的閾值,則僅允許新事務數(shù)據(jù)的存儲。
實施例提供了一種管理非易失性存儲器的方法,該非易失性存儲器具有通過應用上述方法存儲的數(shù)據(jù),其中,在所述電路和遠程服務器之間經(jīng)由終端的通信期間:
包含在頁中的數(shù)據(jù)被讀取并載入到遠程服務器中;以及
已讀取的頁被擦除。
根據(jù)實施例,一旦已經(jīng)處理了全部頁,則計數(shù)器被重置。
實施例提供了一種閃速存儲器,該閃速存儲器被根據(jù)上述方法編程。
實施例提供了一種電子電路,該電子電路包括閃速存儲器。
上述和其他特征及優(yōu)點將在下面結合附圖的具體實施方式的非限制性描述中詳細討論。
附圖說明
圖1是將要描述的實施例應用的電子電路類型的示例的框圖;以及
圖2以框圖的形式示意性示出圖1的電路的閃速存儲器中的存 儲管理方法的實施例。
具體實施方式
在不同的附圖中使用相同的附圖標記指代相同的元素。
為了清楚起見,只有那些有助于理解將要描述的實施例的步驟和元素被示出并作詳細描述。具體地,不詳細描述在寫、讀和擦除步驟期間閃速存儲器的電子行為,所描述的實施例兼容通用的閃速存儲器技術。另外,也不詳細描述使用原子性管理的應用,這里所描述的實施例也與通用的應用兼容。
在下面的描述中,在參考以術語大約(approximately)、大致(about),以及大概(intheorderof)作出時,意思是在10%以內(nèi),優(yōu)選地在5%以內(nèi)。
圖1以框圖的形式示意性示出將要描述的實施例應用的類型的電子電路1的實施例作為示例。
電路1包括:
處理單元11(內(nèi)核),例如,狀態(tài)機、微處理器、可編程邏輯電路等;
一個或多個易失性存儲區(qū)12(ram),例如,ram或寄存器型,用于暫態(tài)地存儲處理期間的信息(指令、地址、數(shù)據(jù));
一個或多個非易失性存儲區(qū)13,包括至少一個快閃型存儲器(閃存),用于永久存儲信息,尤其在電路斷開電源時;
電路1內(nèi)部的不同元件之間的一個或多個數(shù)據(jù)、地址、和/或控制總線14;以及
輸入/輸出接口15(i/o),例如串行總線型,用于與電路1的外部通信。
在更具體的本公開的目標應用中,電路1還集成近場通信型(nfc)的非接觸通信電路16(clf——非接觸前端)。
另外,根據(jù)應用,電路1可以集成其他功能,由框17(fct)標識,例如,加密處理器、其他接口、其他存儲器等。
在配置有閃速存儲器的電路中的事務原子性管理是特殊的,這是因為閃速存儲器具有頁處理粒度,而不是位或字節(jié)處理粒度,特別對于擦除。閃速存儲器從初始狀態(tài)到狀態(tài)0(存儲單元的非導通狀態(tài))被編程。這意味著存儲器單元應當被置為高狀態(tài)并且存儲一條數(shù)據(jù),既不被選擇按照位狀態(tài)動作,也不被選擇將該位編程為0。擦除(重置為高的初始狀態(tài))需要以存儲器頁來執(zhí)行。頁被定義為能夠被同時尋址以擦除的最小尺寸。通常,在閃速存儲器中,一頁的容量一般為32、64、128、256或512字節(jié)。實際上,這對應于寄存器的容量,寄存器以串行方式分別接收數(shù)據(jù)以便以并行方式將它們傳送到存儲平面(memoryplane)存儲。
為確保事務的原子性,閃速存儲器中的數(shù)據(jù)存儲應當僅在事務結束并且可以說數(shù)據(jù)穩(wěn)定時執(zhí)行。實際上,原子性管理方法在所述數(shù)據(jù)從非易失性存儲器提取時激活數(shù)據(jù)處理的指示符,并且接下來組織存儲已更新的數(shù)據(jù),一旦該處理結束,則該處理指示符會切換狀態(tài)。原子性可以根據(jù)事務的性質(zhì)關注更大或更小的數(shù)據(jù)量(字節(jié))。
事務的原子性對銀行型事務(例如,支付)來說特別重要,在銀行型事務中,必需確認閃速存儲器中存儲的信息(例如,電子錢包的余額或購買授權的協(xié)調(diào),或者校驗事務的標識符)被可靠地存儲。這對離線(即不與銀行的服務器通信)執(zhí)行的事務來說是至關重要的。事實上,對于離線執(zhí)行的事務來說,授權直接由支付電路管理,并且應當確保事務被正確地存儲。具體示例涉及所謂的emv事務(euro卡、萬事達卡、visa卡)。
在非接觸應用中,由于通信的發(fā)散性(fugacity),事務必須被快速執(zhí)行,而這取決于電路1能夠與終端進行通信的時間。現(xiàn)在,管理事務的原子性占用時間,必需在閃速存儲器中授權編程的擦除操作也占用時間。
閃速存儲器尤其應用于離線事務來存儲關于事務的信息,直到電路與該信息打算被用到的服務器保持在線(接觸或不接觸)。在電路處于在線通信時,事務被上傳至服務器中并且擦除閃速存儲器 中對應的區(qū)域。因此,存儲器空間被再次釋放來存儲新的離線事務。
尤其是,對于emv應用,電路含有計數(shù)授權的離線事務數(shù)量的計數(shù)器和/或計數(shù)最大授權量的計數(shù)器,后者隨數(shù)量被離線消耗而遞減。在在線連接期間,計數(shù)事務數(shù)量的計數(shù)器被重置,并且計數(shù)最大量的計數(shù)器根據(jù)銀行服務器的信息被更新。
根據(jù)實施例,一個實施例提供,其中包括:
為每個事務分配閃速存儲器的頁;
將關于離線事務的數(shù)據(jù)順序地寫入分配給這個事務的頁中;
事務結束時存儲所使用的頁,并且一旦事務結束則禁止它的離線更新;以及
在在線事務期間擦除閃速存儲器的頁。
因此,在事務被離線執(zhí)行并形成時間上的關鍵期的一段時間期間避免執(zhí)行閃速存儲器擦除操作。
圖2是示出這樣的閃速存儲器存儲管理方法的實施例的框圖。
圖2將它左側(cè)離線執(zhí)行的操作與它右側(cè)在線執(zhí)行的操作進行同步。
一旦電路在線通信,則通過接觸(例如,銀行卡插入自動取款機)或非接觸,閃速存儲器的頁被讀取,即,閃速存儲器的頁被上傳到服務器(a/上傳閃存頁)中。然后,擦除已上傳的頁(b/擦除閃存頁)。這個操作比讀寫操作相對要長,但是僅在電路在線通信時執(zhí)行,即,在有更多時間時執(zhí)行。實際上,在全部頁已經(jīng)被擦除時,與電路1通信的終端使授權的離線事務和/或授權的下限(floorlimit)計數(shù)器重置(c/初始化事務和/或數(shù)量計數(shù)器)。
電路1接下來為新的離線事務階段做好準備。對于這樣的離線事務,電路1(實際上,控制全部操作的它的處理單元11)為每個新事務(事務1、事務2、事務n)選擇閃速存儲器中的空頁(f/選擇空頁)。
事務接下來通過優(yōu)選地實施原子性管理被執(zhí)行,從而其中存儲的信息遵守相關數(shù)據(jù)的初始狀態(tài)或最終狀態(tài)的準則。可以使用任何 原子性的算法,假定在離線操作中不施加擦除存儲器13。關于事務的數(shù)據(jù)被順序地存儲在頁中(g/順序地寫入),這減少了關于非順序存儲的訪問時間。
一旦事務結束,該頁被鎖定(h/鎖定頁),即使它未被填滿。換句話說,頁中可能的剩余空間不能被用于存儲(即使部分地存儲)另一個事務。而且,事務數(shù)量的計數(shù)器和/或最大量的計數(shù)器被更新(i/更新計數(shù)器),即,根據(jù)關于被執(zhí)行的控制的閾值(最小值或最大值)遞減或遞增。
就事務數(shù)量的計數(shù)器來說,這個數(shù)值是分配給事務的閃速存儲器中頁的數(shù)量的函數(shù)(例如,從3到50)。
如果達到這個數(shù)值(或如果達到數(shù)量閾值),則不再授權新的離線事務并且新的在線連接(步驟a至c)是必要的,使得電路能夠再次離線操作。
所描述的實施例利用編程時間和擦除時間之間的差。實際上,在閃速存儲器中,頁擦除操作(通常大約幾毫秒)比字節(jié)編程操作(通常大約幾十微秒)相對要長。
還利用以字節(jié)向閃速存儲器寫入的事實,這使得通過順序地寫入閃速存儲器的事務處理與遵守事務的原子特征相兼容。由于讀取操作在線執(zhí)行,所以對于在閃速存儲器中以整頁執(zhí)行讀取操作沒有影響。
根據(jù)應用和存儲事務所必需的最大尺寸來選擇頁尺寸。
已經(jīng)描述的實施例的優(yōu)點在于他們改進了集成閃速存儲器的電路和終端之間離線事務中的閃速存儲器的管理。
另一個優(yōu)點在于與銀行事務(例如,emv類型的銀行事務)的兼容性。
所描述的實施例的另一個優(yōu)點在于他們對向存儲器中寫入事務的原子性不存在不利影響。
已經(jīng)描述了各實施例。本領域技術人員會作出各種替代、修改和改進。具體地,盡管已經(jīng)結合emv型事務和閃速存儲器的應用的 示例很詳細地描述了各實施例,但是可以將它們變換為存在相似問題的其他應用和存儲器。另外,根據(jù)上文給出的功能性指示以及通過使用本身慣常的電路,所描述的實施例的實際實現(xiàn)方式是本領域技術人員的能力所及的。尤其是,存儲器尋址的組織和生成適于所述存儲器的控制和這個尋址的信號使用本身慣常的技術。
這樣的替代、修改和改進旨在作為本公開的一部分,并且旨在在本發(fā)明的精神和范圍內(nèi)。因而,前面的描述僅是示例性的并不旨在受到限制。本發(fā)明僅如隨后的權利要求及其等同權利要求所限定的來限定。