[go: up one dir, main page]

TWI270785B - Universal serial bus flash memory integrated circuit - Google Patents

Universal serial bus flash memory integrated circuit Download PDF

Info

Publication number
TWI270785B
TWI270785B TW90128866A TW90128866A TWI270785B TW I270785 B TWI270785 B TW I270785B TW 90128866 A TW90128866 A TW 90128866A TW 90128866 A TW90128866 A TW 90128866A TW I270785 B TWI270785 B TW I270785B
Authority
TW
Taiwan
Prior art keywords
flash memory
circuit
memory
volume
data
Prior art date
Application number
TW90128866A
Other languages
Chinese (zh)
Inventor
Chien-An Chen
Khein-Seng Pua
Original Assignee
Phison Electronics Corp
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 Phison Electronics Corp filed Critical Phison Electronics Corp
Priority to TW90128866A priority Critical patent/TWI270785B/en
Application granted granted Critical
Publication of TWI270785B publication Critical patent/TWI270785B/en

Links

Landscapes

  • Read Only Memory (AREA)

Abstract

The present invention discloses a universal serial bus flash memory integrated circuit, which provides a flash memory integrated circuit having universal serial bus and host connections. Universal serial bus (USB) becomes a standard serial interface, which is capable of quickly storing data in an external memory device, and quickly reading data from the external memory device. Therefore, combining the speed of the flash memory device and the universal serial bus is very important. Further, by means of designing the flash memory device according to the universal serial bus interface, the flash memory device could become a standard universal serial bus storage device, such that the host and the flash memory storage device could easily connect and interact with each other. If the storage device represents an integrated circuit type, it becomes a built-in universal serial bus flash memory integrated circuit.

Description

