亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

隨機化電路、存儲器控制單元、存儲器、通信系統(tǒng)及方法

文檔序號:6769256閱讀:181來源:國知局
專利名稱:隨機化電路、存儲器控制單元、存儲器、通信系統(tǒng)及方法
技術領域
本發(fā)明屬于數字技術領域,尤其涉及一種隨機化電路、存儲器控制單元、存儲器、 通信系統(tǒng)及方法。
背景技術
目前信息存儲、數字通信等領域使用的隨機化電路,其基本結構一般是一個線性移位反饋寄存器(LFSR,Linear Feedback Shift Register),其作用是產生的一組類似隨機噪聲統(tǒng)計特性的偽隨機碼(PN,Pseudo-random Number)序列。圖1是現(xiàn)有的PN碼生成器的原理圖,PN碼生成器為基于η級LFSR。 表示各寄存器(i為0到n_l之間的整數), % = 0或1。初始時刻,a,的值稱為PN碼生成器(或隨機化)電路的初始值(或種子), 初始值必須保證不全為0。Ci是反饋線,0表示斷開,1表示連通。Ci的值決定的LFSR的結構,若f (χ) zxh^xH+L+CiX+l是本源多項式,則LFSR輸出的序列周期最大,為2n-l。這樣的輸出序列就是PN碼。在實際應用中,隨機化電路利用其產生的偽隨機碼序列,將所要存儲的數據打亂后,存入存儲單元,以提高存儲的穩(wěn)定性,或者將偽隨機碼序列加入到通信系統(tǒng)所傳輸的信息之中,對所傳輸的信息進行加密,以提高數據在傳輸過程中的安全性。另外還可以用于數字通信的誤碼率檢測、數據序列加擾、擴頻通信等方面。在存儲器領域的應用方面,為了減小TLC(Triple-Level Cell,三層單元)和某些低制程的MLC(Multi-LeVel Cell,雙層單元)閃存在寫入數據(尤其是用戶寫入全零數據) 時,數據在存儲介質中翻轉出錯的可能性。控制器廠商采取了一種隨機化(randomizer)技術,即將用戶寫入的數據序列,按照一定的算法(隨機化)打散成一組隨機數系列,當用戶讀取數據時,再將打散后的隨機數序列,按同樣的算法(解隨機化)解析出用戶需要的真實數據。圖2是現(xiàn)有技術中的一種存儲器控制器的工作原理圖。用戶寫入存儲器的數據以扇區(qū)(sector)為單位,在例行的ECC編碼單元213之前,還要經過由隨機化用PN碼生成器 212構成的隨機化電路。隨機化電路把數據打亂后,存入該存儲器的存儲單元22。同樣地, 用戶讀數據時,使用相應的解隨機算法把存儲單元22內的數據還原,以便能讓用戶得到正確的數據。以NAND Flash為例,目前的NAND Flash主控制器做隨機化/解隨機化處理是以扇區(qū)為單位的,一般為512字節(jié)或IOM字節(jié)。NAND Flash的一個物理頁(Page)有多個扇區(qū),一個物理塊(Block)有多個物理頁。現(xiàn)行的隨機化技術對于同一個扇區(qū)之內的數據,有一定的“0”,“1”游程平衡性和數據分布隨機性。但對于不同的扇區(qū),如果用戶數據相同,即使通過隨機化技術的處理,存儲在NAND Flash存儲單元中的數據也相同。也就是說,如果一個物理塊或物理頁中,用戶輸入的數據相同,那么隨機化后的數據是以扇區(qū)為單位的循環(huán)數。在NAND Flash的同一個物理塊內部的每個物理頁之間,或是同一個物理頁內部,這種扇區(qū)間的相同數據,容易引起NAND Flash存儲單元之間的電平干擾,數據就可能出錯。
在通信領域的應用方面,圖3示出了現(xiàn)有的通信系統(tǒng)的工作原理。其中,發(fā)送端的數據與隨機化電路輸出的PN碼異或后,作為實際發(fā)送數據由發(fā)送單元31發(fā)送。接收單元 32接收到隨機化之后的數據,使用與發(fā)送端完全相同PN碼序列,就可以將原始數據恢復出來。這種方式的數據加密,實現(xiàn)簡單,有一定的加密能力。但是,還是有可能被破解。對于每個級數n,符合構造隨機化/解隨機化電路的本源多項式有限且較少,用戶可以人為地在接收端強制接收全0數據序列,通過檢查解隨機化電路處理后的數據的周期來確定η值, 再用這個η值對應的有限數目的本源多項式來嘗試。對于全0的輸入數據序列,具有同一種本源多項式結構的不同初始值產生的隨機序列是以2η-1為周期的循環(huán)數,排列的前后關系不變,只是起始的位置有變化。所以這樣可以試出隨機化/解隨機化電路的本源多項式結構和初始值,數據安全的保護性還有待提高。

