TWI656535B - Non-volatile memory writing method of system chip - Google Patents
Non-volatile memory writing method of system chip Download PDFInfo
- Publication number
- TWI656535B TWI656535B TW106135741A TW106135741A TWI656535B TW I656535 B TWI656535 B TW I656535B TW 106135741 A TW106135741 A TW 106135741A TW 106135741 A TW106135741 A TW 106135741A TW I656535 B TWI656535 B TW I656535B
- Authority
- TW
- Taiwan
- Prior art keywords
- volatile memory
- memory
- write
- system chip
- random number
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/14—Protection against unauthorised use of memory or access to memory
- G06F12/1416—Protection 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/1425—Protection 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/1441—Protection 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
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
一種系統晶片之非揮發性記憶體之寫入方法,包括:(a)輸入一寫入地址信號至一寫入地址判斷邏輯;(b)判斷該寫入地址信號係特定地址範圍之下界或上界,以產生一選擇碼信號;(c)將該選擇碼信號輸入至一多工器;(d)輸入一隨機數產生器所產生之隨機數信號至多工器;以及(f)輸入隨機數信號至非揮發性記憶體,以寫入該非揮發性記憶體之特定地址範圍。 A method for writing non-volatile memory of a system chip includes: (a) inputting a write address signal to a write address judgment logic; (b) judging that the write address signal is a lower limit or an upper limit of a specific address range To generate a selection code signal; (c) input the selection code signal to a multiplexer; (d) input a random number signal generated by a random number generator to the multiplexer; and (f) input a random number Signal to non-volatile memory to write to a specific address range of the non-volatile memory.
Description
本發明係關於一種系統晶片,特別係一種防止系統晶片之非揮發性記憶體被複製之方法。 The present invention relates to a system chip, and more particularly, to a method for preventing non-volatile memory of the system chip from being copied.
整合在系統單晶片(System on Chip;SoC)中的非揮發性記憶體可以儲存程式或資料,在斷電後該程式或資料仍能保存於非揮發性記憶體中,重新啟動電源後該系統單晶片仍能依照保存於非揮發性記憶體中的內容執行相同的功能。 The non-volatile memory integrated in the System on Chip (SoC) can store programs or data. After a power failure, the program or data can still be stored in the non-volatile memory. After restarting the power, the system A single chip can still perform the same function based on what is stored in non-volatile memory.
使用者可以使用相同型號的系統單晶片,依照不同需求開發儲存於非揮發性記憶體內的程式或資料。如果儲存於非揮發性記憶體內的程式或資料被他人取得,則他人可用相同的程式或資料複製相同功能的系統單晶片,這是使用者不願意發生的事。 Users can use the same type of system single chip to develop programs or data stored in non-volatile memory according to different needs. If the program or data stored in the non-volatile memory is obtained by others, others can use the same program or data to copy the system function chip with the same function, which is something the user is unwilling to happen.
目前現有許多保護、防止刺探或讀出儲存於非揮發性記憶體內的程式或資料之方法,僅止於對系統單晶片本身的物理防護;如果從程式或資料的原始來源竊取,則所有現有的物理防護都是無效的。其它方法,例如在晶片中加入實體不可複製功能(Physically Unclonable Function:PUF)的加密保護設計(例如專利公告號I488477),則需要特殊製程(例如專利公告號I571906)、或特殊設計(例如專利公開號201734879)。 At present, there are many methods for protecting, preventing the probing or reading of programs or data stored in non-volatile memory, which is limited to the physical protection of the system single chip itself. If the original source of the program or data is stolen, all existing Physical protection is ineffective. Other methods, such as adding a cryptographically protected design of a Physically Unclonable Function (PUF) to the chip (eg, Patent Bulletin No. I488477), require special processes (eg, Patent Bulletin No. I571906), or special designs (eg, Patent Publication No. 201734879).
鑒於上述習知技術的缺點,本發明提供一種嶄新的防止系統晶片之非揮發性記憶體被複製之方法以克服上述缺點。 In view of the shortcomings of the above-mentioned conventional techniques, the present invention provides a novel method for preventing non-volatile memory of a system chip from being copied to overcome the above shortcomings.
本發明係提出在系統單晶片中的非揮發性記憶體之特定地址範圍,強迫限制寫入且只能寫入隨機數之方法。因此,不同系統單晶片會因為該特定地址範圍的資料不同,而有物理本質上的差異,形成無法完全被複製的絕對性的物理性障礙。 The invention proposes a method for forcibly restricting writing and only writing random numbers in a specific address range of non-volatile memory in a system single chip. Therefore, different system single chips will have physical differences due to the different data in the specific address range, forming an absolute physical obstacle that cannot be completely copied.
上述非揮發性記憶體之寫入方法係由本發明之非揮發性記憶體控制器來完成,該控制器可由晶片中的邏輯電路來實現,且必須被設計為完全無法被程式控制。該控制器可以自動偵測寫入地址是否在特定地址範圍,若是落在範圍內,則自動選用隨機數產生器之輸出作為寫入資料,若是落在範圍外,則可與一般的非揮發性記憶體控制器相同,選用系統匯流排的寫入資料信號作為寫入資料。 The writing method of the non-volatile memory is completed by the non-volatile memory controller of the present invention. The controller can be implemented by a logic circuit in a chip, and must be designed to be completely uncontrollable by a program. The controller can automatically detect whether the write address is within a specific address range. If it falls within the range, it automatically selects the output of the random number generator as the write data. If it falls outside the range, it can be compared with ordinary non-volatile The memory controller is the same, and the write data signal of the system bus is selected as the write data.
在本發明之中,可以設計相對較大的非揮發性記憶體之特定地址範圍,並且選擇所產生之隨機數來源特性相對較好之隨機數產生器,則特定地址範圍內資料重複的機率可以降至可以忽略的水準。 In the present invention, a relatively large specific address range of nonvolatile memory can be designed, and a random number generator with relatively good random number source characteristics is selected, so that the probability of data duplication within a specific address range can be Drop to negligible levels.
一種系統晶片之非揮發性記憶體之寫入之方法,包括(a)輸入一寫入地址信號至一寫入地址判斷邏輯;(b)於該寫入地址判斷邏輯之中判斷該寫入地址信號係特定地址範圍之下界或上界,以產生一選擇碼信號;(c)將該選擇碼信號輸入至一切換裝置,以控制該切換裝置之一選擇端;(d)輸入一隨機數產生器所產生之隨機數寫入資料信號至該切換裝置之該選擇端;以及(f)輸入該隨機數寫入資料信號至該非揮發性記憶體,以寫入該非揮發性記憶體之特定地址範圍。 A method for writing non-volatile memory of a system chip includes (a) inputting a write address signal to a write address judgment logic; (b) judging the write address in the write address judgment logic The signal is the lower or upper bound of a specific address range to generate a selection code signal; (c) input the selection code signal to a switching device to control a selection terminal of the switching device; (d) input a random number to generate The random number write data signal generated by the controller to the selection end of the switching device; and (f) input the random number write data signal to the non-volatile memory to write a specific address range of the non-volatile memory .
根據本發明之另一觀點,其中該系統晶片包含一處理單元、隨機數產生器、一非揮發性記憶體控制模組、非揮發性記憶體以及一匯流排控制器。 According to another aspect of the present invention, the system chip includes a processing unit, a random number generator, a non-volatile memory control module, a non-volatile memory, and a bus controller.
根據本發明之一觀點,上述非揮發性記憶體控制模組耦接非揮發 性記憶體以及隨機數產生器。 According to an aspect of the present invention, the non-volatile memory control module is coupled to a non-volatile memory. Sex memory and random number generator.
在另一觀點之中,非揮發性記憶體控制模組包含切換裝置、寫入地址判斷邏輯以及一非揮發性記憶體控制器。其中該切換裝置包含至少一多工器,而多工器包含一輸入端、一輸出端以及2個選擇端。 In another aspect, the non-volatile memory control module includes a switching device, a write address judgment logic, and a non-volatile memory controller. The switching device includes at least one multiplexer, and the multiplexer includes an input terminal, an output terminal, and two selection terminals.
根據本發明之另一觀點,其中非揮發性記憶體控制模組在特定地址範圍內之寫入資料無法被程式所控制。 According to another aspect of the present invention, the writing data of the non-volatile memory control module in a specific address range cannot be controlled by the program.
非揮發性記憶體包含快閃記憶體、可抹除程式化唯讀記憶體(EPROM)、電子抹除式可程式化唯讀記憶體(EEPROM)、磁性隨機存取記憶體(MRAM)、鐵電隨機存取記憶體(FRAM)、或其它俱有非揮發特性且可整合於矽晶片之記憶體。快閃記憶體包含單層記憶單元NAND/NOR型快閃記憶體、或多層記憶單元NAND/NOR型快閃記憶體。 Non-volatile memory includes flash memory, erasable programmable read-only memory (EPROM), electronically erasable programmable read-only memory (EEPROM), magnetic random access memory (MRAM), iron Electrical random access memory (FRAM), or other non-volatile memory that can be integrated on a silicon chip. The flash memory includes a single-layer memory cell NAND / NOR type flash memory, or a multi-layer memory cell NAND / NOR type flash memory.
此些優點及其他優點從以下較佳實施例之敘述及申請專利範圍將使讀者得以清楚了解本發明。 These advantages and other advantages will make the reader understand the present invention clearly from the description of the following preferred embodiments and the scope of patent application.
10‧‧‧非揮發性記憶體裝置 10‧‧‧ Non-volatile memory device
100‧‧‧處理單元 100‧‧‧ processing unit
102‧‧‧隨機數產生器 102‧‧‧ random number generator
104‧‧‧非揮發性記憶體控制模組 104‧‧‧Non-volatile memory control module
106‧‧‧非揮發性記憶體 106‧‧‧Non-volatile memory
108‧‧‧匯流排控制器 108‧‧‧Bus Controller
110‧‧‧匯流排 110‧‧‧Bus
120‧‧‧非揮發性記憶體控制器 120‧‧‧Non-volatile memory controller
130‧‧‧寫入地址判斷邏輯 130‧‧‧write address judgment logic
140‧‧‧切換裝置 140‧‧‧ Switching device
如下所述之對本發明的詳細描述與實施例之示意圖,應使本發明更被充分地理解;然而,應可理解此僅限於作為理解本發明應用之參考,而非限制本發明於一特定實施例之中。 The detailed description of the present invention and the schematic diagrams of the embodiments described below should make the present invention more fully understood; however, it should be understood that this is only used as a reference for understanding the application of the present invention, rather than limiting the present invention to a specific implementation. Example.
第一圖顯示根據本發明之一實施例之非揮發性記憶體裝置之功能方塊示意圖;第二圖顯示根據本發明之一實施例之非揮發性記憶體控制器之一示意圖;第三圖顯示根據本發明之另一實施例之非揮發性記憶體控制器 之功能方塊示意圖。 The first diagram shows a functional block diagram of a non-volatile memory device according to an embodiment of the present invention; the second diagram shows a diagram of a non-volatile memory controller according to an embodiment of the present invention; the third diagram shows Non-volatile memory controller according to another embodiment of the present invention Function block diagram.
此處本發明將針對發明具體實施例及其觀點加以詳細描述,此類描述為解釋本發明之結構或步驟流程,其係供以說明之用而非用以限制本發明之申請專利範圍。因此,除說明書中之具體實施例與較佳實施例外,本發明亦可廣泛施行於其他不同的實施例中。以下藉由特定的具體實施例說明本發明之實施方式,熟悉此技術之人士可藉由本說明書所揭示之內容輕易地瞭解本發明之功效性與其優點。且本發明亦可藉由其他具體實施例加以運用及實施,本說明書所闡述之各項細節亦可基於不同需求而應用,且在不悖離本發明之精神下進行各種不同的修飾或變更。 The present invention will be described in detail herein with regard to specific embodiments of the invention and their perspectives. Such descriptions are intended to explain the structure or flow of steps of the present invention, and are intended to be illustrative and not to limit the scope of patent application of the present invention. Therefore, in addition to the specific embodiments and preferred embodiments in the description, the present invention can be widely implemented in other different embodiments. The following describes the implementation of the present invention through specific specific examples. Those skilled in the art can easily understand the efficacy and advantages of the present invention through the content disclosed in this specification. In addition, the present invention can also be applied and implemented by other specific embodiments. The details described in this specification can also be applied based on different needs, and various modifications or changes can be made without departing from the spirit of the present invention.
第一圖顯示根據本發明之一非揮發性記憶體裝置之示意圖。在本實施例之中,非揮發性記憶體裝置10為一系統晶片,包括一處理單元100、一隨機數產生器102、一非揮發性記憶體控制模組104、非揮發性記憶體106以及一匯流排控制器108。非揮發性記憶體控制模組104耦接非揮發性記憶體106以及隨機數產生器102。非揮發性記憶體控制模組104可以用硬體型式或韌體型式來實現。舉例而言,非揮發性記憶體控制模組104為一邏輯電路,包括多個邏輯閘。非揮發性記憶體控制模組104可以根據一主機或處理單元100所下達的指令,在非揮發性記憶體106之中進行資料的寫入、讀取、抹除、重整及/或其他運作。處理單元100、隨機數產生器102、非揮發性記憶體控制模組104係藉由匯流排110而結合成為可以進行各種信號處理之非揮發性記憶體裝置10。 The first figure shows a schematic diagram of a non-volatile memory device according to the present invention. In this embodiment, the non-volatile memory device 10 is a system chip, which includes a processing unit 100, a random number generator 102, a non-volatile memory control module 104, a non-volatile memory 106, and A bus controller 108. The non-volatile memory control module 104 is coupled to the non-volatile memory 106 and the random number generator 102. The non-volatile memory control module 104 may be implemented in a hardware type or a firmware type. For example, the non-volatile memory control module 104 is a logic circuit including a plurality of logic gates. The non-volatile memory control module 104 may perform data writing, reading, erasing, reforming, and / or other operations in the non-volatile memory 106 according to instructions issued by a host or the processing unit 100. . The processing unit 100, the random number generator 102, and the non-volatile memory control module 104 are combined by a bus 110 into a non-volatile memory device 10 capable of performing various signal processing.
處理單元100用以控制非揮發性記憶體控制模組104之整體運作。舉例而言,處理單元100可以控制非揮發性記憶體控制模組104以執行本實施例之操作方法,以對非揮發性記憶體106進行重整,或者將資料寫入非揮發性記憶體106之中。舉一實施例而言,非揮發性記憶體控制模組104會維護一或多個邏輯轉實體位址(logical to physical address)的信息表或位址映射表,以記錄資料在非揮發性記憶體106中之實體位址的映射關係。藉此,當非揮發性記憶體106欲存取某一邏輯位址時,處理單元100便可根據所述信息表取得對 應的實體位址,並於非揮發性記憶體106中的所述實體位址上存取資料。 The processing unit 100 is used to control the overall operation of the non-volatile memory control module 104. For example, the processing unit 100 may control the non-volatile memory control module 104 to execute the operation method of this embodiment, to restructure the non-volatile memory 106, or to write data into the non-volatile memory 106 In. For one embodiment, the non-volatile memory control module 104 maintains one or more logical to physical address information tables or address mapping tables to record data in non-volatile memory. The mapping relationship between the physical addresses in the body 106. Therefore, when the non-volatile memory 106 wants to access a certain logical address, the processing unit 100 can obtain the corresponding address according to the information table. Corresponding physical address, and access data at the physical address in the non-volatile memory 106.
舉一實施例而言,非揮發性記憶體106包括一或多個非揮發性記憶體模組,其中非揮發性記憶體模組的數量端視應用而定。舉例而言,非揮發性記憶體模組具有至少一實體塊以儲存主機或處理單元100所寫入的資料。每一實體塊具有至少一頁面,其中屬於同一個實體塊的不同頁面可被獨立地寫入,且屬於同一個實體塊的所有頁面可以被同時地抹除。舉例而言,每一實體塊可由64、128、256個或其他任意個頁面所組成。非揮發性記憶體種類繁多,舉例而言包含快閃記憶體、EPROM、EEPROM、MRAM、FRAM、及其它俱有非揮發特性且可整合於矽晶片的記憶體。快閃記憶體例如為單層記憶單元(Single Level Cell:SLC)NAND型快閃記憶體、多層記憶單元(Multi Level Cell:MLC)NAND型快閃記憶體、三層記憶單元(Triple Level Cell:TLC)NAND型快閃記憶體或其他類型快閃記憶體。其中,SLC NAND型快閃記憶體之每個記憶單元可儲存1個位元的資料,MLC NAND型快閃記憶體之每個記憶單元可儲存2個位元的資料,而TLC NAND型快閃記憶體之每個記憶單元可儲存3個位元的資料。SLC NAND型快閃記憶體具有較低的功耗及較佳的續航力,而MLC NAND型快閃記憶體則具有較高的功耗及較低的續航力。 For one embodiment, the non-volatile memory 106 includes one or more non-volatile memory modules, where the number of non-volatile memory modules depends on the application. For example, the non-volatile memory module has at least one physical block to store data written by the host or the processing unit 100. Each physical block has at least one page, wherein different pages belonging to the same physical block can be written independently, and all pages belonging to the same physical block can be erased simultaneously. For example, each physical block may be composed of 64, 128, 256, or any other number of pages. There are many types of non-volatile memory, including, for example, flash memory, EPROM, EEPROM, MRAM, FRAM, and other non-volatile memory that can be integrated on a silicon chip. The flash memory is, for example, a single-level cell (SLC) NAND-type flash memory, a multi-level memory cell (Multi-level cell: MLC) NAND-type flash memory, a triple-level memory cell (Triple Level Cell: TLC) NAND-type flash memory or other types of flash memory. Among them, each memory cell of the SLC NAND type flash memory can store 1 bit of data, each memory cell of the MLC NAND type flash memory can store 2 bits of data, and the TLC NAND type flash memory Each memory unit of the memory can store 3 bits of data. SLC NAND-type flash memory has lower power consumption and better battery life, while MLC NAND-type flash memory has higher power consumption and lower battery life.
對於多層記憶單元及三層記憶單元NAND型快閃記憶體而言,其具有成對頁面(Pair Page)與多頁面於同一個記憶單元的特性,亦即一個記憶單元中具有對應的兩個頁面或三個頁面的位元資料。另外,對於同一實體塊(block)而言,這些成對頁面可能是連續或是不連續,其端視不同的設計而定。 For a multi-level memory cell and a three-level memory cell NAND flash memory, it has the characteristics of paired pages (Pair Page) and multiple pages in the same memory cell, that is, two pages in a memory cell. Or three pages of bit data. In addition, for the same physical block, these paired pages may be continuous or discontinuous, depending on different designs.
隨機數產生器102,可用以產生隨機數或亂數。隨機數產生器102耦接非揮發性記憶體控制模組104,使得上述非揮發性記憶體106之系統晶片的操作被實施。亦即,於非揮發性記憶體控制模組104執行:在對非揮發性記憶體106進行存取之每一次,依據隨機數產生器102所產生之隨機數,以決定非揮發性記憶體106之特定地址區域,對該些區域進行寫入的程序。 The random number generator 102 may be used to generate random numbers or random numbers. The random number generator 102 is coupled to the non-volatile memory control module 104, so that the operation of the system chip of the non-volatile memory 106 is implemented. That is, the non-volatile memory control module 104 executes: each time the non-volatile memory 106 is accessed, the non-volatile memory 106 is determined according to the random number generated by the random number generator 102. A program that writes to these specific address areas.
非揮發性記憶體106之寫入或讀出資料都有特殊的控制信號和 時序,且非揮發性記憶體106無法直接連接於系統匯流排110,需要透過相應的非揮發性記憶體控制模組104來控制,處理單元100才能透過系統匯流排110來操作非揮發性記憶體106。在本發明之中,非揮發性記憶體106之寫入方法係由非揮發性記憶體控制模組104來完成。舉一實施例而言,非揮發性記憶體控制模組104可以由系統晶片中之邏輯電路來實現,並且非揮發性記憶體控制模組104必須被設計為在特定地址範圍內的寫入資料完全無法被程式所控制。 The non-volatile memory 106 has special control signals for writing or reading data. Timing, and the non-volatile memory 106 cannot be directly connected to the system bus 110, it needs to be controlled by the corresponding non-volatile memory control module 104, and the processing unit 100 can operate the non-volatile memory through the system bus 110 106. In the present invention, the writing method of the non-volatile memory 106 is performed by the non-volatile memory control module 104. For example, the non-volatile memory control module 104 may be implemented by a logic circuit in a system chip, and the non-volatile memory control module 104 must be designed to write data in a specific address range. It is completely beyond the control of the program.
非揮發性記憶體控制模組104可以指定非揮發性記憶體106之特定位址寫入隨機數產生器102所產生之信號。亦即,基於非揮發性記憶體控制模組104,本發明之系統單晶片中的非揮發性記憶體106之特定地址範圍,會強迫限制寫入且只能寫入隨機數產生器102產生之隨機數。基於不同系統單晶片會因為該特定地址範圍的資料不同,而有物理本質上的差異(例如:記憶體單元之開啟電壓的不同),形成無法完全被複製的絕對性的物理性障礙。因此,本發明之系統晶片之非揮發性記憶體106可以防止被其他系統單晶片所完全複製。 The non-volatile memory control module 104 may designate a specific address of the non-volatile memory 106 to write a signal generated by the random number generator 102. That is, based on the non-volatile memory control module 104, the specific address range of the non-volatile memory 106 in the system single chip of the present invention will forcibly limit writing and can only write to the random number generator 102. random number. Based on different system single chips, there are physical differences (for example, different turn-on voltages of the memory cells) due to the different data in the specific address range, forming an absolute physical obstacle that cannot be completely copied. Therefore, the non-volatile memory 106 of the system chip of the present invention can be prevented from being completely copied by other system single chips.
在本發明之中,非揮發性記憶體控制模組104係耦接非揮發性記憶體106以及隨機數產生器102。非揮發性記憶體控制模組104係連接來自隨機數產生器102之輸出。如第二圖所示,本發明之非揮發性記憶體控制模組104可以饋入4類輸入信號,分別為來自系統匯流排110之地址信號ADDR_BUS、來自系統匯流排110之寫入資料信號WDATA_BUS、來自系統匯流排110之寫入控制信號WE_BUS、來自隨機數產生器102之信號WDATA_RNG。舉一實施例而言,上述地址信號ADDR_BUS、寫入資料信號WDATA_BUS、寫入控制信號WE_BUS、隨機數信號WDATA_RNG之控制信號和時序,係藉由處理單元100發出指令,並藉由匯流排控制器108來控制安排。由於非揮發性記憶體控制模組104係連接來自隨機數產生器102之輸出,因此非揮發性記憶體控制模組104之輸入信號包括來自隨機數產生器102所產生之信號WDATA_RNG。亦即,本發明之非揮發性記憶體控制模組104之輸入信號除了包含來自系統匯流排110的地址信號ADDR_BUS、寫入資料信號WDATA_BUS、寫入控制信號WE_BUS之外,還包括來自隨機數產生器102所產生之寫入資料信號WDATA_RNG。換言之,在本實施例之中,非揮發性記憶體控制模組104之架構必須設計為可以 接收系統匯流排110的地址信號ADDR_BUS、寫入資料信號WDATA_BUS、寫入控制信號WE_BUS,以及隨機數產生器102所產生之寫入資料信號WDATA_RNG。 In the present invention, the non-volatile memory control module 104 is coupled to the non-volatile memory 106 and the random number generator 102. The non-volatile memory control module 104 is connected to the output from the random number generator 102. As shown in the second figure, the non-volatile memory control module 104 of the present invention can feed four types of input signals, which are the address signal ADDR_BUS from the system bus 110 and the write data signal WDATA_BUS from the system bus 110. , The write control signal WE_BUS from the system bus 110, and the signal WDATA_RNG from the random number generator 102. For one embodiment, the control signals and timing of the address signal ADDR_BUS, the write data signal WDATA_BUS, the write control signal WE_BUS, and the random number signal WDATA_RNG are issued by the processing unit 100 and by the bus controller. 108 to control the arrangement. Since the non-volatile memory control module 104 is connected to the output from the random number generator 102, the input signals of the non-volatile memory control module 104 include the signal WDATA_RNG generated from the random number generator 102. That is, the input signals of the non-volatile memory control module 104 of the present invention include, in addition to the address signal ADDR_BUS, the write data signal WDATA_BUS, and the write control signal WE_BUS from the system bus 110, a random number generation The write data signal WDATA_RNG generated by the processor 102. In other words, in this embodiment, the structure of the non-volatile memory control module 104 must be designed so that The address signal ADDR_BUS, the write data signal WDATA_BUS, the write control signal WE_BUS, and the write data signal WDATA_RNG generated by the random number generator 102 are received by the system bus 110.
如第二圖所示,在非揮發性記憶體控制模組104的控制信號之中,來自系統匯流排110之地址信號ADDR_BUS直接對映到非揮發性記憶體106之地址信號ADDR_NVM,來自系統匯流排110之寫入資料信號WDATA_BUS直接對映到非揮發性記憶體106之寫入資料信號WDATA_NVM,而來自系統匯流排110之寫入控制信號WDATA_WE會觸發非揮發性記憶體控制器120之內部的狀態機(state machine)而產生整組非揮發性記憶體106之寫入控制信號PROG_NVM;此外,藉由處理單元100發出指令,以及非揮發性記憶體控制模組104之控制作用,可以選定隨機數產生器102所產生之寫入資料信號WDATA_RNG寫入於非揮發性記憶體106之特定地址範圍內的記憶體單元之中。 As shown in the second figure, among the control signals of the non-volatile memory control module 104, the address signal ADDR_BUS from the system bus 110 is directly mapped to the address signal ADDR_NVM of the non-volatile memory 106 from the system bus The write data signal WDATA_BUS of the bank 110 directly reflects the write data signal WDATA_NVM of the non-volatile memory 106, and the write control signal WDATA_WE from the system bus 110 will trigger the internal data of the non-volatile memory controller 120. The state machine generates a write control signal PROG_NVM for the entire set of non-volatile memory 106; In addition, by issuing instructions from the processing unit 100 and the control function of the non-volatile memory control module 104, a random selection can be selected The write data signal WDATA_RNG generated by the number generator 102 is written into a memory cell within a specific address range of the non-volatile memory 106.
如第三圖所示,在本實施例之中,可饋入系統匯流排100信號以及隨機數產生器102信號之非揮發性記憶體控制模組104包括可饋入3類系統匯流排100輸入信號之一般的非揮發性記憶體控制器120、寫入地址判斷邏輯130以及切換裝置140。寫入地址判斷邏輯130可以根據來自系統匯流排110之輸入地址信號ADDR_BUS,以判斷該地址信號ADDR_BUS是特定地址範圍的下界(RANGE_LOW)或上界(RANGE_HIGH),以產生二個選擇碼,表示為數位信號0或1。寫入地址判斷邏輯130之特定地址範圍的下界(RANGE_LOW)和上界(RANGE_HIGH)皆為常數。舉一實施例而言,切換裝置140包含多個輸入埠、多個多工器140以及多個選擇端,其中每個多工器140包含一輸入端、一輸出端以及至少一選擇端。在本實施例之中,多工器140具有2個選擇端,以選擇寫入資料信號WDATA_BUS或寫入資料信號WDATA_RNG,以作為非揮發性記憶體控制器120之寫入資料信號WDATA_BUS。在一般的非揮發性記憶體控制器120之輸出信號之中,來自系統匯流排110之地址信號ADDR_BUS直接對映到非揮發性記憶體106之地址信號ADDR_NVM,來自系統匯流排110之寫入資料信號WDATA_BUS直接對映到非揮發性記憶體106之寫入資料信號WDATA _NVM,而來自系統匯流排110之寫入控制信號WDATA_WE會觸發非揮發性記憶體控制器120之內部的狀態機(state machine)而產生整組非揮發性記憶體106之寫入控制信號PROG_NVM。然而,在本實施例之中,由於非揮發性記憶體控制模組104之架構中增加了寫入地址判斷邏輯130以及多工器140,並且可以饋入隨機數產生器102信號,因此在非揮發性記憶體控制模組104之中的非揮發性記憶體106之寫入資料信號WDATA_NVM的程序,將與在一般的非揮發性記憶體控制器120之中的非揮發性記憶體106之寫入資料信號WDATA_NVM的程序有所不同。 As shown in the third figure, in this embodiment, the non-volatile memory control module 104 that can feed the system bus 100 signal and the random number generator 102 signal includes a type 3 system bus 100 input The signal is a general non-volatile memory controller 120, a write address judgment logic 130, and a switching device 140. The write address judging logic 130 can judge the address signal ADDR_BUS to be the lower bound (RANGE_LOW) or the upper bound (RANGE_HIGH) of the specific address range according to the input address signal ADDR_BUS from the system bus 110 to generate two selection codes, expressed as Digital signal 0 or 1. Both the lower bound (RANGE_LOW) and the upper bound (RANGE_HIGH) of the specific address range of the write address judgment logic 130 are constant. In one embodiment, the switching device 140 includes a plurality of input ports, a plurality of multiplexers 140 and a plurality of selection ends. Each multiplexer 140 includes an input end, an output end, and at least one selection end. In this embodiment, the multiplexer 140 has two selection terminals to select the write data signal WDATA_BUS or the write data signal WDATA_RNG as the write data signal WDATA_BUS of the non-volatile memory controller 120. Among the output signals of the general non-volatile memory controller 120, the address signal ADDR_BUS from the system bus 110 directly reflects the address signal ADDR_NVM of the non-volatile memory 106, and the written data from the system bus 110 The signal WDATA_BUS directly reflects the write data signal WDATA of the non-volatile memory 106 _NVM, and the write control signal WDATA_WE from the system bus 110 will trigger the internal state machine of the non-volatile memory controller 120 to generate the write control signal PROG_NVM of the entire non-volatile memory 106. However, in this embodiment, the write address judgment logic 130 and the multiplexer 140 are added to the structure of the non-volatile memory control module 104, and the random number generator 102 signal can be fed. The process of writing the data signal WDATA_NVM in the non-volatile memory 106 in the volatile memory control module 104 will be the same as the writing of the non-volatile memory 106 in the general non-volatile memory controller 120. The procedure for entering the data signal WDATA_NVM is different.
如第三圖所示,於非揮發性記憶體控制模組104之中,系統匯流排110之寫入資料信號WDATA_BUS的程序包含:系統匯流排110之寫入地址信號ADDR_BUS輸入至寫入地址判斷邏輯130;然後,寫入地址判斷邏輯130根據輸入之寫入地址信號ADDR_BUS以判斷該地址信號ADDR_BUS是特定地址範圍的下界RANGE_LOW或上界RANGE_HIGH,而產生了一選擇碼信號,表示為數位信號0或1;之後,將判斷結果所產生的選擇碼輸入至切換裝置之多工器140,以控制決定多工器140選擇寫入資料信號,亦即由多工器140之其中一選擇端輸入寫入資料信號。舉例而言,當判斷結果之選擇碼為0,則多工器140選擇寫入資料信號WDATA_BUS,而當判斷結果之選擇碼為1,則多工器140選擇寫入資料信號WDATA_RNG,以作為非揮發性記憶體控制器120之寫入資料信號WDATA_BUS。 As shown in the third figure, in the non-volatile memory control module 104, the procedure of the write data signal WDATA_BUS of the system bus 110 includes: the write address signal ADDR_BUS of the system bus 110 is input to the write address judgment Logic 130; then, the write address judgment logic 130 judges that the address signal ADDR_BUS is the lower bound RANGE_LOW or the upper bound RANGE_HIGH of the specific address range according to the input write address signal ADDR_BUS, and generates a selection code signal, which is expressed as a digital signal 0 Or 1; after that, the selection code generated by the judgment result is input to the multiplexer 140 of the switching device, so as to control and determine that the multiplexer 140 selects to write the data signal, that is, one of the selection ends of the multiplexer 140 inputs the write Into the data signal. For example, when the selection code of the judgment result is 0, the multiplexer 140 selects the write data signal WDATA_BUS, and when the selection code of the judgment result is 1, the multiplexer 140 selects the write data signal WDATA_RNG as a non- The write data signal WDATA_BUS of the volatile memory controller 120.
從上述可知,非揮發性記憶體控制器120可以自動偵測系統匯流排110之地址信號ADDR_BUS輸入是否在特定地址範圍;若是該寫入地址落在範圍之內,則自動選用隨機數產生器102之輸出寫入資料信號WDATA_RNG作為寫入資料,而若是該寫入地址落在範圍之外,則可與一般的非揮發性記憶體控制器120相同,選用系統匯流排110之寫入資料信號WDATA_BUS作為寫入資料。 From the above, the non-volatile memory controller 120 can automatically detect whether the address signal ADDR_BUS input of the system bus 110 is within a specific address range; if the write address falls within the range, the random number generator 102 is automatically selected The output write data signal WDATA_RNG is used as write data, and if the write address falls outside the range, it can be the same as the general non-volatile memory controller 120, and the write data signal WDATA_BUS of the system bus 110 is selected As written data.
在本發明之中,非揮發性記憶體106可被程式化,以儲存每一寫入地址判斷邏輯130之選擇碼,基於該些選擇碼,即可藉由每一多工器140之 選擇端以控制每一多工器140選擇實際輸入至非揮發性記憶體控制器120的訊號,以作為非揮發性記憶體控制器120之寫入資料信號WDATA_BUS。 In the present invention, the non-volatile memory 106 can be programmed to store the selection codes of each write address judgment logic 130. Based on the selection codes, the The selection terminal controls each multiplexer 140 to select a signal that is actually input to the non-volatile memory controller 120 as the write data signal WDATA_BUS of the non-volatile memory controller 120.
在本發明之中,可以設計相對較大的非揮發性記憶體106之特定地址範圍,並且選擇所產生之隨機數來源特性相對較好之隨機數產生器102,則特定地址範圍內資料重複的機率可以降至可以忽略的水準。 In the present invention, a relatively large specific address range of the non-volatile memory 106 can be designed, and a random number generator 102 with relatively good random number source characteristics is selected. Probability can drop to negligible levels.
上述敘述係為本發明之較佳實施例。此領域之技藝者應得以領會其係用以說明本發明而非用以限定本發明所主張之專利權利範圍。其專利保護範圍當視後附之申請專利範圍及其等同領域而定。凡熟悉此領域之技藝者,在不脫離本專利精神或範圍內,所作之更動或潤飾,均屬於本發明所揭示精神下所完成之等效改變或設計,且應包含在下述之申請專利範圍內。 The above description is a preferred embodiment of the present invention. Those skilled in the art should understand that it is used to explain the present invention and not to limit the scope of the patent rights claimed by the present invention. The scope of its patent protection shall depend on the scope of the attached patent application and its equivalent fields. Anyone skilled in this field can make changes or modifications without departing from the spirit or scope of this patent, which belong to the equivalent changes or designs made in the spirit disclosed by the present invention, and should be included in the scope of patent application described below. Inside.
Claims (10)
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW106135741A TWI656535B (en) | 2017-10-18 | 2017-10-18 | Non-volatile memory writing method of system chip |
CN201711161015.6A CN109684239B (en) | 2017-10-18 | 2017-11-20 | Method for preventing nonvolatile memory of system chip from being duplicated |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW106135741A TWI656535B (en) | 2017-10-18 | 2017-10-18 | Non-volatile memory writing method of system chip |
Publications (2)
Publication Number | Publication Date |
---|---|
TWI656535B true TWI656535B (en) | 2019-04-11 |
TW201917729A TW201917729A (en) | 2019-05-01 |
Family
ID=66183091
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW106135741A TWI656535B (en) | 2017-10-18 | 2017-10-18 | Non-volatile memory writing method of system chip |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN109684239B (en) |
TW (1) | TWI656535B (en) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7266842B2 (en) * | 2002-04-18 | 2007-09-04 | International Business Machines Corporation | Control function implementing selective transparent data authentication within an integrated system |
US8290150B2 (en) * | 2007-05-11 | 2012-10-16 | Validity Sensors, Inc. | Method and system for electronically securing an electronic device using physically unclonable functions |
US8526605B2 (en) * | 2009-10-09 | 2013-09-03 | Seagate Technology Llc | Data encryption to provide data security and memory cell bit wear leveling |
US20140281587A1 (en) * | 2013-03-14 | 2014-09-18 | Ologn Technologies Ag | Systems, methods and apparatuses for using a secure non-volatile storage with a computer processor |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1123935A (en) * | 1994-12-03 | 1996-06-05 | 联华电子股份有限公司 | Device and method for protecting software |
US6883075B2 (en) * | 2002-01-17 | 2005-04-19 | Silicon Storage Technology, Inc. | Microcontroller having embedded non-volatile memory with read protection |
JP2005018362A (en) * | 2003-06-25 | 2005-01-20 | Renesas Technology Corp | Semiconductor memory |
CN101699406B (en) * | 2009-11-12 | 2011-12-14 | 威盛电子股份有限公司 | Data storage system and method |
US8843693B2 (en) * | 2011-05-17 | 2014-09-23 | SanDisk Technologies, Inc. | Non-volatile memory and method with improved data scrambling |
CN103824005A (en) * | 2014-03-11 | 2014-05-28 | 东南大学 | Anti-copying system embedded with configurable IP core and anti-copying method |
JP6462537B2 (en) * | 2015-08-31 | 2019-01-30 | 株式会社メガチップス | Memory controller |
-
2017
- 2017-10-18 TW TW106135741A patent/TWI656535B/en active
- 2017-11-20 CN CN201711161015.6A patent/CN109684239B/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7266842B2 (en) * | 2002-04-18 | 2007-09-04 | International Business Machines Corporation | Control function implementing selective transparent data authentication within an integrated system |
US8290150B2 (en) * | 2007-05-11 | 2012-10-16 | Validity Sensors, Inc. | Method and system for electronically securing an electronic device using physically unclonable functions |
US8526605B2 (en) * | 2009-10-09 | 2013-09-03 | Seagate Technology Llc | Data encryption to provide data security and memory cell bit wear leveling |
US20140281587A1 (en) * | 2013-03-14 | 2014-09-18 | Ologn Technologies Ag | Systems, methods and apparatuses for using a secure non-volatile storage with a computer processor |
Also Published As
Publication number | Publication date |
---|---|
CN109684239B (en) | 2023-06-09 |
CN109684239A (en) | 2019-04-26 |
TW201917729A (en) | 2019-05-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8607120B2 (en) | Semiconductor memory device for performing additional ECC correction according to cell pattern and electronic system including the same | |
US8874934B2 (en) | Nonvolatile memory device and operating method | |
KR102518884B1 (en) | Memory system and operating method thereof | |
TW201405359A (en) | Random number generation method, encryption key generation method, memory, memory system and encryption key generation system | |
TW201918882A (en) | Memory system and operating method thereof | |
US9489143B2 (en) | Method for accessing flash memory and associated controller and memory device | |
US9520184B2 (en) | Method for writing in-system programming code into flash memory for better noise margin | |
CN112542186B (en) | Memory device and method of operating the same | |
US10013210B2 (en) | Data storage device and data maintenance method thereof | |
CN111916134B (en) | Memory device and method of operating the same | |
CN112447234B (en) | Memory controller and method of operating the same | |
TW201931061A (en) | Memory system and operating method thereof | |
EP4020296B1 (en) | Operating method of storage device setting secure mode of command, and operating method of storage system including the storage device | |
CN106716536A (en) | Latch initialization for a data storage device | |
CN115565585A (en) | Storage device, memory device, and method of operating a memory device | |
TWI707268B (en) | Data storage device and method for operating the same | |
CN111435333B (en) | Storage device and operation method thereof | |
US11307777B2 (en) | Memory system and operating method thereof | |
CN112435705A (en) | Memory system | |
TWI656535B (en) | Non-volatile memory writing method of system chip | |
US20200319805A1 (en) | Method for Writing Non-Volatile Memory of System-on-Chip | |
US11538518B2 (en) | Memory device to suspend ROM operation and a method of operating the memory device | |
CN115083498A (en) | Memory device, operation method and configuration method thereof and memory system | |
US11386018B2 (en) | Memory system and operating method thereof | |
US20230075808A1 (en) | Memory system and operating method determining target status read check period in thermal throttling mode |