1270785 九、發明說明: 【發明所屬之技術領域】 此項發明係有關於快閃記憶體儲存裝置,尤指可以 列匯流排連接之快閃記憶體儲存裝置型 ,即為萬咖_____麵路f 【先前技術】 _τγ之,及不可抹除之特性使它成紐存數據之 非I”於如社㈣子錢衬觀裝置而言,這是-種 大Γρ八^的數據儲存方式’而快閃記憶體所帶來的便利性使它比 可狗I =儲存|置(如硬式磁碟等)具有更大的優勢,除了 间之夕,快閃記憶體的優點還有低電源 巧以及高速等優點。 罪『季二 θ快閃記憶體為轉發性的,這表示即使電源被咖了,它還 疋保有已儲存的數據,這比標準的隨機存取記憶體(RA⑷更1270785 IX. Description of the invention: [Technical field of the invention] The invention relates to a flash memory storage device, in particular to a flash memory storage device type which can be connected by a bus bar, that is, a _____ face Road f [Prior Art] _τγ, and the non-erasable characteristics make it a non-I of the new data. In the case of Rushe (4) Zi Qiang viewing device, this is the data storage method of the big Γρ八^ The convenience brought by the flash memory makes it more advantageous than the dog I = storage | (such as hard disk, etc.), in addition to the advantages of flash memory and low power And the advantages of high speed. The crime of the quarter two θ flash memory is forward-oriented, which means that even if the power is turned on, it still retains the stored data, which is more than the standard random access memory (RA(4).

加進步,而隨機存取記憶體為揮發性的,耻t電源被關閉時, 就會遺失已儲存之數據。 萬用序列傳輸介面是P C/ΝΒ/ϊ A產品的標準,且以上 產品已可藉由萬用序列傳輸介面的儲存媒體來啟動( 、丨a b 1 e )’使得硬式磁碟被序列傳輸介面的儲存媒體取 代的空間加大’但目前的序列傳輸介面的儲存媒體多為外掛的方 式亦會產生許多的不便。 5 1270785 目前的小型化ϊ A產品如p D A、電腦、數位相機等為 因應多功能的需求,因此都有附上作業系統( 〇perati〇n System)如界 土 n c E/ L l n u x等,其硬體設計架構上都需一顆cpu,再加上一顆 NOR Type的Flas.h Mem〇r又來儲存程式碼, 如果需要有資料的儲存空間,戦要再加上其他_ram或内 建iNAND Flash Memor y或外接記憶卡,以 上的三種解決方_不太算^in CE/Linux的鮮 ’I面’以者财都需要再自行修改這些作業系朗驅動程式或 應用程式,S此在新產品的開發上常為這些介面花費不少的心力 及金錢。 因此’目前需要—個儲存媒體可以内建於系統之中,具有一 標料面可通用於各種作業系統,不需再修改這些作業系統的驅· 動程式或·程式’並具有低電騎耗率、可#性、輕巧以及高. 速等優點,以達到可攜性之需求。 鲁 【發明内容】 ;、、、了達J這其他優點,還有為了克服傳統快閃記慎體 之t點,以及符合域處所概她狀發明目的,以,絲明 體^路1萬用序列匯流排與主機連接之快閃記憶體積Progress is made, and the random access memory is volatile. When the shame power is turned off, the stored data is lost. The universal serial transmission interface is the standard of the PC/ΝΒ/ϊ A product, and the above products can be activated by the storage medium of the universal serial transmission interface (, 丨ab 1 e )' so that the hard disk is serially transmitted through the interface. The space replaced by storage media has increased's. However, the storage media of the current serial transmission interface is often plugged in, which causes a lot of inconvenience. 5 1270785 The current miniaturized ϊ A products such as p DA, computers, digital cameras, etc. are equipped with multi-functional requirements, so they are equipped with operating systems (〇perati〇n System) such as Boundary nc E/L lnux, etc. Hardware design requires a CPU, plus a NOR Type Flas.h Mem〇r to store the code, if you need to have data storage space, you need to add other _ram or built-in iNAND Flash Memor y or external memory card, the above three solutions _ do not count ^in CE / Linux's fresh 'I face', you need to modify these operating system drivers or applications, S The development of new products often costs a lot of effort and money for these interfaces. Therefore, 'currently needed—a storage medium can be built into the system, with a standard surface that can be used in various operating systems, without having to modify the operating system or program of these operating systems and have low power consumption. The advantages of rate, availability, lightness, and high speed are required to achieve portability. Lu [invention] 】, , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , Flash memory volume connected to the bus and the host

萬用序列匯流排(U S B 已成為標準的序列介面,它讓數 6 1270785 相隨触晚賊_财,以及 :=,=Γ閃記憶體積體電路中讀取數據,因此 利,除二二點’以及萬用序列匯流排的速度將非常有 , 冑由4搭配序列匯流排介面之萬用序列匯 。4衫置,來社機和㈣記鐘可以__連和互動 個控 了 制=序列匯流排快閃記憶體積體電路之封裂中包含了 1 :,M奶—域嶋邮,梅的腳位保留 該萬用序舰流排介面腳位(相傳輸介面);該儲存式快 =2=細纟,繼咖喝她憶體積體電 二出椒峰繼以獅量;及該控制器的輸入 〇=_位,使職序列匯流排㈣記憶體積體電路可以 控制器為裝置中的—項主要組件,此控制 r排快閃記憶體積體電路與主機之間的命令和數據:= ^己體陣列中的數據,控最好是—個不需要外部唯讀記憶 -(ROM)或隨機存取記憶體(RAM)的單晶片嗖吁。 萬用序列匯流排快閃記憶體積體電路之館存二二憶體擴 充幻面腳位,用以擴充快閃記憶體容量,以便利用快閃記憶體陣 1270785 列來延伸記憶體大小。 此項發明之序舰流排快閃記憶體積體電路的控制器具 有無數的功能’這些功能中有-項為控制萬鱗舰流排介面, 控制器在實體和祕協定方面鱗照萬科舰流排規範,而控 制器進-步包含了-個F I FQ控制器緩衝區,使控制器接收來 自具萬用序顺流排之主機的命令和錄進倾包,此封包隨後 被儲存在-個由控制ϋ定義的特殊暫存針,而控制器同時也負 貝控制與主機之間的數據傳輸,除此之外,控制器亦提供狀態數 據給主機。 當主機發出-個寫入命令時,财產生岔斷並發送給控制器 及微處理H,以便通知微處理H該項命令,以及命令的位置,該 輯理器(例如—個8或1 6 -b i t的微處理器)為控制器的ζ :項主要組件,而微處理^從暫存财讀取制序顺流排之命 令和紐,此外,而微處理器也執行具參數之命令,微處理器一 方面管理和映射制序舰輯F I FQ位址至控繼緩衝區, 方面接絲自具萬用序舰流排之域缝據,以及將數據傳 輸至主機上’此外,微處驾也為㈣記鐘_管理,例如試 除私式或項取等命令,除此之外,微處理器也依據控制 异法執行位址方法。 、 w微處理為唯讀記憶體(R〇M)將已内建在控制器中的控制 α矛式代傷7以儲存,而微處理器為控制II在執行萬用序列匯流 1270785 排命令或快閃演算法時所使用#一個系統隨機存取記憶體(RA Μ),由於它不需要離開晶片記憶體,因此降低了系統的成本。 用以緩衝萬用序列匯流排介面和快閃記憶體陣列介面之系統 緩衝區被當成快取使用,微處理器管理此緩衝區之位址,若有需 要,緩衝區可以透過位元組或文字進行存取。 •此項發明之萬用序列匯流排快閃記憶體積體電路進一步地包 含:-硬體狀態機器,以建立主機和快閃記憶體之間系統緩衝區 ,頃取和寫入時序’快閃介面和電路控制了到快閃記憶體陣列之鲁 讀取和寫人命令’在此項個之具現巾,這是-個純硬體電 路0 除此之外,纽衝區快取之數據寫人至㈣記髓陣列時, c電路將編則c c代碼,而當讀取㈣記紐陣列之數據 至緩_快取時,E c c電路則將E C C代碼解碼·若發生E c 錯决ECC電路會判讀緩衝區快取中的文字或位元組並 錯誤。 萬用序列匯流排命令實際包含了接收主機之 1器,並將命令和參輪獅峨軸撕,並二 生和發出岔斷知微處_、已接收到命令。 控制益依據萬用序列匯流排邏輯和實體規範 據’以及將數據發送給域,位址方 ^栻之數 ^ ^ 3 了 ^理快閃記憶體之 貝取和“命令,以及管理倾至邏輯的映射。 9 1270785 路中^ ΐ令和錄“糾相匯鱗_輯體積體電 會储存在-特定的暫糾,數據隨後會被微 域㈣訊,轉鮮的如相匯流排規範 =參數桃含了7她元,BmRequest 丁⑴ ,以及位70指定了命令協定的類型,種類包括標準、等級 援=為;1 Γ月之快閃記憶體裝置這三軸塑之協定都支 ί排求’奴普通的命令,如萬用序列匯 等。 ~~ ^Feature 此項發明之快閃記憶體儲存裝置在具體形式上利用了搭配 b u 1k/控制/岔斷傳輸之萬用序列匯流排_ s s storage class。 由於快閃記憶體實體上的限制,在執行寫入命令之前,必須 先執打拭除命令,—般的,_記髓需_大約1 Q Q萬次的拭 除之後才慨軸,,㉟鳩物,以延長快閃記 憶體之壽命是非常重要的,,__供了一個邏輯 與實體位址映射表’以及—個母/子架構來達到此項目標。 以下是邏輯與實體位址映射表之使用說明,當啟動快閃記憶 體時’所有的區塊都會被搜尋’而搜尋到的實體和邏輯區塊之間 的關係記錄就會縣邏輯與實難址映射表,與此同時,未使用 的實體區麵放人備_塊讓F I F 〇糾使用,接著,邏輯與 1270785 實體位址映射表中的邏輯區塊會被用來尋找對應的實體區塊位址 ’如此一來,就可以精確地寫入或拍貝取與特定實體區塊相關連的 數據了。 將數據寫入快閃記憶體時,可能需要—個經過拭除的區塊( 新的區塊)來取代塊’織將數據寫人新的區塊中,最後將 未曾更改·數據從塊移顏區塊,這個步驟完成了寫入一 頁數據之動作。 若有好幾頁數據待寫入的話,就會重覆以上的步驟,然而,春 如果數據不斷重覆地寫人同-區塊巾的話,就會產生許多不必要 的拭除和遷移動作’此舉不僅浪費時間,同時也會縮短快閃記憶 體的使用壽命,因此,在此項發明的快閃記憶體裝置中,當數據 重覆地寫入同一區塊時,它會避免拭除的動作,而遷移動作也只 有在更換^塊知才會執行,使用此種方法不僅延長了快閃記惊體 的壽命,同時也提高了裝置的效率。 以下是一個寫入數據範例,需將3 2個小區塊( 馨Universal serial bus (USB has become the standard serial interface, it allows the number 6 1270785 to follow the late thief _ _, and: =, = Γ flash memory volume body circuit to read data, so profit, except two or two points 'And the speed of the universal serial bus will be very good, 胄 by the four-column serial bus interface serial combination. 4 shirts, come to the machine and (four) the clock can __ even and interactive control system = sequence The block of the bus flash memory volume circuit includes 1: M milk - domain mail, Mei's foot retains the universal ship channel interface (phase transmission interface); the storage type is fast = 2 = fine, after the coffee drink her recall volume body electric two out of the pepper peak followed by the lion volume; and the controller input 〇 = _ position, the job sequence bus (four) memory volume circuit can be controller in the device - The main component of this control, which controls the commands and data between the flash memory volume circuit and the host: = ^ The data in the array is preferably - does not require external read-only memory - (ROM) or Single-chip random access memory (RAM). Universal serial bus flash memory volume body The road library saves the two-fold memory to expand the magic surface to expand the flash memory capacity, so as to extend the memory size by using the flash memory array 1270785. The order of the invention is the flash memory volume. The controller of the body circuit has a myriad of functions. Among these functions, there is a - item for controlling the Wanxian ship flow interface. The controller scales the Vanke ship flow specification in terms of physical and secret agreements, and the controller step-by-step includes - A FI FQ controller buffer that causes the controller to receive commands and record dumps from the host with the multi-purpose downstream bank, which is then stored in a special temporary pin defined by the control port, and The controller also controls the data transfer between the host and the host. In addition, the controller also provides status data to the host. When the host issues a write command, the financial output is interrupted and sent to the controller and the micro Handle H to notify the microprocessor H of the command, and the location of the command. The processor (for example, an 8- or 16-bit microprocessor) is the main component of the controller: and the micro-processing ^ Read the order from the temporary storage The command and the button, in addition, and the microprocessor also executes the command with parameters, the microprocessor manages and maps the FI FQ address of the sequence ship to the control buffer on the one hand, and the wire has its own order ship flow row. The domain is sewn, and the data is transmitted to the host. In addition, the micro-drive is also a (four) clock _ management, such as the trial of private or item fetching commands, in addition, the microprocessor is also based on the control of different methods Execute the address method., w Micro-processing is a read-only memory (R〇M) that will be built into the controller to control the alpha spears to be stored 7 while the microprocessor is controlling II to execute the universal sequence. The system uses a system random access memory (RA Μ) for the 1270785 row command or flash algorithm, which reduces the cost of the system because it does not need to leave the chip memory. The system buffer used to buffer the universal serial bus interface and the flash memory array interface is used as a cache. The microprocessor manages the address of the buffer. If necessary, the buffer can pass the byte or text. Access. The invention's universal serial bus flash memory volume circuit further includes: - a hardware state machine to establish a system buffer between the host and the flash memory, and a write and write timing 'flash interface And the circuit controls the read and write commands to the flash memory array 'in this case, this is a pure hardware circuit 0. In addition, the data of the New Chong area cache is written. When (4) remembering the marrow array, the c circuit will encode the cc code, and when reading the data of the (4) register array to the slow_cache, the Ecc circuit decodes the ECC code. If the Ec error occurs, the ECC circuit will Interpret the text or byte in the buffer cache and error. The universal sequence bus command actually includes the receiver of the receiving host, and tears the command and the wheeled lion's axis, and the second and the nickname _, has received the command. The control benefits are based on the universal sequence bus logic and entity specification data 'and the data is sent to the domain, the number of the address side ^ ^ 3 ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ Mapping. 9 1270785 In the middle of the road ^ ΐ command and record "correction of the scales _ volume volume will be stored in the - specific temporary correction, the data will be followed by the micro-domain (four) news Including 7 her yuan, BmRequest D (1), and bit 70 specify the type of command agreement, the type includes standard, level aid = for; 1 the flash memory device of the month of the three-axis plastic agreement The ordinary order of slaves, such as the universal serial sink. ~~ ^Feature The flash memory storage device of the invention utilizes a universal sequence bus _s s storage class with b u 1k/control/break transmission in a specific form. Due to the limitation on the flash memory entity, the erase command must be executed before the write command is executed. Generally, the _ memorandum needs _about 1 QQ 10,000 times after the erase, then the axis, 35鸠It is very important to extend the life of the flash memory, __ for a logical and physical address mapping table 'and a mother/sub-architecture to achieve this goal. The following is a description of the use of the logical and physical address mapping table. When the flash memory is started, 'all the blocks will be searched' and the relationship between the searched entity and the logical block will be difficult. The address mapping table, at the same time, the unused entity area is placed in the _block for the FIF to use, and then the logic and the logical block in the 1270785 physical address mapping table are used to find the corresponding physical block. The address 'in this way, it is possible to accurately write or capture the data associated with a particular physical block. When writing data to flash memory, you may need to erase the block (new block) instead of the block, and write the data to the new block. Finally, the data will not be changed. The block, this step completes the action of writing a page of data. If there are several pages of data to be written, the above steps will be repeated. However, if the data continues to repeatedly write the same-block towel, there will be many unnecessary erase and migration actions. Not only is it a waste of time, but it also shortens the life of the flash memory. Therefore, in the flash memory device of the present invention, when data is repeatedly written in the same block, it avoids the erase operation. The migration action is only performed when the replacement block is known. This method not only prolongs the life of the flash, but also improves the efficiency of the device. The following is an example of writing data, which requires 3 2 blocks (sweet

Se c t 〇 r)的數據寫入邏輯位址以〇/〇區塊/頁開始的母 區塊中。每一區塊有3 2頁,總實體區塊/邏輯區塊為i 〇 2 4 /992 ’ FIFO的總備用區塊為3 2個,無一區塊係有瑕巍 的,從F I F 0備用區域取得備用區塊,即起始指標(η e a d p o i n t e r)所指的子區塊(實體位址:〇 3 e 〇 h)取自 F I F〇備用區域’然後,起始指標會增加(指向下一個備用區 11 1270785 塊),並將3 2頁的數據則寫入子區塊(實體位址:〇 3 e 〇 hThe data of Se c t 〇 r) is written to the logical block address in the parent block starting with 〇/〇 block/page. Each block has 32 pages, and the total physical block/logical block is i 〇 2 4 /992 ' The total spare block of the FIFO is 32, and none of the blocks are defective, and the FIF 0 is reserved. The area obtains the spare block, that is, the sub-block (physical address: 〇3 e 〇h) indicated by the starting indicator (η eadpointer) is taken from the FIF 〇 spare area' and then the starting indicator is increased (pointing to the next spare) Area 11 1270785 block), and writes 32 pages of data into sub-blocks (physical address: 〇3 e 〇 h

)中。接著將賴位址Ο 〇 〇 〇 h所指之母區塊拭除掉,並使F I F〇備用區域的尾端指標增加’然後’母區塊的實體位址則填 入備用區域中的尾端指標所指的位址中,織將子區塊的位址〇 3 E 0 h填人邏輯與實體位址映射表⑽⑽h中,使邏輯位址 〇 0 0 0 h指向實體位址〇 3 E 〇 h,即完成寫入。 以下係依據此項發明具體形式之寫入程序敘述: 主機將對應的寫入命令和位址參數寫入記憶體儲存裂置中, 記憶體儲存裝猶後開始執行程式㈣演算法,然後,主機的邏 輯位址會鋪換成_記憶體實塊和倾塊,㈣器會檢查 子區塊是否存在。 如果子區塊不存在的話,它會從F〗?〇侧中取出一個乾 淨的區塊為現有的寫人區塊建立—個子區塊,然後,檢查現有的 快閃記憶體邏輯頁碼,看待g人的頁碼是否等於「Q」,若等於 「0」’歡機至快閃記憶體的數據就會寫人缓衝區,而小區塊 的计數會減少,此程序會—直重覆直到小區塊計鮮於「〇」為 止,若待寫人的頁碼不等於「Q」時,母區塊的數據就會移至「 寫入之取後-頁」和「現有寫人頁」之間的子區塊上,然後,從 ㈣至快閃記憶體的數據會寫人緩観巾,則、區塊的計數會減 》’此程序會—直重覆朗小區塊計鮮於「Q」為止。 如果子區塊存在的話,就會檢查現有快閃記憶體的邏輯區塊 12 1270785 塊’看待寫入的是否等於最後-個寫入的快問記憶體邏輯區塊, 若不相等,母區塊的數據就會移至「寫入之最後一頁」和「此區 塊之取後-頁」之’子區塊’然後再將母區塊拭除,更新控制 器中的邏輯與實體位址映射表,以子區塊位址代#原有的母區塊 位址’然後’將被拭除的母區塊放回F j ?〇仔列中成為乾淨的 區塊’右莉人的區塊等於最後—個寫人之快閃記憶體邏輯區塊 的話,就會触現有驗閃記倾邏輯頁碼,看待寫人的是否大 於最後-個寫人的㈣記憶顯,若大於,將檢查現有的寫入頁 碼’看d否等於所寫之最後—頁加i,若是,從主機至快閃記 fe體的數據就會寫人緩衝區,科區塊的計數會減少,此程序會 -直重覆直到小區塊計鱗於「Q」為止,若财的寫入頁碼不 等於所寫之最後-頁加丨時,母區塊的數據就會移至「寫入之最 後一頁」和「現有寫入頁」之間的子區塊上。 若待寫入的不大於最後一個寫入的快閃記憶體邏輯頁時,母 區塊的數據就會被移至「寫入的最後一頁」和「此區塊之最後— 頁」之間的子區塊,然後再將母區塊拭除,更新控制器中的邏輯 與貫體位址映絲,以子區塊位址代替原有的母區塊位址,然後 ,將被拭除的母區塊放回F!F〇仔列中成為乾淨的區塊。 右待寫入的大於最後-個寫人的快閃記舰邏輯頁時,母區 免的數據就會被移至「寫人的最後—頁」和「現有寫人頁」之間 的子區塊,從續至快閃記触雜據就會寫人緩衝區,而小區 13 1270785 塊的計數會減少,數據會寫入直到小區塊計數等於「〇為止 至於依據此項發明具體形式之快閃記憶體裝置讀取^序方面 ,主機的邏輯位址會被轉換成快閃記憶體實體區塊和頁位址,然 後’檢查現有的快閃記憶體邏輯區塊,看待讀取的是否等於最^ -個被讀取的快閃記億體邏輯區塊,若不是的話,快閃記憶^實 體區塊和頁的數據就會被讀取’而小區塊的計數就會減少,此程 序會-直重覆直到小區塊計數等於「0」為止,料讀取的等= 最後一個被讀取到的快閃記憶體邏輯區塊的話,它會檢查現有的鲁 快閃記憶體邏輯頁,看待讀取的是否大於最後—個寫人的快閃記 憶體邏輯頁。 ° 若是’快閃記憶體實體區塊和頁的數據就會被讀取,而小區 塊計數就會減少’此程序會一直重覆直到小區塊計數等於「0」 為止若待㈤取的不大於最後—個寫人的制記憶體邏輯頁的話 ’子區塊實體區塊和頁的數據就會被讀S,而小區塊計數就會減 少’此程序會—直重覆朗小區塊計數等於「Q」為止。 當微處理器開始執行命令時,萬用序列匯流排快閃記憶御 體電路會從域下載它的錄,例如讀取或以—廠商命令封包 系統會透過裝置/啟始位元組的第6個位元來判斷位址模式, 。貝毛日月的快閃§己憶體裝置同時支援邏輯區塊位址([b幻和 圓域啟始小區塊(CHs)模式’若主機利虹B A模式提供 止的話’裝置會將它轉換成⑶s模式,然後將c H s模式改 1270785 成實體位址。 當萬用序顺_制記賴髓紐執行棘命令時,控 制器首先會將快閃記憶體的數據-個小區塊—個小區塊的讀取到 控制器的緩_( 5 1 2位元組)中,然後制序舰流排引擎 會將小區塊送至主機,當送至线的小區塊數量料主機欲讀取 的小區塊數目時,整個命令就完成了。 當萬用序舰鱗_記憶體積體電路執彳谓人命令時,老 制器會透過制序_流排引擎駐機的數據_個小區塊一则 區塊的讀取到控制ϋ的緩衝區(5 i 2位元組),雜此小區勒 就會儲存在㈣記憶财,#送至线的小區塊錄特主細 寫入的小區塊數目時,整個命令就完成了。 萬用序列匯流排快閃記憶體積體電路可以支援一個以上的妙 閃讀體,此項發3种提供了多個晶片選取腳,當啟動裝置時, =錄查所連接使用的快閃記憶體類型(容量),以及系統有多 2二曰片’萬用序列__記憶體碰電路會將所有的記憎 序起來,找出總容量,當主機需要這一類的數據時,萬用 ^机排快閃記憶體積體電路就會提供總容量給主機,而不是 早一晶片的容量。 積體電敗,出某位址(邏輯)給萬用序列匯流排快閃記憶磨 山日守’萬用序列匯流排快閃記憶體積體電路會執行叶管, …要存取的確切晶片以及對應的位址,_,萬用序歹, 1270785 匯流排快閃記憶體積體電路會使用計算出來的位址,並啟動晶片 選取腳。 【實施方式】 特此說明,前文之一般敘述,以及以下之詳細敘述皆為範例 ,並且旨在進一步解釋所述之發明。 附圖是為了讓人們可以更加了解此項發明,且編入並成為此 規範的一部分,圖片具體表現了此項發明,配合文字敘述進而解 釋了發明之原理,在圖片中,優先具體表現之敘述: 現階段將製作此項發明優先具體表現之參考細節,附圖中圖 解了這些範例,圖片和敘述中都儘可能地針對相同或類似之零件 採用相同的參考編號。 〇,使快閃記㈣12 0數量得以延伸, 充介面職2 Q材對胁㈣記憶體丄 請參閱第-圖所示,係依據此項發明具體形式顯示出來的萬 用序列匯流排快閃記憶體積體電路佈局示意圖,於圖中揭示萬用 序列匯流排㈣記憶體韻電路5為包含了—個控·4〇和至 少一個快閃記憶體晶片5 Q,而萬用序列匯流排連接器i 〇為連 接於萬料舰流排快閃記㈣積體電路5與具萬用序列匯流排 之主機間,且制序寵流排㈣賴體碰電路5上至少包含 了個快閃魏體晶片5 0,而萬用序列匯流排快閃記憶體積體 魏5則進—步地包含了—_存式_記鐘介面腳位2 且儲存式快閃記憶體擴 2 0上,以利用儲存式 16 1270785 快閃記憶體擴充介面腳位2 0來使萬用相匯流排快閃雜體積 體電路5的控制器4 Q形成連接,如此-來,萬用序列匯翻^ 閃記憶體積體電路5的記憶體容量就可以視實際需要輕易地加以 擴充了。 再者,其控制器4 0為該裝置的主要組件,此控制器4 〇為 控制萬用序列匯流排與具萬用序列匯流排之主機之間的命令和數 據,並管理快閃記憶體晶片5 0與快閃記憶體χ 2 〇中的數據, 而控制器4〇最好是—個不需要外部唯讀記憶體(R〇M)或隨 機存取記憶體(RAM)的單晶片設計。 ’迎 萬用序列匯流排快閃記憶體積體電路5之儲存式快閃記憶體 擴充介面腳位2 〇 ’用以連接快閃記憶體i 2 〇與朗序列匯流 ^快閃記憶體積體電路5,以便糊額外的快閃記憶體丨2 〇依 貫際需要延伸記憶體大小,而萬用序列匯流排快閃記憶體積體電 路5至少包含—個額外的快閃記憶體晶片5 〇,它也可以連接多 個快閃魏體1 2 〇以便視實際需要擴展記憶體數量。 萬用序列匯流排快閃記憶體積體電路5之輸人/輸出控制腳 位3 0,提供系統需要進行其他的輸入輸出控制。 °月芬閱第二圖所示,係依據此項發明具體形式顯示出來的萬 用序列匯"IL排快閃記憶體積體電路控制器示意圖,此項發明之快 〜體儲存衣置的控制器2 〇 〇具有無數的功能,這些功能中 有—項為控制萬用序列匯流排介面210。 17 1270785 邏輯協定方面係遵照萬用序列匯 步包含了一個系統緩衝區2 5 0 上述控制器2 0 0在實體和 流排規範,且控制器2 0 〇進一 或FIF◦控制器緩衝區。 控制為20 Q接收來自主機的命令和參數封包,此封包暖 被儲存在-個由控制器2 〇 〇定義的系統_區2 5 ◦中,而控 2 0 〇同時也負責控制與萬用序列匯流排主機之間的數據傳 輸’除此之外’控㈣2⑽亦提供狀態數據給主機。 當主機發出一個寫入命令時,就會產生岔斷並發送給控制器籲 内之微處理器2 2 〇,以便通知微處理器2 2 0該項命令,以及 命令的位置。 微處理器22◦(例如—個8或16 —bit的微處理器) 為t制裔2 0 0中的-項主要組件,此微處理器2 2 〇從系統緩 衝區2 5 0中讀取萬用序列匯流排之命令和參數,此外,微處理 器2 2 0也執行具參數之命令。 微處理器22〇一方面管理和映射萬用序列匯流排FIFO籲 位址至线麟區2 5 Q,-方面接收來自錢之麟,以及將 數據傳輸至主機上。 此外Μ處理為2 2 0也為快閃記憶體陣列管理(例如拭除 、程式或項取等命令),除此之外,微處理器2 2 〇也依據控制 器2 0 0之次异法執行位址方法。 微處理器倾記憶體(R〇M) 2 3 G將已内建在控制器2 18 1270785 〇〇中的控制器2 GQ程式代碼加财 憶體u AM) 2 4 〇係為控制器 /處理器隨機存取記 p R . d丄0和快閃記憶體陣列介面 字存取 此項發明之快閃記憶體儲存 堉仔戒置進一步地包含了一硬體狀態 、為’以建立主機和快閃記憶體之間系統緩衝區2 5 〇之; 寫入時序。 0总理/統緩倾25 ◦為被當成快取烟,峨處理器2 2 ^取之位址,若有需要,緩_可_過位元組或文)in. Then, the parent block indicated by the address Ο 〇〇〇h is erased, and the end index of the FIF 〇 spare area is increased. Then the physical address of the parent block is filled in the end of the spare area. In the address indicated by the index, the address of the sub-block is 〇3 E 0 h to fill the logical and physical address mapping table (10)(10)h, so that the logical address 〇0 0 0 h points to the physical address 〇3 E 〇 h, the completion of the write. The following is a description of the writing procedure according to the specific form of the invention: The host writes the corresponding write command and address parameters into the memory storage split, and the memory storage device then starts executing the program (4) algorithm, and then, the host The logical address will be swapped into a _memory real block and a dump block, and the (four) will check if the sub-block exists. If the subblock does not exist, will it be from F? Take a clean block from the side to create a sub-block for the existing writer block. Then, check the existing flash memory logical page number to see if the page number of the g person is equal to "Q", if it is equal to "0" 'The data from the game to the flash memory will be written to the buffer, and the count of the block will be reduced. This program will be repeated until the block is counted as "〇", if the page number of the person to be written is If it is not equal to "Q", the data of the parent block will be moved to the sub-block between "Write Post-Page" and "Existing Writer Page", and then, from (4) to the flash memory. If the data will be written by the person, the count of the block will be reduced. "This program will be used until the "Q" is calculated. If the sub-block exists, it will check the logical block of the existing flash memory. 12 1270785 Block 'Whether the write is equal to the last-written fast memory block, if not equal, the parent block The data will be moved to the "sub-block" of "write last page" and "sub-block" of the post-page of this block and then erase the parent block to update the logical and physical addresses in the controller. The mapping table, with the sub-block address generation #原母块块Address 'then' put the erased parent block back into the F j ?〇仔 column to become a clean block 'Ruo Liren's area If the block is equal to the last-written flash memory logical block, it will touch the existing flashing logic page number to see if the writer is greater than the last-writer (4) memory display. If it is greater than, the existing one will be checked. Write page number 'look if d is equal to the last written-page plus i, if it is, the data from the host to flash fe will be written to the buffer, the count of the section will be reduced, this program will be - straight repeat Until the cell block is scaled to "Q", if the page number of the money is not equal to the last page written, "After most of a written", the data will be moved to the parent block and sub-block between "existing written page." If the file to be written is not larger than the last written flash memory logical page, the data of the parent block will be moved between "the last page written" and "the last page of this block". Sub-block, then the parent block is erased, the logic and the intersection address in the controller are updated, the original block address is replaced by the sub-block address, and then the erased The parent block is placed back into the F!F column to become a clean block. When the right-to-write cache page is larger than the last-written person, the parent-free data will be moved to the sub-block between the "last page of the writer" and the "existing writer page". From the continuous to the flash, the data will be written to the buffer, and the count of the cell 13 1270785 will be reduced, and the data will be written until the cell block count is equal to "the flash memory of the specific form according to the invention. In terms of device read sequence, the host's logical address will be converted into a flash memory block and page address, and then 'check the existing flash memory logic block to see if the read is equal to the most ^ - The flashed memory block that is read, if not, the flash memory ^ physical block and page data will be read 'and the cell block count will be reduced, this program will - straight repeat Until the cell block count is equal to "0", the read data is read = the last flash memory logical block read, it will check the existing Lu flash memory logical page, see if the read Greater than the last - a person's flash memory logical page . ° If 'flash memory physical block and page data will be read, and the cell block count will decrease' this program will repeat until the cell block count is equal to "0" until the (five) is not greater than Finally, if you write a person's memory logical page, the data of the sub-block physical block and page will be read S, and the cell block count will be reduced. 'This program will be - the straight repeat block count is equal to " Q" so far. When the microprocessor begins to execute the command, the universal sequence bus flash memory will download its record from the domain, for example, read or use the - vendor command packet system will pass the device / start byte 6 One bit to determine the address mode, . The flash of the hairy day and the moon § the memory device supports the logical block address ([b magic and circular domain start cell block (CHs) mode] if the host Li Hong BA mode is provided, the device will convert it In the (3)s mode, then the c H s mode is changed to 1270785 into a physical address. When the universal order is used to execute the spine command, the controller first will flash the data of the flash memory - a block of cells - The cell block is read into the controller's _(5 1 2 octet), and then the system platoon engine sends the cell block to the host. When the number of cell blocks sent to the line is expected to be read by the host When the number of cell blocks is completed, the entire command is completed. When the universal order ship scale_memory volume circuit is executed, the old device will pass the data of the system_flow block engine. The block is read into the control buffer (5 i 2 bytes), and the cell is stored in (4) memory, and the number of cell blocks written by the cell block sent to the line is recorded. The entire command is completed. The universal sequence bus flash memory volume circuit can support more than one. Flash reading body, this kind of hair supply provides multiple wafer selection feet. When starting the device, = record the type of flash memory (capacity) used for the connection, and the system has 2 2 ' ' 'Universal sequence The __memory touch circuit will sort all the records to find the total capacity. When the host needs this type of data, the megaphone flash memory volume circuit will provide the total capacity to the host instead of The capacity of the wafer as early as one. The body is defeated, and a certain address (logic) is sent to the universal sequence bus. The flash memory is smashed by the mountain. The universal sequence bus flash memory volume circuit will execute the leaf tube, ... The exact chip to be accessed and the corresponding address, _, universal order, 1270785 bus flash memory volume circuit will use the calculated address, and start the wafer selection foot. [Embodiment] Hereby, the above description The general description, as well as the following detailed description, are exemplary and are intended to further explain the invention. The drawings are intended to provide a better understanding of the invention and are incorporated in and constitute a part of the specification. The invention was expressed in conjunction with the narrative and explained the principle of the invention. In the picture, the description of the specific performance is prioritized: At this stage, the reference details of the specific performance of the invention will be made. The examples illustrate the examples, pictures and In the narrative, the same reference number is used for the same or similar parts as much as possible. 〇, the flash flash (4) number of 12 0 is extended, and the charge is 2 Q material against the threat (4) memory 丄 please refer to the figure - According to the specific form of the invention, the schematic diagram of the circuit arrangement of the universal serial bus flash memory volume body is shown in the figure. The figure shows that the universal sequence bus (4) memory rhyme circuit 5 includes - a control and 4 〇 and at least one The flash memory chip 5 Q, and the universal serial bus connector i 连接 is connected to the universal ship flashing flash (four) integrated circuit 5 and the host with the universal serial bus, and the order pet flow (4) The Lai body touch circuit 5 includes at least one flashing Wei wafer 50, and the universal sequence bus line flash memory volume body Wei 5 enters the step-by-step includes -_存_钟钟口脚位2 And The storage flash memory is expanded to form a connection with the controller 4 Q of the universal phase bus flashing bulk circuit circuit 5 by using the storage 16 1270785 flash memory expansion interface pin 20 - Come, the multi-purpose sequence will be expanded. The memory capacity of the flash memory volume circuit 5 can be easily expanded as needed. Furthermore, the controller 40 is the main component of the device, and the controller 4 is used to control commands and data between the universal serial bus and the host with the universal serial bus, and manage the flash memory chip. The data in the 50 and the flash memory χ 2 ,, and the controller 4 〇 is preferably a single-chip design that does not require external read-only memory (R〇M) or random access memory (RAM). 'Welcome to the universal serial bus flash memory volume body circuit 5 storage flash memory expansion interface pin 2 〇 'to connect flash memory i 2 〇 and lang sequence convergence ^ flash memory volume body circuit 5 In order to paste the extra flash memory 丨 2, it is necessary to extend the memory size, and the universal sequence bus flash memory volume circuit 5 contains at least one additional flash memory chip 5 〇, which also You can connect multiple flashing bodies 1 2 〇 to expand the amount of memory as needed. The input/output control pin of the universal sequence bus bar flash memory volume circuit 5 is provided with the other input and output controls. ° Yue Fen is shown in the second figure, which is a schematic diagram of a universal serial port circuit controller based on the specific form of the invention. The invention is a fast-to-body storage device control. The device 2 has a myriad of functions, and among these functions, the item is the control universal serial bus interface 210. 17 1270785 The logical agreement aspect consists of a system buffer in accordance with the universal sequence. The above controller 200 is in the entity and stream specification, and the controller 20 is in the FIF controller buffer. The control receives 20 Q commands and parameter packets from the host, and the packet warms are stored in a system_region 2 5 〇〇 defined by the controller 2 ,, and the control 20 〇 is also responsible for controlling and the universal sequence. The data transfer between the bus masters 'except this' control (4) 2 (10) also provides status data to the host. When the host issues a write command, it will generate a break and send it to the microprocessor 2 2 控制器 in the controller to inform the microprocessor 2 2 0 of the command, as well as the location of the command. The microprocessor 22 (for example, an 8- or 16-bit microprocessor) is the main component of the t-200, which is read from the system buffer 250. The commands and parameters of the universal sequence bus, in addition, the microprocessor 2 2 0 also executes the command with parameters. The microprocessor 22 manages and maps the universal serial bus FIFO address to the line area 2 5 Q on the one hand, and receives the money from Qian Zhilin and transmits the data to the host. In addition, the processing is 2 2 0 is also the flash memory array management (such as erase, program or item fetching commands), in addition, the microprocessor 2 2 〇 is also based on the controller 2 0 0 different method Execute the address method. Microprocessor dump memory (R〇M) 2 3 G will be built into controller 2 18 1270785 的 controller 2 GQ program code plus financial memory u AM) 2 4 〇 system controller / processing Random access memory p R . d丄0 and flash memory array interface word access The flash memory storage of the invention is further comprised of a hardware state, for 'building a host and fast Flash memory between system buffers 2 5 ;; write timing. 0 Prime Minister / 统 倾 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25

I .讀取和 决門義體陣顺面2 6 Q為控繼閃記紐陣狀讀取和 寫入’在此項發明之具體表現中,這;%-個純硬體電路。 當系統緩衝區2 5 0快取之數據寫入至快閃記憶體陣列介面 2 6 0時’丑(:(:電路2 7 0將編碼£(:(:代碼,而當讀取快閃_ 記憶體陣列之數據至系統緩衝區2 5◦快取時,E c c電路2 7 0則將E C C代碼解碼,若發生E c c錯誤,E c c電路2 7 〇 會判頃系統緩衝區2 5 Q快取巾的文字或位元組並訂正錯誤。 輸入/輸出控制介面2 8 0,為提供系統需要進行其他的輸 入/輸出控制。 請參閱第三圖所示,係依據此項發明具體形式顯示出來的萬 19 1270785 用序舰⑻触閃咖體積體電路之祕架獅赫意圖,在某 些具萬用序顯騎之羯3 0⑽作㈣統(如I. Reading and determining the right side of the body array 2 6 Q is the control of the flashing neon array reading and writing 'In the specific performance of the invention, this; % - a pure hardware circuit. When the system buffer 255 cache data is written to the flash memory array interface 2 6 0 'ugly (: (: circuit 2 7 0 will encode £ (: (: code, and when reading flash _ The data of the memory array to the system buffer 2 5 ◦ cache, E cc circuit 2 70 will decode the ECC code, if an E cc error occurs, E cc circuit 2 7 〇 will judge the system buffer 2 5 Q fast Take the text or byte of the towel and correct the error. Input/output control interface 2 8 0, other input/output control is required to provide the system. Please refer to the third figure, which is displayed according to the specific form of the invention. 10,000 19 1270785 with the order ship (8) touch flash coffee volume circuit of the secret frame of the lion's intention, in some of the versatile riding 羯 3 0 (10) for (four) system (such as

Wl^d〇WS則和们nd〇ws2〇〇〇等)中為包含 、萬用序列匯*排裝置驅動器,其他的作業系統可能需要 在主機安裝-個萬用序列匯流贼置驅動器,而制序列匯流排 η只作3 2 Q包含了透過萬用序列匯流排介面3 ^◦來接收主 « 〇 〇和參數㈣H 3 Q 5之命令,並騎令和參數儲存於控 叫由3 〇 5所&義的暫存11中,並且會產生和發出岔斷,以通知_ 被處理器已接收到命令。 參數控制器3 0 5依據萬用序列匯流排邏輯和實體規範來接 機3 〇 〇之數據’以及將數據發送至主機3 〇 〇。 位址方法3 3 〇包含了 f理_記憶體3 4 Q之拭除、讀取 和冩入命令,以及管理實體至邏輯的映射。 =參閱第四圖所示,係依據此項發明具體形式顯示出 機^樣作業系統之萬用序舰流排協定應用流程示意圖,當主 憶_^ 1㈣,係將命令和參數寫人萬用序列匯流排快‘ 在步:4二二控制器會將其儲存在-特定的暫存器中,並 3 0日> 斷至微處理器,數據隨後會在步驟4 卞破Μ處理器讀取來自主機的資訊。 令為Ϊ步驟4 4 ◦中’微處理器依據參數開始輪命令,如果人 〜、入命令,緩衝區之快取就會在步驟4 5 Q收到具萬用序歹: 20 1270785 匯流排之主機的數據。 微處理器隨後在步驟4 6 0中將i羅& ㈣μ U f將邏她址轉換至快閃記憶體 的貫體位址,在步驟4 7 Π Φ,姆考ϊ田口口收士 7时政處理絲她快閃記憶體的數 據或疋將數據寫人_記髓中,如果命令為讀取命令,數據會 在步驟4 8 0中傳輸至具油序顺流排之主機。 根據標準的制序顺流觀範,要求她包含了 7個位元 ,請參閱第五圖所示,BmRequest τ”_ — D 5位端定了命令協定的類型,其種類包括標準、等級,以及 廠商此員《月之快閃記憶體裝置這三種類型之協定都支援,標 準型為標準職置要求,這是普通的命令,如U S B—G e t —Wl^d〇WS and nd〇ws2〇〇〇, etc.) are included, universal serial sinks, and other operating systems may need to be installed in the host - a universal serial sink thief drive, and The sequence bus η is only used for 3 2 Q. It contains the command of receiving the main « 〇〇 and parameter ( 4 ) H 3 Q 5 through the universal serial bus interface 3 ^ ,, and the riding order and parameters are stored in the control call by 3 〇 5 & the temporary storage 11 and will generate and issue a break to inform _ that the processor has received the command. The parameter controller 3 0 5 picks up the data of the 3 依据 依据 according to the universal sequence bus logic and the physical specification and sends the data to the host 3 〇 〇. The address method 3 3 〇 contains the erase, read, and write commands of the memory_memory 3 4 Q, and the management entity-to-logic mapping. = Referring to the fourth figure, according to the specific form of the invention, the application flow diagram of the universal order ship flow agreement of the machine-like operating system is shown. When the main memory _^ 1 (four), the command and parameters are written for universal use. The sequence bus is fast 'in step: 4 22, the controller will store it in the -specific register, and 30 o's to the microprocessor, the data will then be read in step 4 Take information from the host. Let's start step 4 4 ' 'The microprocessor starts the round command according to the parameters. If the person ~, enter the command, the buffer cache will be received in step 4 5 Q with a universal order number: 20 1270785 bus Host data. The microprocessor then converts the address of the logical address to the address of the flash memory in step 406 in step 406, in step 4 7 Π Φ, Mt. The data of her flash memory or the data is written in the _ memory, if the command is a read command, the data will be transferred to the host with the oil sequence downstream in step 480. According to the standard system order, she is required to include 7 bits. Please refer to the fifth figure. BmRequest τ”_ — D 5 bits end the type of command agreement, including types and standards. As well as the vendor's "monthly flash memory device, all three types of agreements are supported. The standard type is the standard job requirement. This is a common command, such as USB-G et.

Status 〇r USB__set_Fea tu7e#〇_ b u 1 ass 此項發明之快閃記憶體儲存裝置在具體形式上糊了搭配 1k/控制/岔斷傳輸之萬用序列匯流排瓜 rage class。 由於快閃隨機存取記憶體(Ram)的實體限制,在完成寫· 入°P 7之月_』必須先執行拭除命令,一般的快閃記憶體需經過大 約10 0萬次的栻除之後才可以正常運作,所以,減少拭除的步 驟,以延長快閃記憶體之錢壽命是非常重要的,因此,此項發 明提供了-個邏輯與實體位址映射表,以及—個母/子架構來達 到此項目標。 以下是邏輯與實體位址映射表之使用說明,當啟動快閃時, 21 1270785 所有的區塊都會被搜尋,而搜尋到的實體和邏輯區塊之間的關係 記錄就會成為邏輯與實體位址映射表,於此同時,未使用的實體 區塊則放入備用區塊讓FIFO佇列使用。 接著,邏輯與實體位址映射表中的邏輯區塊會被用來尋找對 應的實體區塊位址,如此一來,就可以精確地寫入或擷取與特定 實體區塊相關連的數據了。 請參閱第八圖所示,係依據此項發明具體形式顯示出來將數 據寫入新區塊的區塊示意圖,將數據寫入快閃記憶體時,可能需 要一個經過拭除的區塊(新的區塊)8 ;[ 〇來取代舊區塊8 〇 〇 ,然後將數據寫入新的區塊81〇中,最後將未曾更改過的數據 從舊區塊8 0 0移至新區塊81〇,這個步驟完成了寫入一頁數 據之動作。 若有好幾頁數據待寫入的話,就會重覆以上的步驟,請參閱 第九圖所示,係依據此項發明具體形式顯示出來寫入額外頁次之 數據的區塊示意圖,這係依據此項發明具體形式顯示出來寫入額 外頁次之數據的區塊示意圖,將數據寫入新區塊91〇中,而未 曾更改過的數據從舊區塊9 〇 〇移至新區塊91〇。 然而,如果數據不斷重覆地寫入同一區塊中的話,就會產生 許多不必要的拭除和遷移動作,此舉不僅浪費時間,同時也合縮 短快閃記憶體的使用壽命。 請參閱第十圖所示,係依據此項發明具體形式顯示母和子技 22 1270785 術之區塊示_ ’這係依據此項發明形式顯示母和子技術之 區塊不意圖,因此’在此項發明的快閃記憶體震置中,當數據重 覆地寫入同-區塊時,它會避免拭除的動作,而遷移動作也只有 當更換區塊時才會執行,所有據都先寫人新_子區塊)i 0 1 0中,然後未曾更改過的數據職舊區塊(母區塊)i 〇 〇 〇 ^新區塊1 0 1 0中’使用此種方法不僅延長了_記憶體的 奇命’同知也提局了裝置的效率。 月多閱第十11所示’係依據此項發明具體形式顯示邏輯與籲 實體位址映射表之示意圖,以下是一個寫入數據範例,其邏輯與 實體位址映射表鏈結了-個實體區塊位址丄丄0 0和一個邏輯區 塊位址111〇’需將32個小區塊(86(^〇〇的數據寫 入以0/0區塊/頁開始的快閃記憶體中,總實體區塊/邏輯區 塊為1 0 2 4/9 9 2 ’ FIFQ的總備用區塊為3 2個,無一 區塊係有瑕疯的,每一區塊有3 2頁。 凊參閱十一、十三、十四圖所示,係依據此項發明具體形式# 顯示起始指標和尾端指標作業之示意圖、顯示未寫人之前的邏輯 與實體位址_麵_、顯轉始贿和尾標㈣之示意 圖’在此範例中,起始指標121〇所指的子區塊i 3 〇 〇的位 址0 3 E ◦ h取自F I F 〇備用區2 〇 〇,然後起始指標 1210的位址會增加,變為起始指標i 4 i Q,而3 2頁的數 據則寫入子區塊13 0 〇中。 23 !27〇785 再將子區塊13 Ο 0位址〇 3 e 〇 h填入邏輯與 射表中母區塊131Q的邏輯區塊位址〇〇〇Qh中焉位址映 3 1 〇位址◦ Q Q Q h被拭轉,而尾端指標i 2 =區塊1 後’母區塊位址〇 〇 〇 〇 h則填入備用區域中 0増加’然 0所指的位址中。 .指標14 2 現在將依據此項發明之具體表現,製作窵 。 ”、、杈序之敘述參考 主機將相對應之寫入命令和位址參數寫入萬用序列匯节 閃記憶體雜電路中,聽裝置隨後開始執行程式快快 請參閱第六圖所示,係依據此項發明具體形式顯示出^萬用 序列匯流排快閃記憶體積體電路之寫入程序 狂汁机%,百先,在步驟 6 Ο 1中,將主機發出的邏輯位址轉換成快閃記憶體實體區塊和 頁位址。 然後在步驟6 0 2中,控制器會檢查看子區塊是否存在,若 子區塊不存在的話,則跳至步驟6 〇 5,若子區塊存在,在步驟鲁 6 y 3中會檢查現有侧記憶體的邏輯區塊,看待寫人的是否等 於取後-個寫人的記憶體邏輯區塊,料鱗,則跳至步驟6 ^ 1 〇 若相等’在步驟6 〇 4中會檢查現有的快閃記憶體邏輯頁碼 ,看寫入的是否大於最後-個寫人的快閃記鐘邏輯頁,若是, 則繼續步驟61〇,若否,則跳至步驟6丄工。 24 1270785 步驟6 0 5從F I F◦佇列中取一乾淨的區塊為現有的寫入 命令建立一個子區塊。 在步驟6 0 6檢查現有的快閃記憶體邏輯頁碼,看待寫入的 是否等於「0」,若等於「0」,繼續步驟608。 若不等於「0」,在步驟6 0 7中,母區塊的數據會被移至 「寫入的最後一頁」和「現有寫入頁」之間的子區塊。 在步驟6 0 8,將主機至快閃記憶體的數據寫入緩衝區中, 而小區塊的計數會減少。 在步驟6 0 9,若小區塊的計數等於「〇」,則前進至「終 點」,若否,則繼續步驟6 0 8。 在步驟610,若現有的寫入頁碼等於最後寫入頁碼加工, 則繼續步驟6 0 8,若否則繼續步驟6 〇 7。 在步驟611,母區塊的數據會被移至「寫入的最後一頁」 和此區塊的最後-頁」之間的子區塊,並拭除母區塊 ’且更新 控制器中的賴與實體健映練,以子區塊紐代替母區塊位 址’同時將被拭除的母區塊放回至F j F◦符列中當成乾淨的區 塊。 ^月彡閱第七圖所示’係依據此項發明具體形式顯示出來快閃 記憶體儲雜置之料輕,這餘據此猶明具體形式顯 不出來快閃記憶贿存較之讀取程序流程。 在/驟7 〇 1,為將具萬用序列匯流排之主機的賴位址轉 25 1270785 換成快閃記憶體實體和頁位址。 在步驟7 0 2中檢查現有的快閃記憶體,看待讀取的是否等 於最後一個讀取的快閃記憶體邏輯區塊,若是,則跳至步驟7 〇 5,若否,繼續步驟7 〇 3。 在步驟7 0 3中讀取快閃記憶體實體區塊和頁的數據,而小 區塊的計數會減少。 在步驟7 0 4中檢查小區塊計數,看它可是否等於「〇」, 若等於「0」,則前進至「終點」,若否,則回到步驟7 〇 3。 在步驟7 0 5中檢查現有的記憶體邏輯頁,看待讀取的是否 大於最後寫人的快閃記憶體邏輯頁,若是,回到步驟7 〇 3,碧 否,前進至步驟7 〇 6。 ▲在步驟7 Q 6中讀取子區塊實體_項的數據,而小區均 的计數會減少。 ’ 〇7中檢查小區塊計數,看它可是否等於「〇」, =〇」,則前進至「終點」,若否,則回到步驟7〇5。 十五圖所示,係依據此項發明具體形式顯示之命a 、匕木構不,竭’當微處理器開始執行命令時 7 快閃記憶體積I#雷攸A 序列匯流排 圖中顯示了麵命令封包。 鳩^取或寫入, 系、、先會透過襄置/啟始位元組來判斷位 快閃記憶體儲存夺w 、式,此項發明的 存衣置叫支板雜區塊位址(LBA)和圓 26 1270785 啟始小區塊(C H S)模式。 若主機_LBA模式提供位址的話,裝置會將它轉換成c H S模式,然後將cH S模式改成實體位址。 當萬用序列匯流排快閃記憶體積體電路執行讀取命令時,控 制器首先會將㈣記憶體的數據—個小區塊—個小區塊 控制器的緩衝區(5 i 2岐組)中,然後萬用序列匯流二引擎 會將小區塊送至主機’當送至主機的小區塊數量等於主機欲讀取 的小區塊數目時,整個命令就完成了。 鲁 當萬用序列匯流排快閃記憶體積體電路執行寫入命令時十 制器會透過萬用序列匯流排引擎將主機的數據—個小區塊一财 區塊的讀取到控制器的緩衝區(5工2位元組),然後此小區塊 就會被儲存在快閃記憶體中,當送至快閃記憶體的小 於主機欲寫入的小區塊數目時,整個命令就完成了。數里專 萬用序寵流排快閃記憶體積體電路可以支援—個以上的快 ,記憶體’此項發明中提供了多個晶片選取腳,當啟動裝置時, 匕會檢查儲存式快閃記憶體擴充介面腳位所連接的快閃記情體類 =:及系統有!!個快閃記憶體’裝置會將所 ’找出總谷罝’當主機需要這一類的數據時,萬 =列匯流排快閃記憶體積體電路就會提供總容量給主機,而不 是單一快閃記憶體的容量。 當主機發出某-位址(邏輯)給萬用序列匯流排快閃記憶體 27 1270785 積體電路時,萬用序列匯流排快閃記憶體積體電路會執行計算, 找出主機想要存取的確切晶片,以及對應的位址,然後,裝置會 使用什异出來的位址,並啟動晶片選取腳。 此外,本發明中所述及之快閃記憶體晶片、控制器為一單晶 片設計,用以縮小萬用序列匯流排快閃記憶韻體電路之整體S 積,且不需要外部隨機存取記憶體(ram)或唯讀 OM)之設計。 、 對於那些有純熟技術的人而言 離原發明之範圍和精神之下進行各/、祕此架射以在不偏 文所述,其目的為在以下巾請專利=樣的修改和變化,鑒於前 條件下,此項發明涵蓋了此發明之飞圍内,以及其相等意義之 目_改和變化。 28 1270785 【圖式簡單說明】 第一圖係依據此項發明具體形式顯示出來的萬用序列匯流排 快閃記憶體積體電路佈局示意圖。 第二圖係依據此項發明具體形式顯示出來的萬用序列匯流排 快閃記憶體積體電路控制器示意圖。 第三圖係依據此項發明具體形式顯示出來的萬用序列匯流排 快閃記憶體積體電路之系統架構區塊示意圖。 第四圖係依據此項發明具體形式顯示出來的各式各樣作業系 統之萬用序列匯流排協定應用流程示意圖。 第五圖係依據此項發明具體形式顯示出來實作於萬用序列匯 流排快閃記憶體積體電路中萬用序列匯流排協定的表 列參數。 第六圖係依據此項發明具體形式顯示出來萬用序列匯流排快 閃記憶體積體電路之寫入程序流程。 第七圖係依據此項發明具體形式顯示出來萬用序列匯流排快 閃記憶體積體電路之讀取程序流程。 第八圖係依據此項發明具體形式顯示出來將數據寫入新區塊 的區塊示意圖。 第九圖係依據此項發明具體形式顯示出來寫入額外頁次之數 據的區塊示意圖。 29 1270785 第十圖係依據此項發明具體形式甚 $母和子技術之區塊示意 第十一圖 第十二圖 弟十三圖 係依據此項發明具體形 之不意圖。 式顯示邏輯與實體位址映射表 係依據此項發明具體 業之不意圖。 ^式顯示起始指標和尾端指標作 第十四圖 係依據此項發明具體 體位址映射表示意圖 係依據此項發明具體 業之示意圖。 形式顯示未寫入之前的邏輯與實 〇 也式顯7F起始雜和尾端指標作Status 〇r USB__set_Fea tu7e#〇_ b u 1 ass The flash memory storage device of the invention is spliced with a 1k/control/breaking transmission universal sequence bus. Due to the physical limitation of the flash random access memory (Ram), the erasing command must be executed before the completion of writing and inputting the period of _7, and the general flash memory needs to be removed by about 100,000 times. After that, it can work normally. Therefore, it is very important to reduce the erasing step to extend the life of the flash memory. Therefore, the invention provides a logical and physical address mapping table, and a mother/ Sub-architecture to achieve this goal. The following is the description of the logical and physical address mapping table. When the flash is started, all the blocks of 21 1270785 will be searched, and the relationship records between the searched entities and logical blocks will become logical and physical bits. The address mapping table, at the same time, the unused physical blocks are placed in the spare block for the FIFO queue to use. Then, the logical blocks in the logical and physical address mapping table are used to find the corresponding physical block address, so that the data associated with the specific physical block can be accurately written or retrieved. . Referring to the eighth figure, the block diagram of writing data into a new block according to the specific form of the invention is shown. When data is written into the flash memory, an erased block may be needed (new Block) 8; [ 〇 to replace the old block 8 〇〇, then write the data into the new block 81 ,, and finally move the data that has not been changed from the old block 800 to the new block 81 〇, This step completes the action of writing a page of data. If there are several pages of data to be written, the above steps will be repeated. Please refer to the ninth figure, which is a block diagram showing the data of the extra page according to the specific form of the invention. The specific form of the invention shows a block diagram of the data written to the extra page, the data is written into the new block 91, and the unmodified data is moved from the old block 9 to the new block 91. However, if the data is repeatedly written into the same block, many unnecessary erase and migration actions are generated, which not only wastes time, but also shrinks the life of the short flash memory. Referring to the tenth figure, the block diagram of the parent and child technology 22 1270785 is shown according to the specific form of the invention. _ 'This is a block diagram showing the parent and child technologies according to the invention form, so 'in this case In the flash memory of the invention, when the data is repeatedly written into the same-block, it will avoid the erase action, and the migration action will only be performed when the block is replaced, and all the data are written first. People new _ sub-block) i 0 1 0, then the data has not been changed, the old block (mother block) i 〇〇〇 ^ new block 1 0 1 0 in 'use this method not only extended _ memory The strangeness of the body also raises the efficiency of the device. According to the tenth 11th section, a schematic diagram showing a logical and appealing physical address mapping table according to the specific form of the invention is shown. The following is an example of writing data, and the logical and physical address mapping table is linked with an entity. The block address 丄丄0 0 and one logical block address 111〇' need to be 32 blocks (86 (^) data is written into the flash memory starting with 0/0 block/page, The total physical block/logical block is 1 0 2 4/9 9 2 'The total spare block of FIFQ is 32, and none of the blocks are mad, each block has 32 pages. According to the eleventh, thirteenth and fourteenth figures, according to the specific form of the invention, the schematic diagram of the initial indicator and the end indicator operation is displayed, and the logical and physical addresses before the unwritten person are displayed. Diagram of bribe and tail (4) 'In this example, the address of the sub-block i 3 〇〇 indicated by the initial indicator 121〇 is 0 3 E ◦ h is taken from the FIF 〇 spare area 2 〇〇, then the starting indicator The address of 1210 will increase to become the starting indicator i 4 i Q, and the data of 32 pages will be written into the sub-block 13 0 。. 23 !27〇785 and then sub-block 13 Ο 0 address 〇3 e 〇h filled in the logic block and the logical block address of the parent block 131Q 〇〇〇Qh 焉 address map 3 1 〇 address ◦ QQQ h is wiped, and the tail end The index i 2 = after block 1 'the parent block address 〇〇〇〇 h is filled in the spare area 0 増 plus 'the address indicated by 0. · Indicator 14 2 will now be based on the specific performance of the invention , the production of 窎. ”,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,, As shown in the figure, according to the specific form of the invention, the writing program of the flash memory volume circuit of the universal serial bus is displayed, and the logic bit sent by the host in step 6 Ο 1 is displayed. The address is converted into a flash memory physical block and a page address. Then in step 602, the controller checks to see if the sub-block exists. If the sub-block does not exist, then skip to step 6 〇5, if the sub- The block exists, and in the step Lu 6 y 3, the logical block of the existing side memory is checked and treated. Whether writing a person is equal to taking a memory block of the memory of the person, and skipping to step 6 ^ 1 〇 if equal' will check the existing flash memory logical page number in step 6 ,4, see Whether the written is greater than the last-written person's flash clock logical page, and if so, continue to step 61, if not, then skip to step 6. 24 1270785 Step 6 0 5 Take one from the FIF queue The clean block creates a sub-block for the existing write command. In step 6 0 6 check the existing flash memory logical page number to see if the write is equal to "0", and if it is equal to "0", continue to step 608. . If it is not equal to "0", in step 607, the data of the parent block is moved to the sub-block between "the last page written" and "the existing write page". In step 608, the data from the host to the flash memory is written into the buffer, and the count of the cell block is reduced. In step 60, 9, if the cell block count is equal to "〇", then proceed to "end point", if not, proceed to step 6 0 8. In step 610, if the existing write page number is equal to the last written page number processing, proceed to step 6 0 8. If not, continue to step 6 〇 7. In step 611, the data of the parent block is moved to the sub-block between the "last page written" and the last page of the block, and the parent block is erased and updated in the controller. Lai and the entity Jianying practice, replacing the parent block address with the sub-block block', and put the erased parent block back into the F j F◦ column as a clean block. ^月彡看七图图' is based on the specific form of the invention to show that the flash memory storage material is light, this is still clear that the specific form does not show flash memory compared to the reading Procedure flow chart. In /Step 7 〇 1, in order to convert the host address of the universal serial bus to 25 1270785 into a flash memory entity and a page address. In step 702, check the existing flash memory to see if the read is equal to the last read flash memory logic block. If yes, skip to step 7 〇5. If no, continue to step 7 〇 3. The data of the flash memory block and page is read in step 703, and the count of the block is reduced. In step 704, the cell block count is checked to see if it is equal to "〇". If it is equal to "0", it proceeds to "end point", and if not, it returns to step 7 〇 3. In step 705, the existing memory logical page is checked to see if the read is greater than the last written person's flash memory logical page. If yes, go back to step 7 〇 3, and if no, proceed to step 7 〇 6. ▲ The data of the sub-block entity_item is read in step 7 Q6, and the count of the cell is reduced. 〇7 Check the cell block count to see if it is equal to "〇", =〇", then proceed to "end point", if not, go back to step 7〇5. According to the fifteenth figure, according to the specific form of the invention, the life of the a, the eucalyptus structure is not exhausted, and when the microprocessor starts to execute the command, the flash memory volume I# Thunder A sequence bus map is displayed. Face command packet.鸠^取或写,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,, LBA) and circle 26 1270785 Start cell block (CHS) mode. If the host_LBA mode provides an address, the device will convert it to c H S mode and then change the cH S mode to a physical address. When the universal sequence bus line flash memory volume circuit executes the read command, the controller firstly stores (4) the data of the memory - a block of cells - a buffer of the cell block controller (5 i 2 group). Then the universal sequence sinking two engine will send the cell block to the host. When the number of cell blocks sent to the host is equal to the number of cell blocks that the host wants to read, the entire command is completed. Ludang universal serial bus flash memory volume body circuit write command when the ten system will use the universal sequence bus engine to read the host data - a block of a block to the controller's buffer (5 work 2 bytes), then the cell block will be stored in the flash memory, when the number of cell blocks sent to the flash memory is less than the number of cells to be written by the host, the entire command is completed. In the invention, a plurality of wafer selection legs are provided, and when the device is activated, the memory will be flashed. The memory expansion interface is connected to the flash memory class =: and the system has!! A flash memory 'device will find the total valley 罝' when the host needs this type of data, 10,000 = column The bus flash memory volume circuit provides the total capacity to the host instead of the capacity of a single flash memory. When the host sends a certain address (logic) to the universal sequence bus flash memory 27 1270785 integrated circuit, the universal sequence bus flash memory volume circuit performs calculation to find out what the host wants to access. The exact chip, and the corresponding address, then the device will use the different address and start the wafer pick. In addition, the flash memory chip and the controller described in the present invention are designed as a single chip to reduce the overall S product of the universal sequence bus flash memory rhythm circuit, and do not require external random access memory. The design of ram or OM. For those who have skilled technology, the scope and spirit of the original invention are carried out in accordance with the scope of the original invention, and the purpose of this is to make a modification and change in the following In the pre-conditions, the invention encompasses the scope of the invention and its equivalent meanings and variations. 28 1270785 [Simple description of the drawings] The first figure is a schematic diagram of the layout of the flash memory volume body of the universal serial bus according to the specific form of the invention. The second figure is a schematic diagram of a universal sequence bus flash memory volume circuit controller according to the specific form of the invention. The third figure is a schematic diagram of a system architecture block of a flash memory volume circuit of a universal serial bus according to the specific form of the invention. The fourth figure is a schematic diagram of the application flow of the universal sequence bus arrangement agreement for various operating systems according to the specific form of the invention. The fifth figure shows the table parameters of the universal sequence bus arrangement in the flash memory volume circuit of the universal sequence bus according to the specific form of the invention. The sixth figure shows the writing procedure of the universal sequence bus flash memory volume circuit according to the specific form of the invention. The seventh figure shows the reading procedure of the universal sequence bus flash memory volume circuit according to the specific form of the invention. The eighth figure shows a block diagram of writing data into a new block in accordance with the specific form of the invention. The ninth figure is a block diagram showing the data written to an extra page in accordance with the specific form of the invention. 29 1270785 The tenth figure is based on the specific form of the invention, and the block diagram of the parent and sub-technical. FIG. 11 is a schematic view of the invention. The display logic and physical address mapping tables are not intended to be specific to the invention. The figure shows the starting index and the tail end index as the fourteenth figure. The schematic diagram of the specific body address mapping table according to the invention is a schematic diagram of the specific industry according to the invention. The form shows the logic and the actual before the write. The 7F start and end indicators are also displayed.

第十五圖 係依據此項發明具體形式顯 不之命令封包架構示意The fifteenth figure shows the structure of the command packet according to the specific form of the invention.

主要元件符號說明 1 0、萬用序列匯流排連接器 12 0、快閃記憶體 20 2〇〇 2 1 〇 、系統緩衝區 、快閃記憶體陣列介面 快閃記憶體擴充介面腳位 、控制器 2 5 〇Main component symbol description 10, universal serial bus connector 12 0, flash memory 20 2〇〇2 1 〇, system buffer, flash memory array interface flash memory expansion interface pin, controller 2 5 〇

、萬用序列匯流排介面 2 6 Q 30 1270785 2 2 0、微處理器 2 7 0、E C C電路 2 3 0、唯讀記憶體(ROM) 2 8 0、輸入/輸出控制介面 2 4 0、隨機存取記憶體(RAM) 3 0、輸入/輸出控制腳位 3 0 0、主機 3 3 0、位址方法 3 0 5、參數控制器 3 4 0、快閃記憶體 310、萬用序列匯流排介面 3 2 0、萬用序列匯流排命令實作 4 0、控制器 5、萬用序列匯流排快閃記憶體積體電路 5 0、快閃記憶體晶片 31Universal serial bus interface 2 6 Q 30 1270785 2 2 0, microprocessor 2 7 0, ECC circuit 2 3 0, read-only memory (ROM) 2 8 0, input/output control interface 2 4 0, random Access memory (RAM) 3 0, input/output control pin 3 0 0, host 3 3 0, address method 3 0 5, parameter controller 3 4 0, flash memory 310, universal sequence bus Interface 3 2 0, universal sequence bus arrangement command implementation 40, controller 5, universal sequence bus bar flash memory volume body circuit 50, flash memory chip 31

Claims (1)

1270785 卜、申請專利範圍·· -、:種萬用序列匯流排快閃記憶體積體電路,將—控制器與至 夕個儲存式㈣記髓晶#封錢―顆積體電路,用以押 制主機和快閃記憶體裝置之間的命令和數據;其封裝的驗 包含: 該萬用序列匯流排(USB),用以將萬用序列驗排快閃 5己憶體積體電路連接至具萬用相匯流排(U S B )之主機 _ 9 存式快閃記憶體擴充介面腳位,使得萬用序列匯流排快 閃記憶體積體電路可以再外接儲存式快閃記憶體以增加容量 ;及前SB控制器的輸V輸出控制腳位,使得萬用序列 2 匯机排快閃記憶體積體電路可以做其他應用。 體2專t耗圍弟1項所述之萬用序列匯流排快閃記憶體積 要=盆進-步地包含了輸V輸出控制介面’提供系統需 要進仃其他的輸入/輸出控制。 3 圍第1項所述之萬用序列匯流崎 體電路’進-步地包含了-個具快閃記憶體擴充介面之腳位 1延伸萬細晴快_喻_之記憶體大小 4、如申請專利範圍第χ項所述之萬 體電路,進-步地包含了—系錢衝「U顿閃記憶體積 輪倾’提供主機和快閃記 32 1270785 憶體裝置之間的緩衝。 5、 如申請專利範圍第1項所述之制序列匯流排快閃記憶體積 體電路’進-步地包含了一個狀態機器,為系統緩衝區建立 讀取和寫入時序。 6、 如申請專利範圍第1項所述之萬用序列匯流排快閃記憶體積 體電路,進一步地包含了一個錯誤更正代碼(ECC)電路 ’以便在數據寫入快閃記憶體裝置時編碼E c c,以及當讀 取快閃記憶體裝置的數據時解碼E c C。 、H 7、 如申請專利範圍第6項所述之萬用序列匯流排快閃記憶體積 體電路,其中E C C電路進-步地包含了當發生並更正錯誤 時,無效數據位址之判斷。 8、 如申請專利範圍帛1項所述之萬用序列匯流排快閃記憶體積 艘電路’其中進-步地包含了一快閃記憶體介面,以控制送 到至少一快閃記憶體之讀取和寫入命令。 9、 如申請專利範圍帛!項所述之萬用序列匯流排快閃記憶體積馨 體電路,其中快閃記憶體晶>5、控制器為-單晶>[設計,用 以縮小快閃記憶體儲存裝置之整體體積。 ! 〇、如申請專利範圍帛1項所述之萬用序顺流排快閃記憶體 積體電路’進-步包含了一微處理器,以執行主機具有來 數之命令。 ^ i1、如中請專利範圍第i◦項所述之萬用序列匯流排快閃記憶 33 一、-¾路其中控制為為控制主機和快閃記憶體敦置之 ]勺口數據,以及管理至少一快閃記憶體中的數據, /、中控制器進_步地包含了·· 〜开八〜土恢丹虿芩數之命令; /系統、k衝區,提供錢和快閃記憶體裝置之間的緩衝; 萬用序列匯流排快閃記憶體積體電路,其中萬用序列匯流 叫體積體電路之狀態機器為系統緩衝區建立讀取 和寫入時序。 、=請專機,㈣物m缝閃記憶體 p電路,其中控制11為-不需要外部隨機存取記憶體( — am)或唯讀記憶體(R〇M)的單晶片設計。 、:種萬用序列匯流排快閃記憶體積體電路,包含: :個=用序列匯流排(USB)用以將萬用序列匯流排快 體積體電路連接至主機; 至少—個快閃記憶體,以儲存數據; 1 快閃兄憶體介面,丨 讀取和寫入命令;从制运到至少一快閃記憶體模組之 一快閃記憶體擴充介面,將萬 體電路連接至延伸的記憶體上 用序列匯流排快閃記憶體積 一萬用序列匯流排介面,作 忭马主機和快閃記憶體介面之間 〜面’响㈣卿序列匯流 34 1270785 ,快閃記憶體雜電路之_命令和數據,以及管理至少 快閃記憶體中的數據,其中控制器進一步地包含了: 1統緩衝區,提供制序_流排介面和快閃記憶體介 面之間的緩衝; :微處理器’以讀取系統緩衝區的命令和參數,並執行且 多數之命令;以及-個狀態機器,為系統緩衝 取 和寫入時序。 貝取 4 t申請專娜圍第13酬述之萬科賴流排快閃記憶_ -積體電路’其中控制器控制數據往返主機之傳輪。 、二申請專利範圍第13項所述之萬用序列匯流排快閃祕 體積體電路,其中控制器控制一萬用序列匯流排介面 、如申請專利範圍第! 3項所述之萬用序舰流排 體積體電路’其中控制器接收來自主機的命令。… 7、 :=範=,_序列__記憶 體積體电路,其中控制器提供狀態給主機。 看 8、 如申請專職3項所述之制相騎排 體積體電路,其中微處理器讀取系統緩衝區的命令:參^ y、如申請專利範圍第i 3項所述之 ^ 匚化排快閃纪十音 體積體電路,其中微處理器執行具參數之命a Μ- Μ、如中請專利範圍第i 3 項所述之萬用序列匯 •快响憶 35 1270785 體積體電路’其中微處理器―面接收主機的數據或將數據 傳輸至主機’一面管理並將位址映射至系統緩衝區 2 输祕麵排快_ " 一中斂處理益為快閃記憶體模組管理,如技 除、程式或讀取等命令。 2 2、如申請專利範圍第χ 3項所述之萬糊匯流 體積體電路,其中微處理器依據控制器之演算法執行位I 方法。 修 2 ===13項所述之萬__快_ 體積體電路’其巾微處理料縣統_區位址。 2 4、如申物Wl3項所㈣咖 體積體電路,其中微處理器進—步地包含:丨、閃仏 一用叫存控制H程式代碼的唯讀記憶體(r〇 二二控制器於執行命令時使用之隨機存取記憶體(r 2 5、如申請專利範圍第丄3 體積體電路,進—步地4用序列匯流排快閃記憶 延伸萬用序列匯流排快=二快脱憶體擴充介面,以 h己丨思體積體電路之記憶體。 361270785 卜, the scope of application for patents ··,: a variety of universal serial bus flash memory volume body circuit, the controller and the evening storage (four) remember the marrow crystal #封钱-particle circuit, used to The command and data between the host computer and the flash memory device; the package inspection includes: the universal serial bus (USB) for connecting the universal sequence check flash to the 5 volume memory circuit Universal phase bus (USB) host _ 9 memory flash memory expansion interface pin, so that the universal sequence bus flash memory volume circuit can be external storage flash memory to increase capacity; The SB controller's V-output control pin enables the Universal Sequence 2 channel to be used for other applications. Body 2 special consumption of the universal serial bus bus flash memory volume as described in item 1. To = step into the step contains the V output control interface 'providing the system to enter other input / output control. 3 The universal sequence sinking circuit described in the first item 'in step-by-step contains a foot with a flash memory expansion interface 1 extended fine and fine _ _ memory size 4, such as The universal circuit described in the third paragraph of the patent application includes, in a step-by-step manner, the buffer between the host and the flash memory 32 1270785 memory device. The serial bus flash memory volume circuit described in claim 1 of the patent application includes a state machine to establish read and write timing for the system buffer. The universal serial bus flash memory volume circuit described above further includes an error correction code (ECC) circuit 'to encode E cc when data is written to the flash memory device, and to flash when reading The data of the memory device is decoded by E c C., H 7. The universal serial bus flash memory volume circuit as described in claim 6 wherein the ECC circuit further includes when the correction occurs. Invalid number when an error occurs The judgment of the address. 8. The universal sequence bus flash memory volume circuit as described in the scope of patent application 其中1, which further includes a flash memory interface to control the delivery to at least one fast Flash memory read and write commands 9. As described in the patent scope 帛!, the universal sequence bus flash memory volume body circuit, in which flash memory crystals > 5, the controller is - Single Crystal>[Designed to reduce the overall volume of the flash memory storage device. ! 〇, as described in the patent application 帛1, the universal sequence of the flash memory volume circuit's step-by-step includes A microprocessor is used to execute the host with the number of commands. ^ i1, as described in the patent scope, i.e., the universal sequence bus flash memory 33, -3⁄4 way, wherein the control is the control host And flash memory, the data of the spoon, and the management of at least one of the data in the flash memory, /, the controller in the step _ step contains ~ · ~ eight ~ Tuhuadan number of orders / system, k-rush area, between money and flash memory devices Buffer; universal sequence bus flash memory volume circuit, in which the universal sequence is called the state machine of the volume circuit to establish the read and write timing for the system buffer., = please special plane, (4) m-slot flash memory The p-circuit, wherein the control 11 is a single-wafer design that does not require external random access memory (-am) or read-only memory (R〇M).: a universal serial bus bus flash memory volume circuit, Contains: : = = use serial bus (USB) to connect the universal serial bus fast volume circuit to the host; at least - a flash memory to store data; 1 flash brother to remember the body interface, read The fetch and write command; from the transport to at least one of the flash memory modules, a flash memory expansion interface, connecting the 10,000-body circuit to the extended memory, using the serial bus flash memory volume 10,000 sequence Bus interface, as the Hummer host and the flash memory interface between the ~ surface 'ring (four) Qing sequence confluence 34 1270785, flash memory circuit _ command and data, and manage at least the data in the flash memory The controller further includes: a buffer that provides a buffer between the sequenced stream interface and the flash memory interface; the microprocessor 'reads the commands and parameters of the system buffer, and executes Most commands; and - state machines, for system buffer fetch and write timing. Becker 4 t applied for the special 13th reward of the Vanke Lai flow flash memory _ - integrated circuit 'where the controller controls the data to and from the host. The second application of the universal range bus as described in the thirteenth patent scope, the flashing secret volume circuit, wherein the controller controls the 10,000 serial bus interface, such as the scope of patent application! The three-purpose universal ship bank volume circuit described in the 'the controller receives the command from the host. ... 7, :=fan=,_sequence__memory The volume body circuit in which the controller provides the status to the host. See 8, for example, apply for the system of the full-scale three-phase system, in which the microprocessor reads the system buffer command: ^ y, as described in the patent scope i i 3 A flashing syllabary volume circuit in which the microprocessor executes a parameter a Μ- Μ, as described in the patent range i i 3, the universal sequence sink • fast ring memory 35 1270785 volume body circuit The microprocessor-side receives the data of the host or transmits the data to the host's side management and maps the address to the system buffer 2. The fast-moving memory module management, Such as technical division, program or read commands. 2 2. The method of claim 4, wherein the microprocessor executes the bit I method according to the algorithm of the controller. Repair 2 ===13 described in the __ fast _ volume body circuit's towel micro-processing material county _ district address. 2 4, such as the W1 item of the application (4) the coffee volume circuit, wherein the microprocessor further includes: 丨, flash 仏 a read-only memory called the control H program code (r〇二二控制器The random access memory used when executing the command (r 2 5, as in the patent application scope 丄3 volume body circuit, step-by-step 4 with sequence bus bar flash memory extended universal sequence bus bar fast = two fast memory The body expands the interface to the memory of the volume circuit.
TW90128866A 2001-11-21 2001-11-21 Universal serial bus flash memory integrated circuit TWI270785B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
TW90128866A TWI270785B (en) 2001-11-21 2001-11-21 Universal serial bus flash memory integrated circuit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW90128866A TWI270785B (en) 2001-11-21 2001-11-21 Universal serial bus flash memory integrated circuit

Publications (1)

Publication Number Publication Date
TWI270785B true TWI270785B (en) 2007-01-11

Family

ID=38430273

Family Applications (1)

Application Number Title Priority Date Filing Date
TW90128866A TWI270785B (en) 2001-11-21 2001-11-21 Universal serial bus flash memory integrated circuit

Country Status (1)

Country Link
TW (1) TWI270785B (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI402851B (en) * 2008-03-27 2013-07-21 Via Tech Inc Electronic devices and the related data transmission methods
TWI493455B (en) * 2013-07-02 2015-07-21 Phison Electronics Corp Method for managing command queue, memory controller and memory storage apparatus

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI402851B (en) * 2008-03-27 2013-07-21 Via Tech Inc Electronic devices and the related data transmission methods
TWI493455B (en) * 2013-07-02 2015-07-21 Phison Electronics Corp Method for managing command queue, memory controller and memory storage apparatus

Similar Documents

Publication Publication Date Title
TW442732B (en) Mobile client computer and flash memory management
TWI306263B (en)
TW486668B (en) A single-chip data processing apparatus incorporating an electrically rewritable nonvolatile memory and method of operating the same
TWI261254B (en) Memory card and semiconductor device
JP4015866B2 (en) Storage device
US20080282024A1 (en) Management of erase operations in storage devices based on flash memories
CN101334758B (en) Device and method for embedded system expanding memory space
TW200915080A (en) Flash memory controller for electronic data flash card
JPH06266596A (en) Flash memory file storage device and information processor
TW200915327A (en) Method of protecting data for power failure and controller using the same
TW200847169A (en) Memory device architectures and operation
JPWO2004021191A1 (en) Semiconductor memory device and data writing method to flash memory
CN109976664A (en) The daily record data tissue of solid storage device
JP2003076605A (en) Semiconductor memory device equipped with block erase type nonvolatile memory and method of writing / reading data therefrom
CN211878599U (en) Simulation verification system applied to field editable gate array FPGA
TWI270785B (en) Universal serial bus flash memory integrated circuit
TW200421086A (en) Low-power cache and method for operating same
CN104102456A (en) Memory device machine operating method
CN101789259B (en) Hierarchical and hierarchical data processing method and device applied to flash memory
JP2006011533A (en) Memory card, semiconductor device, and control method of semiconductor memory
CN101876952B (en) System and method for software and hardware interaction between host-side transport layer and application layer
TW201214111A (en) Data writing method, memory controller and memory storage apparatus
TW561339B (en) Non-volatile memory based storage system capable of directly overwriting without using redundancy and the method thereof
TWI436209B (en) Memory management table proceesing method, memory controller and memory storage apparatus
CN101290602A (en) Memory management system and method

Legal Events

Date Code Title Description
MK4A Expiration of patent term of an invention patent