發(fā)明內容
本發(fā)明實施例的目的在于提供一種隨機化電路,旨在解決現(xiàn)有技術中PN碼隨機化程度不高、無序性不夠等問題。本發(fā)明實施例是這樣實現(xiàn)的,一種隨機化電路,包括種子生成器,用于根據輸入的信息數據,在用戶寫入的數據序列或者待發(fā)送的數據序列隨機化或解隨機化操作開始之前,生成并輸出初始種子;PN碼生成器,用于根據所述種子生成器輸出的初始種子,對所述數據序列進行隨機化或解隨機化。本發(fā)明實施例的另一目的在于提供一種存儲器控制單元,所述存儲器控制單元包括控制器狀態(tài)機,用于向存儲器發(fā)送命令、地址、數據;ECC編碼單元,用于在寫數據時,生成用戶數據的糾錯碼冗余位;以及ECC解碼單元,用于在讀取數據時,檢查與糾正錯誤,所述存儲器控制單元還包括種子生成器,用于根據輸入的信息數據,在用戶寫入的數據序列隨機化或解隨機化操作開始之前,生成并輸出初始種子;隨機化用PN碼生成器,用于根據所述種子生成器輸出的初始種子,對所述數據序列進行隨機化,產生偽隨機碼序列;解隨機化用PN碼生成器,用于根據所述種子生成器輸出的初始種子,對所述偽隨機碼序列進行解隨機化,還原所述數據序列。本發(fā)明實施例的另一目的在于提供一種包含存儲器控制單元的存儲器,所述存儲器控制單元包括控制器狀態(tài)機,用于向存儲器發(fā)送命令、地址、數據;ECC編碼單元,用于在寫數據時,生成用戶數據的糾錯碼冗余位;以及ECC解碼單元,用于在讀取數據時,檢查與糾正錯誤,所述存儲器控制單元還包括種子生成器,用于根據輸入的信息數據,在用戶寫入的數據序列隨機化或解隨機化操作開始之前,生成并輸出初始種子;隨機化用PN碼生成器,用于根據所述種子生成器輸出的初始種子,對所述數據序列進行隨機化,產生偽隨機碼序列;解隨機化用PN碼生成器,用于根據所述種子生成器輸出的初始種子,對所述偽隨機碼序列進行解隨機化,還原所述數據序列。本發(fā)明實施例的另一目的在于提供一種通信系統(tǒng),包括發(fā)送單元以及接收單元, 所述通信系統(tǒng)還包括第一種子生成器,用于根據來自信息數據輸入端的信息數據,在有效數據序列隨機化操作開始之前,生成并輸出初始種子;隨機化用PN碼生成器,用于根據所述第一種子生成器輸出的初始種子,對所述有效數據序列進行隨機化,產生偽隨機碼序列;第二種子生成器,用于根據來自接收單元的信息數據,在所述偽隨機碼序列解隨機化操作開始之前,生成并輸出初始種子;解隨機化用PN碼生成器,用于根據所述第二種子生成器輸出的初始種子,對所述偽隨機碼序列進行解隨機化,還原所述有效數據序列。本發(fā)明實施例的另一目的在于提供一種隨機化方法,所述方法包括以下步驟根據輸入的信息數據而生成并輸出初始種子;將所述初始種子用于初始化隨機化操作以及解隨機化操作時的初始值。本發(fā)明實施例通過在隨機化電路中加入用于改變隨機化電路的初始值的種子生成器,提高了 PN碼的隨機化程度以及無序性,從而使包含該隨機化電路的存儲器的存儲的穩(wěn)定性以及包含該隨機化電路的通信系統(tǒng)的數據傳輸的安全性得以提高。


