TWI747007B - 可配置安全記憶區域 - Google Patents

可配置安全記憶區域 Download PDF

Info

Publication number
TWI747007B
TWI747007B TW108125502A TW108125502A TWI747007B TW I747007 B TWI747007 B TW I747007B TW 108125502 A TW108125502 A TW 108125502A TW 108125502 A TW108125502 A TW 108125502A TW I747007 B TWI747007 B TW I747007B
Authority
TW
Taiwan
Prior art keywords
circuit
memory area
secure
secure memory
configuration
Prior art date
Application number
TW108125502A
Other languages
English (en)
Other versions
TW202028989A (zh
Inventor
陳耕暉
張坤龍
張欽鴻
王裕謙
Original Assignee
旺宏電子股份有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 旺宏電子股份有限公司 filed Critical 旺宏電子股份有限公司
Publication of TW202028989A publication Critical patent/TW202028989A/zh
Application granted granted Critical
Publication of TWI747007B publication Critical patent/TWI747007B/zh

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • G06F3/0688Non-volatile semiconductor memory arrays
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/062Securing storage systems
    • G06F3/0622Securing storage systems in relation to access
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/78Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/14Protection against unauthorised use of memory or access to memory
    • G06F12/1408Protection against unauthorised use of memory or access to memory by using cryptography
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/14Protection against unauthorised use of memory or access to memory
    • G06F12/1416Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights
    • G06F12/1425Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights the protection being physical, e.g. cell, word, block
    • G06F12/1441Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights the protection being physical, e.g. cell, word, block for a range
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/14Protection against unauthorised use of memory or access to memory
    • G06F12/1458Protection against unauthorised use of memory or access to memory by checking the subject access rights
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/71Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
    • G06F21/74Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information operating in dual or compartmented mode, i.e. at least one secure mode
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0629Configuration or reconfiguration of storage systems
    • G06F3/0637Permissions

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Human Computer Interaction (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Mathematical Physics (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Storage Device Security (AREA)

Abstract

記憶裝置包含記憶陣列和安全電路,記憶陣列具有I/O路徑,以及耦接到記憶陣列之I/O路徑之安全電路。記憶裝置包含控制電路,以回應於配置資料而使用安全電路。記憶裝置包含配置儲存器,以儲存控制電路可存取之配置資料,以指定記憶陣列中安全記憶區域之位置和大小。回應於外部命令及配置資料,控制電路可被配置來回應於在外部命令中所指定之操作上而使用安全電路對安全記憶區域內進行存取,或者回應於安全記憶區域外之存取而不使用安全電路。

Description

可配置安全記憶區域
本發明是有關於一種高密度記憶裝置,且特別是有關於一種包含安全區域之記憶裝置。
記憶體(包含快閃記憶體)可以包含受安全措施保護之安全區域以及不受安全措施保護之一般區域。由於各種應用可能對於安全區域之大小和一般區域之大小具有不同要求,使得包含安全區域及一般區域之記憶體可能適用或不適用。換句話說,相較於記憶體之製造方式,記憶體之安全區域可能無法滿足應用對於更大安全區域或更大一般區域之要求。
因此亟需提供具有彈性安全區域和彈性一般區域之記憶體。
記憶裝置包含有一記憶陣列和一安全電路,記憶陣列具有一I/O路徑,安全電路係耦接至記憶陣列之I/O路徑。記憶裝置包含控制電路,以回應於配置資料而使用安全電路。記憶裝置包含配置儲存器,以儲存可由控制電路存取之配置資料,以據以指定記憶陣列中安全記憶區域之位置及大小。回應於外部命令及配置資料,控制電路 可以被配置來回應於對安全記憶區域內之存取而於外部命令中所指定之操作上使用安全電路,或者回應於安全記憶區域外之存取而不使用安全電路。
安全電路包含有驗證電路,用於驗證對安全記憶區域之存取。安全電路被配置來在安全記憶區域中執行解密操作或加密操作之前使用驗證電路。安全電路被配置來在安全記憶區域中執行抹除操作之前使用驗證電路。
外部命令中指定之操作可以包含編程操作,且安全電路包含有解密電路,於編程操作中,對I/O路徑中之資料進行解密,以將解密資料編程至安全記憶區域。
外部命令中指定之操作可以包含讀取操作,且安全電路包含有加密電路,於讀取操作中,對來自安全記憶區域之I/O路徑中之資料進行加密,以提供加密資料至記憶裝置外之主機。
由配置資料所指定之安全記憶區域之大小可表示以記憶陣列之一部分用作為安全記憶區域。
控制電路被配置為擷取配置儲存器中所儲存之配置資料。外部命令指定位址資訊以用於外部命令中所指定之操作,且控制電路被配置以使用位址資訊及配置資料以決定對安全記憶區域內之存取。
本發明係提供一種用於操作記憶裝置之方法,記憶裝置包含記憶陣列及安全電路,記憶陣列具有一I/O路徑,安全電路係耦接到記憶陣列之I/O路徑。
此方法包含回應於配置資料而使用安全電路;將配置資料儲存在控制電路可存取之配置儲存器中,以指定記憶陣列中安全記憶區域之位置及大小。此方法可以包含:回應於外部命令及配置資料,回應於安全記憶區域內之存取而於外部命令中所指定之操作使用安全電路,或者回應於安全記憶區域外之存取而不使用安全電路。
此方法包含驗證對安全記憶區域之存取。此方法包含在安全記憶區域中執行解密操作或加密操作之前,執行驗證安全記憶區域之存取的步驟。此方法包含於安全記憶區域中執行抹除操作之前,執行驗證安全記憶區域之存取的步驟。
外部命令中所指定之操作可以包含編程操作。此方法可以包含:於編程操作中,對I/O路徑中之資料進行解密,以將解密資料編程至安全記憶區域。外部命令中所指定之操作可以包含讀取操作。此方法可以包含:於讀取操作中,對來自安全記憶區域之I/O路徑中之資料進行加密,及將加密資料提供給記憶裝置外之主機。
由配置資料所指定之安全記憶區域之大小可表示以記憶陣列之一部分用作為安全記憶區域。
此方法包含擷取配置儲存器中所儲存之配置資料。外部命令指定位址資訊以用於外部命令中所指定之操作。此方法包含使用位址資訊和配置資料以決定安全記憶區域內之存取。
通過閱讀以下附圖,詳細說明和請求項,可以看出本發明的其他方面和優點。
為了對本發明之上述及其他方面有更佳的瞭解,下文特舉實施例,並配合所附圖式詳細說明如下:
100:系統
110:主機
112:外部命令
114:驗證代碼
116:位址
115:密碼
260:記憶陣列
270:安全電路
200:記憶裝置
201:輸入/輸出埠
210:控制電路
211、212、215、245、265、266、275、285:信號線
220:配置儲存器
230:偏壓佈置供應電壓
240:位址產生器
241:匯流排
260:記憶陣列
261:安全記憶區域
262:外部於安全記憶區域
270:安全電路
270A:驗證電路
270D:解密電路
270E:加密電路
280:匯流排介面
290:輸入/輸出電路
295:輸入/輸出信號線
310~390:流程步驟
410~440:安全記憶區域之配置範例
第1圖繪示系統示意圖,該系統包含主機及耦接至主機之記憶裝置。
第2圖繪示依照一實施例之積體電路記憶裝置之簡易晶片方塊圖。
第3圖繪示用於操作參照第2圖所述之記憶裝置之簡易流程圖。
第4圖繪示安全記憶區域之配置之示意圖。
以下描述通常將參考具體的結構實施例和方法。應當理解,並無意圖將技術限制於具體公開的實施例和方法,而是可以使用其他特徵、元件、方法和實施例來實踐此技術。較佳實施例係被描述以說明本技術,而不是限制請求項所限定之範圍。本領域具有通常知識者將認識到下面的描述的各種等同變化。
第1圖繪示依照本技術實施例之系統示意圖,此系統包含一主機和耦接到主機之一記憶裝置。如第1圖所示,系統100包含主機110及記憶裝置200,記憶裝置200經由信號線耦接至主機110,信號線係用以攜帶外部命令112、資料以及位址。主機110可以向記憶裝置200發出外部命令112。外部命令112可以指定一操作,例如讀取、編程或抹除操作。對於一編程操作,記憶裝置200可以從主機110接收加密資料以及一驗證代碼114。對於一 讀取操作,記憶裝置200可以向主機110提供加密資料和一驗證代碼。主機110可以提供位址116至記憶裝置200以進行相應之操作。
主機110可以包含密碼(cipher)115,例如高級加密標準(Advanced Encryption Standard,AES),用以使用第一秘密金鑰(first secret key)進行加密或解密。主機110可以使用具有第一秘密金鑰之AES將資料(亦即,密碼學中之明文)加密成加密資料(亦即,密碼學中之密文)。AES定義了許多要在明文上執行之密碼轉換。密碼轉換在許多加密周期(round)中重複。周期數量係由第一秘密金鑰之金鑰長度所決定,例如,128位金鑰為10個周期,192位金鑰為12個周期,256位金鑰為14個周期。
主機110可以使用不同於第一秘密金鑰的一第二秘密金鑰在加密資料(亦即,密文)上而不是在明文上,以產生驗證代碼。主機110可以將驗證代碼傳送到記憶裝置200。
記憶裝置200包含一安全電路270與一記憶陣列260,記憶陣列260包含繪示於第2圖之安全記憶區域261。對於記憶陣列260之安全記憶區域261中的操作,安全電路270首先使用從主機110接收之具有第二秘密金鑰之驗證代碼,來驗證對記憶裝置200中之安全記憶區域261的存取。倘若驗證通過,則安全電路270可因此對應地針對編程操作執行解密操作、或針對安全記憶區域261中之讀取操作執行加密操作。
外部命令112係指定位址資訊以用於由外部命令112所指定之操作。記憶裝置200包含有一配置儲存器,此儲存器儲存配置資料以指定安全記憶區域261之位置和大小。安全電路270係使用位址資訊及配置資料來對安全記憶區域261之存取進行驗證。
對於來自主機110之加密資料的編程操作,可以通過安全電路270對來自主機110之加密資料執行解密操作。然後可以在記憶陣列260之安全記憶區域261(第2圖)中對解密資料進行編程。對於儲存在記憶裝置200之安全記憶區域261中之解密資料的讀取操作,可以由安全電路270對解密資料執行加密操作。加密資料接著可被提供給記憶裝置200外之主機110。
第2圖係繪示依據本技術實施例的積體電路記憶裝置200之簡化晶片方塊圖。記憶裝置200包含具有I/O路徑之記憶陣列260、及經由信號線265耦接至安全記憶區域261之I/O路徑之安全電路270。記憶裝置200包含一控制電路210,控制電路210係回應於外部命令112和配置資料,以回應於外部命令112中指定的操作而使用(invoke)安全電路270對記憶陣列260的安全記憶區域261內進行存取,或者回應於對外部於安全記憶區域262之存取而不使用安全電路270。如第2圖所示,控制電路210係經由信號線212耦接至安全電路270。
外部命令112係經由輸入/輸出信號線295而被接收。輸入資料係由記憶裝置200上之輸入/輸出埠201經由輸入/輸出信號線295提供至輸入/輸出電路290,或者,輸入資料係由記憶裝置200內部或外部之其他資料源經由輸入/輸出信號線295提供至輸入/輸出電路290,其他資料源可以是通用處理器或專用應用電路、或由提供記憶陣列260所支持之系統單晶片系統功能的模組的組合。輸出資料係由輸入/輸出電路290提供給輸入/輸出信號線295。
匯流排介面280經由信號線211耦接至控制電路210、經由信號線285耦接至輸入/輸出電路290、經由信號線266耦接至記憶陣列260、及 經由信號線275耦接至安全電路270。I/O路徑包含耦接到記憶陣列260及安全電路270之信號線265、及耦接至安全電路270和匯流排介面280之信號線275。
記憶裝置200包含有配置儲存器220,以儲存可由控制電路210存取之配置資料以指定安全記憶區域261之位置和大小。配置儲存器220經由信號線215耦接至控制電路210。配置儲存器220可包含暫存器,以儲存控制電路210可存取之配置資料。
安全電路270包含驗證電路270A,以驗證對安全記憶區域261的存取。安全電路270被配置為在安全記憶區域261中執行解密操作或加密操作之前使用驗證電路270A。安全電路270亦被配置為在安全記憶區域261中執行抹除操作之前使用驗證電路270A。
外部命令112中所指定的操作可包含一編程操作,而安全電路270包含解密電路270D,以針對編程操作來對I/O路徑中的資料解密,以便將解密資料編程至安全記憶區域261中。
外部命令112中所指定的操作可以包含一讀取操作,而安全電路270係包含加密電路270E,以針對讀取操作來對來自安全記憶區域261之I/O路徑中的資料進行加密,藉以將加密資料提供給位於記憶裝置200外之主機110。
由配置資料所指定之安全記憶區域261的位置可以指示安全記憶區域261之邊界。由配置資料所指定之安全記憶區域261之大小可表示以記憶陣列260之一部分用作為安全記憶區域261,如參考第4圖之進一步描述。
控制電路210係被配置來擷取在配置儲存器220中所儲存之配置資料。外部命令112係指定位址資訊以用於由外部命令112中所指定之操作,而控制電路210係被配置來使用位址資訊和配置資料以決定對安全記憶區域261內進行存取。
位址係被提供在匯流排241上送至位址產生器240,位址產生器240可包含字元線解碼器和位元線解碼器。位址產生器240係耦接至信號線245,例如字元線和位元線,用於從記憶陣列260中之記憶單元讀取和編程資料。
在第2圖所示之實施例中,使用偏壓佈置狀態機(bias arrangement state machine)之控制電路210係控制偏壓佈置供應電壓230之應用,例如讀取電壓和編程電壓。控制電路210可包含用於編程、讀取和抹除記憶單元之操作模式。控制電路210可以使用本領域周知之專用邏輯電路來實現。在一些替代實施例中,控制電路210包含通用處理器,其可以在同一積體電路上實現,其執行計算機程序以控制裝置之操作。在其他替代實施例中,專用邏輯電路和通用處理器的組合可用於實現控制電路210。
第3圖繪示用於操作如參考第2圖所述之記憶裝置200之流程的簡化流程圖。記憶裝置200包含記憶一記憶陣列260與一安全電路270,記憶陣列260係具有I/O路徑,而安全電路270則耦接至記憶陣列260之I/O路徑。
在步驟310,在記憶裝置200上接收一外部命令112。此外部命令112係包含用於寫入記憶裝置200或從記憶裝置200讀取之位址資訊。
在步驟320,此方法決定位址資訊是否指示記憶裝置200之安全記憶區域261內之存取、或是記憶裝置200之外部於安全記憶區域262之存 取。此決定之步驟,可以使用外部命令112中所指定之操作的位址資訊、及配置儲存器(220,第2圖)中所儲存之配置資料來進行。配置資料可由控制電路210存取。控制電路210可從配置儲存器220擷取配置資料。配置資料係指定記憶裝置200之安全記憶區域261之位置和大小。
如果位址資訊係指示對記憶裝置200之外部於安全記憶區域262的存取,則流程進行到步驟330,並執行對外部於安全記憶區域(262,第2圖)之編程、讀取或抹除操作。通過耦接匯流排介面(280,第2圖)和外部於安全記憶區域之間之信號線(266,第2圖),來傳送資料於匯流排介面(280,第2圖)和外部於安全記憶區域之間,以使此操作繞過安全電路270。如果位址資訊係指示記憶裝置200的安全記憶區域261內之存取,則流程進行到步驟340。
在步驟330,不使用安全電路270,且可以在記憶裝置200中的外部於安全記憶區域(262,第2圖)執行外部命令112中所指定之讀取、編程或抹除操作。
在步驟340,使用安全電路270在外部命令112中所指定之讀取、編程或抹除操作。此流程接著進行到步驟350。
在步驟350,在安全記憶區域261中執行解密操作、加密操作或抹除操作之前,對安全記憶區域261之存取執行驗證。在步驟360,若驗證通過,流程前進到步驟370、380或390,以根據外部命令112中所指定之操作分別執行讀取、編程或抹除操作。如果未通過驗證,則流程結束。
在步驟370,對於在外部命令112中所指定之編程操作,使用安全電路270之解密電路(270D,第2圖),對耦接至安全電路270的I/O路徑中 之資料執行解密操作。在步驟375,根據外部命令112中所指定之位址資訊,將解密資料編程在記憶裝置200中之安全記憶區域(261,第2圖)。
在步驟380,對於在外部命令112中所指定之讀取操作,對來自記憶裝置200中之安全記憶區域(261,第2圖)的I/O路徑中的資料執行加密操作。在步驟385,接著,將加密資料提供給於記憶裝置200外之主機110。
在步驟390,在安全記憶區域261中執行抹除操作。例如,可以對4kB(千位元組(kilobyte))、32kB和64kB的區塊執行抹除操作。
第4圖繪示根據本技術實施例之安全記憶區域261之配置示意圖。儲存在配置儲存器(220,第2圖)中的配置資料可以指定安全記憶區域261之位置和大小。由儲存在配置儲存器(220,第2圖)中之配置資料所指定之安全記憶區域261的大小可以表示出,記憶陣列的一部分係被配置作為安全記憶區域261。
在本技術的一個實施例中,配置資料可以包含一組配置位元。如第4圖的範例所示,此組配置位元包含具有四個二進制值2'b00、2'b01、2'b10、和2'b11之2個配置位元。這四個二進制值可以相關於記憶陣列的安全記憶區域261的各別部份,記憶陣列包含安全記憶區域261及外部於安全記憶區域262。例如,二進制值2'b00、2'b01、2'b10和2'b11可分別對應於0/4、1/4、3/4和4/4的部分。
在此範例中,配置位元的二進制值2'b00係指定記憶陣列沒有安全記憶區域(410)。配置位元的二進制值2'b01係指定記憶陣列的1/4被配置為安全記憶區域(420)、或者記憶陣列的3/4係被配置為外部於安全記憶區域。而配置位元的二進制值2'b10係指定記憶陣列的3/4被配置為安全記憶區 域(430)、或者記憶陣列的1/4係被配置為外部於安全記憶區域。配置位元的二進制值2'b11係指定所有記憶陣列均被配置為安全記憶區域(440)。
在本技術之替代實施例中,此組配置位元亦可包含多於2個配置位元,例如,3或4位元,以將安全記憶區域之大小更加精細(granularity)地指定為記憶陣列的一部分。例如,包含3個配置位元的一組配置位元可以具有8個二進制值3'b000、3'b001、3'b010、3'b011、3'b100、3'b101、3'b110和3'b111,分別對應於0/8、1/8、2/8、3/8、5/8、6/8、7/8和8/8的部分,表示將記憶陣列的一部分配置為安全記憶區域。
儲存在配置儲存器中的配置資料所指定之位置可以指示安全記憶區域之邊界。例如,記憶陣列可以具有從基底位址0開始的位址。邊界可以指示安全記憶區域之起始位址,其可以是記憶陣列的基底位址0或高於基底位址的位址。
在一個實施例中,可以在工廠的測試模式中指定儲存在配置儲存器220中之配置資料,以指定安全記憶區域261之位置和大小。在替代實施例中,當記憶裝置於市場端售出後時,儲存在配置儲存器220中之配置資料可以藉由使用用戶模式中的用戶命令來指定,藉以指定安全記憶區域261之位置和大小。在記憶裝置於市場端售出後,測試模式中所指定的安全記憶區域261之位置和大小,可藉由用戶模式中所指定的安全記憶區域261之位置和大小來覆蓋。
綜上所述,雖然本發明已以實施例揭露如上,然其並非用以限定本發明。本發明所屬技術領域中具有通常知識者,在不脫離本發明之精神和區域內,當可作各種之更動與潤飾。因此,本發明之 保護區域當視後附之申請專利區域所界定者為準。
310~390:流程步驟

Claims (20)

  1. 一種記憶裝置,包含:一記憶陣列,具有一I/O路徑;一安全電路,耦接到該記憶陣列之該I/O路徑;一控制電路,回應於一配置資料,使用該安全電路;以及一配置儲存器,儲存該控制電路可存取之該配置資料,該配置資料係藉由使用一用戶模式中的一用戶命令以指定該記憶陣列中一安全記憶區域之位置和大小;其中該配置資料包含複數個配置位元,該些配置位元包含複數個二進制值,該安全記憶區域的大小對應於該些二進制值而決定。
  2. 如申請專利範圍第1項所述之記憶裝置,其中該控制電路回應於一外部命令及該配置資料,被配置為回應於該安全記憶區域內之存取而使用該安全電路於該外部命令中所指定之操作上。
  3. 如申請專利範圍第1項所述之記憶裝置,其中該控制電路回應於一外部命令及該配置資料,被配置為回應於對該安全記憶區域外之存取而不使用該安全電路。
  4. 如申請專利範圍第1項所述之記憶裝置,其中該安全電路包含一驗證電路以驗證對該安全記憶區域之存取。
  5. 如申請專利範圍第4項所述之記憶裝置,其中該安全電路被配置為在該安全記憶區域中執行一解密操作或一加密操作之前使用該驗證電路。
  6. 如申請專利範圍第4項所述之記憶裝置,其中該安全電路被配置為在該安全記憶區域中執行一抹除操作之前使用該驗證電路。
  7. 如申請專利範圍第2項所述之記憶裝置,其中該外部命令中所指定之操作包含一編程操作,且該安全電路包含一解密電路,在該編程操作中,該解密電路對該I/O路徑之資料解密,以將解密資料編程至該安全記憶區域中。
  8. 如申請專利範圍第2項所述之記憶裝置,其中該外部命令所指定之操作包含一讀取操作,且該安全電路包含有一加密電路,於該讀取操作中,該加密電路對來自該安全記憶區域之該I/O路徑之資料進行加密,以將加密資料提供給該記憶裝置外部之一主機。
  9. 如申請專利範圍第1項所述之記憶裝置,其中:由該配置資料所指定之該安全記憶區域之大小可表示以該記憶陣列之一部分用作為該安全記憶區域;以及該控制電路被配置為擷取該配置儲存器中所儲存之該配置資料。
  10. 如申請專利範圍第2項所述之記憶裝置,其中該外部命令指定位址資訊以用於該外部命令中所指定之操作,且該控 制電路被配置以使用該位址資訊及該配置資料以決定該安全記憶區域內之存取。
  11. 一種用於操作一記憶裝置之方法,該記憶裝置包含一記憶陣列及一安全電路,該記憶陣列具有一I/O路徑,該安全電路係耦接到該記憶陣列之該I/O路徑,該方法包含:回應於該配置資料,使用該安全電路;以及將該配置資料儲存在該控制電路可存取之一配置儲存器中,該配置資料係藉由使用一用戶模式中的一用戶命令以指定該記憶陣列中之一安全記憶區域之位置及大小;其中該配置資料包含複數個配置位元,該些配置位元包含複數個二進制值,該安全記憶區域的大小對應於該些二進制值而決定。
  12. 如申請專利範圍第11項所述之方法,該方法更包含:回應於一外部命令及該配置資料,回應於該安全記憶區域內之存取而於該外部命令中所指定之操作使用該安全電路。
  13. 如申請專利範圍第11項所述之方法,該方法更包含:回應於一外部命令及該配置資料,回應於對該安全記憶區域外之存取而不使用該安全電路。
  14. 如申請專利範圍第11項所述之方法,該方法更包含: 驗證對該安全記憶區域之存取。
  15. 如申請專利範圍第14項所述之方法,該方法更包含:在該安全記憶區域中執行一解密操作或一加密操作之前,執行驗證該安全記憶區域之存取的步驟。
  16. 如申請專利範圍第14項所述之方法,更包含:在該安全記憶區域中執行一抹除操作之前,執行驗證該安全記憶區域之存取的步驟。
  17. 如申請專利範圍第12項所述之方法,其中該外部命令中所指定之操作包含一編程操作,該方法包含:於該編程操作中,對該I/O路徑中之資料進行解密;及將解密資料編程至該安全記憶區域中。
  18. 如申請專利範圍第12項所述之方法,其中該外部命令中所指定之操作包含一讀取操作,該方法包含:於該讀取操作中,對來自該安全記憶區域之該I/O路徑中之資料進行加密;及將加密資料提供給該記憶裝置外部之一主機。
  19. 如申請專利範圍第11項所述之方法,其中由該配置資料所指定之該安全記憶區域之大小可表示以該記憶陣列之一部分用作為該安全記憶區域;以及該方法更包括:擷取該配置儲存器中所儲存之該配置資料。
  20. 如申請專利範圍第12項所述之方法,其中該外部命令指定位址資訊以用於該外部命令中所指定之操作,該方法包含:使用該位址資訊及該配置資料以決定該安全記憶區域內之存取。
TW108125502A 2019-01-28 2019-07-18 可配置安全記憶區域 TWI747007B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US16/259,268 2019-01-28
US16/259,268 US10809925B2 (en) 2019-01-28 2019-01-28 Configurable security memory region

Publications (2)

Publication Number Publication Date
TW202028989A TW202028989A (zh) 2020-08-01
TWI747007B true TWI747007B (zh) 2021-11-21

Family

ID=71732464

Family Applications (1)

Application Number Title Priority Date Filing Date
TW108125502A TWI747007B (zh) 2019-01-28 2019-07-18 可配置安全記憶區域

Country Status (3)

Country Link
US (1) US10809925B2 (zh)
CN (1) CN111488630B (zh)
TW (1) TWI747007B (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11264063B2 (en) * 2019-08-21 2022-03-01 Macronix International Co., Ltd. Memory device having security command decoder and security logic circuitry performing encryption/decryption commands from a requesting host
CN110704320A (zh) * 2019-09-27 2020-01-17 京东数字科技控股有限公司 控件操作方法及装置
US11455102B2 (en) 2020-03-09 2022-09-27 SK Hynix Inc. Computing system and operating method thereof
US11461021B2 (en) * 2020-03-09 2022-10-04 SK Hynix Inc. Computing system and operating method thereof
US11550494B2 (en) 2021-02-03 2023-01-10 Macronix International Co., Ltd. Method to support high reliability multiple times program non-volatile configuration setting
US11960769B2 (en) * 2022-02-14 2024-04-16 Macronix International Co., Ltd. High performance secure read in secure memory providing a continuous output of encrypted information and specific context

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW200731108A (en) * 2005-09-14 2007-08-16 Sandisk Corp Secure yet flexible system architecture for secure devices with flash mass storage memory
US20070247905A1 (en) * 2006-03-27 2007-10-25 Rudelic John C Method and apparatus to protect nonvolatile memory from viruses
US8473754B2 (en) * 2006-02-22 2013-06-25 Virginia Tech Intellectual Properties, Inc. Hardware-facilitated secure software execution environment
TW201512839A (zh) * 2013-08-09 2015-04-01 Apple Inc 用於週邊介面控制器之嵌入式加密/安全記憶體管理單元
TW201717030A (zh) * 2015-07-20 2017-05-16 英特爾股份有限公司 用於記憶體位址範圍的支持可組態安全性級別
US9720700B1 (en) * 2016-10-05 2017-08-01 Apricorn Secure storage devices, with physical input device, for secure configuration in a configuration-ready mode
US20180196956A1 (en) * 2017-01-10 2018-07-12 Renesas Electronics America Inc. Security architecture and method

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8929139B2 (en) * 2011-04-13 2015-01-06 Macronix International Co., Ltd. Method and apparatus for leakage suppression in flash memory
TWI516921B (zh) * 2013-10-02 2016-01-11 群聯電子股份有限公司 資料處理方法、記憶體儲存裝置與記憶體控制電路單元

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW200731108A (en) * 2005-09-14 2007-08-16 Sandisk Corp Secure yet flexible system architecture for secure devices with flash mass storage memory
US8473754B2 (en) * 2006-02-22 2013-06-25 Virginia Tech Intellectual Properties, Inc. Hardware-facilitated secure software execution environment
US20070247905A1 (en) * 2006-03-27 2007-10-25 Rudelic John C Method and apparatus to protect nonvolatile memory from viruses
TW201512839A (zh) * 2013-08-09 2015-04-01 Apple Inc 用於週邊介面控制器之嵌入式加密/安全記憶體管理單元
TW201717030A (zh) * 2015-07-20 2017-05-16 英特爾股份有限公司 用於記憶體位址範圍的支持可組態安全性級別
US9720700B1 (en) * 2016-10-05 2017-08-01 Apricorn Secure storage devices, with physical input device, for secure configuration in a configuration-ready mode
US20180196956A1 (en) * 2017-01-10 2018-07-12 Renesas Electronics America Inc. Security architecture and method

Also Published As

Publication number Publication date
CN111488630A (zh) 2020-08-04
US20200241768A1 (en) 2020-07-30
TW202028989A (zh) 2020-08-01
US10809925B2 (en) 2020-10-20
CN111488630B (zh) 2023-07-04

Similar Documents

Publication Publication Date Title
TWI747007B (zh) 可配置安全記憶區域
US11347898B2 (en) Data protection device and method and storage controller
US9483664B2 (en) Address dependent data encryption
KR101155697B1 (ko) 비휘발성 메모리에 데이터를 기록하고 이로부터 데이터를 판독하기 위한 데이터 화이트닝
CN111131130B (zh) 密钥管理方法及系统
US20190384938A1 (en) Storage apparatus and method for address scrambling
US11416417B2 (en) Method and apparatus to generate zero content over garbage data when encryption parameters are changed
CN114450918A (zh) 具有带有可单独编程的安全访问特征的区域的非易失性存储器装置以及相关的方法和系统
CN112887077B (zh) 一种ssd主控芯片随机缓存保密方法和电路
KR101496975B1 (ko) 고체 상태 디스크 및 이에 대한 입출력방법
TWI761896B (zh) 用於執行安全命令的記憶體裝置及方法
CN103493058A (zh) 数据记录装置、主机装置以及处理数据记录装置的方法
CN213876729U (zh) 一种ssd主控芯片随机缓存保密电路
US10372627B2 (en) Method to generate pattern data over garbage data when encryption parameters are changed
US11050569B2 (en) Security memory scheme
KR20180059217A (ko) 메모리 데이터 보안 처리 장치 및 방법
JP2000029790A (ja) データセキュリティシステム
TW202403773A (zh) 半導體裝置及用以管理其之安全操作的系統與方法
US20160202314A1 (en) Test circuit and method of semiconductor device