TWI705329B - Apparatus and method and computer program product for generating a physical storage mapping table - Google Patents
Apparatus and method and computer program product for generating a physical storage mapping table Download PDFInfo
- Publication number
- TWI705329B TWI705329B TW108113050A TW108113050A TWI705329B TW I705329 B TWI705329 B TW I705329B TW 108113050 A TW108113050 A TW 108113050A TW 108113050 A TW108113050 A TW 108113050A TW I705329 B TWI705329 B TW I705329B
- Authority
- TW
- Taiwan
- Prior art keywords
- physical location
- physical
- location information
- comparison table
- parity
- Prior art date
Links
Images
Landscapes
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
Description
本發明涉及儲存裝置,尤指一種實體儲存對照表產生裝置及方法以及電腦程式產品。 The invention relates to a storage device, in particular to a device and method for generating a physical storage comparison table, and a computer program product.
快閃記憶裝置通常分為NOR快閃記憶裝置與NAND快閃記憶裝置。NOR快閃記憶裝置為隨機存取裝置,主裝置(host)可於位址腳位上提供任何存取NOR快閃記憶裝置的位址,並及時地從NOR快閃記憶裝置的資料腳位上獲得儲存於該位址上的資料。相反地,NAND快閃記憶裝置並非隨機存取,而是序列存取。NAND快閃記憶裝置無法像NOR快閃記憶裝置一樣,可以存取任何隨機位址,主裝置反而需要寫入序列的位元組(bytes)的值到NAND快閃記憶裝置中,用以定義請求命令(command)的類型(如,讀取、寫入、抹除等),以及用在此命令上的位址。位址可指向一個頁面(快閃記憶裝置中寫入作業的最小資料塊)或一個區塊(快閃記憶裝置中抹除作業的最小資料塊)。 Flash memory devices are generally divided into NOR flash memory devices and NAND flash memory devices. The NOR flash memory device is a random access device. The host device can provide any address for accessing the NOR flash memory device on the address pin, and promptly retrieve it from the data pin of the NOR flash memory device Obtain the data stored at that address. In contrast, NAND flash memory devices are not random access, but serial access. NAND flash memory devices cannot access any random address like NOR flash memory devices. Instead, the master device needs to write the value of the sequence of bytes to the NAND flash memory device to define the request The type of command (for example, read, write, erase, etc.) and the address used for this command. The address can point to a page (the smallest data block for writing in the flash memory device) or a block (the smallest data block for erasing in the flash memory device).
實際上,為了提升寫入的速度,一段連續邏輯位置的資料可能被散佈放置於數個實體的快閃記憶單元中,並且NAND快閃記憶裝置使用實體儲存對照表來指出資料被寫入到實體快閃記憶單元中的何處。當主裝置發送包含邏輯位置的資料讀取命令給NAND快閃記憶裝置,NAND快閃記憶裝置須依據實體儲存對照表的內容將邏輯位置轉換為實體位置,然後再從實體位置讀取資料並回覆給主裝置。然而, 由於NAND快閃記憶裝置中資料緩衝區的空間有限,無法儲存完整的實體儲存對照表以供快速查找,只能儲存其中的一部份。當主裝置發出的讀取命令中的邏輯位置無法命中資料緩存區的部分實體儲存對照表時,NAND快閃記憶裝置必須耗費大量時間從快閃記憶單元中讀取適當部分的實體儲存對照表,增加主裝置取得資料的等待時間(latency)。 In fact, in order to increase the writing speed, a piece of data in consecutive logical locations may be scattered among several physical flash memory cells, and the NAND flash memory device uses a physical storage table to indicate that the data is written to the physical Where in the flash memory unit. When the master device sends a data read command containing a logical location to the NAND flash memory device, the NAND flash memory device must convert the logical location to a physical location based on the contents of the physical storage comparison table, and then read the data from the physical location and reply To the main device. however, Due to the limited space of the data buffer in the NAND flash memory device, a complete physical storage comparison table cannot be stored for quick search, and only a part of it can be stored. When the logical position in the read command sent by the host device cannot hit part of the physical storage comparison table in the data buffer area, the NAND flash memory device must spend a lot of time reading the appropriate part of the physical storage comparison table from the flash memory unit. Increase the latency for the main device to obtain data.
為降低等待時間,新的快閃記憶標準可讓主裝置可直接發送包含實體位置的資料讀取命令給NAND快閃記憶裝置。但是,主裝置需要先從NAND快閃記憶裝置取得實體儲存對照表,才能進行邏輯實體位址轉換。為了讓主裝置可以跟不同製造商的NAND快閃記憶裝置通訊,快閃記憶標準規範實體儲存對照表的輸出格式。然而,標準規範的輸出格式通常不同於NAND快閃記憶裝置的內部使用格式,需要進行轉換。因此,本發明提出一種裝置及方法,用以節省產生符合規範的實體儲存對照表的時間。 In order to reduce the waiting time, the new flash memory standard allows the host device to directly send a data read command containing the physical location to the NAND flash memory device. However, the host device needs to obtain the physical storage comparison table from the NAND flash memory device before performing the logical physical address conversion. In order to allow the host device to communicate with NAND flash memory devices of different manufacturers, the flash memory standard specifies the output format of the physical storage comparison table. However, the standard output format is usually different from the internal format used by the NAND flash memory device and needs to be converted. Therefore, the present invention provides an apparatus and method to save the time of generating a conforming entity to store a comparison table.
有鑑於此,如何減輕或消除上述相關領域的缺失,實為有待解決的問題。 In view of this, how to reduce or eliminate the deficiencies in the above-mentioned related fields is indeed a problem to be solved.
本發明提出一種實體儲存對照表產生裝置,該裝置包含:擴充電路及控制器。擴充電路擴充相應於主裝置請求的實體儲存對照表中的第一實體位置資訊為使用更多位元組數目表示的第二實體位置資訊,使得第二實體位置資訊符合快閃記憶標準規範的輸出格式。控制器回覆第二實體位置資訊給主裝置。 The present invention provides a physical storage comparison table generating device, which includes an expansion circuit and a controller. The expansion circuit expands the first physical location information in the physical storage comparison table corresponding to the request of the host device to the second physical location information represented by more bytes, so that the second physical location information conforms to the output of the flash memory standard specification format. The controller replies the second physical location information to the main device.
上述實施例的優點之一,透過使用擴充電路既能維持第一實體位置資訊的精簡表示,又能產生符合快閃記憶標準規範的輸出格式的第二實體位置資訊。 One of the advantages of the above embodiment is that by using the expansion circuit, the simplified representation of the first physical location information can be maintained, and the second physical location information can be generated in an output format conforming to the flash memory standard specification.
本發明的其他優點將搭配以下的說明和圖式進行更詳細的解說。 Other advantages of the present invention will be explained in more detail with the following description and drawings.
110:主裝置 110: main device
130:快閃記憶裝置 130: Flash memory device
151:讀取請求 151: Read request
153:傳送實體儲存對照表的迴圈 153: Transmission entity stores the loop of the comparison table
155:讀取回覆 155: Read reply
210:實體儲存對照表 210: Entity storage comparison table
230:實體位置資訊 230: physical location information
230-0:實體區塊編號 230-0: physical block number
230-1:主頁面的起始單元編號 230-1: The starting unit number of the main page
250:實體區塊 250: physical block
251:主頁面 251: Main Page
310:實體層 310: physical layer
320:資料連結層 320: Data Link Layer
330:處理單元 330: Processing Unit
351:控制器 351: Controller
353:直接記憶體存取控制器 353: Direct Memory Access Controller
370、450:資料緩衝區 370, 450: data buffer
380、430:直接記憶體存取控制器 380, 430: Direct memory access controller
375、480:快閃記憶控制器 375, 480: Flash memory controller
390:快閃記憶單元 390: flash memory unit
410、410_1~410_13:擴充電路 410, 410_1~410_13: expansion circuit
470:處理單元 470: Processing Unit
490:控制器 490: Controller
S510~S550:方法步驟 S510~S550: method steps
610:存取子介面 610: Access sub-interface
630_0~630_i:儲存子單元 630_0~630_i: storage subunit
650:資料線 650: data line
670_0~670_i:晶片致能控制訊號 670_0~670_i: Chip enable control signal
710、710_1~710_2:填充寄存器 710, 710_1~710_2: fill registers
730、730_1~730_2:實體位置寄存器 730, 730_1~730_2: physical location register
750_1~750_2:擾碼寄存器 750_1~750_2: scrambling code register
770_1~770_2:擾碼器 770_1~770_2: scrambler
780、780_1~780_2:同位元寄存器 780, 780_1~780_2: parity register
790、790_1~790_2:同位元產生器 790, 790_1~790_2: parity generator
1410、1430、1450:程式模塊 1410, 1430, 1450: program module
圖1為依據本發明實施例主裝置向快閃記憶裝置請求實體儲存對照表的順序圖。 FIG. 1 is a sequence diagram of a host device requesting a flash memory device to physically store a comparison table according to an embodiment of the present invention.
圖2為依據本發明實施例的實體儲存對照示意圖。 2 is a schematic diagram of physical storage comparison according to an embodiment of the present invention.
圖3為一些實施方式的系統方塊圖。 Figure 3 is a system block diagram of some embodiments.
圖4為依據本發明實施例的產生快閃記憶裝置的實體儲存對照表的系統方塊圖。 4 is a block diagram of a system for generating a physical storage comparison table of a flash memory device according to an embodiment of the present invention.
圖5為依據本發明實施例的產生快閃記憶裝置的實體儲存對照表的方法流程圖。 FIG. 5 is a flowchart of a method for generating a physical storage comparison table of a flash memory device according to an embodiment of the present invention.
圖6為存取子介面與多個儲存子單元的連接示意圖。 FIG. 6 is a schematic diagram of the connection between the access sub-interface and the multiple storage sub-units.
圖7至13為依據本發明實施例的擴充電路的方塊圖。 7 to 13 are block diagrams of expansion circuits according to embodiments of the present invention.
圖14為本發明實施例的產生快閃記憶裝置的實體儲存對照表的功能模塊示意圖。 14 is a schematic diagram of functional modules for generating a physical storage comparison table of a flash memory device according to an embodiment of the present invention.
以下說明為完成發明的較佳實現方式,其目的在於描述本發明的基本精神,但並不用以限定本發明。實際的發明內容必須參考之後的權利要求範圍。 The following description is a preferred implementation manner for completing the invention, and its purpose is to describe the basic spirit of the invention, but not to limit the invention. The actual content of the invention must refer to the scope of the claims that follow.
必須了解的是,使用於本說明書中的”包含”、”包括”等詞,用以表示存在特定的技術特徵、數值、方法步驟、作業處理、元件以及/或組件,但並不排除可加上更多的技術特徵、數值、方法步驟、作業處理、元件、組件,或以上的任意組合。 It must be understood that the words "including" and "including" used in this specification are used to indicate the existence of specific technical features, values, method steps, operations, elements and/or components, but they do not exclude the possibility of adding More technical features, values, method steps, job processing, components, components, or any combination of the above.
於權利要求中使用如”第一”、"第二"、"第三"等詞是用來修飾權利要求中的元件,並非用來表示之間具有優先順序,前置關係,或者是一個元件先於另一個元件,或者是執行方法步驟時的時間先後順序,僅用來區別具有相同名字的元件。 Words such as "first", "second", and "third" used in the claims are used to modify the elements in the claims, and are not used to indicate that there is a precedence, prerequisite relationship, or an element Prior to another element, or the chronological order of execution of method steps, is only used to distinguish elements with the same name.
圖1為依據本發明實施例主裝置向快閃記憶裝置請求實體儲存對照表的順序圖。快閃記憶系統包含主裝置110及快閃記憶裝置130,並以快閃記憶通訊協定(例如,通用快閃記憶儲存,Universal Flash
Storage UFS)彼此通信。快閃記憶裝置130可為NAND快閃記憶裝置。由於NAND快閃記憶裝置並非隨機存取裝置,為了提升寫入的效率,主裝置110可提供至少一個長度的連續性資料,例如128K位元組的資料,使得快閃記憶裝置130可以有效率的並行作業方式將資料寫入其中的數個儲存子單元。當成功寫入一個邏輯位置的使用者資料後,快閃記憶裝置130需要更新暫存於靜態隨機存取記憶體的臨時實體儲存對照表(temporary storage mapping table)中此邏輯位置及寫入實體位置的對應關係資訊。此外,於成功寫入預定數量的邏輯位置的的使用者資料後,依據暫存的臨時實體儲存對照表的內容更新非揮發性的快閃記憶單元中儲存的實體儲存對照表(storage mapping table,又稱為H2F Host-to-Flash表)。所以,實體儲存對照表的內容由快閃記憶裝置130負責維護,而不是主裝置110。實體儲存對照表紀錄每個邏輯位置的使用者資料實際儲存於快閃記憶單元中的哪個實體位置。
FIG. 1 is a sequence diagram of a host device requesting a flash memory device to physically store a comparison table according to an embodiment of the present invention. The flash memory system includes a
圖2為依據本發明實施例的實體儲存對照示意圖。實體儲存對照表210依照順序儲存相應於每一邏輯位置的實體位置資訊。實體儲存對照表210所需的空間從64M到1G位元組不等。邏輯位置可以邏輯區塊位址(Logical Block Address LBA)表示,每一個LBA對應到一個固定大小的實體儲存空間,例如512位元組(Bytes)。舉例來說,實體儲存對照表210依序儲存從LBA0至LBA65535的實體位置資訊。數個連續邏輯位置(例如LBA0至LBA7)的資料可形成一個主頁面(host page)。實體位置資訊230可以四個位元組表示:前二個位元組230-0紀錄實體區塊編號(physical block number);後二個位元組230-1紀錄單元編號(unit number)。例如,相應於邏輯位置LBA2的實體位置資訊230可指向實體區塊250中的一個實體區域251。位元組230-0紀錄實體區塊250的編號,位元組230-1紀錄實體區域251的單元編號。
2 is a schematic diagram of physical storage comparison according to an embodiment of the present invention. The physical storage comparison table 210 sequentially stores the physical location information corresponding to each logical location. The space required for the physical storage of the comparison table 210 ranges from 64M to 1G bytes. The logical location can be represented by a logical block address (Logical Block Address LBA), and each LBA corresponds to a fixed size physical storage space, such as 512 bytes (Bytes). For example, the physical storage comparison table 210 sequentially stores the physical location information from LBA0 to LBA65535. Data in several consecutive logical locations (such as LBA0 to LBA7) can form a host page. The
由於快閃記憶裝置130可因應實際運作來更新實體儲存對照表210的內容,例如,執行資料寫入作業、垃圾回收程序(garbage collection GC process)、損耗平均程序(wear leveling process)、讀取回收程序(read reclaim process)、讀取更新程序(read reflash process)。當實體儲存對照表210的內容修改後,快閃記憶裝置130可通知主裝置110需要重新取得相應邏輯位置區間的修改後實體儲存對照表210。於收到通知後,主裝置110可於任意時間點發出實體儲存對照表的讀取請求151。讀取請求151可包含邏輯位置區間的資訊,例如LBA0至LBA199。舉例來說,主裝置110可發送UFS通訊協定資訊單元命令(CMD UPIU-UFS Protocol Information Unit)給快閃記憶裝置130,CMD UPIU包含讀取請求151。快閃記憶裝置130取得請求的邏輯位置區間的實體儲存對照表210,並可執行一個迴圈153,用以分段傳送請求的邏輯位置區間的實體儲存對照表210給主裝置110。於每一回合,快閃記憶裝置130可將一部份請求的邏輯位置區間的實體儲存對照表210裝載於DATA IN UPIU的資料區域(data segment area)。當請求的實體位置資訊傳送完成,快閃記憶裝置130發送讀取回覆155給主裝置110。快閃記憶裝置130可發送UFS通訊協定資訊單元回覆(Response UPIU)給主裝置110,且Response UPIU包含讀取回覆155。
Since the
為避免資料緩衝區的實體儲存對照表210因非預期的斷電而遺失,快閃記憶裝置130可於非揮發的快閃記憶單元保存完整的實體儲存對照表210。為了節省資料緩衝區及快閃記憶單元的空間消耗,通常以最少的位元組紀錄相應於每個邏輯位置的實體位置資訊。然而,為了讓主裝置110可兼容所有廠商開發的快閃記憶裝置,快閃記憶標準規範的實體儲存對照表的輸出格式通常使用更多位元組來記錄相應於每個邏輯位置的實體位置資訊。舉例來說,快閃記憶裝置130使用四個位元組儲存相應於每個邏輯位置的實體位置資訊,但
快閃記憶標準使用八個位元組儲存相同的資訊。因此,快閃記憶裝置130需要將實體儲存對照表210的實體位置資訊230擴充為更多位元組的輸出格式。
To prevent the physical storage table 210 of the data buffer from being lost due to unexpected power failure, the
於一些實施方式,快閃記憶裝置130可於資料緩衝區中配置空間,用以進行格式轉換。圖3為一些實施方式的系統方塊圖。假設快閃記憶裝置130使用如圖2所示的四位元組儲存相應於每個邏輯位置的實體位置資訊,而快閃記憶標準規範使用八位元組進行實體位置資訊的儲存:處理單元330從主裝置110收到讀取請求151後,驅動快閃記憶單元390讀取請求的邏輯位置區間的實體儲存對照表210並儲存至資料緩衝區370。資料緩衝區370配置二個區域分別儲存原始的實體儲存對照表210以及擴充後的實體儲存對照表。接著,處理單元330驅動直接記憶體存取控制器(Direct Memory Access DMA controller)380,用以將原始的實體儲存對照表210複製成兩份(亦即擴充後的實體儲存對照表),並儲存至資料緩衝區370中的指定區域。接著,處理單元330透過控制器351驅動直接記憶體存取控制器353從資料緩衝區370的指定區域讀取擴充後實體儲存對照表,並經由資料連結層320(例如unipro)及實體層310回覆給主裝置110。然而,這樣的實施方式需要於資料緩衝區370配置一個區域來儲存擴充後實體儲存對照表。例如,為了1KB的原始實體位置資訊(相應於256筆邏輯位置),資料緩衝區370須額外配置2KB空間來儲存擴充後實體位置資訊。資料緩衝區370是稀少資源,增加用來儲存擴充後實體儲存對照表的區域可能排擠其他重要資料的儲存。此外,以上所述的實施方式需要處理單元330耗費時間控制直接記憶體存取控制器380。
In some embodiments, the
為改進如上所述實施方式的缺點,圖4為本發明實施例的產生快閃記憶裝置的實體儲存對照表的系統方塊圖。控制器490通過資料連結層320及實體層310電性連接(耦接)於主裝置110,並且連接於
處理單元470、擴充電路410及直接記憶體存取控制器430之間。處理單元470連接至快閃記憶控制器480,用以依據主裝置110發送的命令驅動快閃記憶控制器480從快閃記憶單元390的特定實體位置讀取使用者資料並儲存至資料緩衝區450,從資料緩衝區450取得使用者資料並寫入快閃記憶單元390的特定實體位置,或者針對快閃記憶單元390的特定實體位置執行抹除操作。控制器490可通過直接記憶體存取控制器430從資料緩衝區450讀取使用者資料並通過驅動資料連結層320及實體層310依序敲出給主裝置110。控制器490可通過直接記憶體存取控制器430將主裝置110欲寫入的使用者資料儲存至資料緩衝區450。處理單元470可使用多種方式實施,例如使用通用硬體,如單一處理器、具平行處理能力的多處理器、圖形處理器、輕簡型通用目的處理器(Lightweight General-Purpose Processor)或其他具運算能力的處理器,並且在執行指令(Instructions)、宏碼(Macrocode)或微碼(Microcode)時,提供之後描述的功能。控制器490可為UFS控制器,透過UFS通訊協定與主裝置110進行溝通。雖然本發明實施例以UFS通訊協定舉例,但當其他通訊協定將來允許主裝置直接發送包含實體位置資訊的讀取命令時,本發明也可應用到其他的通訊協定,例如通用序列匯流排(Universal Serial Bus,USB)、先進技術附著(advanced technology attachment,ATA)、序列先進技術附著(serial advanced technology attachment,SATA)、快速周邊元件互聯(peripheral component interconnect express,PCI-E)或其他介面的通訊協定。
In order to improve the shortcomings of the above-mentioned embodiments, FIG. 4 is a system block diagram of a physical storage comparison table for generating a flash memory device according to an embodiment of the present invention. The
直接記憶體存取控制器430從資料緩衝區450讀取實體儲存對照表210中相應於每一邏輯位置的原始實體位置資訊,並且原始實體位置資訊使用第一數目的位元組表示。擴充電路410連接或耦接於直接記憶體存取控制器430,用以取得原始實體位置資訊,擴充原始實體位置資訊為使用第二數目的位元組表示的擴充後實體位置資訊,
並且輸出擴充後實體位置資訊給控制器490,其中第二數目大於第一數目。控制器490連接或耦接於擴充電路410,通過資料連結層320及實體層310傳送(或回覆)擴充後實體位置資訊給主裝置110。
The direct
處理單元470負責維護實體儲存對照表210的內容,而不是主裝置110,實體儲存對照表210紀錄每個邏輯位置的使用者資料實際儲存於快閃記憶單元390中的哪個實體位置。
The
圖5為依據本發明實施例的產生快閃記憶裝置的實體儲存對照表的方法流程圖。此方法由處理單元470於載入並執行指令、宏碼或微碼時實施。處理單元470通過控制器490從主裝置110收到讀取請求151後(步驟S510),驅動快閃記憶控制器480從快閃記憶單元390讀取請求的邏輯位置區間的實體儲存對照表210(也就是相應於邏輯位置區間的實體位置資訊)並儲存至資料緩衝區450(步驟S530)。需注意的是,資料緩衝區450只需要配置空間儲存原始的實體儲存對照表210。接著,處理單元470驅動直接記憶體存取控制器430從資料緩衝區450讀取實體儲存對照表210中的實體位置資訊,並輸出至擴充電路410(步驟S550)。
FIG. 5 is a flowchart of a method for generating a physical storage comparison table of a flash memory device according to an embodiment of the present invention. This method is implemented by the
快閃記憶控制器480使用數個電子訊號來協調與快閃記憶單元390間的資料與命令傳遞,包含資料線(data line)、時脈訊號(clock signal)與控制訊號(control signal)。資料線可用以傳遞命令、位址、讀出及寫入的資料;控制訊號線可用以傳遞晶片致能(Chip Enable CE)、位址提取致能(Address Latch Enable ALE)、命令提取致能(Command Latch Enable CLE)、寫入致能(Write Enable WE)等控制訊號。處理單元470可採用雙倍資料率(Double Data Rate DDR)通訊協定與快閃記憶單元390溝通,例如,開放NAND快閃記憶介面(Open NAND Flash Interface ONFI)、雙倍資料率開關(DDR toggle)或其他介面。
The
快閃記憶單元390可包含多個儲存子單元,每個儲存子單元各自使
用關聯的存取子介面與處理單元470進行溝通。一或多個儲存子單元可封裝在一個晶粒(Die)之中。存取子介面及其後連接的儲存子單元又可統稱為輸出入通道,並可以邏輯單元編號(Logical Unit Number LUN)識別。換句話說,多個儲存子單元共享一個存取子介面。例如,當快閃記憶單元390包含4個存取子介面且每一個存取子介面連接4個儲存子單元時,快閃記憶單元390一共擁有16個儲存子單元。處理單元470可驅動存取子介面中之一者,從指定的儲存子單元讀取資料。每個儲存子單元擁有獨立的晶片致能(CE)控制訊號。換句話說,當欲對指定的儲存子單元進行資料讀取時,需要驅動關聯的存取子介面來致能此儲存子單元的晶片致能控制訊號。圖6為存取子介面與多個儲存子單元的連接示意圖。處理單元470可透過存取子介面610使用獨立的晶片致能控制訊號670_0至670_i從連接的儲存子單元630_0至630_i中選擇出其中一者,接著,透過共享的資料線650從選擇出的儲存子單元的指定實體位址讀取資料。
The
參考圖4。擴充電路410將實體儲存對照表210中相應於讀取請求151中每一個邏輯位置的實體位置資訊擴充為快閃記憶標準規範的位元組長度。接著,控制器490從擴充電路410取得相應於每一個邏輯位置的擴充後實體位置資訊,並經由資料連結層320及實體層310回覆給主裝置110。實體層310可包含差動輸出對(Rx pair)以傳送資料或回覆訊息至主裝置110,以及差動輸入對(Tx pair)以從主裝置110接收資料或命令。於另一些實施例,擴充電路410可整合至直接記憶體存取控制器430的內部。
Refer to Figure 4. The
圖7至13為依據本發明實施例的擴充電路的方塊圖。需注意的是,快閃記憶裝置130可使用多於或少於四位元組儲存相應於每個邏輯位置的實體位置資訊,快閃記憶標準規範可使用多於八位元組,或少於八位元組但高於快閃記憶裝置130使用的位元組數目進行實體位置資訊的儲存,本發明並不因此侷限。
7 to 13 are block diagrams of expansion circuits according to embodiments of the present invention. It should be noted that the
參考圖7。擴充電路410可使用填充的方式產生擴充後實體位置資訊。詳細來說,擴充電路410透過直接記憶體存取控制器430從資料緩衝區450接收實體位置資訊,加上填充資料成為擴充後實體位置資訊,並輸出至控制器490。擴充電路410_1至410_3為填充式(padding-type)的擴充電路。
Refer to Figure 7. The
擴充電路410_1可包含四位元組的填充寄存器710及實體位置寄存器730。填充寄存器710鎖存固定的虛假值(dummy value),例如0x0000、0xFFFF、0xAAAA或其他資料模式(data pattern)。實體位置寄存器730電性連接至直接記憶體存取控制器430的輸出端,可接收並鎖存(latch)相應於一個邏輯位置的實體位置資訊[0..3]。控制器490取得填充寄存器的710的虛假值作為擴充後實體位置資訊[0..3],取得實體位置寄存器730的實體位置資訊作為擴充後實體位置資訊[4..7],並且組合輸出至資料連結層320。以上所述可稱為前填充(pre-padding)。
The expansion circuit 410_1 may include a four-
相似地,擴充電路410_2可包含四位元組的實體位置寄存器730及填充寄存器710。控制器490取得實體位置寄存器730的實體位置資訊作為擴充後實體位置資訊[0..3],取得填充寄存器的710的虛假值作為擴充後實體位置資訊[4..7],並且組合輸出至資料連結層320。以上所述可稱為後填充(post-padding)。
Similarly, the expansion circuit 410_2 may include a four-byte
擴充電路410_3使用穿插填充(interleaved-padding)的方式產生擴充後實體位置資訊。擴充電路410_3可包含二個二位元組的填充寄存器710_1及710_2,以及二個二位元組的實體位置寄存器730_1及730_2。填充寄存器710_1及710_2可鎖存相同或不同的虛假值。實體位置寄存器730_1及730_2,舉例來說,可分別鎖存實體位置資訊中的實體區塊編號及單元編號。控制器490可分別讀取實體位置寄存器730_1、填充寄存器的710_1、實體位置寄存器730_2及填充寄存器的710_2的值作為擴充後實體位置資訊[0..1]、[2..3]、[4..5]及
[6..7],並且組合輸出至資料連結層320。所屬領域具有通常知識者可置換擴充電路410_3中的元件,例如使用四個一位元組的填充寄存器,以及四個一位元組的實體位置寄存器,或者改變擴充電路410_3中的元件安排,用以完成類似但不同的穿插填充方式,因此,本發明並不因此侷限。
The expansion circuit 410_3 uses an interleaved-padding method to generate expanded physical location information. The expansion circuit 410_3 may include two two-byte padding registers 710_1 and 710_2, and two two-byte physical location registers 730_1 and 730_2. The padding registers 710_1 and 710_2 can latch the same or different false values. The physical location registers 730_1 and 730_2, for example, can respectively latch the physical block number and the unit number in the physical location information. The
圖7所示的填充式擴充電路410_1可進一步改良來加上擾碼器,將實體位置資訊編碼,避免被惡意使用。擾碼器可於快閃記憶裝置130中轉置(transpose)或以其他方式編碼實體位置資訊,使得當主裝置110或其他裝置沒有配置適當設定的解擾器時,無法解讀出編碼訊息。圖8為改良後的擴充電路410_4及410_5。擴充電路410_4可包含八位元組擾碼寄存器750_1,用以鎖存擾碼[0..7]。擴充電路410_4可更設置擾碼器770_1,連接擾碼寄存器750_1、填充寄存器的710及實體位置寄存器730的輸出端、以及控制器490的輸入端。擾碼器770_1使用擾碼寄存器750_1中的值對擴充後實體位置資訊進行擾碼運算,並輸出擾碼後擴充實體位置資訊至控制器490。擾碼器770_1可包含多個互斥或閘(XOR gate)對擾碼寄存器750_1中的值及擴充後實體位置資訊執行互斥或運算。控制器490接著回覆此擾碼後的擴充實體位置資訊給主裝置110。
The padding extension circuit 410_1 shown in FIG. 7 can be further improved to add a scrambler to encode the physical location information to avoid malicious use. The scrambler can transpose or encode the physical location information in the
擴充電路410_5可包含四位元組擾碼寄存器750_2,用以鎖存擾碼[0..3]。擴充電路410_5可更設置擾碼器770_2,連接擾碼寄存器750_1、實體位置寄存器730的輸入端、及直接記憶體存取控制器430的輸出端。擾碼器770_2使用擾碼寄存器750_2中的值對原始實體位置資訊進行擾碼運算,並輸出擾碼後實體位置資訊至實體位置寄存器730。擾碼器770_2可包含多個互斥或閘對擾碼寄存器750_2中的值及原始實體位置資訊執行互斥或運算。控制器490取得填充寄存器的710的虛假值作為擴充後實體位置資訊[0..3],取得實體位置寄存器730的擾碼後實體位置資訊作為擴充後實體位置資訊[4..7],
並且組合輸出至資料連結層320,用以回覆主裝置110。
The expansion circuit 410_5 may include a four-byte scrambling code register 750_2 for latching the scrambling code [0..3]. The expansion circuit 410_5 can be further provided with a scrambler 770_2, which is connected to the scrambler 750_1, the input terminal of the
圖7所示的填充式擴充電路410_2可進一步改良來加上擾碼器770_1或770_2及擾碼寄存器750_1或750_2,將(擴充後)實體位置資訊編碼,避免被惡意使用。所屬技術領域具有通常知識者可依據如上所述擴充電路410_1的內容推論填充式擴充電路410_2的修改技術細節,為求簡潔不再贅述。 The padding expansion circuit 410_2 shown in FIG. 7 can be further improved to add a scrambler 770_1 or 770_2 and a scramble code register 750_1 or 750_2 to encode (expanded) physical location information to avoid malicious use. Those skilled in the art can infer the technical details of the modification of the filling type extension circuit 410_2 based on the content of the extension circuit 410_1 as described above, and will not be repeated for brevity.
圖7所示的填充式擴充電路410_3可進一步改良來加上擾碼器,將實體位置資訊編碼,避免被惡意使用。圖9為改良後的擴充電路410_6及410_7。擴充電路410_6可更設置擾碼器770_1,連接擾碼寄存器750_1、填充寄存器的710_1及710_2以及實體位置寄存器730_1及730_2的輸出端、以及控制器490的輸入端。擾碼器770_1使用擾碼寄存器750_1中的值對擴充後實體位置資訊(組合實體位置寄存器730_1及730_2以及填充寄存器710_1及710_2的值)進行擾碼運算,並輸出擾碼後擴充實體位置資訊至控制器490。控制器490接著回覆此擾碼後的擴充實體位置資訊給主裝置110。
The padding extension circuit 410_3 shown in FIG. 7 can be further improved to add a scrambler to encode the physical location information to avoid malicious use. Figure 9 shows the improved expansion circuits 410_6 and 410_7. The expansion circuit 410_6 can be further equipped with a scrambler 770_1, which is connected to the scrambler register 750_1, the output terminals of the filling registers 710_1 and 710_2, the physical location registers 730_1 and 730_2, and the input terminal of the
擴充電路410_7可更設置擾碼器770_2,連接擾碼寄存器750_2、實體位置寄存器730_1及730_2的輸入端、及直接記憶體存取控制器430的輸出端。擾碼器770_2使用擾碼寄存器750_2中的值對原始實體位置資訊進行擾碼運算,並分別輸出擾碼後實體位置資訊[0..1]及[2..3]至實體位置寄存器730_1及730_2。控制器490取得實體位置寄存器730_1的擾碼後實體位置資訊作為擴充後實體位置資訊[0..1],取得填充寄存器的710_1的虛假值作為擴充後實體位置資訊[2..3],取得實體位置寄存器730_2的擾碼後實體位置資訊作為擴充後實體位置資訊[4..5],取得填充寄存器的710_2的虛假值作為擴充後實體位置資訊[6..7],並且組合輸出至資料連結層320,用以回覆主裝置110。
The expansion circuit 410_7 can be further equipped with a scrambler 770_2, which is connected to the scrambler register 750_2, the input terminals of the physical location registers 730_1 and 730_2, and the output terminal of the direct
所屬領域具有通常知識者可置換擴充電路410_6或410_7中的元件, 例如使用四個一位元組的填充寄存器,以及四個一位元組的實體位置寄存器,或者改變擴充電路410_6或410_7中的元件安排,用以完成類似但不同的穿插填充方式,因此,本發明並不因此侷限。 Those with ordinary knowledge in the field can replace the components in the expansion circuit 410_6 or 410_7, For example, use four one-tuple padding registers and four one-tuple physical location registers, or change the component arrangement in the expansion circuit 410_6 or 410_7 to complete similar but different interleaved padding methods. Therefore, this The invention is not limited by this.
參考圖4。擴充電路410可使用同位元編碼的方式產生擴充後實體位置資訊。詳細來說,擴充電路410從資料緩衝區450接收實體位置資訊,並據以加上更多位元組的資料以成為帶有奇同位(odd parity)或偶同位(even parity)的擴充後實體位置資訊,並輸出至控制器490,使得主裝置110可判斷擴充後實體位置資訊是否正確。當擴充後實體位置資訊不正確時,主裝置110可請求快閃記憶裝置重新傳送相應此邏輯位置的實體位置資訊。擴充電路410_8至410_10為同位式(parity-type)的擴充電路。
Refer to Figure 4. The
參考圖10。擴充電路410_8可包含四位元組的同位元寄存器780及實體位置寄存器730。擴充電路410_8可更包含同位元產生器790,連接至直接記憶體存取控制器430的輸出端,用以依據原始實體位置資訊產生更多位元組的資料(又稱為同位元組),並輸出同位元組至同位元寄存器780。舉例來說,同位元產生器790可包含比較器,判斷原始實體位置資訊中位元值為1的總數。若總數為奇數則同位元產生器790輸出帶有偶數個位元值為1的同位元組(例如0x0000),若總數為偶數則輸出帶有奇數個位元值為1的同位元組(例如0x0001)。控制器490取得同位元寄存器的780的同位元組作為擴充後實體位置資訊[0..3],取得實體位置寄存器730的實體位置資訊作為擴充後實體位置資訊[4..7],並且組合輸出帶奇同位的擴充後實體位置資訊至資料連結層320。以上所述可稱為前同位(pre-parity)。
Refer to Figure 10. The expansion circuit 410_8 may include a 4-
相似地,擴充電路410_9可包含四位元組的實體位置寄存器730及同位元寄存器780。控制器490取得實體位置寄存器730的實體位置資訊作為擴充後實體位置資訊[0..3],取得同位元寄存器的780的同位元組作為擴充後實體位置資訊[4..7],並且組合輸出帶奇同位的擴充
後實體位置資訊至資料連結層320。以上所述可稱為後同位(post-parity)。
Similarly, the expansion circuit 410_9 may include a four-byte
於另一些實施例中,所屬技術領域具通常知識者可修改同位元產生器790,若總數為奇數則同位元產生器790輸出帶有奇數個位元值為1的同位元組(例如0x0001),若總數為偶數則輸出帶有偶數個位元值為1的同位元組(例如0x0000),使得擴充電路410_8或410_9可輸出帶偶同位的擴充後實體位置資訊[0..7]。
In other embodiments, those skilled in the art can modify the
於更另一些實施例中,當實體位置資訊及同位元組的長度相同時,所屬技術領域具通常知識者可省略同位元產生器790。同位元寄存器780連接至直接記憶體存取控制器430的輸出端,並鎖存直接記憶體存取控制器430輸出的原始實體位置資訊作為同位元組。控制器490取得實體位置寄存器730的實體位置資訊作為擴充後實體位置資訊[0..3],取得同位元寄存器的780的實體位置資訊作為擴充後實體位置資訊[4..7],並且組合輸出偶同位的擴充後實體位置資訊至資料連結層320。
In some other embodiments, when the physical location information and the length of the parity group are the same, those skilled in the art can omit the
擴充電路410_10使用穿插同位(interleaved-parity)的方式產生擴充後實體位置資訊。擴充電路410_10可包含二個二位元組的同位元寄存器780_1及780_2,以及二個二位元組的實體位置寄存器730_1及730_2。擴充電路410_10可更包含同位元產生器790_1及790_2,連接至直接記憶體存取控制器430的輸出端。舉例來說,同位元產生器790_1可包含比較器,判斷原始實體位置資訊的實體區塊編號中位元值為1的總數。若總數為奇數則同位元產生器790_1輸出帶有偶數個位元值為1的同位元組(例如0x00),若總數為偶數則輸出帶有奇數個位元值為1的同位元組(例如0x01)至同位元寄存器780_1。同位元產生器790_2可包含比較器,判斷原始實體位置資訊的單元編號中位元值為1的總數。若總數為奇數則同位元產生器790_2輸出帶有偶數個位元值為1的同位元組(例如0x00),若總數為偶數則
輸出帶有奇數個位元值為1的同位元組(例如0x01)至同位元寄存器780_2。控制器490可分別讀取實體位置寄存器730_1、同位元寄存器的780_1、實體位置寄存器730_2及同位元寄存器的780_2的值作為帶奇同位的擴充後實體位置資訊[0..1]、[2..3]、[4..5]及[6..7],並且組合輸出至資料連結層320。所屬領域具有通常知識者可置換擴充電路410_10中的元件,例如使用四個一位元組的同位元寄存器,以及四個一位元組的實體位置寄存器,或者改變擴充電路410_10中的元件安排,用以完成類似但不同的穿插填充方式,因此,本發明並不因此侷限。
The expansion circuit 410_10 uses an interleaved-parity method to generate expanded physical location information. The expansion circuit 410_10 may include two two-byte parity registers 780_1 and 780_2, and two two-byte physical location registers 730_1 and 730_2. The expansion circuit 410_10 may further include parity generators 790_1 and 790_2, which are connected to the output terminal of the direct
於另一些實施例中,所屬技術領域具通常知識者可修改同位元產生器790_1及790_2。若同位元產生器790_1及790_2中之每一者偵測到總數為奇數則輸出0x0001(亦即是數值1)作為同位元組,若總數為偶數則輸出0x0000(亦即是數值0)作為同位元組,使得擴充電路410_10可輸出帶偶同位的擴充後實體位置資訊[0..7]。 In other embodiments, those skilled in the art can modify the parity generators 790_1 and 790_2. If each of the parity generators 790_1 and 790_2 detects that the total number is odd, it outputs 0x0001 (that is, the value 1) as the parity group, and if the total number is even, it outputs 0x0000 (that is, the value 0) as the parity. Tuples, so that the expansion circuit 410_10 can output expanded physical location information [0..7] with even parity.
於更另一些實施例中,當實體位置資訊及同位元組的長度相同時,所屬技術領域具通常知識者可省略同位元產生器790_1及790_2。同位元寄存器780_1及780_2連接至直接記憶體存取控制器430的輸出端,並分別鎖存直接記憶體存取控制器430輸出的原始實體位置資訊的實體區塊編號及單元編號。控制器490分別取得實體位置寄存器730_1、同位元寄存器780_1、實體位置寄存器730_2及同位元寄存器780_2的內容作為擴充後實體位置資訊[0..1]、[2..3]、[4..5]及[6..7],並且組合輸出帶偶同位的擴充後實體位置資訊至資料連結層320。
In some other embodiments, when the physical location information and the length of the parity group are the same, those skilled in the art can omit the parity generators 790_1 and 790_2. The parity registers 780_1 and 780_2 are connected to the output terminal of the direct
圖10所示的同位式擴充電路410_8可進一步改良來加上擾碼器,將實體位置資訊編碼,避免被惡意使用。圖12為改良後的擴充電路410_11及410_12。擴充電路410_11可包含八位元組擾碼寄存器750_1,用以鎖存擾碼[0..7]。擴充電路410_11可更設置擾碼器770_1,
連接擾碼寄存器750_1、同位元寄存器780及實體位置寄存器730的輸出端、以及控制器490的輸入端。擾碼器770_1使用擾碼寄存器750_1中的值對擴充後實體位置資訊進行擾碼運算,並輸出擾碼後擴充實體位置資訊至控制器490。
The parity expansion circuit 410_8 shown in FIG. 10 can be further improved to add a scrambler to encode the physical location information to avoid malicious use. Figure 12 shows the improved expansion circuits 410_11 and 410_12. The expansion circuit 410_11 may include an octet scrambling code register 750_1 for latching the scrambling code [0..7]. The expansion circuit 410_11 can be further equipped with a scrambler 770_1,
The output terminals of the scrambling code register 750_1, the
擴充電路410_12可包含四位元組擾碼寄存器750_2,用以鎖存擾碼[0..3]。擴充電路410_12可更設置擾碼器770_2,連接擾碼寄存器750_2、實體位置寄存器730的輸入端、及直接記憶體存取控制器430的輸出端。擾碼器770_2使用擾碼寄存器750_2中的值對原始實體位置資訊進行擾碼運算,並輸出擾碼後實體位置資訊至實體位置寄存器730。控制器490取得同位元寄存器的780的同位元組作為擴充後實體位置資訊[0..3],取得實體位置寄存器730的擾碼後實體位置資訊作為擴充後實體位置資訊[4..7],並且組合輸出至資料連結層320,用以回覆主裝置110。
The expansion circuit 410_12 may include a four-byte scrambling code register 750_2 for latching the scrambling code [0..3]. The expansion circuit 410_12 can be further provided with a scrambler 770_2, which is connected to the scrambler 750_2, the input terminal of the
圖10所示的同位式擴充電路410_9可進一步改良來加上擾碼器,將(擴充後)實體位置資訊編碼,避免被惡意使用。所屬技術領域具有通常知識者可依據如上所述擴充電路410_8的內容推論同位式擴充電路410_9的修改技術細節,為求簡潔不再贅述。 The co-located expansion circuit 410_9 shown in FIG. 10 can be further improved to add a scrambler to encode (expanded) physical location information to avoid malicious use. Those with ordinary knowledge in the technical field can infer the technical details of the modification of the co-located expansion circuit 410_9 based on the content of the expansion circuit 410_8 as described above, and will not be repeated for the sake of brevity.
圖11所示的同位式擴充電路410_10可進一步改良來加上擾碼器,將實體位置資訊編碼,避免被惡意使用。圖13為改良後的擴充電路410_13。擴充電路410_13可更設置擾碼器770_1,電性連接擾碼寄存器750_1、同位元寄存器的780_1及780_2以及實體位置寄存器730_1及730_2的輸出端、以及控制器490的輸入端。擾碼器770_1使用擾碼寄存器750_1中的值對擴充後實體位置資訊(組合實體位置寄存器730_1及730_2以及同位元寄存器的780_1及780_2的值)進行擾碼運算,並輸出擾碼後擴充實體位置資訊至控制器490。控制器490接著回覆此擾碼後的擴充實體位置資訊給主裝置110。
The parity expansion circuit 410_10 shown in FIG. 11 can be further improved to add a scrambler to encode the physical location information to avoid malicious use. Figure 13 shows the improved expansion circuit 410_13. The expansion circuit 410_13 can be further provided with a scrambler 770_1, which is electrically connected to the scrambler register 750_1, the output terminals of the parity register 780_1 and 780_2, the physical location registers 730_1 and 730_2, and the input terminal of the
於另一些實施例中,圖11所示的同位式擴充電路410_10可進一步改
良來將擾碼器770_2加到介於實體位置寄存器730_1及730_2,以及直接記憶體存取控制器430的輸出端之間,用以將實體位置資訊編碼,避免被惡意使用。所屬技術領域具有通常知識者可依據如上所述圖9的擴充電路410_7的內容推論同位式擴充電路410_10的修改技術細節,為求簡潔不再贅述。
In other embodiments, the co-located expansion circuit 410_10 shown in FIG. 11 can be further modified
Lianglai adds the scrambler 770_2 between the physical location registers 730_1 and 730_2 and the output terminal of the direct
處理單元470執行的方法步驟,可用一或多個功能模塊組成的電腦程式產品來實現。這些功能模塊存儲於非揮發性儲存裝置,並且可被處理單元470於特定時間點載入並執行。圖14為本發明實施例的產生快閃記憶裝置的實體儲存對照表的功能模塊示意圖。處理單元470執行讀取請求解析模塊1410以完成步驟S510的操作,執行實體位置資訊讀取驅動模塊1430以完成步驟S530的操作,並且執行實體位置資訊輸出驅動模塊1450以完成步驟S550的操作。讀取請求解析模塊1410可包含控制器490的驅動程式,以及解析器(parser),用以辨認接收到請求的類型,以及從請求中取得邏輯位置區間。實體位置資訊讀取驅動模塊1430可包含快閃記憶單元390的驅動程式,以及操作驅動程式的程式碼。實體位置資訊輸出驅動模塊1450可包含直接記憶體存取控制器430驅動程式,以及操作驅動程式的程式碼。
The method steps executed by the
本發明所述的方法中的全部或部分步驟可以電腦程式實現,例如電腦的作業系統、電腦中特定硬體的驅動程式、或軟體應用程式。此外,也可實現於如上所示的其他類型程式。所屬技術領域具有通常知識者可將本發明實施例的方法撰寫成電腦程式,為求簡潔不再加以描述。依據本發明實施例方法實施的電腦程式.可儲存於適當的電腦可讀取資料載具,例如DVD、CD-ROM、USB碟、硬碟,亦可置於可通過網路(例如,網際網路,或其他適當載具)存取的網路伺服器。 All or part of the steps in the method of the present invention can be implemented by a computer program, such as a computer operating system, a specific hardware driver in the computer, or a software application program. In addition, it can also be implemented in other types of programs as shown above. Those with ordinary knowledge in the technical field can write the method of the embodiments of the present invention into a computer program, which is not described for brevity. The computer program implemented according to the method of the embodiment of the present invention can be stored in an appropriate computer readable data carrier, such as DVD, CD-ROM, USB disk, hard disk, and can also be placed on the Internet (for example, the Internet Or other appropriate vehicle).
雖然圖4、7-13中包含了以上描述的元件,但不排除在不違反發明的 精神下,使用更多其他的附加元件,已達成更佳的技術效果。此外,雖然圖5的流程圖採用指定的順序來執行,但是在不違反發明精神的情況下,熟習此技藝人士可以在達到相同效果的前提下,修改這些步驟間的順序,所以,本發明並不侷限於僅使用如上所述的順序。此外,熟習此技藝人士亦可以將若干步驟整合為一個步驟,或者是除了這些步驟外,循序或平行地執行更多步驟,本發明亦不因此而侷限。 Although the elements described above are included in Figures 4 and 7-13, they are not excluded from In spirit, using more other additional components has achieved better technical results. In addition, although the flowchart of FIG. 5 is executed in a specified order, those skilled in the art can modify the sequence of these steps on the premise of achieving the same effect without violating the spirit of the invention. Therefore, the present invention does not It is not limited to using only the sequence described above. In addition, those skilled in the art can also integrate several steps into one step, or in addition to these steps, perform more steps sequentially or in parallel, and the present invention is not limited thereby.
雖然本發明使用以上實施例進行說明,但需要注意的是,這些描述並非用以限縮本發明。相反地,此發明涵蓋了熟習此技藝人士顯而易見的修改與相似設置。所以,申請權利要求範圍須以最寬廣的方式解釋來包含所有顯而易見的修改與相似設置。 Although the present invention is described using the above embodiments, it should be noted that these descriptions are not intended to limit the present invention. On the contrary, this invention covers modifications and similar arrangements that are obvious to those skilled in the art. Therefore, the scope of applied claims must be interpreted in the broadest way to include all obvious modifications and similar settings.
110:主裝置 110: main device
130:快閃記憶裝置 130: Flash memory device
310:實體層 310: physical layer
320:資料連結層 320: Data Link Layer
390:快閃記憶單元 390: flash memory unit
410:擴充電路 410: Expansion Circuit
430:直接記憶體存取控制器 430: Direct Memory Access Controller
450:資料緩衝區 450: data buffer
470:處理單元 470: Processing Unit
480:快閃記憶控制器 480: Flash memory controller
490:控制器 490: Controller
Claims (10)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW108113050A TWI705329B (en) | 2018-06-25 | 2018-06-25 | Apparatus and method and computer program product for generating a physical storage mapping table |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW108113050A TWI705329B (en) | 2018-06-25 | 2018-06-25 | Apparatus and method and computer program product for generating a physical storage mapping table |
Publications (2)
Publication Number | Publication Date |
---|---|
TW202001571A TW202001571A (en) | 2020-01-01 |
TWI705329B true TWI705329B (en) | 2020-09-21 |
Family
ID=69942023
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW108113050A TWI705329B (en) | 2018-06-25 | 2018-06-25 | Apparatus and method and computer program product for generating a physical storage mapping table |
Country Status (1)
Country | Link |
---|---|
TW (1) | TWI705329B (en) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101401076A (en) * | 2004-08-24 | 2009-04-01 | 桑迪士克3D公司 | Method and apparatus for using a one-time or few-time programmable memory with a host device designed for erasable/rewriteable memory |
TW201344432A (en) * | 2012-04-17 | 2013-11-01 | Phison Electronics Corp | Memory management method and memory controller and memory storage device using the same |
CN104025010A (en) * | 2011-09-30 | 2014-09-03 | 净睿存储股份有限公司 | Variable length encoding in a storage system |
TW201502973A (en) * | 2013-03-15 | 2015-01-16 | Micron Technology Inc | Apparatuses and methods for adaptive control of memory |
TWI587135B (en) * | 2016-11-23 | 2017-06-11 | 群聯電子股份有限公司 | Data storage method, memory storage device and memory control circuit unit |
TWI592800B (en) * | 2016-10-04 | 2017-07-21 | 大心電子(英屬維京群島)股份有限公司 | Memory management method and storage controller using the same |
US20170322847A1 (en) * | 2016-05-03 | 2017-11-09 | Samsung Electronics Co., Ltd. | Raid storage device and method of management thereof |
-
2018
- 2018-06-25 TW TW108113050A patent/TWI705329B/en active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101401076A (en) * | 2004-08-24 | 2009-04-01 | 桑迪士克3D公司 | Method and apparatus for using a one-time or few-time programmable memory with a host device designed for erasable/rewriteable memory |
CN104025010A (en) * | 2011-09-30 | 2014-09-03 | 净睿存储股份有限公司 | Variable length encoding in a storage system |
TW201344432A (en) * | 2012-04-17 | 2013-11-01 | Phison Electronics Corp | Memory management method and memory controller and memory storage device using the same |
TW201502973A (en) * | 2013-03-15 | 2015-01-16 | Micron Technology Inc | Apparatuses and methods for adaptive control of memory |
US20170322847A1 (en) * | 2016-05-03 | 2017-11-09 | Samsung Electronics Co., Ltd. | Raid storage device and method of management thereof |
TWI592800B (en) * | 2016-10-04 | 2017-07-21 | 大心電子(英屬維京群島)股份有限公司 | Memory management method and storage controller using the same |
TWI587135B (en) * | 2016-11-23 | 2017-06-11 | 群聯電子股份有限公司 | Data storage method, memory storage device and memory control circuit unit |
Also Published As
Publication number | Publication date |
---|---|
TW202001571A (en) | 2020-01-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI475385B (en) | Method of programming memory cells and reading data, memory controller and memory storage device using the same | |
TWI467372B (en) | Command executing method, memory controller and memory storage apparatus | |
TWI662410B (en) | Data storage device and methods for processing data in the data storage device | |
TW201303587A (en) | Meta data handling within a flash media controller | |
TW201506674A (en) | Command executing method, memory controller and memory storage apparatus | |
WO2019090493A1 (en) | Memory block recovery method and device | |
US11086554B2 (en) | Writing same data on a storage system | |
TWI656531B (en) | Average wear method, memory control circuit unit and memory storage device | |
US11307991B2 (en) | Apparatus and method and computer program product for generating a storage mapping table | |
TWI722496B (en) | Method and apparatus for encrypting and decrypting user data | |
KR20210041158A (en) | Operating method of memory system and host recovering data with write error | |
TW201432709A (en) | Controlling method, connector and memory storage device | |
JP2016143422A (en) | Configuring serial devices | |
TWI705329B (en) | Apparatus and method and computer program product for generating a physical storage mapping table | |
TWI661302B (en) | Apparatus and method and computer program product for generating a physical storage mapping table | |
CN113721838B (en) | Write, read data method for memory device, memory controller, and DMA engine | |
TWI750013B (en) | Data accessing method, memory control circuit unit and memory storage device | |
TWI787110B (en) | Method and apparatus for programming data into flash memory | |
TWI648629B (en) | Mapping table updating method, memory control circuit unit and memory storage device | |
TWI728448B (en) | Command transmitting method, memory control circuit unit and memory storage device | |
WO2022126534A1 (en) | Data processing method and related device | |
TWI747351B (en) | Method and apparatus for encrypting and decrypting physical address information | |
TWI712052B (en) | Memory management method, storage controller and storage device | |
TWI797905B (en) | Apparatus and method for driving redundant array of independent disks (raid) engine | |
TWI798034B (en) | Memory controller and data processing method |