圖1是現(xiàn)有的PN碼生成器的工作原理圖;圖2是現(xiàn)有的存儲器控制單元的工作原理圖;圖3是現(xiàn)有的通信系統(tǒng)的工作原理圖;圖4是本發(fā)明實施例提供的隨機化電路的工作原理圖;圖5是本發(fā)明實施例提供的第一種種子生成器的工作原理圖;圖6是本發(fā)明實施例提供的第二種種子生成器的工作原理圖;圖7是本發(fā)明實施例提供的存儲器控制單元的工作原理圖;圖8是普通固定種子的存儲器控制單元隨機化1個物理頁后數據的自相關函數圖;圖9是本發(fā)明實施例的示例提供的存儲器控制單元隨機化1個物理頁后數據的自相關函數圖;圖10是本發(fā)明實施例提供的通訊系統(tǒng)的工作原理圖;圖11是本發(fā)明實施例提供的隨機化方法的實現(xiàn)流程圖。
具體實施例方式為了使本發(fā)明的目的、技術方案及優(yōu)點更加清楚明白,以下結合附圖及實施例,對本發(fā)明進行進一步詳細說明。應當理解,此處所描述的具體實施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。本發(fā)明實施例通過在隨機化電路中加入用于改變隨機化電路的初始值的種子生成器,提高了 PN碼的隨機化程度以及無序性,從而使包含該隨機化電路的存儲器的存儲的穩(wěn)定性以及包含該隨機化電路的通信系統(tǒng)的數據傳輸的安全性得以提高。本發(fā)明實施例是這樣實現(xiàn)的,一種隨機化電路,包括種子生成器,用于根據輸入的信息數據,在用戶寫入的數據序列或者待發(fā)送的數據序列隨機化或解隨機化操作開始之前,生成并輸出初始種子;PN碼生成器,用于根據所述種子生成器輸出的初始種子,對所述數據序列進行隨機化或解隨機化。實施例一圖4示出了本發(fā)明實施例提供的隨機化電路的工作原理,為了便于說明只示出了與本發(fā)明實施例相關的部分。其中,種子生成器12,用于根據輸入的信息數據,在用戶寫入的數據序列或者待發(fā)送的數據序列隨機化或解隨機化操作開始之前,生成并輸出初始種子,該初始種子為在PN 碼生成器11隨機化或解隨機化操作開始之前,由種子生成器12向PN碼生成器11提供的二進制數,該二進制數的長度與PN碼生成器的LFSR的級數η —致。也就是說,用種子生成器的輸出來初始化 。PN碼生成器11,用于根據種子生成器12輸出的初始種子,對數據序列進行隨機化或解隨機化。種子生成器12的算法固定時,其輸出值完全取決于輸入種子生成器12中的信息數據,該信息數據包括為以下信息中的任一種或多種用戶寫入或者待發(fā)送的數據中的部分數據、地址信息、頭信息、時間戳信息。在隨機化處理前,將信息數據輸入給種子生成器 12,種子生成器12內部將這些信息數據經過變換處理,得到一個隨機的輸出數。該隨機的輸出數將輸出到PN碼生成器11,作為PN碼生成器11隨機化或解隨機化的初值。在當PN 碼隨機化時,利用該初值可以使用戶寫入的數據序列或者待發(fā)送的數據序列具有更大的無序性;當PN碼解隨機化時,只需要按照與隨機化時同樣的算法,即可以還原出上述數據序列。輸入種子生成器12的信息數據一般是包含了本次傳輸信息的數據,這樣在解隨機化的過程中,可以輕易地獲取這些信息,從而正確無誤地還原出上述用戶寫入的數據序列或者發(fā)送的數據序列。通常,這些信息數據可以是用戶數據之前的報文頭,幀頭信息或數據地址,數據長度、部分數據、地址、時間戳等,這些信息數據不用被隨機化。這些輸入種子生成器12的信息數據,可以是1個字節(jié)或是多個字節(jié),但經過種子生成器12輸出的數據長度的必須與PN碼生成器11匹配,即輸出的數據長度與PN碼生成器的LFSR的級數η —致, 且輸出要盡可能的隨機。另外,輸入種子生成器12的信息數據,在整個傳輸過程中需要保持不變,不能被打亂,即不經過PN碼生成器進行隨機化過程。本發(fā)明實施例通過在隨機化電路加入種子生成器,利用種子生成器產生的種子作為PN碼生成器的初值,從而使最終產生的PN碼具有更大的隨機化程度以及無序性。實施例二
圖5示出了本發(fā)明實施例提供的第一種種子生成器的工作原理,為了便于說明只示出了與本發(fā)明實施例相關的部分。邏輯運算模塊41,用于對來自信息數據輸入端的信息數據以及寄存器42反饋的信息數據進行邏輯運算。寄存器42,用于對邏輯運算模塊41輸出的信息數據進行移位或異或、取反、加減等邏輯運算,并將經邏輯運算處理后的特定信息數據反饋給邏輯運算模塊41。輸出端開關S,用于在寄存器42反饋一定次數后導通,使邏輯運算模塊41向種子輸出端輸出所述初始種子。當輸出端開關S斷開時,寄存器42繼續(xù)對邏輯運算模塊41輸出的信息數據進行移位,并將移位后的信息數據向邏輯運算模塊41反饋,當輸出端開關S閉合時,邏輯運算模塊41向種子輸出端輸出初始種子。在實際工作中,邏輯運算模塊41利用常數K對輸入其中的信息數據Wtl做簡單按位邏輯運算操作或加法操作。與此同時,在輸出端開關S閉合前,寄存器42在對邏輯運算模塊41輸出的信息數據W(t)進行移位、取反等邏輯運算,也將其反饋到邏輯運算模塊41 中,使邏輯運算模塊41每經過一個周期后又對其輸出的結果進行邏輯或加法的操作,從而將輸出的信息數據處理得更加散亂,在經過幾個周期后,輸出端開關S閉合,經邏輯運算模塊41處理后的最終的信息數據作為初始種子向種子輸出端輸出。其中輸出端開關S閉合的條件可以人為地事先設定,如事先將開關設置為經過多個數據處理周期后閉合,如可以設定經過三個數據處理周期后或六個數據處理周期后閉合;也可以通過控制器根據邏輯運算模塊41輸出的信息數據的具體情況進行控制。該實施例中,常數K可以是預先設置在邏輯運算模塊中的,也可以是一賦值單元賦值后發(fā)送至邏輯運算模塊的,且常數K可以為任意常數。作為本發(fā)明實施例提供的種子生成器,利用移位以及簡單的邏輯運算等方法即可將原始的數據序列打散,相比于依靠純軟件生成種子的方法,具有運算周期短的優(yōu)點;相比于用硬件查表搜索的方法,具有占用資源少等特性。實施例三圖6示出了本發(fā)明實施例提供的第二種種子生成器的工作原理,為了便于說明只示出了與本發(fā)明實施例相關的部分。輸入數據處理模塊43,用于對輸入的信息數據進行移位和/或取反處理,并將處理后的信息數據向邏輯運算模塊41輸出。邏輯運算模塊41,用于對來自輸入數據處理模塊43的信息數據以及寄存器42反饋的信息數據進行邏輯運算。寄存器42,用于對邏輯運算模塊41輸出的特定信息數據進行移位或異或、取反、 加減等邏輯運算,并將經邏輯運算處理后的特定信息數據反饋給邏輯運算模塊41。輸出端開關S,用于在寄存器42反饋一定次數后導通,使邏輯運算模塊41向種子輸出端輸出所述初始種子。當輸出端開關S斷開時,寄存器42繼續(xù)對邏輯運算模塊41輸出的信息數據進行移位,并將移位后的信息數據向邏輯運算模塊41反饋,當輸出端開關S閉合時,邏輯運算模塊41向種子輸出端輸出作為初始種子的信息數據。
在實際工作中,種子生成器輸入一定的作為初始信息的信息數據Wtl,信息數據Wtl 可能只需要一個時鐘輸入,而種子生成器可能需要幾個時鐘周期處理,所以輸入數據處理模塊43自身可以做一些簡單的取反和/或循環(huán)移位等操作,使每個處理周期的信息數據 W(t)不同,但各時刻信息數據W(t)與初始時刻的信息數據Wtl相關。邏輯運算模塊41利用常數K對信息數據W(t)做簡單按位邏輯運算操作或加法操作。與此同時,在輸出端開關 S閉合前,寄存器42在對邏輯運算模塊41輸出的信息數據進行移位、取反等邏輯運算的同時,也將其反饋到邏輯運算模塊41中,使邏輯運算模塊41每經過一個周期后又對其輸出的結果進行邏輯或加法的運算,從而將輸出的信息數據處理得更加散亂,在經過幾個周期后, 輸出端開關S閉合,經邏輯運算模塊41最終處理后的信息數據向種子輸出端輸出。其中輸出端開關S閉合的條件可以人為地事先設定,如事先將開關設置為經過多個數據處理周期后閉合,如可以設定經過三個或六個數據處理周期后閉合;也可以通過控制器根據邏輯運算模塊41輸出的信息數據的具體情況進行控制。根據PN碼生成器的特點,種子生成器輸出的種子值不能為全0,所以在實際的種子生成器輸出前,需要判斷結果是否為全0,如果是全0,可以人為用一個固定的非0的二進制數替代,不影響實際使用效果。作為本發(fā)明實施例提供的種子生成器,利用移位以及簡單的邏輯運算等方法即可將原始數據打散,相比于依靠純軟件生成種子的方法,具有運算周期短的優(yōu)點;相比于用硬件查表搜索的方法,具有占用資源少等特性。實施例四圖7示出了本發(fā)明實施例提供的存儲器控制單元的工作原理,為了便于說明只示出了與本發(fā)明實施例相關的部分。存儲器控制單元包括控制器狀態(tài)機211,用于向存儲器發(fā)送命令、地址、數據;ECC編碼單元213,用于在寫數據時,生成用戶數據的糾錯碼冗余位;以及ECC解碼單元214,用于在讀取數據時,檢查與糾正錯誤;存儲器控制單元還包括種子生成器51,用于根據輸入的信息數據,在用戶寫入的數據序列隨機化或解隨機化操作開始之前,生成并輸出初始種子;隨機化用PN碼生成器212,用于根據種子生成器51輸出的初始種子,對數據序列進行隨機化,產生偽隨機碼序列;解隨機化用PN碼生成器215,用于根據種子生成器51輸出的初始種子,對偽隨機碼序列進行解隨機化,還原數據序列;初始種子為與隨機化用PN碼生成器212以及解隨機化用PN碼生成器215的級數
一致的二進制數。以NAND Flash作為本發(fā)明實施例的一個示例,該實施例中用于生成初始種子的信息數據為地址信息,該NAND Flash的頁大小為4096字節(jié),扇區(qū)大小為IOM字節(jié),每頁有4 個扇區(qū),用戶數據使用全零數據。用戶在對NAND Flash的每次物理層寫操作時,除了要準備數據之外,還要發(fā)送寫到NAND Flash中的地址,包括行(Row)地址和列(Column)地址;用戶在對NAND Flash的每次物理層寫操作時,也要發(fā)送相應的行、列地址。行地址包含NANDFlash的塊號、頁號信息,列地址則包含了每一個頁中扇區(qū)號信息。寫NAND Flash時,利用這些帶有頁、扇區(qū)信息的地址,本發(fā)明實施例提供的種子生成器51的輸入一個隨機的初始種子,供PN碼生成器使用。由于讀寫同一個存儲單元時,地址總是一致的,所以解隨機化時同樣是利用地址信息就可以將數據序列還原,因此采用地址信息作為生成初始種子的信息數據更簡單、更直接?;诒景l(fā)明實施例提供的PN碼生成器在每一個時鐘周期能夠處理的用戶數據有限的特性。目前一般的NAND Flash有8條數據線,稱作DQO DQ7。為了不影響數據傳輸速度,避免并串轉換等過程帶來的額外耗時,具體實施方案可以采用8路PN碼生成器的方法。8路PN碼生成器相互獨立,使用同樣的本源多項式,設置不同的是初始值,可以保證8 路PN碼生成器的輸出互相獨立,這8路PN碼生成器分別與DQO DQ7的數據異或,得到以字節(jié)為單位的隨機數序列。8路初值同時由一個種子生成器得到,即種子生成器接收一次地址信息,一次性計算出所有需要的種子。經過本實施用例隨機化的數據序列,字節(jié)與字節(jié)之間不相關,且每個字節(jié)內部的8比特數據也不相關。在實際運用中,可以保證不僅是單個NAND Flash頁內,而且在整個物理塊的所有頁之間,數據是非相關的,且不存在任何周期性。這種物理塊內的全部數據打散對NAND Flash數據讀寫的穩(wěn)定性和使用壽命的提升,要比僅僅以扇區(qū)為單位的打散更有效果。圖8 為普通固定種子的存儲器控制單元隨機化1個物理頁后數據的自相關函數圖,在用戶全零數據經隨機化電路后,這種方案每個扇區(qū)的隨機數都是相同的。在一個扇區(qū)內部,可以保證數據的非相關性,但這種方案有一個明顯的缺點整個NAND Flash頁中的所有數據具有周期性,且必然以扇區(qū)字節(jié)數目為周期;圖9為本發(fā)明實施例的示例提供的存儲器控制單元隨機化1個物理頁后數據的自相關函數圖,在用戶全零數據經隨機化電路后,4096字節(jié)數據有很好的非相關性,所有數據可以被認為是隨機數,無周期性循環(huán)。通過對比圖8和圖9, 可以直觀地看出本發(fā)明實施例提供的存儲器控制單元所能取得的效果。本發(fā)明實施例通過種子生成器為隨機化用提供的種子,使得不管用戶輸入的數據是什么,隨機化之后存入存儲單元的數據完全被打亂,不存在周期性的重復,這樣就可以將物理塊中所有存儲單元的不穩(wěn)定因素減至最小。實施例五本發(fā)明實施例提供的存儲器控制單元可以廣泛應用于NAND Flash等存儲器中。實施例六圖10示出了本發(fā)明實施例提供的通訊系統(tǒng)的工作原理,為了便于說明只示出了與本發(fā)明實施例相關的部分。其中,第一種子生成器61,用于根據來自信息數據輸入端的信息數據,在有效數據序列隨機化操作開始之前,生成并輸出初始種子;隨機化用PN碼生成器33,用于根據第一種子生成器61輸出的初始種子,對有效數據序列進行隨機化,產生偽隨機碼序列;第二種子生成器62,用于根據來自接收單元的信息數據,在偽隨機碼序列解隨機化操作開始之前,生成并輸出初始種子;第二種子生成器接收的信息數據與第一種子生成器接收的信息數據一致,兩者生成的種子值也一致。
解隨機化用PN碼生成器34,用于根據第二種子生成器62輸出的初始種子,對偽隨機碼序列進行解隨機化,還原有效數據序列;初始種子為與隨機化用PN碼生成器33以及解隨機化用PN碼生成器34的級數一致的二進制數。作為本發(fā)明實施例提供的通訊系統(tǒng),在現(xiàn)有的通訊系統(tǒng)中加入了種子生成器。在實際工作中,將不需要加密發(fā)送的信息數據作為第一種子生成器61的輸入,發(fā)送信息數據的同時,生成隨機化用PN碼生成器33的初始種子值。該信息數據包括為以下信息中的任一種或多種用戶待發(fā)送的數據中的部分數據、地址信息、頭信息、時間戳信息。以頭信息作為本發(fā)明實施例的一個示例,當頭信息發(fā)送完成時,種子值也生成出來,同時將生成后的種子值用于對有效數據序列進行隨機化,產生偽隨機碼序列。接收單元32接收到頭信息后, 使用第二種子生成器62直接生成解隨機化用PN碼生成器34的初始種子,隨機化用PN碼生成器34利用該初始種子對接收到的有效數據序列進行解密,從而向用戶端輸出還原后的數據序列。頭信息可以根據不同的傳輸協(xié)議來定義,相同的傳輸協(xié)議也可以根據需要自行定義的種子生成器而輸入不同的參數。只要保證定義的頭信息不參與加密,且發(fā)送單元發(fā)送的頭信息和接收單元接收的頭信息一致即可。本實施例提供的通信系統(tǒng)對通信數據進行加密/解密的方法,加密性較強。如果想破解加密數據,必須要知道3個方面的信息PN碼生成器的級數η和本源多項式結構、頭信息的定義以及種子生成器電路的算法。如上文所述,PN碼生成器的級數η和本源多項式結構,可能的情況有限,理論上可以破解。但種子生成器電路可以做得很高效很復雜,沒有破解的可能性。另外,如果不知道發(fā)送/接收的頭信息到底是如何定義的,即使知道種子生成器的算法,也無法破解加密后的數據。實施例七圖11示出了本發(fā)明實施例提供的隨機化方法的實現(xiàn)流程,為了便于說明只示出了與本發(fā)明實施例相關的部分。在步驟SllOl中,根據輸入的信息數據而輸出初始種子。在步驟S1102中,將所述初始種子用于初始化隨機化操作以及解隨機化操作時的初始值。在實際工作中,根據輸入的信息數據輸出初始種子,該信息數據包括為以下信息中的任一種或多種用戶發(fā)送的數據中的部分數據、地址信息、頭信息、時間戳信息。此外, 輸出的初始種子為級數與偽隨機碼的級數一致的二進制數。該初始種子用于在每組數據序列進行隨機化操作之前,初始化用于上述操作的初始值,從而產生無序性更大、穩(wěn)定性以及安全性更強的偽隨機碼;并在每組數據序列進行接隨機化操作之前,以同樣的形式初始化進行解隨機化操作所需的初始值,還原出用戶所需要的數據序列。本發(fā)明實施例具有如下有益效果1、通過在隨機化電路加入種子生成器,利用種子生成器產生的種子作為PN碼生成器的初值,對于一個η級PN碼生成器,本發(fā)明實施例突破其2η-1的周期限制,可以達到所有序列無周期性的特點,可顯現(xiàn)出真正的隨機特性。2、利用移位以及簡單的邏輯運算等方法即可將原始的數據序列打散,相比于依靠CN 102543182 A
純軟件生成種子的方法,具有運算周期短的優(yōu)點;相比于用硬件查表搜索的方法,具有占用資源少等特性。3、在存儲器領域,通過種子生成器為隨機化用提供的種子,使得不管用戶輸入的數據序列是什么,隨機化之后存入存儲單元的數據序列完全被打亂,不存在周期性的重復, 這樣就可以將物理塊中所有存儲單元的不穩(wěn)定因素減至最小。4、在通信系統(tǒng)領域,通過在隨機化電路中加入種子生成器,增加了破解加密數據所需要獲知的信息,提高了數據在傳輸過程中的安全性。以上所述僅為本發(fā)明的較佳實施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內所作的任何修改、等同替換和改進等,均應包含在本發(fā)明的保護范圍之內。
權利要求
1.一種隨機化電路,其特征在于,所述隨機化電路包括種子生成器,用于根據輸入的信息數據,在用戶寫入的數據序列或者待發(fā)送的數據序列隨機化或解隨機化操作開始之前,生成并輸出初始種子;PN碼生成器,用于根據所述種子生成器輸出的初始種子,對所述數據序列進行隨機化或解隨機化。
2.如權利要求1所述的隨機化電路,其特征在于,所述種子生成器包括 邏輯運算模塊、寄存器、輸出端開關S ;所述邏輯運算模塊,用于對來自信息數據輸入端的信息數據以及所述寄存器反饋的信息數據進行邏輯運算;所述寄存器,用于對所述邏輯運算模塊輸出的信息數據進行邏輯運算,并將經邏輯運算處理后的信息數據反饋給所述邏輯運算模塊;所述輸出端開關S,用于在所述寄存器反饋一定次數后導通,使所述邏輯運算模塊向種子輸出端輸出所述初始種子。
3.如權利要求2所述的隨機化電路,其特征在于,所述種子生成器還包括輸入數據處理模塊,用于對來自信息數據輸入端的信息數據進行移位和/或取反處理,并將處理后的信息數據向所述邏輯運算模塊輸出。
4.如權利要求1至3任一權利要求所述的隨機化電路,其特征在于,所述初始種子為與所述PN碼生成器的級數一致的二進制數。
5.如權利要求1至3任一權利要求所述的隨機化電路,其特征在于,所述信息數據為以下信息中的任一種或多種用戶寫入或者待發(fā)送的數據中的部分數據、地址信息、頭信息、時間戳信息。
6.一種存儲器控制單元,所述存儲器控制單元包括 控制器狀態(tài)機,用于向存儲器發(fā)送命令、地址、數據;ECC編碼單元,用于在寫數據時,生成用戶數據的糾錯碼冗余位; 以及ECC解碼單元,用于在讀取數據時,檢查與糾正錯誤, 其特征在于,所述存儲器控制單元還包括種子生成器,用于根據輸入的信息數據,在用戶寫入的數據序列隨機化或解隨機化操作開始之前,生成并輸出初始種子;隨機化用PN碼生成器,用于根據所述種子生成器輸出的初始種子,對所述數據序列進行隨機化,產生偽隨機碼序列;解隨機化用PN碼生成器,用于根據所述種子生成器輸出的初始種子,對所述偽隨機碼序列進行解隨機化,還原所述數據序列。
7.如權利要求6所述的存儲器控制單元,其特征在于,所述種子生成器包括 邏輯運算模塊、寄存器、輸出端開關S ;所述邏輯運算模塊,用于對來自信息數據輸入端的信息數據以及所述寄存器反饋的信息數據進行邏輯運算;所述寄存器,用于對所述邏輯運算模塊輸出的信息數據進行邏輯運算,并將經邏輯運算處理后的信息數據反饋給所述邏輯運算模塊;所述輸出端開關S,用于在所述寄存器反饋一定次數后導通,使所述邏輯運算模塊向種子輸出端輸出所述初始種子。
8.如權利要求7所述的存儲器控制單元,其特征在于,所述種子生成器還包括輸入數據處理模塊,用于對來自信息數據輸入端的信息數據進行移位和/或取反處理,并將處理后的信息數據向所述邏輯運算模塊輸出。
9.如權利要求6至8任一權利要求所述的存儲器控制單元,其特征在于,所述初始種子為與所述隨機化用PN碼生成器以及所述解隨機化用PN碼生成器的級數一致的二進制數。
10.如權利要求6至8任一權利要求所述的存儲器控制單元,其特征在于,所述信息數據為以下信息中的任一種或多種用戶寫入或者待發(fā)送的數據中的部分數據、地址信息、頭信息、時間戳信息。
11.一種包含了權利要求6至8任一項所述的存儲器控制單元的存儲器。
12.一種通信系統(tǒng),包括發(fā)送單元以及接收單元,其特征在于,所述通信系統(tǒng)還包括 第一種子生成器,用于根據來自信息數據輸入端的信息數據,在有效數據序列隨機化操作開始之前,生成并輸出初始種子;隨機化用PN碼生成器,用于根據所述第一種子生成器輸出的初始種子,對所述有效數據序列進行隨機化,產生偽隨機碼序列;第二種子生成器,用于根據來自所述接收單元的信息數據,在所述偽隨機碼序列解隨機化操作開始之前,生成并輸出初始種子;解隨機化用PN碼生成器,用于根據所述第二種子生成器輸出的初始種子,對所述偽隨機碼序列進行解隨機化,還原所述有效數據序列。
13.如權利要求12所述的通信系統(tǒng),其特征在于,所述第一種子生成器或第二種子生成器包括邏輯運算模塊、寄存器、輸出端開關S ;所述邏輯運算模塊,用于對來自信息數據輸入端的信息數據以及所述寄存器反饋的信息數據進行邏輯運算;所述寄存器,用于對所述邏輯運算模塊輸出的信息數據進行邏輯運算,并將經邏輯運算處理后的信息數據反饋給所述邏輯運算模塊;所述輸出端開關S,用于在所述寄存器反饋一定次數后導通,使所述邏輯運算模塊向種子輸出端輸出所述初始種子。
14.如權利要求13所述的通信系統(tǒng),其特征在于,所述第一種子生成器或第二種子生成器還包括輸入數據處理模塊,用于對來自信息數據輸入端的信息數據進行移位和/或取反處理,并將處理后的信息數據向所述邏輯運算模塊輸出。
15.如權利要求12至14任一權利要求所述的通信系統(tǒng),其特征在于,所述初始種子為與所述隨機化用PN碼生成器以及所述解隨機化用PN碼生成器的級數一致的二進制數。
16.如權利要求12至14任一權利要求所述的通信系統(tǒng),其特征在于,所述信息數據為以下信息中的任一種或多種用戶寫入或者待發(fā)送的數據中的部分數據、地址信息、頭信息、時間戳信息。
17.—種隨機化方法,其特征在于,所述方法包括以下步驟 根據輸入的信息數據而生成并輸出初始種子;將所述初始種子用于初始化隨機化操作以及解隨機化操作時的初始值。
18.如權利要求17所述的隨機化方法,其特征在于,所述初始種子為級數與偽隨機碼的級數一致的二進制數。
19.如權利要求17或18所述的隨機化方法,其特征在于,所述信息數據為以下信息中的任一種或多種用戶寫入或者待發(fā)送的數據中的部分數據、地址信息、頭信息、時間戳信息。
全文摘要
本發(fā)明適用于數字技術領域,提供了一種隨機化電路、存儲器控制單元、存儲器、通信系統(tǒng)及方法,所述隨機化電路包括PN碼生成器,所述隨機化電路還包括與所述PN碼生成器連接,用于為所述PN碼生成器提供初始種子的種子生成器。本發(fā)明通過在隨機化電路中加入用于改變隨機化電路的初始值的種子生成器,提高了PN碼的隨機化程度以及無序性,從而使包含該隨機化電路的存儲器的存儲的穩(wěn)定性以及包含該隨機化電路的通信系統(tǒng)的數據傳輸的安全性得以提高。
文檔編號G11C16/06GK102543182SQ20101058696
公開日2012年7月4日 申請日期2010年12月14日 優(yōu)先權日2010年12月14日
發(fā)明者李永斌, 阮航 申請人:炬力集成電路設計有限公司
網友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1