国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      數(shù)據(jù)型樣管理的方法以及相關(guān)的記憶裝置及其控制器的制作方法

      文檔序號:6580954閱讀:150來源:國知局
      專利名稱:數(shù)據(jù)型樣管理的方法以及相關(guān)的記憶裝置及其控制器的制作方法
      技術(shù)領(lǐng)域
      本發(fā)明涉及閃存(Flash Memory)的存取(Access),更具體地說,涉及一種針對一 閃存的控制器所存取的數(shù)據(jù)來進行數(shù)據(jù)型樣(Data Pattern)管理的方法以及相關(guān)的記憶 裝置及其控制器。
      背景技術(shù)
      近年來由于閃存的技術(shù)不斷地發(fā)展,各種便攜式記憶裝置(例如符合SD/MMC、 CF、MS、)(D標準的記憶卡)被廣泛地實施于諸多應(yīng)用中。因此,這些便攜式記憶裝置中的閃 存的存取控制遂成為相當熱門的議題。
      以常用的NAND型閃存而言,其主要可區(qū)分為單層單元閃存(Single Level Cell, SLC)與多層單元閃存(Multiple Level Cell, MLC)兩大類。單層單元閃存中的每個被當 作記憶單元的晶體管只有兩種電荷值,分別用于表示邏輯值0與邏輯值1。另外,多層單 元閃存中的每個被當作記憶單元的晶體管的儲存能力則被充分利用,采用較高的電壓來驅(qū) 動,以通過不同級別的電壓在一個晶體管中記錄兩組位信息(00、01、11、10);理論上,多層 單元閃存的記錄密度可以達到單層單元閃存的記錄密度的兩倍,這對于曾經(jīng)在發(fā)展過程中 遇到瓶頸的NAND型閃存的相關(guān)產(chǎn)業(yè)而言,是非常好的消息。
      與單層單元閃存相比,由于多層單元閃存的價格較便宜,并且在有限的空間里可 提供較大的容量,故多層單元閃存很快地成為市場上的便攜式記憶裝置競相采用的主流。 然而,多層單元閃存的不穩(wěn)定性所導(dǎo)致的問題也一一浮現(xiàn)。為了確保便攜式記憶裝置對閃 存的存取控制能符合相關(guān)規(guī)范,閃存的控制器通常備有某些管理機制以妥善地管理數(shù)據(jù)的 存取。
      依據(jù)相關(guān)技術(shù),有了這些管理機制的便攜式記憶裝置還是有不足之處。舉例來說, 使用者可能基于其使用習(xí)慣而不斷地寫入具有某些特定數(shù)據(jù)型樣的數(shù)據(jù),而這些特定數(shù)據(jù) 型樣特別容易造成錯誤(例如寫入錯誤、讀取錯誤等)。因此,需要一種新穎的方法針對 所述控制器所存取的數(shù)據(jù)來進行數(shù)據(jù)型樣管理,以減少錯誤的發(fā)生。發(fā)明內(nèi)容
      因此,本發(fā)明的目的之一在在提供一種用于管理閃存的多個區(qū)塊的方法以及相關(guān) 的記憶裝置及其控制器,以解決上述問題。
      因此本發(fā)明的目的之一在于提供一種針對一閃存的控制器所存取的數(shù)據(jù)來進行 數(shù)據(jù)型樣管理的方法以及相關(guān)的記憶裝置及其控制器,以解決上述問題。
      本發(fā)明的較佳實施例中提供一種針對一閃存的控制器所存取的數(shù)據(jù)來進行數(shù)據(jù) 型樣管理的方法,所述方法包括在所述控制器接收到一寫入命令時,產(chǎn)生一第一隨機函 數(shù),其中所述寫入命令用于指示所述控制器將所述數(shù)據(jù)寫入所述閃存;以及依據(jù)所述第一 隨機函數(shù)的序列來逐位地調(diào)整所述數(shù)據(jù)的多個位以產(chǎn)生一虛擬亂碼位序列,并將所述虛擬 亂碼位序列寫入所述閃存以代表所述數(shù)據(jù),由此調(diào)整所述數(shù)據(jù)的數(shù)據(jù)型樣分布。
      本發(fā)明在提供上述方法的同時,還對應(yīng)地提供一種記憶裝置,其包括一閃存,所 述閃存包括多個區(qū)塊;以及一控制器,用于存取所述閃存以及管理所述多個區(qū)塊,并且還針 對所述控制器本身所存取的數(shù)據(jù)來進行數(shù)據(jù)型樣管理。另外,所述控制器包括一隨機函數(shù) 發(fā)生器,用于在所述控制器接收到一寫入命令時,產(chǎn)生一第一隨機函數(shù),其中所述寫入命令 用于指示所述控制器將所述數(shù)據(jù)寫入所述閃存。此外,所述控制器依據(jù)所述第一隨機函數(shù) 的序列來逐位地調(diào)整所述數(shù)據(jù)的多個位以產(chǎn)生一虛擬亂碼位序列,并將所述虛擬亂碼位序 列寫入所述閃存以代表所述數(shù)據(jù),由此調(diào)整所述數(shù)據(jù)的數(shù)據(jù)型樣分布。
      本發(fā)明在提供上述方法的同時,還對應(yīng)地提供一種記憶裝置的控制器,所述控制 器用于存取一閃存,所述閃存包括多個區(qū)塊,所述控制器包括一只讀存儲器,用于儲存一 程序代碼;一微處理器,用于執(zhí)行所述程序代碼以控制對所述閃存的存取以及管理所述多 個區(qū)塊;以及一隨機函數(shù)發(fā)生器,用于在所述控制器接收到一寫入命令時,產(chǎn)生一第一隨機 函數(shù),其中所述寫入命令用于指示所述控制器將數(shù)據(jù)寫入所述閃存。另外,所述控制器依據(jù) 所述第一隨機函數(shù)的序列來逐位地調(diào)整所述數(shù)據(jù)的多個位以產(chǎn)生一虛擬亂碼位序列,并將 所述虛擬亂碼位序列寫入所述閃存以代表所述數(shù)據(jù),由此調(diào)整所述數(shù)據(jù)的數(shù)據(jù)型樣分布。


      下面將結(jié)合附圖及實施例對本發(fā)明作進一步說明,附圖中
      圖1為依據(jù)本發(fā)明一第一實施例的一種記憶裝置的示意圖。
      圖2為依據(jù)本發(fā)明一實施例的一種針對一閃存的控制器所存取的數(shù)據(jù)來進行數(shù) 據(jù)型樣管理的方法的流程圖。
      圖3為圖2所示的方法在一實施例中所涉及的數(shù)據(jù)型樣調(diào)整的示意圖。
      圖4A至4C為圖1所示的記憶裝置在數(shù)個實施例中所采用的可編程線性反饋平移 緩存器的示意圖,其中所述可編程線性反饋平移緩存器可應(yīng)用于圖1所示的隨機函數(shù)發(fā)生 器或解隨機函數(shù)發(fā)生器。


      圖5為依據(jù)本發(fā)明一第二實施例的一種記憶裝置的示意圖。 圖6為圖5所示的密鑰產(chǎn)生器在一實施例中所采用的查找表t主要組件符號說明100,200記憶裝置 112C程序代碼 1142錯誤更正碼編碼器 1145,1145,虛擬亂碼位序列 1148錯誤更正碼譯碼器 120閃存110,210存儲器控制器 112M只讀存儲器 1143編碼數(shù)據(jù)位序列 1146解隨機函數(shù)發(fā)生器 116緩沖存儲器 2140密鑰產(chǎn)生器400隨機函數(shù)發(fā)生器或解隨機函數(shù)發(fā)生器 405,412-1,412-2,412-3,412-4 加法器 410,420,430可編程線性反饋平移緩存器 414-0,414-1,414-2,414-3,414-4 緩存器 416-1,416-2,416-3,416-4 開關(guān) Sff-1, SW-2,SW-3,SW-4對應(yīng)于密鑰的切換信號112微處理器 114,214控制邏輯 1144隨機函數(shù)發(fā)生器 1147復(fù)原數(shù)據(jù)位序列 118接口邏輯402,408位序列6
      910針對一閃存的控制器所存取的數(shù)據(jù)來進行數(shù)據(jù)型樣管理的方法
      912,914,916,918 步驟具體實施方式
      為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點更加清楚明白,以下結(jié)合附圖及實施例,對 本發(fā)明進行進一步詳細說明。應(yīng)當理解,此處所描述的具體實施例僅僅用以解釋本發(fā)明,并 不用于限定本發(fā)明。
      請參考圖1,圖1為依據(jù)本發(fā)明一第一實施例的一種記憶裝置100的示意圖,其中 本實施例的記憶裝置100尤其為便攜式記憶裝置,例如符合SD/MMC、CF、MS、XD標準的記 憶卡,或通用序列總線快閃碟(Universal Serial Bus Flash Drive, USB Flash Drive, 亦稱為USB Flash Disk),即所謂的隨身碟,但不以此為限。記憶裝置100包括一閃存 (Flash Memory) 120 ;以及一控制器,用于存取閃存120,其中該控制器例如一存儲器控制 器110。依據(jù)本實施例,存儲器控制器110包括一微處理器112、一只讀存儲器(Read Only Memory, ROM) 112M、一控制邏輯114、一緩沖存儲器116、與一接口邏輯118。另外,控制邏 輯114包括一錯誤更正碼(Error Correction Code, ECC)編碼器1142、一隨機函數(shù)發(fā)生 器(Randomizer) 1144、一解隨機函數(shù)發(fā)生器(Derandomizer) 1146、與一錯誤更正碼譯碼器 1148。
      在本實施例中,只讀存儲器112M用于儲存一程序代碼112C,而微處理器112則用 于執(zhí)行程序代碼112C以控制對閃存120的存取(Access)。一般情況下,閃存120包括多個 區(qū)塊(Block),而該控制器(例如通過微處理器112執(zhí)行程序代碼112C的存儲器控制器 110)對閃存120進行抹除數(shù)據(jù)的運作以區(qū)塊為單位來進行抹除。另外,一區(qū)塊可記錄特定 數(shù)量的頁O^ge),其中上述的控制器對閃存120進行寫入數(shù)據(jù)的運作以頁為單位來進行寫 入。
      實際操作中,通過微處理器112執(zhí)行程序代碼112C的存儲器控制器110可利用其 本身內(nèi)部的組件來進行諸多控制運作,例如利用控制邏輯114來控制閃存120的存取運 作(尤其是對至少一區(qū)塊或至少一頁的存取運作)、利用緩沖存儲器116進行所需的緩沖處 理、以及利用接口邏輯118來與一主裝置(Host Device)交互。依據(jù)本實施例,除了能存取 閃存120,存儲器控制器110還能妥善地管理該多個區(qū)塊。
      另外,存儲器控制器110還可針對該控制器本身所存取的數(shù)據(jù)來進行數(shù)據(jù)型樣 (Data Pattern)管理。在本實施例中,錯誤更正碼編碼器1142對使用者數(shù)據(jù)(例如錯誤 更正碼編碼器1142所輸入的“使用者數(shù)據(jù)位”)進行錯誤更正碼編碼,以產(chǎn)生編碼數(shù)據(jù)作為 該數(shù)據(jù),其中該編碼數(shù)據(jù)包括上述的使用者數(shù)據(jù)、內(nèi)部奇偶校驗碼(Parity of the Inner Code)、與外部奇偶校驗碼(Parity of the Outer Code),均通過編碼數(shù)據(jù)位序列1143輸入 至隨機函數(shù)發(fā)生器1144。存儲器控制器110進行數(shù)據(jù)型樣管理的相關(guān)細節(jié)可參考圖2來進 一步說明。
      圖2為依據(jù)本發(fā)明一實施例的一種針對一閃存的控制器所存取的數(shù)據(jù)來進行數(shù) 據(jù)型樣管理的方法910的流程圖。該方法可應(yīng)用于圖1所示的記憶裝置100,尤其是上述的 控制器(例如通過微處理器112執(zhí)行程序代碼112C的存儲器控制器110)。另外,該方法 可通過利用圖1所示的記憶裝置100來實施,尤其是通過利用上述的控制器來實施。該方法說明如下
      步驟912 在該控制器接收到一寫入命令時,隨機函數(shù)發(fā)生器1144產(chǎn)生一第一隨 機函數(shù)(Random Function),其中該寫入命令用于指示該控制器將該數(shù)據(jù)寫入閃存120。
      步驟914 該控制器(在本實施例,尤其是其內(nèi)的隨機函數(shù)發(fā)生器1144)依據(jù)該第 一隨機函數(shù)的序列來逐位地調(diào)整該數(shù)據(jù)的多個位(例如編碼數(shù)據(jù)位序列114 以產(chǎn)生一虛 擬亂碼位序列1145,并將該虛擬亂碼位序列寫入閃存120以代表該數(shù)據(jù),由此調(diào)整該數(shù)據(jù) 的數(shù)據(jù)型樣分布,其中調(diào)整后的數(shù)據(jù)型樣分布比調(diào)整前的數(shù)據(jù)型樣分布更為平均。然而,這 只是為了說明的目的而已,并非對本發(fā)明的限制。依據(jù)本實施例的一變化例,隨機函數(shù)發(fā)生 器1144可設(shè)置于控制邏輯114之外,其中編碼數(shù)據(jù)位序列1143與虛擬亂碼位序列1145的 間設(shè)置有一加法器,用于注入該第一隨機函數(shù)的序列并據(jù)以調(diào)整編碼數(shù)據(jù)位序列1143。
      步驟916 在該控制器接收到一讀取命令時,解隨機函數(shù)發(fā)生器1146產(chǎn)生一第二 隨機函數(shù),其中該讀取命令用于指示該控制器從閃存120讀取該數(shù)據(jù)。
      步驟918 該控制器(在本實施例尤其是其內(nèi)的解隨機函數(shù)發(fā)生器1146)依據(jù)該 第二隨機函數(shù)的序列來逐位地調(diào)整從閃存120所讀取的該虛擬亂碼位序列(即解隨機函數(shù) 發(fā)生器1146從閃存120所讀出的虛擬亂碼位序列1145’),以重現(xiàn)(R印roduce)該數(shù)據(jù)(例 如復(fù)原數(shù)據(jù)位序列1147),由此復(fù)原該數(shù)據(jù)的原始數(shù)據(jù)型樣分布。然而,這只是為了說明的 目的而已,并非對本發(fā)明的限制。依據(jù)本實施例的一變化例,解隨機函數(shù)發(fā)生器1146可設(shè) 置于控制邏輯114之外,其中虛擬亂碼位序列1145’與復(fù)原數(shù)據(jù)位序列1147之間設(shè)置有一 加法器,用于注入該第二隨機函數(shù)的序列并據(jù)以調(diào)整虛擬亂碼位序列1145’。
      在步驟918中,解隨機函數(shù)發(fā)生器1146已復(fù)原該數(shù)據(jù)的原始數(shù)據(jù)型樣分布,故錯 誤更正碼譯碼器1148即可依據(jù)復(fù)原數(shù)據(jù)位序列1147所代表的使用者數(shù)據(jù)、內(nèi)部奇偶校驗 碼、與外部奇偶校驗碼進行錯誤更正碼譯碼,以取得譯碼后的使用者數(shù)據(jù)(例如錯誤更正 碼譯碼器1148所輸出的“使用者數(shù)據(jù)位”)。
      圖3為圖2所示的方法在一實施例中所涉及的數(shù)據(jù)型樣調(diào)整的示意圖。圖3左半 部可代表步驟914所述調(diào)整前的數(shù)據(jù)型樣分布,而圖3右半部則代表步驟914所述調(diào)整后 的數(shù)據(jù)型樣分布,其中橫軸代表數(shù)據(jù)型樣類型,而縱軸代表數(shù)據(jù)型樣機率。在執(zhí)行步驟918 之后,解隨機函數(shù)發(fā)生器1146復(fù)原該數(shù)據(jù)的原始數(shù)據(jù)型樣分布,如圖3左半部所示。
      請注意,調(diào)整后的數(shù)據(jù)型樣分布比調(diào)整前的數(shù)據(jù)型樣分布更為平均,其中在數(shù)據(jù) 型樣類型的個數(shù)較多的情況下,數(shù)據(jù)型樣機率的平均值會趨近于零。另外,在步驟914的調(diào) 整之前,圖3左半部所示的問題數(shù)據(jù)型樣(即以虛線標示的數(shù)據(jù)型樣)原本具有相當大的 相對機率密度;在步驟914的調(diào)整之后,這些問題數(shù)據(jù)型樣的相對機率密度都降低了,如圖 3右半部所示。因此,與現(xiàn)有技術(shù)相比,在某些特定數(shù)據(jù)型樣特別容易造成錯誤(例如寫 入錯誤、讀取錯誤...等)的情況下,當使用者基于其使用習(xí)慣而不斷地寫入具有這些特定 數(shù)據(jù)型樣的數(shù)據(jù)時,本發(fā)明的方法以及相關(guān)的記憶裝置及其控制器能將存取數(shù)據(jù)的錯誤率 大幅地降低。
      依據(jù)本發(fā)明一實施例,尤其是該第一實施例的一特例,該控制器包括至少一線性 反饋平移緩存器(Linear Feedback Shift Register,LFSR),用于產(chǎn)生至少一隨機函數(shù)。例 如存儲器控制器110包括兩個線性反饋平移緩存器,分別設(shè)置于隨機函數(shù)發(fā)生器1144與 解隨機函數(shù)發(fā)生器1146中,其中隨機函數(shù)發(fā)生器1144與解隨機函數(shù)發(fā)生器1146中的每一個包括一線性反饋平移緩存器。依據(jù)本實施例,這兩個線性反饋平移緩存器中的每一個包 括至少一開關(guān),以構(gòu)成至少一可編程(Programmable)線性反饋平移緩存器,例如圖4A所示 的可編程線性反饋平移緩存器410。然而,這只是為了說明的目的而已,并非對本發(fā)明的限 制。依據(jù)本實施例的一變化例,隨機函數(shù)發(fā)生器1144與解隨機函數(shù)發(fā)生器1146也可共享 同一個可編程線性反饋平移緩存器。
      實際操作中,可編程線性反饋平移緩存器410包括多個加法器412-1、412_2、 412-3、與 412-4,多個緩存器 414-0、414-1、414-2、414-3、與 414-4,以及多個開關(guān) 416-1、 416-2、416-3、與 416-4。加法器 412-1、412_2、412_3、與 412-4 可為模加法器(modulo bidder)。請注意,緩存器414-0、414-1、414-2、414-3、與414-4在初始狀態(tài)下暫存一列數(shù)值 {0,1,0,1,0},分別標示于各個緩存器上。然而,這只是為了說明的目的而已,并非對本發(fā)明 的限制。依據(jù)本實施例的其它變化例,緩存器414-0、414-1、414-2、414-3、與414-4在初始 狀態(tài)下也可暫存別的數(shù)值。
      另外,可編程線性反饋平移緩存器410的每一開關(guān)設(shè)置在可編程線性反饋平移緩 存器410的一線性組合路徑。存儲器控制器110將至少一密鑰(Key)輸入至可編程線性反 饋平移緩存器410的開關(guān),以利用該密鑰來設(shè)定可編程線性反饋平移緩存器410的線性組 合路徑。依據(jù)本實施例,開關(guān)416-1、416-2、416-3、與416-4分別依據(jù)對應(yīng)于該密鑰的切換 信號31-1、51-2、51-3、與51-4來切換。當一開關(guān)416-n(n = 1、2、3、或4)所接收的切換信 號SW-n對應(yīng)于一開啟狀態(tài)時(例如切換信號SW-n為邏輯值1時,可記為“SW_n = 1 ”,則開 關(guān)416-n接通其所處的線性組合路徑,也就是從緩存器414-n的輸出端反饋至加法器412-n 的路徑;否則(即切換信號SW-n對應(yīng)于一關(guān)閉狀態(tài)時,例如切換信號SW-n為邏輯值0時, 可記為“SW-n = 0”),開關(guān)416-n斷開其所處的線性組合路徑。因此,通過改變輸入可編程 線性反饋平移緩存器410的密鑰,存儲器控制器110能重新設(shè)定可編程線性反饋平移緩存 器410的線性組合路徑,也即改變可編程線性反饋平移緩存器410的結(jié)構(gòu)。
      更詳細地說,通過改變輸入可編程線性反饋平移緩存器410的密鑰,存儲器控制 器110能重新設(shè)定可編程線性反饋平移緩存器410用于產(chǎn)生隨機函數(shù)的產(chǎn)生方程式。舉例 來說,如圖4B的可編程線性反饋平移緩存器420,其隨機函數(shù)產(chǎn)生方程式為G1,而其所產(chǎn) 生的隨機函數(shù)序列 Sl 為 “0000101011101100011111001101001”。若緩存器 424-0,424-1, 424-2、424-3、與4M-4在初始狀態(tài)下所暫存的列數(shù)值為{0,1,0,0,0},則可編程線性反饋 平移緩存器420會自隨機函數(shù)序列Sl的第1個位(“0”)開始循序輸出隨機函數(shù)序列Sl 的各個位。當該隨機函數(shù)序列Sl已全部被輸出(最后一個位“1”),則可編程線性反饋平移 緩存器420會接著輸出隨機函數(shù)序列Sl的第1個位(“0”)。如此周而復(fù)始地輸出隨機函 數(shù)序列Sl。緩存器424-0 424-4的初始狀態(tài)會決定可編程線性反饋平移緩存器420從隨 機函數(shù)序列Sl中第幾個位開始輸出該序列。例如,若緩存器424-0 424-4的初始狀態(tài)為 {1,1,0,1,0},則可編程線性反饋平移緩存器420會自隨機函數(shù)序列Sl的第5個位(“1”) 開始循序輸出隨機函數(shù)序列Sl的各個位。在另一實施例中,如圖4C的可編程線性反饋平 移緩存器430,其隨機函數(shù)產(chǎn)生方程式為G2,而其所產(chǎn)生的隨機函數(shù)序列S2為“0000110101 001000101111101100111”。
      如此一來,通過輸入不同的可編程線性反饋平移緩存器410的密鑰,存儲器控制 器110能使可編程線性反饋平移緩存器410產(chǎn)生不同的隨機函數(shù)。從而增加虛擬亂碼位序列1145的亂度(entropy),使得調(diào)整后的數(shù)據(jù)型樣分布更為平均。請注意到,圖4A、4B、4C 中所示的緩存器、加法器、開關(guān)等相關(guān)組件個數(shù)僅為說明之用。使用者可依據(jù)其需要增加或 減少緩存器與加法器個數(shù)。
      在另一實施例中,為了增加虛擬亂碼位序列1145的亂度,存儲器控制器110可 以改變密鑰使可編程線性反饋平移緩存器410以多個不同的隨機函數(shù)對編碼數(shù)據(jù)位序列 1143中的一頁數(shù)據(jù)進行處理。例如,編碼數(shù)據(jù)位序列1143中的一頁數(shù)據(jù)有512千字節(jié) (kilobyte,即IOM字節(jié)),存儲器控制器110以第1密鑰設(shè)定可編程線性反饋平移緩存器 410,使隨機函數(shù)發(fā)生器1144以隨機函數(shù)序列Sl處理編碼數(shù)據(jù)位序列1143中的該頁數(shù)據(jù) 的第1 31位,接著存儲器控制器110以第2密鑰設(shè)定可編程線性反饋平移緩存器410, 使隨機函數(shù)發(fā)生器1144以隨機函數(shù)序列S2處理編碼數(shù)據(jù)位序列1143中的該頁數(shù)據(jù)的第 32 62位,依此類推。如此一來虛擬亂碼位序列1145的亂度即可增加。
      依據(jù)本實施例,可編程線性反饋平移緩存器410可應(yīng)用于圖1所示的隨機函數(shù)發(fā) 生器1144或解隨機函數(shù)發(fā)生器1146。例如當標號400代表隨機函數(shù)發(fā)生器1144時,位序 列402與408分別代表編碼數(shù)據(jù)位序列1143與虛擬亂碼位序列1145。又例如當標號400 代表解隨機函數(shù)發(fā)生器1146時,位序列402與408分別代表虛擬亂碼位序列1145’與復(fù)原 數(shù)據(jù)位序列1147。然而,這只是為了說明的目的而已,并非對本發(fā)明的限制。依據(jù)本實施例 的一變化例(例如接續(xù)步驟914所述的變化例),在隨機函數(shù)發(fā)生器1144設(shè)置于控制邏輯 114之外的情況下,可編程線性反饋平移緩存器410代表隨機函數(shù)發(fā)生器1144,其中位序列 402與408分別代表編碼數(shù)據(jù)位序列1143與虛擬亂碼位序列1145,而加法器405則用于注 入該第一隨機函數(shù)的序列并據(jù)以調(diào)整編碼數(shù)據(jù)位序列1143。其中,加法器405可為模加法 器(modulo 2 adder)。依據(jù)本實施例的另一變化例(例如接續(xù)步驟918所述的變化例), 在解隨機函數(shù)發(fā)生器1146設(shè)置于控制邏輯114之外的情況下,可編程線性反饋平移緩存器 410代表解隨機函數(shù)發(fā)生器1146,其中位序列402與408分別代表虛擬亂碼位序列1145’ 與復(fù)原數(shù)據(jù)位序列1147,而加法器405則用于注入該第二隨機函數(shù)的序列并據(jù)以調(diào)整虛擬 亂碼位序列1145,。
      依據(jù)本實施例的另一變化例,可編程線性反饋平移緩存器410可通過程序代碼 112C中的軟件模塊來實現(xiàn),而存儲器控制器110利用密鑰改變由程序代碼112C的軟件模塊 所實現(xiàn)的可編程線性反饋平移緩存器410的隨機函數(shù)產(chǎn)生方程式。其中加法器405仍設(shè)置 于控制邏輯114之內(nèi),用于注入該第一隨機函數(shù)的序列或該第二隨機函數(shù)的序列,并據(jù)以 調(diào)整位序列402。依據(jù)本變化例或其它變化例,隨機函數(shù)發(fā)生器1144的至少一部分可通過 執(zhí)行程序代碼112C的微處理器112來實施;類似地,解隨機函數(shù)發(fā)生器1146的至少一部分 也可通過執(zhí)行程序代碼112C的微處理器112來實施。
      依據(jù)本實施例,該密鑰的產(chǎn)生方法定義于程序代碼112C,故通過微處理器112執(zhí) 行程序代碼112C的存儲器控制器110可決定該密鑰。例如存儲器控制器110可決定該密 鑰為某一密鑰值,該密鑰值的二進制形式的數(shù)個位分別代表切換信號SW-n(n = 1、2、3、4) 的開啟/關(guān)閉狀態(tài),其中該密鑰值的這些位可為邏輯值1或0,分別代表開啟狀態(tài)與關(guān)閉狀 態(tài)。然而,這只是為了說明的目的而已,并非對本發(fā)明的限制。依據(jù)本實施例的一變化例, 該密鑰值為一預(yù)定值,其各個位分別代表預(yù)定的開啟/關(guān)閉狀態(tài)。請注意到,密鑰的位數(shù)可 依開關(guān)數(shù)而定。
      依據(jù)本實施例的另一變化例,該密鑰對應(yīng)于可編程線性反饋平移緩存器410的輸 入而變化。例如該密鑰包括至少一區(qū)塊地址或至少一頁地址,尤其是位序列402所代表的 數(shù)據(jù)的邏輯地址或其儲存在閃存120中的實體地址。當存儲器控制器110決定某一區(qū)塊地 址或頁地址作為該密鑰的一密鑰值時,該區(qū)塊地址或頁地址的二進制形式的數(shù)個位就能用 于實時設(shè)定可編程線性反饋平移緩存器410的線性組合路徑以決定其隨機函數(shù)產(chǎn)生方程 式。
      依據(jù)本實施例的另一變化例,該密鑰對應(yīng)于至少一區(qū)塊地址或至少一頁地址,尤 其是位序列402所代表的數(shù)據(jù)的地址。存儲器控制器110可依據(jù)一運算規(guī)則,來決定某一 區(qū)塊地址或頁地址所對應(yīng)的密鑰值,其中該密鑰值的數(shù)個位就能用于實時設(shè)定可編程線性 反饋平移緩存器410的線性組合路徑。例如,該運算規(guī)則可為,以該區(qū)塊地址或頁地址的奇 數(shù)位(或偶數(shù)位)為所對應(yīng)的密鑰值,或者,以該區(qū)塊地址或頁地址的一部分為所對應(yīng)的密 鑰值等。
      依據(jù)本實施例的另一變化例,該密鑰對應(yīng)于至少一區(qū)塊地址或至少一頁地址,尤 其是位序列402所代表的數(shù)據(jù)的邏輯地址或其儲存在閃存120的實體地址。存儲器控制器 110可依據(jù)一查找表(Look-up Table),來查找某一區(qū)塊地址或頁地址所對應(yīng)的密鑰值,其 中該密鑰值的數(shù)個位就能用于實時設(shè)定可編程線性反饋平移緩存器410的線性組合路徑。
      圖5為依據(jù)本發(fā)明一第二實施例的一種記憶裝置200的示意圖,其中本實施例為 第一實施例的變化例。如圖5所示,上述的控制邏輯114被代換為控制邏輯214,其中除了 圖1所示的原屬控制邏輯114的各個組件之外,控制邏輯214還包括一密鑰產(chǎn)生器2140。 由于上述的架構(gòu)上的改變,該控制器在本實施例中改稱為存儲器控制器210。
      請注意,本實施例的密鑰產(chǎn)生器2140可用于取代前述的各個實施例/變化例當中 對該密鑰的產(chǎn)生機制,尤其是用于取代程序代碼112C所定義的該密鑰的產(chǎn)生方法,其中該 密鑰的產(chǎn)生方法仍可比照前述的各個實施例/變化例。例如密鑰產(chǎn)生器2140可通過利用 上述的查找表來產(chǎn)生該密鑰的一列密鑰值。
      圖6為圖5所示的密鑰產(chǎn)生器2140在一實施例中所采用的查找表,其中該查找 表的左半部可代表上述的至少一區(qū)塊地址或至少一頁地址,而該查找表的右半部則代表該 密鑰的密鑰值。然而,這只是為了說明的目的而已,并非對本發(fā)明的限制。依據(jù)本實施例 的一變化例,密鑰產(chǎn)生器2140可依據(jù)該查找表或另一查找表,來設(shè)定緩存器414-0、414-1、 414-2、414-3、與414-4在初始狀態(tài)或其它狀態(tài)下所暫存的一列數(shù)值。
      依據(jù)本實施例的另一變化例,在隨機函數(shù)發(fā)生器1144與解隨機函數(shù)發(fā)生器1146 中的每一個包括一第一可編程線性反饋平移緩存器(其實施方式例如圖4A所示的可編程 線性反饋平移緩存器410)的情況下,存儲器控制器110利用一第二可編程線性反饋平移 緩存器(其實施方式例如圖4A所示的可編程線性反饋平移緩存器410)作為密鑰產(chǎn)生器 2140,其中密鑰產(chǎn)生器2140所產(chǎn)生的該密鑰被輸入至該第一可編程線性反饋平移緩存器。 請注意,本變化例的密鑰產(chǎn)生器2140內(nèi)的一個或多個線性組合路徑可依據(jù)預(yù)設(shè)路徑安排, 直接以導(dǎo)線導(dǎo)通,故不需要設(shè)置上述的開關(guān)416-n。第二可編程線性反饋平移緩存器的數(shù)個 緩存器的初始狀態(tài)可對應(yīng)于至少一區(qū)塊地址或至少一頁地址,尤其是位序列402所代表的 數(shù)據(jù)的邏輯地址或其儲存在閃存120的實體地址,以增加其亂度。此外,第二可編程線性反 饋平移緩存器也需以類似于圖4A所示的可編程線性反饋平移緩存器410的形式實現(xiàn)。本變化例與前述的各個實施例/變化例相似之處不再重復(fù)贅述。
      依據(jù)本實施例的另一變化例,在隨機函數(shù)發(fā)生器1144與解隨機函數(shù)發(fā)生器1146 共享同一個第一可編程線性反饋平移緩存器的情況下,存儲器控制器110利用該第二可編 程線性反饋平移緩存器作為密鑰產(chǎn)生器2140,其中密鑰產(chǎn)生器2140所產(chǎn)生的該密鑰被輸 入至該第一可編程線性反饋平移緩存器。本變化例與前述的各個實施例/變化例類似之處 不再重復(fù)贅述。
      以上所述僅為本發(fā)明的較佳實施例,凡依本發(fā)明申請專利范圍所做的均等變化與 修飾,皆應(yīng)屬本發(fā)明的涵蓋范圍。
      權(quán)利要求
      1.一種針對一閃存的控制器所存取的數(shù)據(jù)來進行數(shù)據(jù)型樣管理的方法,其特征在于, 所述方法包括在所述控制器接收到一寫入命令時,產(chǎn)生一第一隨機函數(shù),其中所述寫入命令用于指 示所述控制器將所述數(shù)據(jù)寫入所述閃存;以及依據(jù)所述第一隨機函數(shù)的序列來逐位地調(diào)整所述數(shù)據(jù)的多個位以產(chǎn)生一虛擬亂碼位 序列,并將所述虛擬亂碼位序列寫入所述閃存以代表所述數(shù)據(jù),由此調(diào)整所述數(shù)據(jù)的數(shù)據(jù) 型樣分布。
      2.根據(jù)權(quán)利要求1所述的針對一閃存的控制器所存取的數(shù)據(jù)來進行數(shù)據(jù)型樣管理的 方法,其特征在于,其中調(diào)整后的數(shù)據(jù)型樣分布比調(diào)整前的數(shù)據(jù)型樣分布更為平均。
      3.根據(jù)權(quán)利要求2所述的針對一閃存的控制器所存取的數(shù)據(jù)來進行數(shù)據(jù)型樣管理的 方法,其特征在于,還包括在所述控制器接收到一讀取命令時,產(chǎn)生一第二隨機函數(shù),其中所述讀取命令用于指 示所述控制器從所述閃存讀取所述數(shù)據(jù);以及依據(jù)所述第二隨機函數(shù)的序列來逐位地調(diào)整從所述閃存所讀取的所述虛擬亂碼位序 列,以重現(xiàn)所述數(shù)據(jù),由此復(fù)原所述數(shù)據(jù)的原始數(shù)據(jù)型樣分布。
      4.根據(jù)權(quán)利要求1所述的針對一閃存的控制器所存取的數(shù)據(jù)來進行數(shù)據(jù)型樣管理的 方法,其特征在于,還包括在所述控制器中提供至少一線性反饋平移緩存器;以及利用所述至少一線性反饋平移緩存器來產(chǎn)生至少一隨機函數(shù),其中所述至少一隨機函 數(shù)包括所述第一隨機函數(shù)。
      5.根據(jù)權(quán)利要求4所述的針對一閃存的控制器所存取的數(shù)據(jù)來進行數(shù)據(jù)型樣管理的 方法,其特征在于,還包括在至少一線性反饋平移緩存器中提供至少一開關(guān),以構(gòu)成至少一可編程線性反饋平移 緩存器,其中所述可編程線性反饋平移緩存器的每一開關(guān)設(shè)置在所述可編程線性反饋平移 緩存器的一線性組合路徑;以及將至少一密鑰輸入至所述可編程線性反饋平移緩存器的開關(guān),以利用所述至少一密鑰 來設(shè)定所述可編程線性反饋平移緩存器的線性組合路徑。
      6.根據(jù)權(quán)利要求5所述的針對一閃存的控制器所存取的數(shù)據(jù)來進行數(shù)據(jù)型樣管理的 方法,其特征在于,其中所述密鑰對應(yīng)于所述可編程線性反饋平移緩存器的輸入而變化。
      7.根據(jù)權(quán)利要求6所述的針對一閃存的控制器所存取的數(shù)據(jù)來進行數(shù)據(jù)型樣管理的 方法,其特征在于,其中所述密鑰包括至少一區(qū)塊地址或至少一頁地址;或所述密鑰對應(yīng)于 至少一區(qū)塊地址或至少一頁地址。
      8.根據(jù)權(quán)利要求5所述的針對一閃存的控制器所存取的數(shù)據(jù)來進行數(shù)據(jù)型樣管理的 方法,其特征在于,其中所述至少一可編程線性反饋平移緩存器包括一第一可編程線性反 饋平移緩存器與一第二可編程線性反饋平移緩存器;以及所述方法還包括利用所述第二可編程線性反饋平移緩存器作為一密鑰產(chǎn)生器;以及將所述密鑰產(chǎn)生器所產(chǎn)生的密鑰輸入至所述第一可編程線性反饋平移緩存器。
      9.根據(jù)權(quán)利要求1所述的針對一閃存的控制器所存取的數(shù)據(jù)來進行數(shù)據(jù)型樣管理的 方法,其特征在于,還包括進行錯誤更正碼編碼,以產(chǎn)生編碼數(shù)據(jù)作為所述數(shù)據(jù),其中所述編碼數(shù)據(jù)包括使用者 數(shù)據(jù)、內(nèi)部奇偶校驗碼、與外部奇偶校驗碼。
      10.根據(jù)權(quán)利要求1所述的針對一閃存的控制器所存取的數(shù)據(jù)來進行數(shù)據(jù)型樣管理的 方法,其特征在于,還包括在所述控制器中提供至少一隨機函數(shù)發(fā)生器;利用所述至少一隨機函數(shù)發(fā)生器依據(jù)至少一隨機函數(shù)產(chǎn)生方程式產(chǎn)生所述虛擬亂碼 位序列;以及將至少一密鑰輸入至所述至少一隨機函數(shù)發(fā)生器,以設(shè)定所述至少一隨機函數(shù)發(fā)生器 的所述隨機函數(shù)產(chǎn)生方程式。
      11.根據(jù)權(quán)利要求10所述的針對一閃存的控制器所存取的數(shù)據(jù)來進行數(shù)據(jù)型樣管理 的方法,其特征在于,其中所述隨機函數(shù)發(fā)生器還包括至少一線性反饋平移緩存器,且所述 控制器利用至少一密鑰改變所述至少一線性反饋平移緩存器的結(jié)構(gòu)以設(shè)定所述隨機函數(shù) 產(chǎn)生方程式。
      12.根據(jù)權(quán)利要求10所述的針對一閃存的控制器所存取的數(shù)據(jù)來進行數(shù)據(jù)型樣管理 的方法,其特征在于,其中所述隨機函數(shù)發(fā)生器依據(jù)多個隨機函數(shù)產(chǎn)生方程式對一頁數(shù)據(jù) 進行處理以產(chǎn)生所述虛擬亂碼位序列。
      13.—種記憶裝置,其特征在于,包括一閃存,所述閃存包括多個區(qū)塊;以及一控制器,用于存取所述閃存以及管理所述多個區(qū)塊,并且還針對所述控制器本身所 存取的數(shù)據(jù)來進行數(shù)據(jù)型樣管理,其中所述控制器包括一隨機函數(shù)發(fā)生器,用于在所述控制器接收到一寫入命令時,產(chǎn)生一第一隨機函數(shù),其 中所述寫入命令用于指示所述控制器將所述數(shù)據(jù)寫入所述閃存;其中所述控制器依據(jù)所述第一隨機函數(shù)的序列來逐位地調(diào)整所述數(shù)據(jù)的多個位以產(chǎn) 生一虛擬亂碼位序列,并將所述虛擬亂碼位序列寫入所述閃存以代表所述數(shù)據(jù),由此調(diào)整 所述數(shù)據(jù)的數(shù)據(jù)型樣分布。
      14.一種記憶裝置的控制器,其特征在于,所述控制器用于存取一閃存,所述閃存包括 多個區(qū)塊,所述控制器包括一只讀存儲器,用于儲存一程序代碼;一微處理器,用于執(zhí)行所述程序代碼以控制對所述閃存的存取以及管理所述多個區(qū) 塊;以及一隨機函數(shù)發(fā)生器,用于在所述控制器接收到一寫入命令時,產(chǎn)生一第一隨機函數(shù),其 中所述寫入命令用于指示所述控制器將數(shù)據(jù)寫入所述閃存;其中所述控制器依據(jù)所述第一隨機函數(shù)的序列來逐位地調(diào)整所述數(shù)據(jù)的多個位以產(chǎn) 生一虛擬亂碼位序列,并將所述虛擬亂碼位序列寫入所述閃存以代表所述數(shù)據(jù),由此調(diào)整 所述數(shù)據(jù)的數(shù)據(jù)型樣分布。
      15.根據(jù)權(quán)利要求14所述的記憶裝置的控制器,其特征在于,其中所述控制器調(diào)整后 的數(shù)據(jù)型樣分布比調(diào)整前的數(shù)據(jù)型樣分布更為平均。
      16.根據(jù)權(quán)利要求15所述的記憶裝置的控制器,其特征在于,還包括一解隨機函數(shù)發(fā)生器,用于在所述控制器接收到一讀取命令時,產(chǎn)生一第二隨機函數(shù),其中所述讀取命令用于指示所述控制器從所述閃存讀取所述數(shù)據(jù);其中所述控制器依據(jù)所述第二隨機函數(shù)的序列來逐位地調(diào)整從所述閃存所讀取的所 述虛擬亂碼位序列,以重現(xiàn)所述數(shù)據(jù),由此復(fù)原所述數(shù)據(jù)的原始數(shù)據(jù)型樣分布。
      17.根據(jù)權(quán)利要求14所述的記憶裝置的控制器,其特征在于,其中所述控制器包括至 少一線性反饋平移緩存器,用于產(chǎn)生至少一隨機函數(shù);以及所述隨機函數(shù)發(fā)生器包括所述 至少一線性反饋平移緩存器中的一個。
      18.根據(jù)權(quán)利要求17所述的記憶裝置的控制器,其特征在于,其中所述至少一線性反 饋平移緩存器包括至少一開關(guān),以構(gòu)成至少一可編程線性反饋平移緩存器;所述可編程線 性反饋平移緩存器的每一開關(guān)設(shè)置在所述可編程線性反饋平移緩存器的一線性組合路徑; 以及所述控制器將至少一密鑰輸入至所述可編程線性反饋平移緩存器的開關(guān),以利用所述 至少一密鑰來設(shè)定所述可編程線性反饋平移緩存器的線性組合路徑。
      19.根據(jù)權(quán)利要求18所述的記憶裝置的控制器,其特征在于,其中所述密鑰對應(yīng)于所 述可編程線性反饋平移緩存器的輸入而變化。
      20.根據(jù)權(quán)利要求19所述的記憶裝置的控制器,其特征在于,其中所述密鑰包括至少 一區(qū)塊地址或至少一頁地址;或所述密鑰對應(yīng)于至少一區(qū)塊地址或至少一頁地址。
      21.根據(jù)權(quán)利要求18所述的記憶裝置的控制器,其特征在于,其中所述至少一可編程 線性反饋平移緩存器包括一第一可編程線性反饋平移緩存器與一第二可編程線性反饋平 移緩存器;以及所述控制器利用所述第二可編程線性反饋平移緩存器作為一密鑰產(chǎn)生器, 其中所述密鑰產(chǎn)生器所產(chǎn)生的密鑰被輸入至所述第一可編程線性反饋平移緩存器。
      22.根據(jù)權(quán)利要求14所述的記憶裝置的控制器,其特征在于,其中所述控制器還包括一錯誤更正碼編碼器,用于進行錯誤更正碼編碼,以產(chǎn)生編碼數(shù)據(jù)作為所述數(shù)據(jù),其中所述編碼數(shù)據(jù)包括使用者數(shù)據(jù)、內(nèi)部奇偶校驗碼、與外部奇偶校驗碼。
      23.根據(jù)權(quán)利要求14所述的記憶裝置的控制器,其特征在于,其中所述隨機函數(shù)發(fā)生 器的至少一部分通過執(zhí)行所述程序代碼的所述微處理器來實施。
      24.根據(jù)權(quán)利要求14所述的記憶裝置的控制器,其特征在于,其中所述控制器利用所 述隨機函數(shù)發(fā)生器依據(jù)一隨機函數(shù)產(chǎn)生方程式產(chǎn)生所述虛擬亂碼位序列;以及所述控制器 將至少一密鑰輸入至所述隨機函數(shù)發(fā)生器,以設(shè)定所述隨機函數(shù)發(fā)生器的所述隨機函數(shù)產(chǎn) 生方程式。
      25.根據(jù)權(quán)利要求M所述的記憶裝置的控制器,其特征在于,其中所述隨機函數(shù)發(fā)生 器還包括至少一線性反饋平移緩存器,且所述控制器利用至少一密鑰改變所述至少一線性 反饋平移緩存器的結(jié)構(gòu)以設(shè)定所述隨機函數(shù)產(chǎn)生方程式。
      26.根據(jù)權(quán)利要求M所述的記憶裝置的控制器,其特征在于,其中所述隨機函數(shù)發(fā)生 器依據(jù)多個隨機函數(shù)產(chǎn)生方程式對一頁數(shù)據(jù)進行處理以產(chǎn)生所述虛擬亂碼位序列。
      全文摘要
      本發(fā)明提供一種針對一閃存的控制器所存取的數(shù)據(jù)來進行數(shù)據(jù)型樣管理的方法以及相關(guān)的記憶裝置及其控制器,所述方法包括在所述控制器接收到一寫入命令時,產(chǎn)生一第一隨機函數(shù),其中所述寫入命令用于指示所述控制器將所述數(shù)據(jù)寫入所述閃存;以及依據(jù)所述第一隨機函數(shù)的序列來逐位地調(diào)整所述數(shù)據(jù)的多個位以產(chǎn)生一虛擬亂碼位序列,并將所述虛擬亂碼位序列寫入所述閃存以代表所述數(shù)據(jù),由此調(diào)整所述數(shù)據(jù)的數(shù)據(jù)型樣分布。本發(fā)明還提供相關(guān)的記憶裝置及其控制器,其中所述控制器包括一只讀存儲器;一微處理器;以及一隨機函數(shù)發(fā)生器。所述控制器能進行數(shù)據(jù)型樣管理。
      文檔編號G06F11/10GK102034542SQ200910179749
      公開日2011年4月27日 申請日期2009年9月25日 優(yōu)先權(quán)日2009年9月25日
      發(fā)明者葉國良, 林璟輝, 許根富 申請人:慧榮科技股份有限公司
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點贊!
      1