TWI418981B - Memory modules, and information machines - Google Patents

Memory modules, and information machines Download PDF

Info

Publication number
TWI418981B
TWI418981B TW095115925A TW95115925A TWI418981B TW I418981 B TWI418981 B TW I418981B TW 095115925 A TW095115925 A TW 095115925A TW 95115925 A TW95115925 A TW 95115925A TW I418981 B TWI418981 B TW I418981B
Authority
TW
Taiwan
Prior art keywords
memory
data
cache
address
interface
Prior art date
Application number
TW095115925A
Other languages
English (en)
Other versions
TW200710655A (en
Inventor
Seiji Miura
Original Assignee
Renesas 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 Renesas Electronics Corp filed Critical Renesas Electronics Corp
Publication of TW200710655A publication Critical patent/TW200710655A/zh
Application granted granted Critical
Publication of TWI418981B publication Critical patent/TWI418981B/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0238Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
    • G06F12/0246Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1008Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
    • G06F11/1068Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices in sector programmable memories, e.g. flash disk
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0888Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches using selective caching, e.g. bypass
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0893Caches characterised by their organisation or structure
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C5/00Details of stores covered by group G11C11/00
    • G11C5/02Disposition of storage elements, e.g. in the form of a matrix array
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1006Data managing, e.g. manipulating data before writing or reading out, data bus switches or control circuits therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0862Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches with prefetch
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/20Employing a main memory using a specific memory technology
    • G06F2212/202Non-volatile memory
    • G06F2212/2022Flash memory
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C2207/00Indexing scheme relating to arrangements for writing information into, or reading information out from, a digital store
    • G11C2207/22Control and timing of internal memory operations
    • G11C2207/2245Memory devices with an internal cache buffer
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L2224/00Indexing scheme for arrangements for connecting or disconnecting semiconductor or solid-state bodies and methods related thereto as covered by H01L24/00
    • H01L2224/01Means for bonding being attached to, or being formed on, the surface to be connected, e.g. chip-to-package, die-attach, "first-level" interconnects; Manufacturing methods related thereto
    • H01L2224/10Bump connectors; Manufacturing methods related thereto
    • H01L2224/15Structure, shape, material or disposition of the bump connectors after the connecting process
    • H01L2224/16Structure, shape, material or disposition of the bump connectors after the connecting process of an individual bump connector
    • H01L2224/161Disposition
    • H01L2224/16151Disposition the bump connector connecting between a semiconductor or solid-state body and an item not being a semiconductor or solid-state body, e.g. chip-to-substrate, chip-to-passive
    • H01L2224/16221Disposition the bump connector connecting between a semiconductor or solid-state body and an item not being a semiconductor or solid-state body, e.g. chip-to-substrate, chip-to-passive the body and the item being stacked
    • H01L2224/16225Disposition the bump connector connecting between a semiconductor or solid-state body and an item not being a semiconductor or solid-state body, e.g. chip-to-substrate, chip-to-passive the body and the item being stacked the item being non-metallic, e.g. insulating substrate with or without metallisation
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L2224/00Indexing scheme for arrangements for connecting or disconnecting semiconductor or solid-state bodies and methods related thereto as covered by H01L24/00
    • H01L2224/01Means for bonding being attached to, or being formed on, the surface to be connected, e.g. chip-to-package, die-attach, "first-level" interconnects; Manufacturing methods related thereto
    • H01L2224/26Layer connectors, e.g. plate connectors, solder or adhesive layers; Manufacturing methods related thereto
    • H01L2224/31Structure, shape, material or disposition of the layer connectors after the connecting process
    • H01L2224/32Structure, shape, material or disposition of the layer connectors after the connecting process of an individual layer connector
    • H01L2224/321Disposition
    • H01L2224/32135Disposition the layer connector connecting between different semiconductor or solid-state bodies, i.e. chip-to-chip
    • H01L2224/32145Disposition the layer connector connecting between different semiconductor or solid-state bodies, i.e. chip-to-chip the bodies being stacked
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L2224/00Indexing scheme for arrangements for connecting or disconnecting semiconductor or solid-state bodies and methods related thereto as covered by H01L24/00
    • H01L2224/01Means for bonding being attached to, or being formed on, the surface to be connected, e.g. chip-to-package, die-attach, "first-level" interconnects; Manufacturing methods related thereto
    • H01L2224/42Wire connectors; Manufacturing methods related thereto
    • H01L2224/47Structure, shape, material or disposition of the wire connectors after the connecting process
    • H01L2224/48Structure, shape, material or disposition of the wire connectors after the connecting process of an individual wire connector
    • H01L2224/4805Shape
    • H01L2224/4809Loop shape
    • H01L2224/48091Arched
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L2224/00Indexing scheme for arrangements for connecting or disconnecting semiconductor or solid-state bodies and methods related thereto as covered by H01L24/00
    • H01L2224/01Means for bonding being attached to, or being formed on, the surface to be connected, e.g. chip-to-package, die-attach, "first-level" interconnects; Manufacturing methods related thereto
    • H01L2224/42Wire connectors; Manufacturing methods related thereto
    • H01L2224/47Structure, shape, material or disposition of the wire connectors after the connecting process
    • H01L2224/48Structure, shape, material or disposition of the wire connectors after the connecting process of an individual wire connector
    • H01L2224/481Disposition
    • H01L2224/48135Connecting between different semiconductor or solid-state bodies, i.e. chip-to-chip
    • H01L2224/48137Connecting between different semiconductor or solid-state bodies, i.e. chip-to-chip the bodies being arranged next to each other, e.g. on a common substrate
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L2224/00Indexing scheme for arrangements for connecting or disconnecting semiconductor or solid-state bodies and methods related thereto as covered by H01L24/00
    • H01L2224/01Means for bonding being attached to, or being formed on, the surface to be connected, e.g. chip-to-package, die-attach, "first-level" interconnects; Manufacturing methods related thereto
    • H01L2224/42Wire connectors; Manufacturing methods related thereto
    • H01L2224/47Structure, shape, material or disposition of the wire connectors after the connecting process
    • H01L2224/48Structure, shape, material or disposition of the wire connectors after the connecting process of an individual wire connector
    • H01L2224/481Disposition
    • H01L2224/48135Connecting between different semiconductor or solid-state bodies, i.e. chip-to-chip
    • H01L2224/48145Connecting between different semiconductor or solid-state bodies, i.e. chip-to-chip the bodies being stacked
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L2224/00Indexing scheme for arrangements for connecting or disconnecting semiconductor or solid-state bodies and methods related thereto as covered by H01L24/00
    • H01L2224/01Means for bonding being attached to, or being formed on, the surface to be connected, e.g. chip-to-package, die-attach, "first-level" interconnects; Manufacturing methods related thereto
    • H01L2224/42Wire connectors; Manufacturing methods related thereto
    • H01L2224/47Structure, shape, material or disposition of the wire connectors after the connecting process
    • H01L2224/48Structure, shape, material or disposition of the wire connectors after the connecting process of an individual wire connector
    • H01L2224/481Disposition
    • H01L2224/48151Connecting between a semiconductor or solid-state body and an item not being a semiconductor or solid-state body, e.g. chip-to-substrate, chip-to-passive
    • H01L2224/48221Connecting between a semiconductor or solid-state body and an item not being a semiconductor or solid-state body, e.g. chip-to-substrate, chip-to-passive the body and the item being stacked
    • H01L2224/48225Connecting between a semiconductor or solid-state body and an item not being a semiconductor or solid-state body, e.g. chip-to-substrate, chip-to-passive the body and the item being stacked the item being non-metallic, e.g. insulating substrate with or without metallisation
    • H01L2224/48227Connecting between a semiconductor or solid-state body and an item not being a semiconductor or solid-state body, e.g. chip-to-substrate, chip-to-passive the body and the item being stacked the item being non-metallic, e.g. insulating substrate with or without metallisation connecting the wire to a bond pad of the item
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L2224/00Indexing scheme for arrangements for connecting or disconnecting semiconductor or solid-state bodies and methods related thereto as covered by H01L24/00
    • H01L2224/01Means for bonding being attached to, or being formed on, the surface to be connected, e.g. chip-to-package, die-attach, "first-level" interconnects; Manufacturing methods related thereto
    • H01L2224/42Wire connectors; Manufacturing methods related thereto
    • H01L2224/47Structure, shape, material or disposition of the wire connectors after the connecting process
    • H01L2224/49Structure, shape, material or disposition of the wire connectors after the connecting process of a plurality of wire connectors
    • H01L2224/491Disposition
    • H01L2224/4912Layout
    • H01L2224/49175Parallel arrangements
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L2224/00Indexing scheme for arrangements for connecting or disconnecting semiconductor or solid-state bodies and methods related thereto as covered by H01L24/00
    • H01L2224/73Means for bonding being of different types provided for in two or more of groups H01L2224/10, H01L2224/18, H01L2224/26, H01L2224/34, H01L2224/42, H01L2224/50, H01L2224/63, H01L2224/71
    • H01L2224/732Location after the connecting process
    • H01L2224/73251Location after the connecting process on different surfaces
    • H01L2224/73253Bump and layer connectors
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L2224/00Indexing scheme for arrangements for connecting or disconnecting semiconductor or solid-state bodies and methods related thereto as covered by H01L24/00
    • H01L2224/73Means for bonding being of different types provided for in two or more of groups H01L2224/10, H01L2224/18, H01L2224/26, H01L2224/34, H01L2224/42, H01L2224/50, H01L2224/63, H01L2224/71
    • H01L2224/732Location after the connecting process
    • H01L2224/73251Location after the connecting process on different surfaces
    • H01L2224/73265Layer and wire connectors
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L2924/00Indexing scheme for arrangements or methods for connecting or disconnecting semiconductor or solid-state bodies as covered by H01L24/00
    • H01L2924/15Details of package parts other than the semiconductor or other solid state devices to be connected
    • H01L2924/151Die mounting substrate
    • H01L2924/153Connection portion
    • H01L2924/1531Connection portion the connection portion being formed only on the surface of the substrate opposite to the die mounting surface
    • H01L2924/15311Connection portion the connection portion being formed only on the surface of the substrate opposite to the die mounting surface being a ball array, e.g. BGA
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L2924/00Indexing scheme for arrangements or methods for connecting or disconnecting semiconductor or solid-state bodies as covered by H01L24/00
    • H01L2924/15Details of package parts other than the semiconductor or other solid state devices to be connected
    • H01L2924/181Encapsulation

Description

記憶體模組、及資訊機器
本發明關於包含非揮發性記憶體的記憶體系統及記憶體系統的控制方法。
習知之快閃記憶體(32M bit(百萬位元)容量)與靜態隨機存取記憶體(NOR(4M bit(百萬位元)容量))以堆疊晶片方式被一體密封於FBGA(Fine pitch Ball Grid Array)型封裝而成之複合型半導體記憶體存在。對於FBGA型封裝之輸出入電極,快閃記憶體與NOR之位址輸入端子與資料輸出入端子為共通化,但是各個控制端子為獨立(例如非專利文獻1)。
又,快閃記憶體晶片與DRAM晶片被一體密封於引線框架型封裝而成之複合型半導體記憶體亦存在。於該複合型半導體記憶體,對於封裝之輸出入電極,快閃記憶體與DRAM之位址輸入端子、資料輸出入端子及控制端子設為共通化而進行輸出入(例如專利文獻1之圖1、圖15,及專利文獻2)。
又,作為主記憶裝置使用之由快閃(Flash)記憶體、快取(Cache)記憶體、控制器及CPU構成的系統亦存在(例如專利文獻3之圖1)。
又,由快閃記憶體、DRAM、及傳送控制電路構成的半導體記憶體亦存在(例如專利文獻4之圖2、專利文獻5)。
非專利文獻1:"複合記憶體(堆疊CSP)快閃記憶體+RAM資料文獻",型名LRS1380、〔on line〕,平成13年12月10日,聲寶公司〔平成14年8月21日檢索〕,網際網路<URL://www.sharp.co.jp/prodcts/device/flash/cmlist.html>。
專利文獻1:特開平05-299616號公報。
專利文獻2:歐洲專利申請公開第0566306號公報。
專利文獻3:特開平07-146820號公報。
專利文獻4:特開2001-5723號公報。
專利文獻5:特開2002-366429號公報。
本發明人於本案發明之前針對行動電話及其使用之處理器、快閃記憶體、隨機存取記憶體構成之記憶體系統及其動作進行檢討。
圖33所示行動電話使用資訊處理裝置PRC及記憶體模組MCM。
資訊處理裝置PRC由中央運算裝置CPU及SRAM控制器構成,記憶體模組MCM由NOR型快閃記憶體NOR FLASH及SRAM構成。
資訊處理裝置PRC對記憶體模組MCM進行存取,進行資料讀出及寫入。
電源投入後,資訊處理裝置PRC讀出NOR型快閃記憶體NOR FLASH儲存之起動資料,自行起動。之後,資訊處理裝置PRC必要時由NOR型快閃記憶體NOR FLASH讀出應用程式,於中央運算裝置CPU執行。SRAM作為工作記憶體機能,保存中央運算裝置CPU之運算結果。
近年來行動電話處理之應用程式、資料、工作區域隨行動電話附加機能(音樂、遊戲器等之資訊傳送)之增加而變大,更大記憶容量之快閃記憶體及隨機存取記憶體成為必要。另外,隨著最近行動電話之高機能化要求,高速且大容量記憶體之需求亦變高。
目前行動電話使用之NOR型快閃記憶體為,使用稱為NOR構成之記憶體陣列方式的NOR型快閃記憶體。NOR型為可抑低記憶格陣列之寄生電阻的陣列構成,針對並接之2個記憶格以1個之比例設有金屬位元線接觸而實現低電阻化,因此讀出時間約80ns可設為大略等於NOR之讀出時間。但是相反地須對2個格設計1個接觸之故,接觸部之晶片面積佔有比例變高,相當於1位元記憶格之面積變大,存在難以應付大容量化要求之問題。
代表性之大容量記憶體有記憶體陣列使用AND構成之AND型快閃記憶體及使用NAND構成之NAND型快閃記憶體。彼等快閃記憶體針對16~128個格設計1個位元線接觸而可實現高密度記憶體陣列。因而,相較於NOR型快閃記憶體,可縮小相當於1位元記憶格之面積,可對應大容量化。但是,相反地輸出最初資料為止之讀出時間為較慢之約25μs~100μs,難以和NOR型快閃記憶體取得匹配性。
快閃記憶體因重複改寫而導致信賴性降低、寫入時之寫入資料和讀出時成為不同資料、或改寫時資料無法寫入等之問題有可能會發生。
另外,半導體密封構件中之鈾等之放射性物質放射之α線射入隨機存取記憶體RAM之記憶體陣列而破壞該記憶體陣列保持之記憶資料之情況亦可能發生,成為隨機存取記憶體RAM之信賴性惡化之主要原因。
本發明目的在於提供可增大記憶容量、而且低成本,容易使用之包含ROM與RAM之記憶體系統。
本發明之代表性手段如下。亦即,將資訊處理裝置、快閃記憶體、快取記憶體及記憶體控制器安裝於1個密封體,於密封體設置進行和半導體晶片間之配線用的電極,及密封體與密封體外部連接用的電極。
此時,為使來自資訊處理裝置之快閃記憶體內之資料讀出要求之讀出時間實現高速化,而將快取記憶體與快閃記憶體連接於記憶體控制器,藉由記憶體控制器進行自快閃記憶體至快取記憶體之資料傳送。
電源投入後,控制成為使快閃記憶體之資料之至少一部分傳送至快取記憶體亦可。
控制成為使由資訊處理裝置輸入之位址分散至快取記憶體之索引位址亦可。
控制成為,上述記憶體控制器事先使資訊處理裝置使用之資料傳送至快取記憶體亦可。
以快閃記憶體內之緩衝器作為快取記憶體使用亦可。
上述記憶體控制器在由快閃記憶體讀出資料時,係進行錯誤檢測及訂正,寫入時對寫入未被正確進行之不良位址進行代替處理亦可。對快閃記憶體內之記憶格進行寫入次數平均化控制亦可。又,由快取記憶體亦讀出資料之後進行錯誤檢測亦可。
設置可以知道資訊處理裝置要求之資料到達的信號線亦可。
控制成為,上述記憶體控制器在由快取記憶體讀出資料期間,藉由上述資訊處理裝置接受對快閃記憶體之讀出及寫入之存取,而進行資料之讀出及寫入亦可。
依圖面說明本發明實施形態。於實施形態構成各方塊之電路元件並未特別限定,可藉由習知CMOS(互補型MOS電晶體)等積體電路技術形成於單晶矽等之1個半導體基板上。
(第1實施形態)
圖1為本發明適用之第1實施形態之由資訊處理裝置CPU_CHIP與記憶體模組MSM構成之記憶體系統。以下詳細說明。
記憶體模組MSM由FLASH_CHIP與CT_CHIP構成。FLASH_CHIP為非揮發性記憶體,非揮發性記憶體可使用ROM(唯獨記憶體)、EEPROM(電子抹除及可程式化ROM)、快閃記憶體等。本實施形態中以快閃記憶體為例說明。
代表性大容量快閃記憶體有,記憶體陣列使用AND構成之AND型快閃記憶體及記憶體陣列使用NAND構成之NAND型快閃記憶體,本發明可使用雙方之快閃記憶體。又,存在具有AND介面之大容量快閃記憶體,及具有NAND介面之大容量快閃記憶體,本發明可使用雙方之快閃記憶體。本實施形態中以具有NAND介面之大容量快閃記憶體為例說明。
雖未特別限定,作為FLASH_CHIP使用之典型之快閃記憶體,為具有NAND介面之大容量快閃記憶體,具有約2Gbit(2×109 位元)之大記憶容量,讀出時間(自讀出要求至資料被輸出為止之時間)為約25μs至100μs之較慢者。
DRAM_CHIP為動態隨機存取記憶體,因內部構成或介面之不同而有EDO(Extended Data Out)、SDRAM(Synchronous DRAM)、DDR(Double Data Rate)等各種類。記憶體模組MSM可使用任一DRAM。本實施形態中以SDRAM為例說明。動態隨機存取記憶體DRAM_CHIP作為資訊處理裝置CPU_CHIP執行應用程式之暫時用之工作記憶體使用。
雖未特別限定,作為DRAM_CHIP使用之典型之SDRAM具有約256Mbit(256×106 位元)之大記憶容量。
控制電路CT_CHIP為控制FLASH_CHIP與CP方塊之間之資料傳送的控制電路,雖未特別限定內藏有記憶容量為1Mbyte(1×106 位元組)之快取記憶體L2Cache,讀出時間約為30ns至90ns,較習知NOR型快閃記憶體為短時間或同等。
快取記憶體L2Cache可由非揮發性記憶體之磁性隨機存取記憶體MRAM及相變化記憶體PRAM,或揮發性記憶體之靜態隨機存取記憶體SRAM予以實現,記憶體模組MSM可使用任一之隨機存取記憶體。本實施形態中,快取記憶體L2Cache以使用揮發性記憶體之靜態隨機存取記憶體SRAM為例說明。
快閃記憶體FLASH_CHIP與控制電路CT_CHIP間之資料傳送係藉由NAND介面NAND IF2進行。資訊處理裝置CPU_CHIP與動態隨機存取記憶體DRAM_CHIP間之資料傳送係藉由SDRAM介面SDRAM IF進行。
資訊處理裝置CPU_CHIP由中央運算裝置CPU、NOR快閃控制器NRC、NAND快閃控制器NDC、DRAM控制器SDC構成。
NOR快閃控制器NRC藉由NOR介面對記憶體模組MSM進行存取,進行資料之讀出/寫入。DRAM控制器SDC藉由SDRAM介面SDRAM IF對DRAM_CHIP進行存取,近醒資料之讀出/寫入。
NAND快閃控制器NDC藉由NAND介面NAND IF1對記憶體模組MSM進行存取,進行資料之讀出/寫入。
快閃記憶體FLASH_CHIP由控制電路FCNT、資料緩衝器DREG、記憶格陣列MARY構成。控制電路FCNT為,藉由來自控制電路CT_CHIP之NAND介面NAND IF2之讀出/寫入指令而動作的電路。
讀出要求被輸入控制電路FCNT時,雖未特別限定,自記憶格陣列MARY至資料緩衝器DREG被傳送資料大小(容量)約2KB之資料,藉由NAND介面NAND IF2被傳送至控制電路CT_CHIP。又,被傳送至資料緩衝器DREG之資料直接被保持。
寫入要求及寫入資料被輸入控制電路FCNT時,雖未特別限定,資料大小(容量)約2KB之資料被輸入至資料緩衝器DREG,最終被寫入記憶格陣列MARY。又,被輸入至資料緩衝器DREG之資料直接被保持。
快閃記憶體FLASH_CHIP,雖未特別限定,可分為主資料區域及代替區域REPAREA。
於主資料區域包含初期程式區域,於初期程式區域儲存,電源投入後立即起動資訊處理裝置CPU_CHIP的起動程式,及自動傳送區域指定資料,用於表示自快閃記憶體FLASH_CHIP至快取記憶體L2Cache之自動傳送用的快取區域內之資料範圍。
(控制電路CT_CHIP之構成)
控制電路CT_CHIP由:接受來自NOR介面NOR IF之讀出/寫入要求的NOR介面電路NRIF,接受來自NAND介面NAND IF之讀出/寫入要求的NAND介面電路NDIF,暫存器方塊REG,位址轉換電路DSTR,快取記憶體L2Cache、PL2A、PL2B,預擷取控制電路PREF,快閃控制電路FLCT,緩衝器電路BFBK,及快閃錯誤控制電路FLSP構成。
快取記憶體L2Cache,雖未特別限定,具有約1M Byte(百萬位元組)之容量。快取記憶體PL2A、PL2B,雖未特別限定,分別具有512 Byte(位元組)之容量。
預擷取控制電路PREF係由命中判斷電路PL2Hit、L3Hit,及先行讀出控制電路構成。
緩衝器電路BFBK由讀出緩衝器RBUF,寫入緩衝器WBUF構成。
快閃控制電路FLCT由時脈控制電路OSCF,記憶體位址管理電路MMG,存取調停電路ARB,控制電路RWCL構成。
快閃錯誤控制電路FLSP由錯誤檢測訂正電路ECC,緩衝器電路BUF,代替處理電路REP,寫入次數平均化電路WLV構成。
以下說明本記憶體系統之動作。首先說明電源投入後立即之動作。
(電源投入後立即之動作說明)
對資訊處理裝置CPU_CHIP、動態隨機存取記憶體DRAM_CHIP、控制電路CT_CHIP及快閃記憶體FLASH_CHIP進行電源投入時,快閃控制電路FLCT將FLASH_CHIP之初期程式區域之資料讀出至緩衝器電路BUF,於錯誤檢測訂正電路ECC進行確認是否有錯誤,無錯誤時將初期程式區域內之起動程式傳送至快取記憶體PL2A,有錯誤時進行訂正,將初期程式區域內之起動程式傳送至快取記憶體PL2A。如上述說明,電源投入後立即將起動程式由FLASH_CHIP自動傳送至快取記憶體PL2A,如此則,資訊處理裝置CPU_CHIP可讀出該起動程式而自行起動,又,可進行動態隨機存取記憶體DRAM_CHIP之初期設定。
在資訊處理裝置CPU_CHIP進行起動期間,快閃控制電路FLCT藉由緩衝器電路BUF讀出自動傳送區域指定資料,將該資料所示範圍之快閃記憶體FLASH_CHIP內之資料依序讀出至緩衝器電路BUF,於錯誤檢測訂正電路ECC進行確認是否有錯誤,無錯誤時經由快取記憶體PL2B傳送至快取記憶體L2Cache,有錯誤時進行訂正,經由快取記憶體PL2B傳送至快取記憶體L2Cache。於該自動資料傳送結束時點,記憶體模組MSM設定表示一連串初期動作結束的初期動作結束信號PCMP為H(高)位準。
又,存取調停電路ARB可構成為,對暫存器方塊REG寫入資料傳送結束表示用之傳送結束旗標。此情況下,不需要初期動作結束信號PCMP,因而可減少信號腳位。
資訊處理裝置CPU_CHIP藉由檢測記憶體模組MSM之初期動作結束信號PCMP可獲知電源投入後立即之資料傳送結束否,可立即存取快取記憶體L2Cache。
如上述說明,電源投入後立即將起動程式由FLASH_CHIP自動傳送至快取記憶體L2Cache,如此則,資訊處理裝置CPU_CHIP可讀出該起動程式而自行起動,又,在資訊處理裝置CPU_CHIP進行起動期間,將FLASH_CHIP內之資料自動傳送至快取記憶體L2Cache,如此則,於資訊處理裝置CPU_CHIP起動時點,可立即存取記憶體模組MSM,可達成高性能化。
(暫存器方塊之說明)
說明暫存器方塊REG,雖未特別限定,具有讀出模態設定暫存器RModeReg,快取區域設定暫存器CAreaReg,快取鎖定區域設定暫存器CaLockReg,寫入保護區域設定暫存器WproReg,及寫入次數平均化處理區域設定暫存器WlvlReg。
變更快取區域與非快取區域時,雖未特別限定,可由NOR介面NOR IF改寫快取區域設定暫存器CAreaReg之值,而變更快取區域與非快取區域。雖未特別限定,電源投入後,快閃記憶體FLASH_CHIP之全區域立即成為快取區域。
快取區域內之資料被傳送至快取記憶體L2Cache、PL2A、PL2B,非快取區域內之資料未被傳送至快取記憶體L2Cache、PL2A、PL2B。
變更快取鎖定區域與非快取鎖定區域時,雖未特別限定,可由NOR介面NOR IF改寫快取區域設定暫存器CAreaReg之值,而變更快取鎖定區域與非快取鎖定區域。雖未特別限定,電源投入後,快閃記憶體FLASH_CHIP之全區域立即成為非快取鎖定區域。
快取鎖定區域內之資料一但被傳送至快取記憶體L2Cache後,在藉由快取鎖定解除指令改寫快取區域設定暫存器CAreaReg之前,將存在於快取記憶體L2Cache。又,非快取鎖定區域內之資料可由快取記憶體L2Cache排出。
變更寫入次數平均化處理區域、非寫入次數平均化處理區域時,雖未特別限定,可由NOR介面NOR IF改寫寫入次數平均化處理區域設定暫存器WlvlReg之值,而變更寫入次數平均化處理區域、非寫入次數平均化處理區域。雖未特別限定,電源投入後,快閃記憶體FLASH_CHIP之一半區域立即成為寫入次數平均化處理區域。
寫入次數平均化處理區域內之資料,在寫入次數平均化電路WLA判斷改寫集中時,被進行寫入次數平均化處理。
非寫入次數平均化處理區域內之資料不被進行寫入次數平均化處理。
變更寫入保護區域、非寫入保護區域時,雖未特別限定,可由NOR介面NOR IF改寫寫入保護區域設定暫存器WproReg之值,而變更寫入保護區域、非寫入保護區域。雖未特別限定,電源投入後,快閃記憶體FLASH_CHIP之全區域立即成為非寫入保護區域。
於寫入保護區域不被進行寫入,於非寫入保護區域可進行寫入。
記憶體模組MSM具備之NOR介面,可為和時脈信號CLK同步動作的同步型NOR介面,及和時脈信號CLK不同步的非同步型NOR介面,可於任一之NOR介面動作。雖未特別限定,記憶體模組MSM於電源投入後以非同步型NOR介面動作。
雖未特別限定,位址轉換電路DSTR可實現多數位址轉換方式(簡易索引轉換方式、索引位元位移轉換方式、索引運算方式),可於任一之位址轉換方式動作。雖未特別限定,位址轉換電路DSTR於電源投入後以索引運算方式動作。
雖未特別限定,由NOR介面NOR IF改寫讀出模態設定暫存器RModeReg之值,可變更記憶體模組MSM具備之NOR介面或位址轉換方式。
如上述說明,同步型NOR介面或非同步型NOR介面,位址轉換方式、快取區域及非快取區域、快取鎖定區域及非快取鎖定區域、寫入次數平均化處理區域及非寫入次數平均化處理區域、寫入保護區域及非寫入保護區域可分別獨立設定,可配合系統於使用者側自由選擇。
(通常動作之說明)
說明電源投入時之電源導通(Power on)序列結束後之快閃記憶體FLASH_CHIP與資訊處理裝置CPU_CHIP間之資料傳送。
首先說明資訊處理裝置CPU_CHIP由NOR介面NOR IF輸入讀出要求之動作。
資訊處理裝置CPU_CHIP經由NOR介面NOR IF對控制電路CT_CHIP輸入讀出指令及位址RADD時,控制電路CT_CHIP內之NOR介面電路NRIF保持彼等讀出指令及位址。NOR介面電路NRIF保持之讀出指令及位址RADD,被輸入於記憶體位址管理電路MMG、存取調停電路ARB及位址轉換電路DSTR。
記憶體位址管理電路MMG對暫存器方塊REG保持之用於表示快取區域的位址資訊與位址RADD進行比較。
位址RADD在快取區域範圍外時,快取區域範圍外資訊由記憶體位址管理電路MMG經由NOR介面電路NRIF再藉由NOR介面NOR IF到達資訊處理裝置CPU_CHIP。
存取調停電路ARB進行由NOR介面電路NRIF輸入之讀出要求與來自NAND介面電路NDIF之讀出或寫入要求之間之調停。
首先,讀出要求由NOR介面電路NRIF被輸入存取調停電路時,存取調停電路將判斷是否有來自NAND介面電路NDIF之讀出或寫入要求,又,判斷是否對NAND介面電路NDIF之讀出或寫入要求進行動作。
判斷有來自NAND介面電路NDIF之讀出或寫入要求,對該要求乃未進行動作時,延後處理來自NAND介面電路NDIF之讀出或寫入要求,而優先許可來自NOR介面電路NRIF之讀出要求。
判斷對NAND介面電路NDIF之讀出或寫入要求之動作執行中時,暫時中斷執行中之動作,而優先許可來自NOR介面電路NRIF之讀出要求。
來自NAND介面電路NDIF之讀出及寫入要求被輸入於存取調停電路時,存取調停電路將判斷是否有來自NOR介面電路NRIF之讀出或寫入要求,又,判斷是否對NOR介面電路NRIF之讀出或寫入要求進行動作。
判斷對NOR介面電路NRIF之讀出或寫入要求之動作執行中時,於該動作結束後,許可來自NAND介面電路NDIF之讀出及寫入要求。
判斷無來自NOR介面電路NRIF之讀出或寫入要求,對該要求乃未進行動作時,許可來自NAND介面電路NDIF之讀出或寫入要求。
位址轉換電路,係為提升快取記憶體L2Cache、PL2A、PL2B之使用率或位元率,而將位址RADD轉換為位址MRADD。
經由位址轉換電路轉換之位址MRADD,係被輸入快取記憶體L2Cache及預擷取控制電路PREF。
於快取記憶體L2Cache,首先,對位址MRADD指定之資料是否存在於快取記憶體L2Cache內進行命中(hit)判斷,判斷位址MRADD指定之資料存在於快取記憶體L2Cache內時成為L2Cache命中,不存在時成為L2Cache失誤(miss)。
於預擷取控制電路PREF內之命中判斷電路PL2Hit進行命中判斷,判斷位址MRADD指定之資料是否存在於快取記憶體PL2A及PL2B之任一。
判斷位址MRADD指定之資料存在於快取記憶體PL2A及PL2B之任一時成為PL2A命中,不存在時成為PL2A失誤。
於預擷取控制電路PREF內之命中判斷電路L3Hit進行命中判斷,判斷位址MRADD指定之資料是否存在於快閃記憶體FLASH_CHIP內之資料緩衝器DREG。
判斷位址MRADD指定之資料存在於快閃記憶體FLASH_CHIP內之資料緩衝器DREG時成為L3A命中,不存在時成為L3A失誤。
(L2Cache命中之動作說明)
L2Cache命中時資料直接由快取記憶體L2Cache輸出,經由NOR介面電路NRIF,藉由NOR介面NOR IF被輸出至資訊處理裝置CPU_CHIP。
Wait信號成為L位準時資訊處理裝置CPU_CHIP獲悉要求之資料到達,取入該要求之資料。
亦即,L2Cache命中時不必進行自快閃記憶體FLASH_CHIP至快取記憶體L2Cache之資料傳送,可直接由快取記憶體L2Cache讀出資料,可高速進行資料傳送。
(PL2命中之動作說明)
L2Cache失誤、PL2命中時資料直接由快取記憶體PL2A及PL2B之任一輸出,經由NOR介面電路NRIF,藉由NOR介面NOR IF被輸出至資訊處理裝置CPU_CHIP。此時之讀出時間和來自L2Cache之讀出時間同等。
亦即,PL2命中時不必進行自快閃記憶體FLASH_CHIP至快取記憶體PL2A及PL2B之資料傳送,可直接由快取記憶體PL2A及PL2B讀出資料,可高速進行資料傳送。
如上述說明,快取記憶體L2Cache、PL2A、PL2B之命中判斷時,資料可直接由快取記憶體L2Cache、PL2A及PL2B輸出,可高速進行資訊處理裝置CPU_CHIP與記憶體模組MSM間之資料傳送。
(L2Cache失誤、PL2失誤、L3命中之動作說明)
說明L2Cache失誤、PL2失誤而且L3命中之資料傳送。
L2Cache失誤、PL2失誤而且L3命中時,首先於存取調停電路ARB被許可來自NOR介面電路NRIF之讀出要求時,控制電路RWCL對控制電路FCNT輸入第N頁資料之讀出要求,將資料暫存器DREG內之第N頁資料傳送至緩衝器電路BUF。
利用傳送資料暫存器DREG內之第N頁資料至緩衝器電路BUF之時間,將現在保存於快取記憶體PL2A及PL2B之資料傳送至快取記憶體L2Cache,更新快取記憶體L2Cache。
被傳送至緩衝器電路BUF之第N頁資料,係於錯誤檢測訂正電路ECC進行錯誤檢測。傳送至緩衝器電路BUF之第N頁資料無錯誤時,該第N頁資料藉由控制電路RWCL被傳送至快取記憶體PL2A,有錯誤時於錯誤檢測訂正電路ECC進行錯誤訂正之後,第N頁資料藉由控制電路RWCL被傳送至快取記憶體PL2A。
被傳送至快取記憶體PL2A之第N頁資料之中之資訊處理裝置CPU_CHIP要求之資料,係經由NOR介面電路NRIF,藉由NOR介面NOR IF被輸出至資訊處理裝置CPU_CHIP。
雖未特別限定,在資料被輸出之前Wait信號成為H位準,資訊處理裝置CPU_CHIP等待資料之到達。Wait信號成為L位準時資訊處理裝置CPU_CHIP獲悉要求之資料已經到達而取入該要求之資料。
又,先行讀出指示電路PRECT對控制電路RWCL指示資料之先行讀出,控制電路RWCL對控制電路FCNT輸入讀出要求,將資料緩衝器DREG內之次頁之資料、亦即第N+1頁之資料傳送至緩衝器電路BUF。
傳送至緩衝器電路BUF之第N+1頁資料,係於錯誤檢測訂正電路ECC,雖未特別限定,依每512B進行錯誤檢測。傳送至緩衝器電路BUF之第N+1頁資料無錯誤時,該第N+1頁資料藉由控制電路RWCL被傳送至快取記憶體PL2A,有錯誤時於錯誤檢測訂正電路ECC進行錯誤訂正之後,第N+1頁資料藉由控制電路RWCL被傳送至快取記憶體PL2B。對快閃記憶體FLASH_CHIP之資料暫存器DREG命中時,不必進行自記憶格陣列MARY至資料暫存器DREG之資料傳送,可直接由資料暫存器DREG讀出資料,可高速傳送資料。
如上述說明,可使用快閃記憶體FLASH_CHIP之資料暫存器DREG作為快取記憶體,可有效增加快取記憶體之容量,可提升命中率,可高速進行資訊處理裝置CPU_CHIP與記憶體模組MSM間之資料傳送。
又,藉由資料之先行讀出機能,預先將資訊處理裝置CPU_CHIP要求之次頁資料傳送至快取記憶體PL2B,則可提升命中率,可高速進行資料傳送。
(L2Cache失誤、PL2失誤、L3失誤之動作說明)
說明L2Cache失誤、PL2失誤而且L3失誤之資料傳送動作。
於存取調停電路被許可來自NOR介面電路NRIF之讀出要求時,首先,控制電路RWCL對控制電路FCNT輸入第N頁資料之讀出要求,控制電路FCNT將記憶格陣列MARY內之第N頁資料傳送至資料暫存器DREG。之後,將資料暫存器DREG內之第N頁資料輸出至控制電路RWCL,控制電路RWCL將該資料傳送至緩衝器電路BUF。
於資料暫存器DREG至緩衝器電路BUF之資料傳送中,將現在保存於快取記憶體PL2A及PL2B之資料傳送至快取記憶體L2Cache,更新快取記憶體L2Cache。
傳送至緩衝器電路BUF之第N頁資料,係於錯誤檢測訂正電路ECC,雖未特別限定,依每512B進行錯誤檢測。傳送至緩衝器電路BUF之第N頁資料無錯誤時,該第N頁資料藉由控制電路RWCL被傳送至快取記憶體PL2A,有錯誤時於錯誤檢測訂正電路ECC進行錯誤訂正之後,第N頁資料藉由控制電路RWCL被傳送至快取記憶體PL2A。被傳送至快取記憶體PL2A之第N頁資料之中之資訊處理裝置CPU_CHIP要求之資料,係經由NOR介面電路NRIF,藉由NOR介面NOR IF被輸出至資訊處理裝置CPU_CHIP。
雖未特別限定,在資料被輸出之前Wait信號成為H位準,資訊處理裝置CPU_CHIP等待資料之到達。
又,先行讀出指示電路PRECT對控制電路RWCL指示資料之先行讀出時,控制電路RWCL對控制電路FCNT輸入讀出要求,將資料緩衝器DREG內之次頁之資料、亦即第N+1頁之資料傳送至緩衝器電路BUF。
傳送至緩衝器電路BUF之第N+1頁資料,係於錯誤檢測訂正電路ECC,雖未特別限定,依每512B進行錯誤檢測。傳送至緩衝器電路BUF之第N+1頁資料無錯誤時,該第N+1頁資料藉由控制電路RWCL被傳送至快取記憶體PL2A,有錯誤時於錯誤檢測訂正電路ECC進行錯誤訂正之後,第N+1頁資料藉由控制電路RWCL被傳送至快取記憶體PL2B。
被傳送至資料緩衝器DREG內之資料直接被保存,資料緩衝器DREG可做為快取記憶體使用。
又,藉由先行讀出機能,將資訊處理裝置CPU_CHIP要求之資料(第N頁資料)之次頁資料(第N+1頁資料)傳送至快取記憶體PL2B,則可提升命中率,可高速進行資料傳送。
如上述說明,可使用快閃記憶體FLASH_CHIP之資料緩衝器DREG作為快閃記憶體,對該資料緩衝器DREG進行命中判斷,對快閃記憶體FLASH_CHIP之資料暫存器DREG命中時,不必直接進行自記憶格陣列MARY至資料暫存器DREG之資料傳送,可實現高速傳送資料。
另外,藉由資料之先行讀出機能,預先將資訊處理裝置CPU_CHIP要求之資料之次頁資料傳送至快取記憶體PL2B,則可提升命中率,可高速進行資料傳送。
又,自快取記憶體PL2A及PL2B至快取記憶體L2Cache之資料更新,可和L2Cache失誤且PL2A失誤時進行之自資料暫存器DREG至緩衝器電路BUF之資料傳送同時進行,可隱蔽對快取記憶體L2Cache之資料更新時間,可實現無浪費之資料傳送。
(來自NAND介面NAND IF1之讀出動作之說明)
說明資訊處理裝置CPU_CHIP由NAND介面NAND IF1輸入讀出要求時之動作。
於存取調停電路ARB許可來自NAND介面電路NDIF之讀出要求時,控制電路RWCL對控制電路FCNT輸入資料之讀出要求。控制電路FCNT將記憶格陣列MARY內之資料傳送至資料暫存器DREG。之後,將資料暫存器DREG之資料輸出至控制電路RWCL。控制電路RWCL將該資料傳送至緩衝器電路BUF。
被傳送至緩衝器電路BUF之資料,係於錯誤檢測訂正電路ECC進行錯誤檢測。傳送至緩衝器電路BUF之資料無錯誤時,藉由控制電路RWCL被傳送至讀出緩衝器RBUF,有錯誤時於錯誤檢測訂正電路ECC進行錯誤訂正之後,藉由控制電路RWCL被傳送至讀出緩衝器RBUF。
被傳送至讀出緩衝器RBUF的資料之中資訊處理裝置CPU_CHIP要求之資料,係經由NAND介面電路NDIF藉由NAND介面NAND IF1被輸出至資訊處理裝置CPU_CHIP。
(來自NAND介面NAND IF1之寫入動作之說明)
說明資訊處理裝置CPU_CHIP由NAND介面NAND IF1輸入寫入要求時之動作。
寫入要求、寫入位址NWADD、及寫入資料NWDATA被輸入NAND介面電路NDIF時,寫入資料NWDATA被傳送至寫入緩衝器WBUF,寫入位址NWADD被傳送至位址調停電路ARB。
位址調停電路ARB將寫入位址NWADD傳送至位址轉換電路DSTR。位址轉換電路DSTR對位址NWADD進行運算,轉換為位址MNWADD,輸入於快取記憶體L2Cache之命中判斷電路PL2Hit。
之後,快取記憶體L2Cache之命中判斷電路PL2Hit使用位址MNWADD,進行為保持和快取記憶體L2Cache、PL2A、PL2B間之資料一貫性之處理。具體言之為,快取記憶體L2Cache確認位址MNWADD之資料是否存在,存在時設定該資料為無效。快取記憶體L2Cache、PL2A、PL2B內之資料之無效化結束後,藉由命中判斷電路L3Hit設定資料緩衝器DREG之資料為無效。
全部快取記憶體之無效化結束後,存取調停電路ARB許可來自NAND介面電路NDIF之寫入要求。
存取調停電路ARB許可來自NAND介面電路NDIF之寫入要求時,控制電路RWCL對控制電路FCNT輸入資料之寫入要求及寫入資料WData,控制電路FCNT將寫入資料WData傳送至資料暫存器DREG,再將傳送至資料暫存器DREG之寫入資料WData寫入記憶格陣列MARY。
代替處理電路REP確認對記憶格陣列MARY之寫入成功否,成功時結束處理。寫入失敗時對快閃記憶體FLASH_CHIP預先準備之代替用的新的位址進行寫入。進行代替處理時,保持、管理不良位址,及針對不良位址以何處位址進行代替處理等之位址資訊。
記憶體位址管理電路MMG確認寫入位址NWADD是否為寫入次數平均化處理區域內之位址。
寫入位址NWADD為寫入次數平均化處理區域內之位址時,對記憶格陣列MARY進行資料WDATA之寫入後,將寫入次數平均化電路WLV管理之寫入次數與抹除次數之總和加一。該寫入次數與抹除次數之總和到達寫入次數平均化電路WLV保持之寫入次數與抹除次數之總和臨限值時,寫入次數平均化電路WLV判斷改寫集中,雖未特別限定,而依每64頁單位資料變更實體位址與邏輯位址之對應,保持該實體位址與邏輯位址之對應資訊。如上述說明,藉由寫入次數平均化電路WLV可對記憶體陣列之改寫次數施予平均化,可提升信賴性。
(來自NAND介面NAND IF1之抹除動作之說明)
以下,說明資訊處理裝置CPU_CHIP由NAND介面NAND IF1輸入抹除要求時之動作。
抹除要求、抹除位址NEADD被輸入NAND介面電路NDIF時,抹除要求及抹除位址NEADD被傳送至位址調停電路ARB。
位址調停電路ARB將抹除位址NEADD傳送至位址轉換電路DSTR。位址轉換電路DSTR對位址NEADD進行運算,轉換為位址MNEADD,輸入於快取記憶體L2Cache之命中判斷電路PL2Hit。
之後,快取記憶體L2Cache之命中判斷電路PL2Hit使用位址MNEADD,進行為保持和快取記憶體L2Cache、PL2A、PL2B間之資料一貫性之處理。具體言之為,快取記憶體L2Cache確認位址MNEADD之資料是否存在,存在時設定該資料為無效。又,命中判斷電路PL2Hit確認位址MNEADD之資料是否存在於快取記憶體PL2A及PL2B,存在時設定該資料為無效。快取記憶體L2Cache、PL2A、PL2B內之資料之無效化結束後,藉由命中判斷電路L3Hit設定資料緩衝器DREG之資料為無效。
全部快取記憶體之無效化結束後,存取調停電路ARB許可來自NAND介面電路NDIF之抹除要求。
於存取調停電路ARB許可來自NAND介面電路NDIF之抹除要求時,首先,控制電路RWCL對控制電路FCNT輸入資料之抹除要求及抹除位址NEADD,控制電路FCNT依據抹除要求及抹除位址MNEADD進行記憶格陣列MARY之資料抹除。
記憶體位址管理電路MMG確認抹除位址NEADD是否為寫入次數平均化處理區域內之位址。
抹除位址NEADD為寫入次數平均化處理區域內之位址時,記憶格陣列MARY之資料被抹除後,將寫入次數平均化電路WLV管理之寫入次數與抹除次數之總和加一。該寫入次數與抹除次數之總和到達寫入次數平均化電路WLV保持之寫入次數與抹除次數之總和臨限值時,寫入次數平均化電路WLV判斷為改寫集中,雖未特別限定,而可依每64頁單位之資料變更實體位址與邏輯位址之對應,保持該實體位址與邏輯位址之對應資訊。如上述說明,藉由寫入次數平均化電路WLV可對記憶體陣列之改寫次數施予平均化,可提升信賴性。
又,於圖1,錯誤檢測訂正電路ECC、代替處理電路REP及寫入次數平均化電路WLV係設於控制電路CT_CHIP,但是亦可設於快閃記憶體FLASH_CHIP而於快閃記憶體FLASH_CHIP側構成錯誤檢測、錯誤訂正、位址代替處理及寫入次數平均化處理。
(來自NOR介面NOR IF之寫入動作之說明)
以下,說明資訊處理裝置CPU_CHIP由NOR介面NOR IF輸入寫入要求時之動作。
雖未特別限定,寫入要求、寫入位址NORWADD、及寫入資料NORWDATA被輸入NOR介面電路NRIF時,寫入資料NWDATA介由快閃控制電路FLCT被傳送至寫入緩衝器WBUF,寫入位址NORWADD介由NAND介面電路NDIF被傳送至調停電路ARB。之後,記憶體模組MSM進行和寫入要求被輸入NAND介面NAND IF1時相同之動作。
如上述說明,將來自NOR介面NOR IF之寫入位址NORWADD、及寫入資料NORWDATA傳送至NAND介面電路NDIF,可實現來自NOR介面NOR IF之寫入動作。
(來自NOR介面NOR IF之抹除動作之說明)
以下,說明資訊處理裝置CPU_CHIP由NOR介面NOR IF輸入抹除要求時之動作。
雖未特別限定,抹除要求、抹除位址NOREADD被輸入NOR介面電路NRIF時,抹除位址NOREADD介由NAND介面電路NDIF被傳送至調停電路ARB。
之後,記憶體模組MSM進行和抹除要求被輸入NAND介面NAND IF1時相同之動作。
如上述說明,將來自NOR介面NOR IF之抹除位址NOREADD傳送至NAND介面電路NDIF,可實現來自NOR介面NOR IF之抹除動作。
時脈控制電路OSC,雖未特別限定,於電源投入後立即之記憶體模組MSM之資料傳送、自NOR介面NOR IF及NAND介面至記憶體模組MSM之存取發生時之資料傳送開始時點開始時脈動作,於資料傳送結束時點結束時脈動作。
如上述說明,時脈控制電路OSC僅於資料傳送必要時動作,可實現低電力化。
(第1實施形態之效果)
如上述說明,沿襲NOR介面及NAND介面方式,電源投入後立即將快閃記憶體FLASH_CHIP內之起動程式自動傳送至快取記憶體L2Cache,資訊處理裝置CPU_CHIP可藉由該起動程式而自行起動。又,在資訊處理裝置CPU_CHIP進行起動期間,將FLASH_CHIP內之資料自動傳送至快取記憶體L2Cache,如此則,於資訊處理裝置CPU_CHIP起動時點,可立即存取記憶體模組MSM,可達成高性能化。快閃記憶體內之位址對映可設定。又,同步型NOR介面或非同步型NOR介面,位址轉換方式、快取區域及非快取區域、快取鎖定區域及非快取鎖定區域、寫入次數平均化處理區域及非寫入次數平均化處理區域、寫入保護區域及非寫入保護區域可分別獨立設定,可配合系統於使用者側自由選擇。
(快取記憶體)
資訊處理裝置CPU_CHIP可由記憶體模組MSM內藏之快取記憶體L2Cache、PL2A、PL2B直接輸出資料,因而可高速進行資訊處理裝置CPU_CHIP與記憶體模組MSM間之資料傳送,可選擇位址轉換電路及位址轉換。位址轉換電路,係使資訊處理裝置CPU_CHIP輸入之讀出位址,被分散於快取記憶體L2Cache之索引位址的方式,進行位址轉換,可提升快取記憶體L2Cache、PL2A、PL2B之使用率,可提升命中率,可進行高速之資料傳送。
(先行讀出)
藉由資料之先行讀出機能,可預先將現在資訊處理裝置CPU_CHIP要求之資料之次頁資料傳送至快取記憶體,可提升對快取記憶體之命中率,可進行高速之資料傳送。
可以快閃記憶體FLASH_CHIP之資料暫存器DREG作為快取記憶體使用,可有效增加快取記憶體之容量,可提升命中率,可進行資訊處理裝置CPU_CHIP與記憶體模組MSM間之高速資料傳送。
又,自快取記憶體PL2A及PL2B至快取記憶體L2Cache之資料更新,可和L2Cache失誤且PL2A失誤時進行之自資料暫存器DREG至緩衝器電路BUF之資料傳送同時進行,可隱蔽對快取記憶體L2Cache之資料更新時間,可實現無浪費之資料傳送。
於記憶體模組MSM內部,來自快閃記憶體FLASH_CHIP之讀出時進行錯誤檢測及訂正,寫入時對未正確進行寫入之不良位址進行代替處理,因而可進行高速處理,且可保持信賴性。
(寫入次數平均化)
藉由寫入次數平均化電路WLV對記憶體陣列之寫入次數可施予平均化,更能提升信賴性。
(Wait信號)
藉由Wait信號,資訊處理裝置CPU_CHIP可獲悉要求資料之到達,藉由快取記憶體L2Cache之命中判斷、命中判斷電路PL2Hit及命中判斷電路L3Hit之命中判斷結果,即使資料之讀出時間不同亦可確實取入要求之資料。
又,本實施形態中,說明記憶體模組MSM包含1個快閃記憶體之例,但本發明中記憶體模組MSM亦可包含多數個快閃記憶體。
(記憶體對映之說明)
圖2表示依據暫存器方塊REG內之各暫存器(模態設定暫存器RModeReg,快取區域設定暫存器CAreaReg,快取鎖定區域設定暫存器CaLockReg,寫入保護區域設定暫存器WproReg,及寫入次數平均化處理區域設定暫存器WlvlReg)設定之值,對記憶體位址管理電路MMG管理之快閃記憶體FLASH_CHIP之記憶體對映之一例。雖未特別限定,本實施形態中說明快閃記憶體FLASH_CHIP之記憶區域為1Gbit+32Mbit(32Mbit為代替區域)之記憶體模組之代表性記憶體對映之例。
雖未特別限定,快閃記憶體FLASH_CHIP區分為主區域MAIN與代替區域REPAREA。又,主區域MAIN區分為區域AREA-A、區域AREA-B、區域AREA-C、區域AREA-D、及初期程式區域InitProg。
區域AREA-A,係作為非快取區域NONCAREA、且寫入次數平均化處理區域WLV、且非寫入保護區域NONWPRO被管理。
區域AREA-B,係作為快取區域CAREA、且快取鎖定區域CALOCK、寫入次數平均化處理區域WLV、且非寫入保護區域NONWPRO被管理。
區域AREA-C,係作為快取區域CAREA、且非快取鎖定區域UNCALOCK、且非寫入次數平均化處理區域NONWLV、且非寫入保護區域NONWPRO被管理。
區域AREA-D,係作為快取區域CAREA、且非快取鎖定區域UNCALOCK、且非寫入次數平均化處理區域NONWLV、且寫入保護區域WPRO被管理。
初期程式區域InitProg,係作為快取區域CAREA、且非快取鎖定區域UNCALOCK、且非寫入次數平均化處理區域NONWLV、且寫入保護區域WPRO被管理。
雖未特別限定,於初期程式區域InitProg儲存起動程式或自動傳送區域指定資料。
雖未特別限定,於區域AREA-D儲存操作系統等。
雖未特別限定,於區域AREA-B及區域AREA-C儲存應用程式等。
雖未特別限定,於區域AREA-A儲存音樂資料、聲音資料、動畫資料、靜畫資料等等。
快閃記憶體因重複改寫而導致信賴性降低、寫入時之寫入資料於讀出時成為不同資料、或改寫時資料無法寫入等之問題有可能會發生。代替區域REPAREA設置用於將此種不良之程式或資料替換為新的區域。雖未特別限定,代替區域REPAREA之大小只要能確保快閃記憶體FLASH_CHIP之信賴性即可。
快取區域CAREA、非快取區域NONCAREA、寫入保護區域WPRO、非寫入保護區域NONWPRO、寫入次數平均化處理區域WLVL、及非寫入次數平均化處理區域NONWLVL,係藉由快取鎖定區域CALOCK、非快取鎖定區域UNCALOCK、NOR介面NOR IF對暫存器方塊REG內之各暫存器進行程式化(寫入)而可以分別獨立設定,可配合系統由使用者側自由選擇。
(電源投入後立即之動作)
以下說明電源投入時自快閃記憶體FLASH_CHIP至快取記憶體L2Cache、PL2A、PL2B之資料傳送。
電源投入後,快閃控制電路FLCT將FLASH_CHIP之初期程式區域InitProg之資料讀出至緩衝器電路BUF,於錯誤檢測訂正電路ECC進行確認是否有錯誤。無錯誤時將初期程式區域內之起動程式傳送至快取記憶體PL2A,有錯誤時進行訂正,將初期程式區域內之起動程式傳送至快取記憶體PL2A。之後,快閃控制電路FLCT由緩衝器電路BUF讀出自動傳送區域指定資料,將該資料所示範圍之快閃記憶體FLASH_CHIP內之資料依序讀出至緩衝器電路BUF,於錯誤檢測訂正電路ECC進行確認是否有錯誤,無錯誤時經由快取記憶體PL2B傳送至快取記憶體L2Cache,有錯誤時進行訂正後,經由快取記憶體PL2B傳送至快取記憶體L2Cache。
如上述說明,電源投入後立即將必要之資料傳送至快取記憶體,如此則,資訊處理裝置CPU_CHIP起動後,可由快取記憶體讀出該起動程式而自行起動,又,可進行動態隨機存取記憶體DRAM_CHIP之初期設定。
(讀出動作之說明)
於快取記憶體L2Cache、PL2A、PL2B保持快取區域CAREA內之資料,快取記憶體L2Cache、PL2A、PL2B命中時資料直接由快取記憶體L2Cache、PL2A、PL2B輸出,經由NOR介面電路NRIF,藉由NOR介面NOR IF被輸出至資訊處理裝置CPU_CHIP。
快取記憶體L2Cache、PL2A、PL2B失誤時資料由快閃記憶體FLASH_CHIP傳送至快取記憶體L2Cache、PL2A、PL2B。以下說明將快閃記憶體FLASH_CHIP內之資料傳送至快取記憶體L2Cache、PL2A、PL2B之動作。
來自NOR介面NOR IF之讀出要求為L2Cache失誤、且PL2A失誤、且L3命中時,或者為L2Cache失誤、且PL2A失誤、且L3失誤時,產生自快閃記憶體FLASH_CHIP至快取記憶體L2Cache、PL2A、PL2B之資料傳送。
首先,說明來自NOR介面NOR IF之讀出要求為L2Cache失誤、且PL2A失誤、且L3命中時之資料傳送。
要求之資料為快取區域內之資料時,將快閃記憶體FLASH_CHIP之資料暫存器DREG內之第N頁資料傳送至緩衝器電路BUF。
利用傳送資料暫存器DREG內之1頁分資料至緩衝器電路BUF之時間,將現在保存於快取記憶體PL2A及PL2B之資料傳送至快取記憶體L2Cache,更新快取記憶體L2Cache。
被傳送至緩衝器電路BUF之第N頁資料,係於錯誤檢測訂正電路ECC進行錯誤檢測,資料無錯誤時直接被傳送至快取記憶體PL2A,有錯誤時於進行錯誤訂正之後之資料被傳送至快取記憶體PL2A。
又,藉由先行讀出機能,將資料緩衝器DREG內之次頁之資料、亦即第N+1頁之資料傳送至緩衝器電路BUF。
傳送至緩衝器電路BUF之第N+1頁資料,係於錯誤檢測訂正電路ECC進行錯誤檢測,資料無錯誤時直接被傳送至快取記憶體PL2B,有錯誤時進行錯誤訂正之後之資料被傳送至快取記憶體PL2B。
其次,說明來自NOR介面NOR IF之讀出要求為L2Cache失誤、且PL2A失誤、且L3失誤時之資料傳送。
讀出要求之位址為快取區域內時,將快閃記憶體FLASH_CHIP之記憶格陣列MARY內之第N頁資料傳送至資料暫存器DREG之後,將資料暫存器DREG內之第N頁資料傳送至緩衝器電路BUF。
利用傳送資料暫存器DREG內之資料至緩衝器電路BUF之時間,將現在保存於快取記憶體PL2A及PL2B之資料傳送至快取記憶體L2Cache,更新快取記憶體L2Cache。
被傳送至緩衝器電路BUF之第N頁資料,係於錯誤檢測訂正電路ECC進行錯誤檢測,資料無錯誤時直接被傳送至快取記憶體PL2A,有錯誤時於進行錯誤訂正之後之資料被傳送至快取記憶體PL2A。
又,藉由先行讀出機能,將資料暫存器DREG內之次頁之資料、亦即第N+1頁之資料傳送至緩衝器電路BUF。
傳送至緩衝器電路BUF之第N+1頁資料,係於錯誤檢測訂正電路ECC進行錯誤檢測,資料無錯誤時直接被傳送至快取記憶體PL2B,有錯誤時進行錯誤訂正之後之資料被傳送至快取記憶體PL2B。
來自NOR介面NOR IF之讀出要求為L2Cache命中時,直接由快取記憶體L2Cache讀出資料。又,來自NOR介面NOR IF之讀出要求為PL2命中時,直接由快取記憶體PL2或PL2B讀出資料。
(效果說明) (快取記憶體)
快取區域內之資料被傳送至快取記憶體L2Cache、PL2A、PL2B,來自資訊處理裝置CPU_CHIP之讀出要求為快取記憶體L2Cache、PL2A、PL2B命中時,資料可直接由快取記憶體L2Cache、PL2A及PL2B輸出,可高速進行資訊處理裝置CPU_CHIP與記憶體模組MSM間之資料傳送。
(先行讀出)
又,藉由資料之先行讀出機能,預先將現在資訊處理裝置CPU_CHIP要求之資料之次頁資料傳送至快取記憶體,則可提升對快取記憶體之命中率,可高速進行資料傳送。
(L3快取)
可使用快閃記憶體FLASH_CHIP之資料暫存器DREG作為快取記憶體,可有效增加快取記憶體之容量,可提升命中率,可高速進行資訊處理裝置CPU_CHIP與記憶體模組MSM間之資料傳送。
(位址代替處理)
對快閃記憶體FLASH_CHIP之資料寫入時,針對未被正確進行寫入之不良位址,對代替區域REPAREA可進行代替處理,可保持信賴性。
圖3表示構成暫存器方塊REG之多數暫存器之一例。
雖未特別限定,暫存器方塊REG係由:讀出模態設定暫存器RModeReg,快取區域設定暫存器CAreaReg,快取鎖定區域設定暫存器CaLockReg,寫入保護區域設定暫存器WproReg,及寫入次數平均化處理區域設定暫存器WlvlReg構成。
雖未特別限定,變更快取區域及非快取區域時,可由NOR介面NOR IF改寫快取區域設定暫存器CAreaReg之值而變更快取區域及非快取區域。雖未特別限定,於電源投入後,快閃記憶體FLASH_CHIP之全區域成為快取區域。
快取區域內之資料被傳送至快取記憶體L2Cache、PL2A、PL2B,非快取區域內之資料未被傳送至快取記憶體L2Cache、PL2A、PL2B。
雖未特別限定,變更快取鎖定區域及非快取鎖定區域時,可由NOR介面NOR IF改寫快取區域設定暫存器CAreaReg之值而變更快取鎖定區域及非快取鎖定區域。雖未特別限定,於電源投入後,快閃記憶體FLASH_CHIP之全區域成為非快取鎖定區域。
快取鎖定區域內之資料一旦被傳送至快取記憶體L2Cache後,在藉由快取鎖定解除指令改寫快取區域設定暫存器之前可存在於快取記憶體L2Cache。非快取鎖定區域內之資料可由快取記憶體L2Cache排出。
雖未特別限定,變更寫入次數平均化處理區域及非寫入次數平均化處理區域時,可由NOR介面NOR IF改寫寫入次數平均化處理區域設定暫存器WlvlReg之值而變更寫入次數平均化處理區域及非寫入次數平均化處理區域。雖未特別限定,於電源投入後,快閃記憶體FLASH_CHIP之一半區域成為寫入次數平均化處理區域。
針對寫入次數平均化處理區域內之資料,在寫入次數平均化電路WLV判斷為改寫集中時,對其進行寫入次數平均化處理。
非寫入次數平均化處理區域內之資料,不被進行寫入次數平均化處理。
變更寫入保護區域、非寫入保護區域時,雖未特別限定,可由NOR介面NOR IF改寫寫入保護區域設定暫存器WproReg之值,而變更寫入保護區域、非寫入保護區域。雖未特別限定,電源投入後,快閃記憶體FLASH_CHIP之全區域立即成為非寫入保護區域。
於寫入保護區域不被進行寫入,於非寫入保護區域可進行寫入。
記憶體模組MSM具備之NOR介面,可為和時脈信號CLK同步動作的同步型NOR介面,及和時脈信號CLK不同步的非同步型NOR介面,可於任一之NOR介面動作。雖未特別限定,記憶體模組MSM於電源投入後以非同步型NOR介面動作。變更記憶體模組MSM具備之NOR介面時,雖未特別限定,可由NOR介面NOR IF改寫讀出模態設定暫存器RModeReg之值,而變更為同步型NOR介面或非同步型NOR介面。
雖未特別限定,位址轉換電路DSTR可實現多數位址轉換方式(簡易索引轉換方式、索引位元位移轉換方式、索引運算方式),可於任一之位址轉換方式動作。雖未特別限定,位址轉換電路DSTR於電源投入後以索引運算方式動作。
雖未特別限定,由NOR介面NOR IF改寫讀出模態設定暫存器RModeReg之值,可變更記憶體模組MSM具備之NOR介面或位址轉換方式。
如上述說明,同步型NOR介面或非同步型NOR介面,位址轉換方式、快取區域及非快取區域、快取鎖定區域及非快取鎖定區域、寫入次數平均化處理區域及非寫入次數平均化處理區域、寫入保護區域及非寫入保護區域可分別獨立設定,可配合系統於使用者側自由選擇。
(電源投入時之初期時序)
圖4表示記憶體模組MSM之電源投入時之初期時序。
於T1期間(PWON)對控制電路CT_CHIP、快閃記憶體FLASH_CHIP及動態隨機存取記憶體DRAM_CHIP進行電源投入,於T2期間(RESET)進行重置。於重置被解除的T3期間(Initload),FLASH_CHIP之初期程式區域InitProg內之資料被傳送至控制電路CT_CHIP。於T4期間(AutoLoad),初期程式區域InitProg內之自動傳送區域指定資料所指定範圍之資料,由快閃記憶體FLASH_CHIP被傳送至控制電路CT_CHIP。初期程式區域InitProg內之自動傳送區域指定資料所指定範圍之資料之傳送結束後,設定初期動作結束信號PCMP為H位準。於T5期間(IDLE)以後,記憶體模組MSM成為待機狀態,成為等待資訊處理裝置CPU_CHIP之要求的狀態。
(位址轉換直線(straight))
圖5-圖7為位址轉換電路DSTR進行之來自NOR介面NOR IF之位址與快取記憶體L2Cache位址間之位址轉換之一例之圖。
首先,說明圖5,圖5(a)表示來自NOR介面NOR IF之位址與快取記憶體L2Cache位址間之位址轉換方法之一例。圖5(b)表示之快取記憶體L2Cache之構成一例。
雖未特別限定,快取記憶體L2Cache之構成為,容量為1MByte(百萬位元組)、線大小(line size)為512Byte(位元組),索引位址為0至511,分組關聯(set associative)為4路(way)分組關聯。
來自NOR介面NOR IF之位址NRAD,係0~31之32位元,可對應於最大4GByte之位址空間。
本例中,說明快閃記憶體FLASH_CHIP之容量為256MByte之情況。
位址NRAD之第0~8位元之位址Add0對應於快取記憶體L2Cache之線大小,第9~17位元之位址Add1對應於快取記憶體L2Cache之索引位址Index2,第18~27位元之位址Add2對應於快取記憶體L2Cache之標籤位址Tag 2。
以下說明位址Add1之值為511、位址ADD2之值為Add2-511之情況之快取記憶體L2Cache之動作。
以位址Add1檢索快取記憶體L2Cache之索引位址Index2,因為4路分組關聯之故,而選擇4種類之標籤位址。
比較電路COMP比較位址Add2與被選擇之標籤位址,位址Add2為Add2-511,與標籤位址一致,亦即命中,因此由資料陣列選擇資料Data511。
最後,位址Add0被輸入選擇電路SEL,輸出512位元組(Byte)之資料Data1之中之1位元組。
(位址轉換位元移位)
其次,說明圖6,圖6(a)表示來自NOR介面NOR IF之位址與快取記憶體L2Cache位址間之位址轉換方法之一例。圖6(b)表示之快取記憶體L2Cache之構成一例。
雖未特別限定,快取記憶體L2Cache之構成為和圖5相同。
來自NOR介面NOR IF之位址NRAD,係0~31之32位元,可對應於最大4GByte之位址空間。
本例中,說明快閃記憶體FLASH_CHIP之容量為256MByte之情況。
位址NRAD之第0~8位元之位址Add0對應於快取記憶體L2Cache之線大小Line2。
位址NRAD之第9~11位元及第13~18位元分別對應於位址Add3之第0~2位元及第3~8位元,對應於快取記憶體L2Cache之索引位址Index2。
位址NRAD之第12位元及第19~27位元分別對應於位址Add4之第0位元及第1~8位元,對應於快取記憶體L2Cache之標籤位址Tag 2。
以下說明位址Add3之值為1、位址Add4之值為Add5-1之情況之快取記憶體L2Cache之動作。
以位址Add3檢索快取記憶體L2Cache之索引位址Indx2之1,因為4路分組關聯之故,而選擇4種類之標籤位址。
比較電路COMP比較位址Add4與被選擇之標籤位址,位址Add4為Add5-1,與標籤位址一致,亦即命中,因此由資料陣列選擇資料Data0。
最後,位址Add0被輸入選擇電路SEL,輸出512位元組(Byte)之資料Data0之中之1位元組。
(位址轉換擴散)
其次,說明圖7,圖7(a)表示來自NOR介面NOR IF之位址與快取記憶體L2Cache位址間之位址轉換方法之一例。圖7(b)表示之快取記憶體L2Cache之構成一例。
雖未特別限定,快取記憶體L2Cache之構成為和圖4相同。
來自NOR介面NOR IF之位址NRAD,係0~31之32位元,可對應於最大4GByte之位址空間。
本例中,說明快閃記憶體FLASH_CHIP之容量為256MByte之情況。
位址NRAD之第0~8位元之位址Add0對應於快取記憶體L2Cache之線大小Line2。位址NRAD之第9~17位元之位址Add1,與第18~26位元之位址Add5,係經由位址轉換電路DSTR轉換為位址Add6,位址Add6對應於快取記憶體L2Cache之索引位址Index2。
位址NRAD之第18~27位元之位址Add2對應於快取記憶體L2Cache之標籤位址Tag2。
位址Add1與位址Add5之位元寬相等於快取記憶體之索引位址,於位址轉換電路DSTR,求出位址Add1〔8:0〕與位址Add5〔8:0〕之和,再將該和之第8位元~第0位元轉換為位址Add6〔8:0〕,分配給索引位址Index2。
因為快取記憶體之記憶容量或構成會改變線大小、索引位址、標籤位址,因而以通常化予以說明。
快取記憶體L2Cache之記憶容量為2N Byte(位元組)時、之線大小Line2為L位元,索引位址Index2之大小(size)為I位元,標籤位址Tag 2之大小(size)為(N-I-L)位元之情況下,位址NRAD由下位位元起被區分為Add0〔L-1:0〕、Add1〔I-1:0〕、Add2〔N-L-I-1:0〕。
位址Add0〔L-1:0〕對應於快取記憶體L2Cache之線大小Line2〔L-1:0〕、位址Add2〔N-L-I-1:0〕對應於快取記憶體L2Cache之標籤位址Tag 2〔N-I-1:0〕。Add1〔I-1:0〕成為和索引位址Index2相同之大小(size)。
只要標籤位址Tag 2之大小在索引位址Index2之大小以上,由Add2〔N-L-I-1:0〕之下位位元起,可以和索引位址Index2相同之大小分配給位址Add5〔I-1:0〕。
標籤位址Tag 2之大小小於索引位址Index2之大小時,Add2〔N-L-I-1:0〕成為Add5〔N-L-I-1:0〕。
若標籤位址Tag2之大小在索引位址Index2之大小以上,則於位址轉換電路DSTR,求出位址Add1〔I-1:0〕與位址Add5〔I-1:0〕之和,再將該和之第(I-1)位元~第0位元轉換為位址Add6〔I-1:0〕,分配給索引位址Index2〔I-1:0〕。
若標籤位址Tag 2之大小小於索引位址Index2之大小,則於位址轉換電路DSTR,求出位址Add1〔I-1:0〕與位址Add5〔N-L-I-1:0〕之和,再將該和之第(I-1)位元~第0位元轉換為位址Add6〔I-1:0〕,分配給索引位址Index2〔I-1:0〕。
圖8為位址Add6之值為0,位址ADD2之值為Add2-0時之快取記憶體L2Cache之動作說明之圖。
以位址Add6檢索快取記憶體L2Cache之索引位址Indx2,因為4路分組關聯之故,而選擇4種類之標籤位址。
比較電路COMP比較位址Add2與被選擇之標籤位址,位址Add2為Add2-0,與標籤位址一致,亦即命中,因此由資料陣列選擇資料Data0。
最後,位址Add0被輸入選擇電路SEL,輸出512位元組(Byte)之資料Data0之中之1位元組。
(位址轉換效果)
圖9、圖10為進行圖5、圖7說明之位址轉換時,快取記憶體L2Cache之更新之一例之圖。
於資訊處理裝置CPU_CHIP執行應用之中,自資訊處理裝置CPU_CHIP至記憶體模組MSM輸入之讀出要求具有特徵。
第1特徵為位址Add1分散產生,位址Add2係於其中連續重複特定位址範圍之讀出要求。
第2特徵為位址Add2分散產生,位址Add1係於其中連續重複特定位址範圍之讀出要求。
圖9(a)表示具有上述第1特徵之讀出要求被輸入記憶體模組時,藉由圖7之索引運算方式之位址轉換產生之快取記憶體L2Cache之更新replace。
圖9(b)表示具有上述第1特徵之讀出要求被輸入記憶體模組時,藉由圖5之簡易索引轉換方式之位址轉換產生之快取記憶體L2Cache之更新replace。
圖10(a)表示具有上述第2特徵之讀出要求被輸入記憶體模組時,藉由圖7之索引運算方式之位址轉換產生之快取記憶體L2Cache之更新replace。
圖10(b)表示具有上述第1特徵之讀出要求被輸入記憶體模組時,藉由圖5之簡易索引轉換方式之位址轉換產生之快取記憶體L2Cache之更新replace。
如圖9(b)所示,於圖5說明之簡易索引轉換方式之位址轉換方法中,使位址Add1對應於快取記憶體L2Cache之索引位址Index2,使位址Add2對應於標籤位址Tag 2。因此,具有上述第1特徵之讀出要求被輸入記憶體模組時,索引位址Index分散,因索引位址Index分散導致不會產生快取記憶體L2Cache之更新replace。
如圖9(a)所示,於圖7說明之索引運算方式之位址轉換方法中,對位址Add1與位址Add2進行運算,以分散方式產生位址Add10,使該位址Add10對應於快取記憶體L2Cache之索引位址Index2。因此,具有上述第1特徵之讀出要求被輸入L2快取記憶體時,索引位址Index分散,因此不會產生快取記憶體L2Cache之更新replace。亦即,藉由圖7說明之索引運算方式之位址轉換方法可有效利用快取記憶體L2Cache,可提升命中率。
如圖10(b)所示,於圖5說明之簡易索引轉換方式之位址轉換方法中,使位址Add1對應於快取記憶體L2Cache之索引位址Index2,使位址Add2對應於標籤位址Tag 2。因此,具有上述第2特徵之讀出要求被輸入L2快取記憶體時,對特定索引位址Index之檢索頻繁產生,而且標籤位址Tag 2分散之故,產生失誤,快取記憶體L2Cache之更新replace頻繁產生。亦即,僅快取記憶體L2Cache之一部分可以利用,快取記憶體L2Cache之更新replace頻繁產生。
如圖10(a)所示,於圖7說明之索引運算方式之位址轉換方法中,對位址Add1與位址Add2進行運算,以分散方式產生位址Add10,使該位址Add10對應於快取記憶體L2Cache之索引位址Index2。因此,即使具有上述第2特徵之讀出要求被輸入L2快取記憶體時,索引位址Index分散,因此不會產生快取記憶體L2Cache之更新replace。亦即,藉由圖7說明之索引運算方式之位址轉換方法可有效利用快取記憶體L2Cache,可提升命中率。
如上述說明,於圖5說明之簡易索引轉換方式之位址轉換方法中,針對具有上述第1特徵之讀出要求可分散索引,針對具有上述第2特徵之讀出要求無法分散索引,快取記憶體L2Cache之更新replace頻繁產生。
於圖7說明之索引運算方式中,可對應於具有上述第1特徵及上述第2特徵之讀出要求雙方而分散索引,可有效利用快取記憶體L2Cache,可提升命中率。
又,圖5說明之簡易索引轉換方式、圖6說明之索引位元移位轉換方式及圖7說明之索引運算方式中,可由NOR介面NOR IF改寫、選擇讀出模態設定暫存器RModeReg之值。如上述說明,位址轉換方式可配合系統於使用者自由選擇。
(暫存器之設定)
圖11(a)、(b)、(c)為同步型NOR介面及非同步型NOR介面之選擇、脈衝(burst)長度之選擇、位址轉換電路DSTR進行之位址轉換方式之選擇等之進行時之一例之流程圖。
同步型NOR介面及非同步型NOR介面之選擇、脈衝(burst)長度之選擇、位址轉換電路DSTR進行之位址轉換方式之選擇,可藉由改寫讀出模態設定暫存器RModeReg之設定值而同時選擇。
雖未特別限定,同步型NOR介面及非同步型NOR介面之任一之選擇、脈衝長度之選擇、位址轉換電路DSTR進行之位址轉換方式之選擇之進行時,可由NOR介面NOR IF輸入指令RModeSet而設定讀出模態設定暫存器RModeReg之值(Step 1),之後,對讀出模態設定暫存器RModeReg寫入設定值(Step 2)。
圖11(a)係選擇NOR介面為同步型NOR介面、選擇脈衝長度為4、選擇位址轉換方式為索引運算方式之一例。
圖11(b)係選擇NOR介面為同步型NOR介面、選擇脈衝長度為8、選擇位址轉換方式為索引位元移位方式之一例。
圖11(b)係選擇NOR介面為非同步型NOR介面、選擇脈衝長度為4、選擇位址轉換方式為簡易索引轉換方式之一例。
圖11(d)係將讀出模態設定暫存器RModeReg內之設定值讀出用的一例之流程圖。
雖未特別限定,欲將讀出模態設定暫存器RModeReg內之設定值讀出時,在由NOR介面NOR IF輸入讀出模態設定暫存器讀出指令RmodeRead時(Step 1),經由NOR介面NOR IF使讀出模態設定暫存器RModeReg內之設定值被輸出(Step 2)。
圖12(a)係設定快取區域及非快取區域範圍之一例支流程圖。
雖未特別限定,進行快取區域及非快取區域範圍之設定時,可由NOR介面NOR IF輸入快取區域設定用之指令CAreaSet(Step 1),之後對快取區域設定暫存器CAreaReg寫入快取區域之開始位址值(Step 2),之後對快取區域設定暫存器CAreaReg寫入快取區域之結束位址值(Step 3)。快取區域之開始位址值與結束位址值之間成為快取區域,其以外成為非快取區域。
圖12(c)係將快取區域設定暫存器CAreaReg內之設定值讀出用的一例之流程圖。
雖未特別限定,欲將快取區域設定暫存器CAreaReg內之設定值讀出時,在由NOR介面NOR IF輸入快取區域設定暫存器CAreaReg讀出指令CAreaRead時(Step 1),可經由NOR介面NOR IF使快取區域設定暫存器CAreaReg內之設定值被輸出(Step 2)。
圖12(b)係設定快取鎖定區域及非快取鎖定區域範圍之一例支流程圖。
雖未特別限定,進行快取鎖定區域及非快取鎖定區域範圍之設定時,可由NOR介面NOR IF輸入快取鎖定區域設定用之指令CaLOckSet(Step 1),之後對快取鎖定區域設定暫存器CaLockReg寫入快取鎖定區域之開始位址值(Step 2),之後對快取鎖定區域設定暫存器CaLockReg寫入快取鎖定區域之結束位址值(Step 3)。快取鎖定區域之開始位址值與結束位址值之間成為快取鎖定區域,其以外成為非快取鎖定區域。又,快取鎖定區域可設於快取區域內。
圖12(d)係將快取鎖定區域設定暫存器CaLockReg內之設定值讀出用的一例之流程圖。
雖未特別限定,欲將快取鎖定區域設定暫存器CaLockReg內之設定值讀出時,在由NOR介面NOR IF輸入快取鎖定區域設定暫存器CaLockReg讀出指令CaLockRead時(Step 1),可經由NOR介面NOR IF使快取鎖定區域設定暫存器CaLockReg內之設定值被輸出(Step 2)。
圖13(a)係設定寫入次數平均化處理區域及非寫入次數平均化處理區域之一例之流程圖。
雖未特別限定,進行寫入次數平均化處理區域及非寫入次數平均化處理區域之設定時,可由NOR介面NOR IF輸入寫入次數平均化處理區域設定用之指令WlvlSet(Step 1),之後對寫入次數平均化處理區域設定暫存器WlvlReg寫入,寫入次數平均化處理區域之開始位址值(Step 2),之後對寫入次數平均化處理區域設定暫存器WlvlReg寫入,寫入次數平均化處理區域之結束位址值(Step 3)。寫入次數平均化處理區域之開始位址值與結束位址值之間成為寫入次數平均化處理區域,其以外成為非寫入次數平均化處理區域。
圖13(c)係將寫入次數平均化處理區域設定暫存器WlvlReg內之設定值讀出用的一例之流程圖。
雖未特別限定,欲將寫入次數平均化處理區域設定暫存器WlvlReg內之設定值讀出時,在由NOR介面NOR IF輸入寫入次數平均化處理區域設定暫存器WlvlReg之讀出指令WlvlRead時(Step 1),可經由NOR介面NOR IF使寫入次數平均化處理區域設定暫存器WlvlReg內之設定值被輸出(Step 2)。
圖13(b)係設定寫入保護區域及非寫入保護區域之一例之流程圖。
雖未特別限定,進行寫入保護區域及非寫入保護區域之設定時,可由NOR介面NOR IF輸入寫入保護區域設定用之指令WproSet(Step 1),之後對寫入保護區域設定暫存器WproReg寫入,寫入保護區域之開始位址值(Step 2),之後對寫入保護區域設定暫存器WproReg寫入,寫入保護區域之結束位址值(Step 3)。寫入保護區域之開始位址值與結束位址值之間成為寫入保護區域,其以外成為非寫入保護區域。
圖13(d)係將寫入保護區域設定暫存器WproReg內之設定值讀出用的一例之流程圖。
雖未特別限定,欲將寫入保護區域設定暫存器WproReg內之設定值讀出時,在由NOR介面NOR IF輸入寫入保護區域設定暫存器WproReg之讀出指令WproRead時(Step 1),可經由NOR介面NOR IF使寫入保護區域設定暫存器WproReg內之設定值被輸出(Step 2)。
如上述說明,同步型NOR介面或非同步型NOR介面、快取區域及非快取區域、快取鎖定區域及非快取鎖定區域、寫入次數平均化處理區域及非寫入次數平均化處理區域、寫入保護區域及非寫入保護區域可分別獨立設定,可配合系統於使用者側自由選擇。
(讀出流程)
圖14為由NOR介面NOR IF被輸入讀出要求時,記憶體模組MSM之資料讀出動作之一例之流程圖。
由NOR介面NOR IF,對記憶體模組MSM輸入讀出要求及讀出位址Radd時(Step 1),產生來自NAND介面NAND IF1之寫入或抹除要求,確認寫入或抹除位址WorEAd與讀出位址Radd是否一致(Step 2)。寫入或抹除位址WorEAd與讀出位址Radd一致時,記憶體模組MSM經由NOR介面NORIF輸出錯誤(Step 3。)
寫入或抹除位址WorEAd與讀出位址Radd不一致時,記憶體位址管理電路MMG確認讀出位址Radd是否在快取位址範圍內(Step 4)。讀出位址Radd在快取位址範圍外時,記憶體模組MSM經由NOR介面NOR IF輸出錯誤(Step 3)。
讀出位址Radd在快取位址範圍內時,存取調停電路ARB將判斷是否有來自NAND介面電路NDIF之讀出或寫入要求,又,判斷是否對NAND介面電路NDIF之讀出或寫入要求進行動作。判斷有來自NAND介面電路NDIF之讀出或寫入要求,對該要求乃未進行動作時,延後處理來自NAND介面電路NDIF之讀出或寫入要求,而優先許可來自NOR介面電路NRIF之讀出要求(Step 4)。判斷對NAND介面電路NDIF之讀出或寫入要求之動作執行中時,暫時中斷執行中之動作,而優先許可來自NOR介面電路NRIF之讀出要求(Step 5)。
其次,位址轉換電路DSTR將位址Radd轉換為位址MRadd(Step 6)。其次,位址MRadd被輸入快取記憶體L2Cache、命中判斷電路PL2Hit及命中判斷電路L3Hit,進行快取記憶體L2Cache之命中判斷(Step 7)、命中判斷電路PL2Hit之命中判斷(Step 8)及命中判斷電路L3Hit之命中判斷(Step 9)。快取記憶體L2Cache命中時資料由快取記憶體L2Cache被輸出(Step 10),經由NOR介面NOR IF被讀出(Step 11)。快取記憶體L2Cache失誤、命中判斷電路PL2Hit命中時,資料由快取記憶體PL2A及PL2B之任一被輸出(Step 12),經由NOR介面NOR IF被讀出(Step 11)。
快取記憶體L2Cache失誤、命中判斷電路PL2Hit失誤、命中判斷電路L3Hit命中時,將快閃記憶體FLASH_CHIP內之資料暫存器DREG內之第N頁資料傳送至緩衝器電路BUF(Step 13)。
傳送第N頁資料至緩衝器電路BUF之之同時,於錯誤檢測訂正電路ECC進行錯誤檢測(14)。之後,於錯誤檢測訂正電路ECC進行錯誤確認(Step 15),無錯誤時,該第N頁資料藉由控制電路RWCL被傳送至快取記憶體PL2A,有錯誤時於錯誤檢測訂正電路ECC進行錯誤訂正(Step 16)之後,第N頁資料藉由控制電路RWCL被傳送至快取記憶體PL2A。
被傳送至快取記憶體PL2A之第N頁資料之中之資訊處理裝置CPU_CHIP要求之資料,係經由NOR介面電路NRIF,藉由NOR介面NOR IF被輸出。
又,先行讀出指示電路PRECT對控制電路RWCL指示資料之先行讀出,控制電路RWCL對控制電路FCNT輸入讀出要求,將資料緩衝器DREG內之次頁之資料、亦即第N+1頁之資料傳送至緩衝器電路BUF。
傳送至緩衝器電路BUF之第N+1頁資料,係於錯誤檢測訂正電路ECC進行錯誤檢測(Step 19)。之後,於錯誤檢測訂正電路ECC進行錯誤確認(Step 20),無錯誤時,傳送至緩衝器電路BUF之該第N+1頁資料藉由控制電路RWCL被傳送至快取記憶體PL2B,有錯誤時於錯誤檢測訂正電路ECC進行錯誤訂正(Step 12)之後,第N頁資料藉由控制電路RWCL被傳送至快取記憶體PL2A(Step 22)。
快取記憶體L2Cache失誤、命中判斷電路PL2Hit失誤、命中判斷電路L3Hit失誤時,首先,控制電路RWCL對控制電路FCNT輸入第N頁資料之讀出要求,控制電路FCNT將記憶格陣列MARY內之第N頁資料傳送至資料暫存器DREG(Step 23)。之後,將資料暫存器DREG內之第N頁資料傳送至緩衝器電路BUF(Step 13)。
傳送至緩衝器電路BUF之第N頁資料,係於錯誤檢測訂正電路ECC進行錯誤檢測(Step 14)。之後,於錯誤檢測訂正電路ECC進行錯誤確認(Step 15),無錯誤時,傳送至緩衝器電路BUF之第N頁資料藉由控制電路RWCL被傳送至快取記憶體PL2A,有錯誤時於錯誤檢測訂正電路ECC進行錯誤訂正(Step 16)之後,第N頁資料藉由控制電路RWCL被傳送至快取記憶體PL2A(Step 17)。
被傳送至快取記憶體PL2A之第N頁資料之中之資訊處理裝置CPU_CHIP要求之資料,係經由NOR介面電路NRIF,藉由NOR介面NOR IF被輸出。
又,先行讀出指示電路PRECT對控制電路RWCL指示資料之先行讀出時,控制電路RWCL對控制電路FCNT輸入讀出要求,將資料緩衝器DREG內之次頁之資料、亦即第N+1頁之資料傳送至緩衝器電路BUF。
傳送至緩衝器電路BUF之第N+1頁資料,係於錯誤檢測訂正電路ECC進行錯誤檢測(Step 19)。之後,於錯誤檢測訂正電路ECC進行錯誤確認(Step 20),無錯誤時,傳送至緩衝器電路BUF之第N+1頁資料藉由控制電路RWCL被傳送至快取記憶體PL2B,有錯誤時於錯誤檢測訂正電路ECC進行錯誤訂正(Step 12)之後,第N頁資料藉由控制電路RWCL被傳送至快取記憶體PL2A(Step 22)。
圖15為由NAND介面NAND IF1產生寫入要求、由NOR介面NOR IF產生讀出要求時,記憶體模組MSM之存取調停及寫入動作之一例之流程圖。
由NAND介面NAND IF1輸入寫入位址NWADD及寫入資料NWDATA(Step 1)時,寫入位址NWADD被傳送至記憶體位址管理電路MMG,寫入資料NWDATA被傳送至寫入緩衝器WBUF(Step 2)。
之後,存取調停電路ARB確認是否由NOR介面NOR IF輸入讀出要求(Step 3),輸入讀出要求時,暫時停止NAND介面NAND IF1之寫入要求之動作,優先進行圖20之讀出動作(Step),該讀出動作結束後回復NAND介面NAND IF1之寫入要求之動作,確認是否寫入位址NWADD存在於快取位址區域內(Step 5),於位址轉換電路DSTR將寫入位址NWADD轉換為寫入位址MNWADD(Step 6)。
比較位址MNWADD與快取記憶體L2Cache之標籤位址(Step 7),設定一致之標籤位址為無效(Step 8)。
之後,存取調停電路ARB確認是否由NOR介面NOR IF輸入讀出要求(Step 9),輸入讀出要求時,暫時停止NAND介面NAND IF1之寫入要求之動作,優先進行圖20之讀出動作(Step 10),該讀出動作結束後回復NAND介面NAND IF1之寫入要求之動作,將保持於寫入緩衝器WBUF之寫入資料NWDATA傳送至資料暫存器DREG(Step 11)。
之後,存取調停電路ARB確認是否由NOR介面NOR IF輸入讀出要求(Step 12),輸入讀出要求時,暫時停止NAND介面NAND IF1之寫入要求之動作,優先進行圖20之讀出動作(Step 13),該讀出動作結束後回復NAND介面NAND IF1之寫入要求之動作,將保持於資料暫存器DREG之寫入資料NWDATA寫入記憶格陣列MARY(Step 14)。
代替處理電路REP確認對記憶格陣列MARY之寫入成功否(Step 15),寫入失敗時,準備快閃記憶體FLASH_CHIP預先準備之代替用的新的位址(Step 16),對該位址進行寫入(Step 14)。寫入成功時,存取調停電路ARB確認是否由NOR介面NOR IF輸入讀出要求(Step 17),輸入讀出要求時,暫時停止NAND介面NAND IF1之寫入要求之動作,優先進行圖20之讀出動作(Step 18),該讀出動作結束後,最後清除寫入位址NWADD。
(NAND IF1之抹除動作)
圖16為由NAND介面NAND IF1產生抹除要求,由NOR介面NOR IF產生讀出要求時,記憶體模組MSM之存取調停及抹除動作之一例之流程圖。
抹除要求、抹除位址NEADD由NAND介面NAND IF1被輸入時,抹除位址NEADD被傳送至記憶體位址管理電路MMG(Step 1)。
之後,存取調停電路ARB確認是否由NOR介面NOR IF輸入讀出要求(Step 2),輸入讀出要求時,暫時停止NAND介面NAND IF1之抹除要求之動作,優先進行圖20之讀出動作(Step 3),該讀出動作結束後回復NAND介面NAND IF1之抹除要求之動作,確認是否抹除位址NWADD存在於快取位址區域內(Step 4),於位址轉換電路DSTR將位址NEADD轉換為位址MEWADD(Step 5)。
比較位址MNEADD與快取記憶體L2Cache之標籤位址(Step 6),設定一致之標籤位址為無效(Step 7)。
之後,存取調停電路ARB確認是否由NOR介面NOR IF輸入讀出要求(Step 8),輸入讀出要求時,暫時停止NAND介面NAND IF1之抹除要求之動作,優先進行圖20之讀出動作(Step 9),該讀出動作結束後回復NAND介面NAND IF1之抹除要求之動作,抹除記憶格陣列MARY(Step 11)。
之後,存取調停電路ARB確認是否由NOR介面NOR IF輸入讀出要求(Step 11),輸入讀出要求時,暫時停止NAND介面NAND IF1之寫入要求之動作,優先進行圖20之讀出動作(Step 12),該讀出動作結束後回復NAND介面NAND IF1之抹除要求之動作,確認抹除位址NEADD是否存在於寫入次數平均化處理區域內(Step 13)。抹除位址NEADD存在於寫入次數平均化處理區域內時,確認寫入次數與抹除次數之總和是否到達寫入次數平均化電路WLV保持之寫入次數與抹除次數之總和臨限值(Step 14),到達總和臨限值時寫入次數平均化電路WLV判斷為改寫集中,進行寫入次數平均化處理(Step 15)。該寫入次數平均化處理,係依每一區塊(64頁)變更實體位址與邏輯位址之對應,保持該實體位址與邏輯位址之對應資訊。
抹除位址NEADD不存在於寫入次數平均化處理區域內、或者寫入次數平均化處理時,存取調停電路ARB確認是否由NOR介面NOR IF輸入讀出要求(Step 16),輸入讀出要求時,暫時停止NAND介面NAND IF1之抹除要求之動作,優先進行圖20之讀出動作(Step 17),該讀出動作結束後,最後清除抹除位址NEADD(Step 18)。
(NAND IF1之讀出指令)
圖17為由NAND介面NAND IF1產生讀出要求,由NOR介面NOR IF產生讀出要求時,記憶體模組MSM之存取調停及讀出動作之一例之流程圖。
讀出指令及讀出位址NRADD由NAND介面NAND IF1被輸入時(Step 1)。
之後,存取調停電路ARB確認是否由NOR介面NOR IF輸入讀出要求(Step 2),輸入讀出要求時,暫時停止NAND介面NAND IF1之讀出要求之動作,優先進行圖20之讀出動作(Step 3),該讀出動作結束後回復NAND介面NAND IF1之讀出要求之動作,由記憶格陣列MARY將資料傳送至資料緩衝器DREG(Step 4)。
之後,存取調停電路ARB確認是否由NOR介面NOR IF輸入讀出要求(Step 5),輸入讀出要求時,暫時停止NAND介面NAND IF1之讀出要求之動作,優先進行圖20之讀出動作(Step 6),該讀出動作結束後回復NAND介面NAND IF1之讀出要求之動作,將資料緩衝器DREG保持之資料傳送至緩衝器電路BUF(Step 7)。
傳送至緩衝器電路BUF之資料,係於錯誤檢測訂正電路ECC進行錯誤檢測(Step 8)。之後,於錯誤檢測訂正電路ECC進行錯誤確認(Step 9),無錯誤時,傳送至緩衝器電路BUF之資料被傳送至讀出緩衝器RBUF,有錯誤時於錯誤檢測訂正電路ECC進行錯誤訂正(Step 10)之後,被傳送至讀出緩衝器RBUF(Step 11)。最後,保持於讀出緩衝器RBUF之資料被讀出至NOR介面NOR IF(Step 12)。
(快取鎖定用L2Cache之構成)
圖18為進行快取鎖定動作必要之快取記憶體L2Cache之構成之一例之圖。
位址Add6、位址Add2、及位址Add0係和圖8說明之位址同等。
雖未特別限定,快取記憶體L2Cache可由位址陣列AddressArray與資料陣列DataArray構成,資料陣列DataArray之容量為256MByte(百萬位元組)、線大小(line size)為512Byte(位元組),索引位址Index2為0至511,分組關聯(set associative)為4路(way)分組關聯。又,位址陣列AddressArray由標籤位址Tag 2、有效位元vld、無效位元dt、及快取鎖定旗標lck構成,相對於1個索引位址,資料陣列DataArray保持512Byte(位元組)之資料。
存在於快取鎖定位址範圍內之標籤位址之快取鎖定旗標lck之值為1,存在於快取鎖定位址範圍外之標籤位址之快取鎖定旗標lck之值為0。
快取鎖定旗標lck之值為1之資料成為資料更新對象外之資料,只要快取鎖定旗標lck之值不為0則不會由快取記憶體L2Cache被排出。
快取鎖定旗標lck之值為0之資料成為資料更新對象之資料,可由快取記憶體L2Cache被排出。
(快取鎖定旗標解除)
圖21為快取鎖定解除之一例之流程圖。由NOR介面NOR IF對快取鎖定區域設定暫存器CaLockReg寫入快取鎖定解除指令(Step 1)時,快取記憶體L2Cache設定本身之全部快取鎖定旗標lck之值為0(L位準)(Step 2),將設定於快取鎖定區域設定暫存器CaLockReg之快取鎖定範圍位址設為無效(Step 3),最後,設定快取鎖定解除結束信號為H位準,據以表示快取記憶體L2Cache之快取鎖定解除之結束(Step 4)。藉由上述手續使進行快取鎖定之位址範圍成為無效之事被輸入記憶體位址管理電路MMG。
(快取鎖定後之讀出動作)
圖20為快取鎖定被設定時,快取記憶體L2Cache、PL2A、PL2B之動作一例之流程圖。
由NOR介面NOR IF對記憶體模組MSM輸入讀出要求及位址RADD(Step 1)時,記憶體位址管理電路MMG確認位址RADD是否在進行快取鎖定之位址範圍內(Step 2),位址RADD在進行快取鎖定之位址範圍外時移至Step 26,Step 26之動作詳細如圖21所示。
位址RADD在進行快取鎖定之位址範圍內時,於快取記憶體L2Cache進行命中判斷(Step 3)。
快取記憶體L2Cache命中時,確認命中之標籤位址所對應之快取鎖定旗標是否為H位準(Step 4),快取鎖定旗標為H位準時,由快取記憶體L2Cache輸出資料(Step 24),快取鎖定旗標為L位準時,設定該快取鎖定旗標為H位準(Step 5),由快取記憶體L2Cache輸出資料(Step 24)。
快取記憶體L2Cache失誤時,進行快取記憶體PL2A及PL2B之命中判斷(Step 6),命中時將快取記憶體PL2A及PL2B之資料傳送至快取記憶體L2Cache予以更新(Step 12),資料更新時,對快取鎖定旗標為L位準之資料以LRU方式進行更新。之後,設定快取鎖定旗標為H位準(Step 13),設定快取記憶體PL2A及PL2B成為無效化(Step 14),由快取記憶體PL2A及PL2B輸出資料(Step 24)。
快取記憶體PL2A及PL2B失誤時,確認快取記憶體PL2A及PL2B是否為有效(Step 7),有效時將現在存在於快取記憶體PL2A及PL2B之資料傳送至快取記憶體L2Cache予以更新(Step 8),資料更新時,對快取鎖定旗標為L位準之資料以LRU方式進行更新。
之後,設定快取鎖定旗標為H位準(Step 9),設定快取記憶體PL2A及PL2B成為無效化(Step 10)。之後將要求之資料由快閃記憶體FLASH_CHIP傳送至快取記憶體PL2A(Step 11),將快取記憶體PL2A之資料傳送至快取記憶體L2Cache予以更新(Step 15)。
資料更新時,對快取鎖定旗標為L位準之資料以LRU方式進行更新。之後,設定快取鎖定旗標為H位準(Step 16),設定快取記憶體PL2A成為無效化(Step 17),由快取記憶體PL2A輸出資料(Step 24)。與此同時,藉由先行讀出機能,將次頁資料由快閃記憶體FLASH_CHIP傳送至快取記憶體PL2B(Step 18),之後,確認是否在進行快取鎖定之位址範圍內(Step 19),在進行快取鎖定之位址範圍內時,將快取記憶體PL2B之資料傳送至快取記憶體L2Cache予以更新(Step 20)。資料更新時,對快取鎖定旗標為L位準之資料以LRU方式進行更新。之後,設定快取鎖定旗標為H位準(Step 21),設定快取記憶體PL2B成為無效化(Step 22)。在進行快取鎖定之位址範圍外時,設定快取記憶體PL2B成為有效化(Step 23)。
(快取鎖定之讀出動作)
圖21為快取鎖定被設定由NOR介面NOR IF輸入記憶體模組MSM之讀出要求及位址RADD在進行快取鎖定之位址範圍外時,快取記憶體L2Cache、PL2A、PL2B之動作一例之流程圖。
位址RADD在進行快取鎖定之位址範圍外(Step 25)時,於快取記憶體L2Cache進行命中判斷(Step 26)。
快取記憶體L2Cache命中時,確認命中之標籤位址所對應之快取鎖定旗標是否為L位準(Step 27),快取鎖定旗標為L位準時,由快取記憶體L2Cache輸出資料(Step 41),快取鎖定旗標為H位準時,輸出錯誤(Step 28)。
快取記憶體L2Cache失誤時,進行快取記憶體PL2A及PL2B之命中判斷(Step 29),命中時由快取記憶體PL2A或PL2B輸出資料(Step 41)。
快取記憶體PL2A及PL2B失誤時,確認快取記憶體PL2A及PL2B是否為有效(Step 30),有效時將現在存在於快取記憶體PL2A及PL2B之資料傳送至快取記憶體L2Cache予以更新(Step 31),資料更新時,對快取鎖定旗標為L位準之資料以LRU方式進行更新。
之後,設定快取記憶體PL2A及PL2B成為無效化(Step 32)。之後將要求之資料由快閃記憶體FLASH_CHIP傳送至快取記憶體PL2A(Step 33),設定快取記憶體PL2A之資料為有效化(Step 34)。之後,由快取記憶體PL2A輸出資料(Step 41)。
與Step 41同時,藉由先行讀出機能,將次頁資料由快閃記憶體FLASH_CHIP傳送至快取記憶體PL2B(Step 35),之後,確認是否在進行快取鎖定之位址範圍內(Step 36),在進行快取鎖定之位址範圍內時,將快取記憶體PL2B之資料傳送至快取記憶體L2Cache予以更新(Step 37)。資料更新時,對快取鎖定旗標為L位準之資料以LRU方式進行更新。之後,設定快取鎖定旗標為H位準(Step 38),設定快取記憶體PL2B成為無效化(Step 39)。在進行快取鎖定之位址範圍外時,設定快取記憶體PL2B成為有效化(Step 40)。
(具有多數記憶體區塊的FLASH)
圖22為本發明適用於具有多數記憶體區塊的快閃記憶體FLASH_CHIP22之第2實施形態。
表示由資訊處理裝置CPU_CHIP、記憶體模組MSM22、動態隨機存取記憶體DRAM_CHIP構成之記憶體系統。
記憶體模組MSM22由快閃記憶體FLASH_CHIP22及控制電路CT_CHIP構成。
資訊處理裝置CPU_CHIP、控制電路CT_CHIP、動態隨機存取記憶體DRAM_CHIP分別和圖1所示者相同。
控制電路CT_CHIP由:接受來自NOR介面NOR IF之讀出/寫入要求的NOR介面電路NRIF,接受來自NAND介面NAND IF之讀出/寫入要求的NAND介面電路NDIF,暫存器方塊REG,位址轉換電路DSTR,快取記憶體L2Cache、PL2A、PL2B,預擷取控制電路PREF,快閃控制電路FLCT,緩衝器電路BFBK,及快閃錯誤控制電路FLSP構成。
彼等NOR介面NOR IF、NOR介面電路NRIF、NAND介面NAND IF、NAND介面電路NDIF、SDRAM介面SDRAM_IF、暫存器方塊REG、位址轉換電路DSTR、快取記憶體L2Cache、PL2A、PL2B、預擷取控制電路PREF、快閃控制電路FLCT、緩衝器電路BFBK、及快閃錯誤控制電路FLSP分鼻和圖1所示者相同。
快閃記憶體FLASH_CHIP22由控制電路FCNT22、資料緩衝器DREG0~DREG3、及記憶體區塊BANK0~BANK3構成。
雖未特別限定,資料緩衝器與記憶體區塊間之資料傳送,可分別獨立進行記憶體區塊BANK0與資料緩衝器DREG0間之資料傳送,記憶體區塊BANK1與資料緩衝器DREG1間之資料傳送,記憶體區塊BANK2與資料緩衝器DREG2間之資料傳送,記憶體區塊BANK3與資料緩衝器DREG3間之資料傳送。
雖未特別限定,1個記憶體區塊之記憶容量為64M Byte(百萬位元組),4個記憶體區塊之記憶容量總和為256M Byte。
雖未特別限定,1個資料緩衝器之資料量為(data size)為2k Byte(千位元組),4個資料緩衝器之資料量總和為8k Byte。
控制電路FCNT22為,藉由控制電路CT_CHIP之讀出及寫入指令,控制自資料緩衝器DREG0~DREG3至記憶體區塊BANK0~BANK3間之資料傳送的電路。
快閃記憶體FLASH_CHIP22,可於AND介面與NAND介面之任一動作,於此以NAND介面之情況為例說明快閃記憶體FLASH_CHIP22之動作。
控制電路FCNT22為,藉由控制電路CT_CHIP之NAND介面NAND IF3之讀出及寫入指令,控制自資料緩衝器DREG0~DREG3至記憶體區塊BANK0~BANK3間之資料傳送的電路。
讀出要求及讀出位址經由控制電路CT_CHIP之NAND介面NAND IF22被輸入控制電路FCNT22時,讀出位址所指定記憶體區塊之資料,被傳送至該記憶體區塊之資料傳送所對應之資料緩衝器。之後,經由NAND介面NAND IF3被傳送至控制電路CT_CHIP。
於讀出位址對於記憶體區塊之指定,可以一次指定全區塊,或指定2區塊,或1個個獨立指定,例如由資料緩衝器DREG讀出資料時,藉由隱性進行自記憶體區塊BANK1至資料緩衝器DREG1之資料傳送,可以隱藏自記憶體區塊至資料緩衝器之資料傳送時間,可達成資料傳送高速化。
被傳送至資料緩衝器之資料直接被保持,可作為8k Byte之L3快閃使用,更能達成資料傳送高速化。
如上述說明,本發明亦可實現適用具有多數記憶體區塊之快閃記憶體FLASH_CHIP22。
(第3實施形態)
本發明人在本案之前針對行動電話及其使用之靜態隨機存取記憶體SRAM與快閃記憶體被安裝於1個封裝的記憶體模組之信賴性加以檢討。
結果發現α線引起之錯誤(soft error)乃半導體封裝構件中之鈾等之放射性物質放射出之α線射入靜態隨機存取記憶體SRAM的記憶體陣列,而破壞該該記憶體陣列保持之記憶資料的現象,成為靜態隨機存取記憶體SRAM之信賴性劣化之主要原因。靜態隨機存取記憶體SRAM的記憶容量越大面積變為越大,α線射入靜態隨機存取記憶體SRAM的概率越增加,信賴性劣化之傾向變為越大。
動態隨機存取記憶體DRAM或靜態隨機存取記憶體SRAM等之揮發性記憶體受到α線影響而會劣化其信賴性,但是快閃記憶體等非揮發性記憶體則因其記憶體陣列構造而不受α線影響。
本發明目的之一為,提供包含高信賴性之ROM與RAM的記憶體系統。
圖23為本發明第3實施形態適用之由資訊處理裝置CPU_CHIP23、記憶體模組MSM23、及動態隨機存取記憶體DRAM_CHIP構成之記憶體系統之構成圖。
記憶體模組MSM23由快閃記憶體FLASH_CHIP及控制電路CT_CHIP23構成。
資訊處理裝置CPU_CHIP、快閃記憶體FLASH_CHIP、及動態隨機存取記憶體DRAM_CHIP分別和圖1所示者相同。
控制電路CT_CHIP23由:接受來自NOR介面NOR IF之讀出/寫入要求的NOR介面電路NRIF,接受來自NAND介面NAND IF之讀出/寫入要求的NAND介面電路NDIF,暫存器方塊REG,奇偶確認電路PRCH,快取記憶體L2CacheP、PL2AP、PL2BP,預擷取控制電路PREF,快閃控制電路FLCTP,緩衝器電路BFBK,及快閃錯誤控制電路FLSP構成。
彼等NOR介面NOR IF、NOR介面電路NRIF、NAND介面NAND IF、NAND介面電路NDIF、SDRAM介面SDRAM_IF、暫存器方塊REG、位址轉換電路DSTR、預擷取控制電路PREF、快閃控制電路FLCTP、緩衝器電路BFBK、及快閃錯誤控制電路FLSP分別和圖1所示者相同。
奇偶確認電路PRCH對由快取記憶體L2CacheP讀出之資料與奇偶資料進行奇偶確認的電路。
奇偶確認有偶數確認與奇數確認,奇偶確認電路PRCH可進行任一確認,但以下依據偶數確認之例加以說明。
快取記憶體L2CacheP、PL2AP、PL2BP為具有奇偶資料的快取記憶體,其以外之構成及動作均同圖1說明者。
快閃控制電路FLCTP為具有奇偶資料產生電路的控制電路,其以外之構成及動作均同圖1說明者。
說明由快取記憶體L2Cache讀出資料之動作之一例。
快取記憶體L2Cache命中時,直接由快取記憶體L2CacheP讀出資料與奇偶資料,於奇偶確認電路PRCH進行奇偶確認。
雖未特別限定,於偶數確認時確認8位元之資料與和其對應之奇偶位元之H位準之數目是否為偶數,偶數個時判斷資料被正確讀出,奇數個時判斷讀出,之資料有誤。
於奇偶確認電路PRCH判斷資料被正確讀出時,經由NOR介面電路NRIF,藉由NOR介面NOR IF被輸出至資訊處理裝置CPU_CHIP。
α線引起之錯誤會導致快取記憶體L2Cache之資料被破壞,而判斷讀出之資料有誤時,快閃控制電路FLCTP由快閃記憶體FLASH_CHIP讀出產生錯誤之資料之基礎資料,而傳送至快閃錯誤控制電路FLSP。
預擷取控制電路PREF利用在快閃記憶體FLASH_CHIP之資料緩衝器DREG內產生對快閃錯誤控制電路FLSP之資料傳送期間,將快取記憶體PL2AP及PL2BP保持之資料傳送至快取記憶體L2CacheP,更新快取記憶體L2Cache。於該更新同時進行資料於奇偶資料之更新。
快閃錯誤控制電路FLSP,係對由快閃記憶體FLASH_CHIP被傳送之資料進行錯誤檢測訂正,於電路ECC,無錯誤時,該資料被傳送至快取記憶體PL2AP,有錯誤時進行錯誤訂正之後,被傳送至快取記憶體PL2AP。
又,雖未特別限定,快閃錯誤控制電路FLSP,對快取記憶體PL2AP之資料傳送時,係對8位元資料產生1位元之奇偶資料,奇偶資料亦同時被傳送至快取記憶體PL2AP。雖未特別限定,於偶數確認,8位元資料之中H位準之位元存在奇數個時,奇偶資料成為H位準,設定H位準之位元為偶數個。又,8位元資料之中H位準之位元存在偶數個時,奇偶資料成為L位準,設定H位準之位元為偶數個。
被傳送至快取記憶體PL2AP之資料,係於奇偶確認電路PRCH進行奇偶確認。雖未特別限定,於偶數確認時係確認8位元之資料與和其對應之奇偶位元之H位準之數目是否為偶數個,偶數個時判斷資料被正確讀出,奇數個時判斷讀出之資料有誤。
於奇偶確認電路PRCH判斷資料被正確讀出時,經由NOR介面電路NRIF,藉由NOR介面NOR IF被輸出至資訊處理裝置CPU_CHIP。
判斷讀出之資料有誤時,再度由快閃記憶體讀出資料。
如上述說明,因為軟性錯誤引起快取記憶體L2Cache之資料被破壞,而於奇偶確認電路PRCH判斷讀出之資料有誤時,由快閃記憶體FLASH_CHIP讀出資料,如此則,可防止軟性錯誤引起之信賴性劣化。
(第4實施形態) (DRAM為MCP內)
圖24為本發明適用之另一實施形態,表示由資訊處理裝置CPU_CHIP、記憶體模組MSM24構成之記憶體系統。
記憶體模組MSM24由快閃記憶體FLASH_CHIP及控制電路CT_CHIP及動態隨機存取記憶體DRAM_CHIP構成。
雖未特別限定,作為快閃記憶體FLASH_CHIP使用之典型快閃記憶體,為具備NAND介面之大容量快閃記憶體。本實施形態為適用具備AND介面之大容量快閃記憶體之例。
動態隨機存取記憶體DRAM_CHIP因內部構成或介面之差異而有EDO(Extended Data Out)、SDRAM(Synchronous DRAM)、DDR(Double Data Rate)等各種類。於記憶體模組MSM24可使用任一DRAM。本實施形態為適用SDRAM之例。
控制電路CT_CHIP23具備:NOR介面NOR IF與NAND介面NAND IF,為控制快閃記憶體FLASH_CHIP與資訊處理裝置CPU_CHIP間之資料傳送的電路,分別和圖1所示者相同。
又,動態隨機存取記憶體DRAM_CHIP被搭載於記憶體模組MSM24,構成欸為藉由SDRAM介面SDRAM IF直接進行與資訊處理裝置CPU_CHIP間之資料傳送,因此具備NOR介面、NAND介面及SDRAM介面的記憶體模組MSM24,可實現圖1所示本發明。
如上述說明,藉由將動態隨機存取記憶體DRAM_CHIP內藏於記憶體模組,可實現裝置之小型化、可實現本發明。
(第5實施形態) (硬碟)
圖25為本發明適用之第5實施形態,表示由資訊處理裝置CPU_CHIP、動態隨機存取記憶體DRAM_CHIP、及記憶體模組MSM25構成之記憶體系統。
記憶體模組MSM25由硬碟HDisk及控制電路CT_CHIP25構成。
資訊處理裝置CPU_CHIP與動態隨機存取記憶體DRAM_CHIP係分別和圖1所示者相同。
本實施形態,為取代快閃記憶體改為適用硬碟HDisk之一例。
硬碟HDisk為較快閃記憶體FLASH_CHIP大容量、且可實現低成本之記憶體。由硬碟HDisk讀出資料之介面有IDE、ATA及UltraATA等。本實施形態中說明UltraATA之例,但亦可適用IDE、ATA等。
關於資料讀出單位、位址管理方法、錯誤檢測訂正方法、可使原本以硬碟實現之資料讀出單位、位址管理方法、錯誤檢測訂正方法等繼續適用於快閃記憶體,而取代快閃記憶體改用硬碟HDisk。
控制電路CT_CHIP25由:接受來自NOR介面NOR IF之讀出/寫入要求的NOR介面電路NRIF,接受來自NAND介面NAND IF之讀出/寫入要求的NAND介面電路NDIF,暫存器方塊REG,位址轉換電路DSTR,快取記憶體L2Cache、PL2A、PL2B,預擷取控制電路PREF,硬碟控制電路FLCT25,緩衝器電路BFBK,及快閃錯誤控制電路FLSP構成。
NOR介面NOR IF、NOR介面電路NRIF、NAND介面NAND IF、NAND介面電路NDIF、SDRAM介面SDRAM_IF、暫存器方塊REG、位址轉換電路DSTR、快取記憶體L2Cache、PL2A、PL2B、預擷取控制電路PREF、緩衝器電路BFBK、及快閃錯誤控制電路FLSP分別和圖1所示者相同構成及動作。
硬碟控制電路FLCT25由時脈控制電路OSC、記憶體位址管理電路MMG、存取調停電路ARB及控制電路HRWCL構成。
時脈控制電路OSC、記憶體位址管理電路MMG、存取調停電路ARB係分別和圖1所示者為相同構成及動作。又,控制電路HRWCL,為對圖1所示控制電路RWCL由U硬碟HDisk讀出資料,而具備UltraATA介面之控制電路,由硬碟HDisk讀出資料後之動作係和圖1所示控制電路RWCL相同。因此,適用硬碟HDisk可實現本發明。
如上述說明,藉由使用硬碟HDisk可實現更大容量、且低成本之記憶體系統。
(第6實施形態)
圖26為本發明第6實施形態之例,圖26(a)為上面圖,圖26(b)為沿上面圖之A_A’線部分的斷面圖。
本實施形態之多晶片模組,係在藉由BGA(球柵陣列)安裝於裝置上的基板(例如以玻璃環氧基板形成之印刷電路板)PCB上,搭載CHIPM1、CHIPM2。CHIPM1為非揮發性記憶體、CHIPM2為DRAM。
藉由本多晶片模組,可將圖1所示記憶體模組MSM及圖22所示記憶體模組MSM22集積於1個封裝體。
CHIPM1與基板PCB上之接合焊墊被以接合導線PATH2連接,CHIPM2與基板PCB上之接合焊墊被以接合導線PATH1連接。CHIPM1與CHIPM2被以接合導線PATH3連接。
搭載晶片之基板PCB上面被進行樹脂模塑而保護各晶片與連接配線。又,由其上起使用金屬、陶瓷、或樹脂被覆亦可。
本實施形態中,於印刷電路板PCB上直接搭載裸晶片而可構成安裝面積小的記憶體模組。又,可積層各晶片,可縮短晶片與基板PCB間之配線長度,晶片間之配線及各晶片與基板PCB間之配線可以接合導線方式予以統一,可以較少步驟數製造記憶體模組。
又,晶片間藉由接合導線直接配線,可減少基板PCB上之接合焊墊數及接合導線數,可以較少步驟數製造記憶體模組。使用樹脂被覆時,可構成更強韌之記憶體模組。使用金屬、陶瓷被覆時,除強度以外,可構成具有極佳散熱性或蔽磁效果之記憶體模組。
(第7實施形態)
圖27為本發明第6實施形態之例,圖27(a)為上面圖,圖27(b)為沿上面圖之A_A’線部分的斷面圖。
本實施形態之多晶片模組,係在藉由BGA(球柵陣列)安裝於裝置上的基板(例如以玻璃環氧基板形成之印刷電路板)PCB上,搭載CHIPM1、CHIPM2、CHIPM3。CHIPM1為非揮發性記憶體、CHIPM2為DRAM。CHIPM3為由中央運算裝置CPU、NOR控制器NRC及DRAM控制器SDC構成的資訊處理裝置、或控制CHIPM1與CHIPM2之資料傳送的控制電路。
藉由本多晶片模組,可將圖24所示記憶體模組MSM24集積於1個封裝體。
CHIPM1與基板PCB上之接合焊墊被以接合導線PATH2連接,CHIPM2與基板PCB上之接合焊墊被以接合導線PATH1連接。CHIPM1與CHIPM2被以接合導線PATH3連接。CHIPM3之安裝及配線使用球柵陣列。
本安裝方法中,可積層3晶片,可減少安裝面積。另外,CHIPM3與基板PCB間之接合成為不必要,可減少接合導線數,可以減少組裝工時,能實現更高信賴性之多晶片模組。
圖27為本發明多晶片模組之第8實施形態之例,圖27(a)為上面圖,圖27(b)為沿上面圖之A_A’線部分的斷面圖。
(第8實施形態)
圖28為本發明多晶片模組之第7實施形態之例,圖28(a)為上面圖,圖28(b)為沿上面圖之A_A’線部分的斷面圖。
本實施形態之多晶片模組,係在藉由BGA(球柵陣列)安裝於裝置上的基板(例如以玻璃環氧基板形成之印刷電路板)PCB上,搭載CHIPM1、CHIPM2、CHIPM3、CHIPM4。CHIPM1為非揮發性記憶體、CHIPM3為DRAM。CHIPM2為CHIPM1與CHIPM2間之資料傳送控制用的控制電路,CHIPM4為由中央運算裝置CPU、NOR控制器NRC及DRAM控制器SDC構成的資訊處理裝置。
本安裝方法中,可將圖1所示記憶體系統、圖22所示記憶體系統模組、圖23所示記憶體系統及圖24所示記憶體系統集積於1個封裝體。
CHIPM1與基板PCB上之接合焊墊被以接合導線PATH2連接,CHIPM2與基板PCB上之接合焊墊被以接合導線PATH4連接,CHIPM3與基板PCB上之接合焊墊被以接合導線PATH1連接。
CHIPM1與CHIPM3被以接合導線PATH3連接,CHIPM2與CHIPM3被以接合導線PATH5連接。
CHIPM4之安裝及配線使用球柵陣列。
本安裝方法中,於印刷電路板PCB上直接搭載裸晶片而可構成安裝面積小的記憶體模組。又,各晶片可近接配置,可縮短晶片間配線長度。
又,晶片間藉由接合導線直接配線,可減少基板PCB上之接合焊墊數及接合導線數,可以較少步驟數製造記憶體模組。
另外,CHIPM4與基板PCB間之接合成為不必要,可減少接合配線數,可以減少組裝工時,能實現更高信賴性之多晶片模組。
(第9實施形態)
圖29為本發明多晶片模組之第9實施形態之例,圖29(a)為上面圖,圖29(b)為沿上面圖之A_A’線部分的斷面圖。
本實施形態之多晶片模組,係在藉由BGA(球柵陣列)安裝於裝置上的基板(例如以玻璃環氧基板形成之印刷電路板)PCB上,搭載CHIPM1、CHIPM2、CHIPM3。CHIPM1為非揮發性記憶體、CHIPM2及CHIPM3為DRAM。又,晶片間之配線及各晶片與基板PCB間之配線可以接合導線方式予以統一,可以較少步驟數製造記憶體模組。本安裝方法中,可將圖24所示記憶體模組MSM24集積於1個封裝體。
CHIPM1與基板PCB上之接合焊墊被以接合導線PATH2連接,CHIPM2與基板PCB上之接合焊墊被以接合導線PATH1連接,CHIPM3與基板PCB上之接合焊墊被以接合導線PATH3連接。
本安裝方法中,於印刷電路板PCB上直接搭載裸晶片而可構成安裝面積小的記憶體模組。又,各晶片可近接配置,可縮短晶片間配線長度。
各晶片與基板PCB間之配線可以接合導線方式予以統一,可以較少步驟數製造記憶體模組。
(第10實施形態)
圖30為本發明多晶片模組之第9實施形態之例,圖30(a)為上面圖,圖30(b)為沿上面圖之A_A’線部分的斷面圖。
本實施形態之多晶片模組,係在藉由BGA(球柵陣列)安裝於裝置上的基板(例如以玻璃環氧基板形成之印刷電路板)PCB上,搭載CHIPM1、CHIPM2、CHIPM3、CHIPM4。CHIPM1為非揮發性記憶體、CHIPM2及CHIPM3為DRAM。CHIPM4為由中央運算裝置CPU、NOR控制器NRC及DRAM控制器SDC構成的資訊處理裝置。
本安裝方法中,可將圖1所示記憶體系統、圖22所示記憶體系統模組、圖23所示記憶體系統及圖24所示記憶體系統集積於1個封裝體。
CHIPM1與基板PCB上之接合焊墊被以接合導線PATH2連接,CHIPM2與基板PCB上之接合焊墊被以接合導線PATH1連接,CHIPM3與基板PCB上之接合焊墊被以接合導線PATH3連接。CHIPM4之安裝及配線使用球柵陣列。
本實施形態中,於印刷電路板PCB上直接搭載裸晶片而可構成安裝面積小的記憶體模組。又,各晶片可近接配置,可縮短晶片間配線長度。另外,CHIPM4與基板PCB間之接合成為不必要,可減少接合配線數,可以減少組裝工時,能實現更高信賴性之多晶片模組。
(第11實施形態)
圖31為為利用本發明之記憶體模組的行動電話之第10實施形態。行動電話由天線ANT、無限區塊RF、基頻區塊BB、聲音編解碼器區塊SP、揚聲器SK、麥克風MK、微處理器CPU、動態隨機存取記憶體DRAM、液晶顯示部LCD、鍵盤KEY、及本發明之記憶體模組MSM構成。
說明通話時之動作。
經由天線ANT受信之聲音於無限區塊RF被放大,被輸入基頻區塊BB。於基頻區塊BB,將聲音之類比信號轉換為數位信號,進行錯誤訂正及解碼處理,輸出至聲音編解碼器區塊SP。聲音編解碼器區塊SP將數位信號轉換為類比信號輸出至揚聲器SK,則由揚聲器SK可聽到對方之聲音。
說明由行動電話存取網際網路之首頁、下載音樂資料,再生予以聽取,最後保存下載之音樂資料的一連串作業之動作。
於記憶體模組MSM儲存基本程式、應用程式(郵件、Web瀏覽器、音樂再生程式、動作再生程式、遊戲程式等)、音樂資料、靜止畫資料、動畫資料等。
由鍵盤指示Web瀏覽器之啟動時,記憶體模組MSM內之FLASH儲存之Web瀏覽器之程式,被傳送至同一記憶體模組內之快取記憶體。對快取記憶體之傳送結束後,處理器CPU執行DRAM內之Web瀏覽器之程式,於液晶顯示部LCD顯示Web瀏覽器。當存取所要之首頁,由鍵盤指示下載想要之音樂資料時,音樂資料經由天線ANT被受信,於無限區塊RF被放大,被輸入基頻區塊BB。於基頻區塊BB,將音樂資料之類比信號轉換為數位信號,進行錯誤訂正及解碼處理。轉換為數位信號之音樂資料暫時保存於DRAM,最後被傳送至記憶體模組MSM之FLASH予以儲存。
之後,藉由鍵盤KEY指示音樂再生程式之啟動時,記憶體模組MSM內之FLASH儲存之音樂再生程式,被傳送至同一記憶體模組內之快取記憶體。對快取記憶體之傳送結束後,處理器CPU執行快取記憶體內之音樂再生程式,於液晶顯示部LCD顯示音樂再生程式。
藉由鍵盤KEY指示聽取由FLASH下載之音樂資料時,處理器CPU執行音樂再生程式,處理保持於FLASH之音樂資料,最後可由揚聲器SK聽取音樂。
此時,本發明之記憶體模組係使用大容量之快取記憶體,Web瀏覽器及音樂再生程式保持於快取記憶體,任一程式均可由CPU同時執行。另外,啟動電子郵件程式時,可同時執行電子郵件程式、郵件之傳送/接收。
停止Web瀏覽器時,乃然保持於記憶體模組內之快取記憶體,因而再度啟動時可以啟動。
由鍵盤KEY輸入電源切斷指示時,記憶體模組僅使快取記憶體動作,可執行最低限之資料保持,可以盡量減少消費電力。
如上述說明,藉由使用本發明之記憶體模組,可以儲存大量郵件、音樂再生、應用程式、或音樂資料、靜止畫資料、動畫資料等,可同時執行多數程式。
(第12實施形態)
圖32為為利用本發明之記憶體系統的行動電話之第12實施形態。行動電話由天線ANT、無限區塊RF、基頻區塊BB、聲音編解碼器區塊SP、揚聲器SK、麥克風MK、處理器CPU、動態隨機存取記憶體DRAM、液晶顯示部LCD、鍵盤KEY、及將處理器CPU、動態隨機存取記憶體DRAM及記憶體模組MSM集積於1個封裝體的本發明之記憶體系統SLP構成。
藉由本發明之記憶體系統SLP之使用,可減少元件數,可實現低成本,可提升行動電話之信賴性,可縮小構成行動電話之元件安裝面積,可實現行動電話之小型化。
上述說明知本發明所能獲得之主要效果如下。
第1,電源投入時,起動程式自動由FLASH傳送至快取記憶體,行動機器可讀出快取記憶體之起動程式,可立即起動。
第2,電源投入時,必要之程式自動由FLASH傳送至快取記憶體,於行動機器動作之時點,可立即存取本發明之記憶體模組,可實現行動機器之高性能化。
第3,於適用本發明記憶體系統的記憶體模組中,FLASH之資料被傳送保持於快取記憶體內,行動機器可直接存取快取記憶體,可實現高速之資料傳送。
第4,於適用本發明記憶體系統的記憶體模組中,具有資料之先行讀出機能,次一使用之資料可事先傳送至快取記憶體,可提升快取記憶體之命中率,可實現高速之資料傳送。
第5,於適用本發明記憶體系統的記憶體模組中,快閃記憶體內之資料暫存器可使用作為快取記憶體,可有效增加快取記憶體之容量,可提升命中率,可實現高速之資料傳送。
第6,於適用本發明記憶體系統的記憶體模組中,進行位址轉換分散快取記憶體之索引位址,可提升快取記憶體之利用率,可實現高速之資料傳送。
第7,對快閃記憶體進行寫入時,可由快取記憶體讀出資料,可實現行動機器動作之高速化。
第8,同步型NOR介面或非同步型NOR介面,位址轉換方式、快取區域及非快取區域、快取鎖定區域及非快取鎖定區域、寫入次數平均化處理區域及非寫入次數平均化處理區域、寫入保護區域及非寫入保護區域可分別獨立設定,可配合系統於使用者側自由選擇。
第9,於本記憶體模組內部,來自FLASH之讀出時,進行錯誤錯誤檢測及訂正,寫入時對未正確進行寫入之不良位址進行代替處理,因而可以高速處理,且可保有信賴性。
第10,於本記憶體模組內部,來自快取記憶體之讀出時,進行錯誤檢測,錯誤時由快閃記憶體進行資料讀出,因而可以高速處理,且可保有信賴性。
第11,於本記憶體模組內部,進行快閃記憶體之寫入次數平均化處理,因而可以高速處理,且可保有信賴性。
第12,經由通常之介面的NOR介面、NAND介面及AND介面,將起動程式或自動傳送區域指定資料寫入FLASH之初期程式區域,可變化電源投入後之起動方法或資料傳送區域,可依據行動機器之要求圓滑地對應,可實現高機能化。
第13,將多數半導體晶片安裝於1個封裝體,可提供小安裝面積之系統記憶體、模組。
(發明效果)
可實現高機能之記憶體。
CPU_CHIP...資訊處理裝置
CPU...資訊處理裝置
MSM...記憶體模組
NRC...NOR快閃控制器
NDC...NAND快閃控制器
SDC...DRAM控制器
NOR IF...NOR介面
NAND IF1、NAND IF2...NAND介面
SDRAMIF2...SDRAM介面
NRIF...NOR介面電路
NDIF...NAND介面電路
CT_CHIP...控制電路
REG...暫存器方塊
DSTR...位址轉換電路
L2Cache...快取記憶體
PL2A...快取記憶體
PL2B...快取記憶體
PREF...預擷取控制電路
PL2Hit...命中判斷電路
L3Hit...命中判斷電路
PRECT...先行讀出指示電路
FLCT...快閃控制電路
OSC...時脈控制電路
MMG...記憶體位址管理電路
ARB...存取調停電路
RWCL...控制電路
FLSP...快閃錯誤控制電路
ECC...錯誤檢測訂正電路
BUF...緩衝器電路
REF...代替處理電路
WLV...寫入次數平均化電路
FLASH_CHIP...快閃記憶體
FCNT...控制電路
DREG...資料緩衝器
MARY...記憶格陣列
DRAM_CHIP...動態隨機存取記憶體
CLK...時脈信號
Wait...Wait信號
PCMP...初期動作結束信號
MSM22...記憶體模組
FLASH_CHIP22...快閃記憶體
FCNT22...控制電路
DREG0、1、2、3...資料緩衝器
BANK0、1、2、3...記憶體區塊
NAND IF22...NAND介面
MSM23...記憶體模組
CT_CHIP23...控制電路
FLCTP...快閃控制電路
L2Cache、PL2A、PL2B...快取記憶體
MSM24...記憶體模組
MSM25...記憶體模組
FLCT25...快閃控制電路
CT_CHIP25...控制電路
HRWCL...控制電路
HDisk...硬碟
MAIN...主區域
REPAREA...代替區域
NONCAREA...非快取區域
CAREA...快取區域
WLVL...寫入次數平均化處理區域
NONWLVL...非寫入次數平均化處理區域
CALOCK...快取鎖定區域
UNCALOCK...非快取鎖定區域
WPRO...寫入保護區域
NONWPRO...非寫入保護區域
InitProg...初期程式區域
AREA-A...主區域內區域
AREA-B...主區域內區域
AREA-C...主區域內區域
AREA-D...主區域內區域
RModeReg...讀出模態設定暫存器
CAreaReg...快取區域設定暫存器
CaLockReg...快取鎖定區域設定暫存器
WproReg...寫入保護區域設定暫存器
WlvlReg...寫入次數平均化處理區域設定暫存器
PWON...電源投入期間
RESET...重置期間
InitLoad...初期載入期間
AutoLoad...初期程式傳送期間
IDLE...待機期間
NRAD...來自NOR介面之位址信號
Tag2...標籤位址
Index2...索引位址
Line2...線大小
vld...資料有效位元信號
dt...無效位元信號
lck...快取鎖定位元信號
LRU...快取資料更新順序指定信號
AddressArray...快取/標籤位址陣列
DataArray...快取資料陣列
COMP...比較電路
SEL...選擇電路
CHIPM1、CHIPM2、CHIPM3、CHIPM4...半導體晶片
PCB...印刷電路板
COVER...模組之密封被覆
PATH1-PATH5...接合配線
ANT...天線
RF...無限區塊
BB...基頻區塊
SP...聲音編解碼器區塊
SK...揚聲器
MK...麥克風
CPU...處理器
DRAM...動態隨機存取記憶體
LCD...液晶顯示部
KEY...鍵盤
MSM...記憶體模組
SLP...將處理器CPU、動態隨機存取記憶體DRAM及記憶體模組MSM集積於1個封裝體的模組
PRC...資訊處理裝置
MCM...記憶體模組
CPU...中央運算裝置
SRC...記憶體控制器
NOR FLASH...NOR型快閃記憶體
SRAM...靜態隨機存取記憶體
圖1為本發明適用之記憶體系統構成。
圖2為本發明適用之記憶體系統之位址對映之一例說明圖。
圖3為本發明適用之記憶體系統之暫存器方塊之一例說明圖。
圖4為本發明適用之記憶體系統之電源投入時之動作一例說明圖。
圖5為本發明適用之記憶體系統之位址轉換及快取記憶體之一例之圖。
圖6為本發明適用之記憶體系統之位址轉換及快取記憶體之一例之圖。
圖7為本發明適用之記憶體系統之位址轉換之一例之圖。
圖8為本發明適用之記憶體系統之快取記憶體之一例之圖。
圖9為本發明適用之記憶體系統之快取記憶體之資料更新之一例之圖。
圖10為本發明適用之記憶體系統之快取記憶體之資料更新之一例之圖。
圖11為本發明適用之記憶體系統之暫存器方塊之設定方法之一例之圖。
圖12為本發明適用之記憶體系統之暫存器方塊之設定方法之一例之圖。
圖13為本發明適用之記憶體系統之暫存器方塊之設定方法之一例之圖。
圖14為本發明適用之記憶體系統之資料讀出動作流程之一例之流程圖。
圖15為本發明適用之記憶體系統之資料寫入動作流程之一例之流程圖。
圖16為本發明適用之記憶體系統之資料抹除動作流程之一例之流程圖。
圖17為本發明適用之記憶體系統之讀出動作流程之一例之流程圖。
圖18為本發明適用之記憶體系統之快取記憶體之一例之圖。
圖19為本發明適用之記憶體系統之快取鎖定解除方法之一例之圖。
圖20為本發明適用之記憶體系統之資料讀出動作流程之一例之流程圖。
圖21為本發明適用之記憶體系統之資料讀出動作流程之一例之流程圖。
圖22為本發明適用之記憶體系統之構成圖。
圖23為本發明適用之記憶體系統之構成圖。
圖24為本發明適用之記憶體系統之構成圖。
圖25為本發明適用之記憶體系統之構成圖。
圖26為本發明之記憶體系統之安裝狀態之一例之圖。
圖27為本發明之記憶體系統之安裝狀態之一例之圖。
圖28為本發明之記憶體系統之安裝狀態之一例之圖。
圖29為本發明之記憶體系統之安裝狀態之一例之圖。
圖30為本發明之記憶體系統之安裝狀態之一例之圖。
圖31為利用本發明之記憶體系統的行動電話之構成
例方塊圖。
圖32為利用本發明之記憶體系統的行動電話之構成例方塊圖。
圖33為行動電話使用之習知記憶體構成例方塊圖。
CPU_CHIP...資訊處理裝置
CPU...資訊處理裝置
MSM...記憶體模組
NRC...NOR快閃控制器
NDC...NAND快閃控制器
SDC...DRAM控制器
NOR IF...NOR介面
NAND IF1、NAND IF2...NAND介面
SDRAMIF2...SDRAM介面
NRIF...NOR介面電路
NDIF...NAND介面電路
CT_CHIP...控制電路
REG...暫存器方塊
DSTR...位址轉換電路
L2Cache...快取記憶體
PL2A...快取記憶體
PL2B...快取記憶體
PREF...預擷取控制電路
PL2Hit...命中(hit)判斷電路
L3Hit...命中判斷電路
PRECT...先行讀出指示電路
FLCT...快閃控制電路
OSC...時脈控制電路
MMG...記憶體位址管理電路
ARB...存取調停電路
RWCL...控制電路
FLSP...快閃錯誤控制電路
ECC...錯誤檢測訂正電路
BUF...緩衝器電路
REF...代替處理電路
WLV...寫入次數平均化電路
FLASH_CHIP...快閃記憶體
FCNT...控制電路
DREG...資料緩衝器
MARY...記憶格陣列
DRAM_CHIP...動態隨機存取記憶體
CLK...時脈信號
Wait...Wait信號
PCMP...初期動作結束信號

Claims (18)

  1. 一種記憶體模組,係包含:非揮發性記憶體,快取記憶體,及在上述非揮發性記憶體與上述快取記憶體之間進行存取的控制電路者;其特徵為具有:第1非揮發性記憶體介面,進行自上述記憶體模組外部至快取記憶體之存取;及第2非揮發性記憶體介面,進行對上述非揮發性記憶體之存取;進行對上述第1非揮發性記憶體介面之存取時,保存於上述非揮發性記憶體之資料,係經由上述快取記憶體而由上述第1非揮發性記憶體介面被輸出;在資訊處理裝置進行對第2非揮發性記憶體介面之存取時,保存於上述非揮發性記憶體之資料,係不經由上述快取記憶體,而由上述第2非揮發性記憶體介面被輸出。
  2. 如申請專利範圍第1項之記憶體模組,其中,電源投入後立即將上述非揮發性記憶體之特定位址區域之資料傳送至快取記憶體。
  3. 如申請專利範圍第1項之記憶體模組,其中,自上述第1非揮發性記憶體介面至非揮發性記憶體之讀出存取,係經由上述快取記憶體進行,來自上述第2非揮發性記憶體介面之存取,係不經由上述快取記憶體,而對非揮發性記憶體進行存取。
  4. 如申請專利範圍第1項之記憶體模組,其中,自上述非揮發性記憶體至上述快取記憶體之間之資料傳送,係藉由來自上述第1非揮發性記憶體介面之存取而 進行。
  5. 如申請專利範圍第1項之記憶體模組,其中,自上述非揮發性記憶體至上述快取記憶體之資料傳送及自上述非揮發性記憶體至上述第2非揮發性記憶體介面之資料傳送,係傳送錯誤訂正後之資料。
  6. 如申請專利範圍第1項之記憶體模組,其中,對上述非揮發性記憶體之資料傳送,係進行位址代替處理。
  7. 如申請專利範圍第1項之記憶體模組,其中,於上述非揮發性記憶體保持起動程式。
  8. 如申請專利範圍第1項之記憶體模組,其中,傳送範圍資料被保持於上述非揮發性記憶體,該傳送範圍資料用於表示自上述非揮發性記憶體至上述快取記憶體之於動作電源投入初期被傳送的資料之範圍。
  9. 如申請專利範圍第2項之記憶體模組,其中,用於表示上述非揮發性記憶體之特定位址區域之範圍的傳送範圍資料,係被保持於上述非揮發性記憶體。
  10. 如申請專利範圍第1項之記憶體模組,其中,上述第1非揮發性記憶體介面對快取記憶體之讀出存取,上述第2非揮發性記憶體介面對非揮發性記憶體之存取,及動態隨機存取記憶體介面對動態隨機存取記憶體之存取,係可以同時進行。
  11. 如申請專利範圍第1項之記憶體模組,其中,將上述記憶體模組之上述第1非揮發性記憶體介面之 讀出存取而產生自快閃記憶體至上述快取記憶體之資料傳送設定為第1優先,將上述第2非揮發性記憶體介面之存取而產生之上述快閃記憶體與上述第2非揮發性記憶體介面之間之資料傳送設定為第2優先,將上述第1非揮發性記憶體介面之寫入存取而產生之資料傳送設定為第3優先。
  12. 如申請專利範圍第5項之記憶體模組,其中,來自上述快取記憶體之資料傳送,係進行錯誤確認。
  13. 如申請專利範圍第12項之記憶體模組,其中,於上述錯誤確認發現錯誤時,由上述非揮發性記憶體對上述快取記憶體傳送資料。
  14. 如申請專利範圍第1項之記憶體模組,其中,上述控制電路包含位址轉換電路,上述位址轉換電路,用於轉換由第1非揮發性記憶體介面輸入之位址,使用於上述快取記憶體之資料檢索。
  15. 如申請專利範圍第1項之記憶體模組,其中,另包含動態隨機存取記憶體,另具有動態隨機存取記憶體介面用於對動態隨機存取記憶體之存取。
  16. 如申請專利範圍第15項之記憶體模組,其中,來自上述動態隨機存取記憶體介面之存取,係不經由上述快取記憶體,而對動態隨機存取記憶體進行存取。
  17. 一種資訊機器,係由資訊處理裝置、記憶裝置、及輸出裝置構成;其特徵為: 上述記憶裝置係記憶體模組,其包含:非揮發性記憶體;快取記憶體;及在上述非揮發性記憶體與上述快取記憶體之間進行存取的控制電路;具有:由上述記憶體模組外部對快取記憶體進行存取的第1非揮發性記憶體介面;及對上述非揮發性記憶體進行存取的第2非揮發性記憶體介面。
  18. 一種資訊機器,係由資訊處理裝置、記憶裝置、及輸出裝置構成;其特徵為:上述記憶裝置係記憶體模組,其包含:非揮發性記憶體;快取記憶體;在上述非揮發性記憶體與上述快取記憶體之間進行存取的控制電路;及隨機存取記憶體;具有:由上述記憶體模組外部對快取記憶體進行存取的第1非揮發性記憶體介面;對上述非揮發性記憶體進行存取的第2非揮發性記憶體介面;及對隨機存取記憶體進行存取的隨機存取記憶體介面。
TW095115925A 2005-05-20 2006-05-04 Memory modules, and information machines TWI418981B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005147957A JP2006323739A (ja) 2005-05-20 2005-05-20 メモリモジュール、メモリシステム、及び情報機器

Publications (2)

Publication Number Publication Date
TW200710655A TW200710655A (en) 2007-03-16
TWI418981B true TWI418981B (zh) 2013-12-11

Family

ID=37425248

Family Applications (1)

Application Number Title Priority Date Filing Date
TW095115925A TWI418981B (zh) 2005-05-20 2006-05-04 Memory modules, and information machines

Country Status (5)

Country Link
US (3) US8028119B2 (zh)
JP (1) JP2006323739A (zh)
KR (2) KR101269317B1 (zh)
CN (1) CN1866223A (zh)
TW (1) TWI418981B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11972827B2 (en) 2021-08-27 2024-04-30 Winbond Electronics Corp. Semiconductor storage device and reading method

Families Citing this family (110)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7631245B2 (en) 2005-09-26 2009-12-08 Sandisk Il Ltd. NAND flash memory controller exporting a NAND interface
US8291295B2 (en) 2005-09-26 2012-10-16 Sandisk Il Ltd. NAND flash memory controller exporting a NAND interface
JP5065618B2 (ja) * 2006-05-16 2012-11-07 株式会社日立製作所 メモリモジュール
US8003972B2 (en) 2006-08-30 2011-08-23 Micron Technology, Inc. Bottom electrode geometry for phase change memory
US8745315B2 (en) * 2006-11-06 2014-06-03 Rambus Inc. Memory Systems and methods supporting volatile and wear-leveled nonvolatile physical memory
CN100474271C (zh) * 2006-12-15 2009-04-01 华为技术有限公司 一种多级缓冲的存储系统和方法
JP5137002B2 (ja) 2007-01-25 2013-02-06 株式会社メガチップス メモリコントローラ
US7865674B2 (en) 2007-08-31 2011-01-04 International Business Machines Corporation System for enhancing the memory bandwidth available through a memory module
US8086936B2 (en) 2007-08-31 2011-12-27 International Business Machines Corporation Performing error correction at a memory device level that is transparent to a memory channel
US7818497B2 (en) 2007-08-31 2010-10-19 International Business Machines Corporation Buffered memory module supporting two independent memory channels
US7899983B2 (en) 2007-08-31 2011-03-01 International Business Machines Corporation Buffered memory module supporting double the memory device data width in the same physical space as a conventional memory module
US7584308B2 (en) * 2007-08-31 2009-09-01 International Business Machines Corporation System for supporting partial cache line write operations to a memory module to reduce write data traffic on a memory channel
US7840748B2 (en) 2007-08-31 2010-11-23 International Business Machines Corporation Buffered memory module with multiple memory device data interface ports supporting double the memory capacity
US7861014B2 (en) 2007-08-31 2010-12-28 International Business Machines Corporation System for supporting partial cache line read operations to a memory module to reduce read data traffic on a memory channel
US8082482B2 (en) 2007-08-31 2011-12-20 International Business Machines Corporation System for performing error correction operations in a memory hub device of a memory module
US7558887B2 (en) * 2007-09-05 2009-07-07 International Business Machines Corporation Method for supporting partial cache line read and write operations to a memory module to reduce read and write data traffic on a memory channel
US8019919B2 (en) 2007-09-05 2011-09-13 International Business Machines Corporation Method for enhancing the memory bandwidth available through a memory module
US8209465B2 (en) 2007-10-30 2012-06-26 Hagiwara Sys-Com Co., Ltd. Data writing method
JP4315461B2 (ja) 2007-10-30 2009-08-19 株式会社ハギワラシスコム ソリッドステートドライブ及びデータ書き込み方法
TW200921384A (en) * 2007-11-15 2009-05-16 Genesys Logic Inc NOR interface flash memory device and access method thereof
US7930469B2 (en) 2008-01-24 2011-04-19 International Business Machines Corporation System to provide memory system power reduction without reducing overall memory system performance
US7925824B2 (en) 2008-01-24 2011-04-12 International Business Machines Corporation System to reduce latency by running a memory channel frequency fully asynchronous from a memory device frequency
US7925826B2 (en) 2008-01-24 2011-04-12 International Business Machines Corporation System to increase the overall bandwidth of a memory channel by allowing the memory channel to operate at a frequency independent from a memory device frequency
US7925825B2 (en) 2008-01-24 2011-04-12 International Business Machines Corporation System to support a full asynchronous interface within a memory hub device
US7930470B2 (en) 2008-01-24 2011-04-19 International Business Machines Corporation System to enable a memory hub device to manage thermal conditions at a memory device level transparent to a memory controller
US8140936B2 (en) 2008-01-24 2012-03-20 International Business Machines Corporation System for a combined error correction code and cyclic redundancy check code for a memory channel
US7770077B2 (en) 2008-01-24 2010-08-03 International Business Machines Corporation Using cache that is embedded in a memory hub to replace failed memory cells in a memory subsystem
JP4643667B2 (ja) 2008-03-01 2011-03-02 株式会社東芝 メモリシステム
US9594679B2 (en) * 2008-05-01 2017-03-14 Sandisk Il Ltd. Flash cache flushing method and system
KR101056560B1 (ko) * 2009-02-11 2011-08-11 (주)인디링스 고체 상태 디스크 시스템에서 버퍼 캐시의 프로그래밍 방법및 장치
WO2011062825A2 (en) 2009-11-20 2011-05-26 Rambus Inc. Bit-replacement technique for dram error correction
JP4936088B2 (ja) * 2010-03-15 2012-05-23 日本電気株式会社 ディスクアレイ装置、ディスクアレイシステム、及びキャッシュ制御方法
US8694737B2 (en) 2010-06-09 2014-04-08 Micron Technology, Inc. Persistent memory for processor main memory
US9448938B2 (en) * 2010-06-09 2016-09-20 Micron Technology, Inc. Cache coherence protocol for persistent memories
JP2012022479A (ja) * 2010-07-13 2012-02-02 Panasonic Corp マイクロコントローラ及びその制御方法
US8613074B2 (en) 2010-09-30 2013-12-17 Micron Technology, Inc. Security protection for memory content of processor main memory
JP2012133416A (ja) 2010-12-17 2012-07-12 Toshiba Corp メモリシステム
JP5598337B2 (ja) * 2011-01-12 2014-10-01 ソニー株式会社 メモリアクセス制御回路、プリフェッチ回路、メモリ装置および情報処理システム
US8954948B2 (en) 2011-06-17 2015-02-10 Bae Systems Controls Inc. Obsolescence tolerant flash memory architecture and physical building block (PBB) implementation
US9411678B1 (en) 2012-08-01 2016-08-09 Rambus Inc. DRAM retention monitoring method for dynamic error correction
US9135172B2 (en) * 2012-08-02 2015-09-15 Qualcomm Incorporated Cache data migration in a multicore processing system
US9734921B2 (en) 2012-11-06 2017-08-15 Rambus Inc. Memory repair using external tags
US9378793B2 (en) * 2012-12-20 2016-06-28 Qualcomm Incorporated Integrated MRAM module
US8929146B1 (en) * 2013-07-26 2015-01-06 Avalanche Technology, Inc. Controller management of memory array of storage device using magnetic random access memory (MRAM)
US9252131B2 (en) * 2013-10-10 2016-02-02 Globalfoundries Inc. Chip stack cache extension with coherency
KR102149768B1 (ko) 2014-04-29 2020-08-31 삼성전자주식회사 불휘발성 메모리 시스템
US9678864B2 (en) * 2014-12-03 2017-06-13 Seagate Technology Llc Data reallocation upon detection of errors
JP2016167523A (ja) 2015-03-09 2016-09-15 株式会社東芝 半導体装置および電子機器
JP2016184306A (ja) * 2015-03-26 2016-10-20 ルネサスエレクトロニクス株式会社 保護支援システム、保護支援サーバー及び保護端末
US10073786B2 (en) 2015-05-28 2018-09-11 Micron Technology, Inc. Apparatuses and methods for compute enabled cache
US10078448B2 (en) 2015-07-08 2018-09-18 Samsung Electronics Co., Ltd. Electronic devices and memory management methods thereof
US10163479B2 (en) 2015-08-14 2018-12-25 Spin Transfer Technologies, Inc. Method and apparatus for bipolar memory write-verify
JP6424330B2 (ja) * 2015-10-13 2018-11-21 株式会社アクセル 情報処理装置、及び情報処理方法
KR102407437B1 (ko) 2015-12-30 2022-06-10 삼성전자주식회사 불휘발성 메모리 모듈을 포함하는 메모리 시스템 및 전자 장치
US9760147B2 (en) 2016-01-22 2017-09-12 Microsoft Technology Licensing, Llc Power control for use of volatile memory as non-volatile memory
US9746895B2 (en) * 2016-01-22 2017-08-29 Microsoft Technology Licensing, Llc Use of volatile memory as non-volatile memory
JP2018032256A (ja) 2016-08-25 2018-03-01 東芝メモリ株式会社 メモリシステムおよびプロセッサシステム
US10360964B2 (en) * 2016-09-27 2019-07-23 Spin Memory, Inc. Method of writing contents in memory during a power up sequence using a dynamic redundancy register in a memory device
US10446210B2 (en) 2016-09-27 2019-10-15 Spin Memory, Inc. Memory instruction pipeline with a pre-read stage for a write operation for reducing power consumption in a memory device that uses dynamic redundancy registers
US10192601B2 (en) 2016-09-27 2019-01-29 Spin Transfer Technologies, Inc. Memory instruction pipeline with an additional write stage in a memory device that uses dynamic redundancy registers
US10192602B2 (en) 2016-09-27 2019-01-29 Spin Transfer Technologies, Inc. Smart cache design to prevent overflow for a memory device with a dynamic redundancy register
US10628316B2 (en) 2016-09-27 2020-04-21 Spin Memory, Inc. Memory device with a plurality of memory banks where each memory bank is associated with a corresponding memory instruction pipeline and a dynamic redundancy register
US10818331B2 (en) 2016-09-27 2020-10-27 Spin Memory, Inc. Multi-chip module for MRAM devices with levels of dynamic redundancy registers
US10437491B2 (en) * 2016-09-27 2019-10-08 Spin Memory, Inc. Method of processing incomplete memory operations in a memory device during a power up sequence and a power down sequence using a dynamic redundancy register
US10366774B2 (en) 2016-09-27 2019-07-30 Spin Memory, Inc. Device with dynamic redundancy registers
US10437723B2 (en) 2016-09-27 2019-10-08 Spin Memory, Inc. Method of flushing the contents of a dynamic redundancy register to a secure storage area during a power down in a memory device
US10460781B2 (en) 2016-09-27 2019-10-29 Spin Memory, Inc. Memory device with a dual Y-multiplexer structure for performing two simultaneous operations on the same row of a memory bank
US10546625B2 (en) 2016-09-27 2020-01-28 Spin Memory, Inc. Method of optimizing write voltage based on error buffer occupancy
JP6709180B2 (ja) * 2017-02-28 2020-06-10 キオクシア株式会社 メモリシステムおよび制御方法
KR20190043043A (ko) * 2017-10-17 2019-04-25 에스케이하이닉스 주식회사 전자장치
US10529439B2 (en) 2017-10-24 2020-01-07 Spin Memory, Inc. On-the-fly bit failure detection and bit redundancy remapping techniques to correct for fixed bit defects
US10481976B2 (en) 2017-10-24 2019-11-19 Spin Memory, Inc. Forcing bits as bad to widen the window between the distributions of acceptable high and low resistive bits thereby lowering the margin and increasing the speed of the sense amplifiers
US10489245B2 (en) 2017-10-24 2019-11-26 Spin Memory, Inc. Forcing stuck bits, waterfall bits, shunt bits and low TMR bits to short during testing and using on-the-fly bit failure detection and bit redundancy remapping techniques to correct them
US10656994B2 (en) 2017-10-24 2020-05-19 Spin Memory, Inc. Over-voltage write operation of tunnel magnet-resistance (“TMR”) memory device and correcting failure bits therefrom by using on-the-fly bit failure detection and bit redundancy remapping techniques
CN107832016A (zh) * 2017-11-13 2018-03-23 郑州云海信息技术有限公司 一种读干扰优化方法及装置
WO2019133213A1 (en) * 2017-12-27 2019-07-04 Spin Transfer Technologies, Inc. A method of processing incompleted memory operations in a memory device during a power up sequence and a power down sequence using a dynamic redundancy register
US10424726B2 (en) 2017-12-28 2019-09-24 Spin Memory, Inc. Process for improving photoresist pillar adhesion during MRAM fabrication
US10360962B1 (en) 2017-12-28 2019-07-23 Spin Memory, Inc. Memory array with individually trimmable sense amplifiers
US10395712B2 (en) 2017-12-28 2019-08-27 Spin Memory, Inc. Memory array with horizontal source line and sacrificial bitline per virtual source
US10395711B2 (en) 2017-12-28 2019-08-27 Spin Memory, Inc. Perpendicular source and bit lines for an MRAM array
US10811594B2 (en) 2017-12-28 2020-10-20 Spin Memory, Inc. Process for hard mask development for MRAM pillar formation using photolithography
US10891997B2 (en) 2017-12-28 2021-01-12 Spin Memory, Inc. Memory array with horizontal source line and a virtual source line
US10886330B2 (en) 2017-12-29 2021-01-05 Spin Memory, Inc. Memory device having overlapping magnetic tunnel junctions in compliance with a reference pitch
US10546624B2 (en) 2017-12-29 2020-01-28 Spin Memory, Inc. Multi-port random access memory
US10840436B2 (en) 2017-12-29 2020-11-17 Spin Memory, Inc. Perpendicular magnetic anisotropy interface tunnel junction devices and methods of manufacture
US10840439B2 (en) 2017-12-29 2020-11-17 Spin Memory, Inc. Magnetic tunnel junction (MTJ) fabrication methods and systems
US10367139B2 (en) 2017-12-29 2019-07-30 Spin Memory, Inc. Methods of manufacturing magnetic tunnel junction devices
US10424723B2 (en) 2017-12-29 2019-09-24 Spin Memory, Inc. Magnetic tunnel junction devices including an optimization layer
US10784439B2 (en) 2017-12-29 2020-09-22 Spin Memory, Inc. Precessional spin current magnetic tunnel junction devices and methods of manufacture
US10438996B2 (en) 2018-01-08 2019-10-08 Spin Memory, Inc. Methods of fabricating magnetic tunnel junctions integrated with selectors
US10438995B2 (en) 2018-01-08 2019-10-08 Spin Memory, Inc. Devices including magnetic tunnel junctions integrated with selectors
US10446744B2 (en) 2018-03-08 2019-10-15 Spin Memory, Inc. Magnetic tunnel junction wafer adaptor used in magnetic annealing furnace and method of using the same
US11107974B2 (en) 2018-03-23 2021-08-31 Spin Memory, Inc. Magnetic tunnel junction devices including a free magnetic trench layer and a planar reference magnetic layer
US20190296220A1 (en) 2018-03-23 2019-09-26 Spin Transfer Technologies, Inc. Magnetic Tunnel Junction Devices Including an Annular Free Magnetic Layer and a Planar Reference Magnetic Layer
US10784437B2 (en) 2018-03-23 2020-09-22 Spin Memory, Inc. Three-dimensional arrays with MTJ devices including a free magnetic trench layer and a planar reference magnetic layer
US11107978B2 (en) 2018-03-23 2021-08-31 Spin Memory, Inc. Methods of manufacturing three-dimensional arrays with MTJ devices including a free magnetic trench layer and a planar reference magnetic layer
US10411185B1 (en) 2018-05-30 2019-09-10 Spin Memory, Inc. Process for creating a high density magnetic tunnel junction array test platform
US11151006B2 (en) * 2018-07-02 2021-10-19 Samsung Electronics Co., Ltd. HBM RAS cache architecture
US10600478B2 (en) 2018-07-06 2020-03-24 Spin Memory, Inc. Multi-bit cell read-out techniques for MRAM cells with mixed pinned magnetization orientations
US10559338B2 (en) 2018-07-06 2020-02-11 Spin Memory, Inc. Multi-bit cell read-out techniques
US10593396B2 (en) 2018-07-06 2020-03-17 Spin Memory, Inc. Multi-bit cell read-out techniques for MRAM cells with mixed pinned magnetization orientations
US10692569B2 (en) 2018-07-06 2020-06-23 Spin Memory, Inc. Read-out techniques for multi-bit cells
US10650875B2 (en) 2018-08-21 2020-05-12 Spin Memory, Inc. System for a wide temperature range nonvolatile memory
US10699761B2 (en) 2018-09-18 2020-06-30 Spin Memory, Inc. Word line decoder memory architecture
US11621293B2 (en) 2018-10-01 2023-04-04 Integrated Silicon Solution, (Cayman) Inc. Multi terminal device stack systems and methods
US10971680B2 (en) 2018-10-01 2021-04-06 Spin Memory, Inc. Multi terminal device stack formation methods
US11107979B2 (en) 2018-12-28 2021-08-31 Spin Memory, Inc. Patterned silicide structures and methods of manufacture
CN111045960B (zh) * 2019-11-21 2023-06-13 中国航空工业集团公司西安航空计算技术研究所 一种多像素格式存储的Cache电路
TWI765282B (zh) * 2020-06-19 2022-05-21 大陸商北京集創北方科技股份有限公司 觸控顯示晶片及資訊處理裝置
WO2024043267A1 (ja) * 2022-08-25 2024-02-29 日東電工株式会社 データ処理装置および生体センサ

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5724550A (en) * 1994-11-14 1998-03-03 Compaq Computer Corporation Using an address pin as a snoop invalidate signal during snoop cycles
TW403871B (en) * 1993-04-08 2000-09-01 Hitachi Ltd Control method of flash memory and its application on data process device
TW495987B (en) * 1999-02-01 2002-07-21 Hitachi Ltd Semiconductor integrated circuit and non-volatile memory device
US20050060486A1 (en) * 2003-09-16 2005-03-17 Samsung Electronics Co., Ltd. Dual buffer memory system for reducing data transmission time and control method thereof

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05299616A (ja) 1992-04-16 1993-11-12 Hitachi Ltd 半導体記憶装置
JPH07146820A (ja) * 1993-04-08 1995-06-06 Hitachi Ltd フラッシュメモリの制御方法及び、それを用いた情報処理装置
KR20000046167A (ko) * 1998-12-31 2000-07-25 구자홍 메모리 제어장치 및 방법
JP3807582B2 (ja) * 1999-02-18 2006-08-09 株式会社ルネサステクノロジ 情報処理装置及び半導体装置
JP2001005723A (ja) 1999-06-21 2001-01-12 Mitsubishi Electric Corp 半導体記憶装置およびそれを用いたメモリシステム
US6815329B2 (en) * 2000-02-08 2004-11-09 International Business Machines Corporation Multilayer interconnect structure containing air gaps and method for making
JP4049297B2 (ja) 2001-06-11 2008-02-20 株式会社ルネサステクノロジ 半導体記憶装置
JP4059002B2 (ja) * 2001-06-13 2008-03-12 株式会社日立製作所 メモリ装置
US7234052B2 (en) * 2002-03-08 2007-06-19 Samsung Electronics Co., Ltd System boot using NAND flash memory and method thereof
US7389384B2 (en) * 2002-04-30 2008-06-17 Dsp Group Switzerland Ag Apparatus and method for fetching data from memory
US20030206442A1 (en) * 2002-05-02 2003-11-06 Jerry Tang Flash memory bridiging device, method and application system
JP2004348677A (ja) * 2003-05-26 2004-12-09 Sony Corp プログラムおよび情報処理方法
US7870342B2 (en) * 2003-07-24 2011-01-11 Marvell International Ltd. Line cache controller with lookahead
US7660945B1 (en) * 2004-03-09 2010-02-09 Seagate Technology, Llc Methods and structure for limiting storage device write caching
JP2008276646A (ja) * 2007-05-02 2008-11-13 Hitachi Ltd ストレージ装置及びストレージ装置におけるデータの管理方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW403871B (en) * 1993-04-08 2000-09-01 Hitachi Ltd Control method of flash memory and its application on data process device
US5724550A (en) * 1994-11-14 1998-03-03 Compaq Computer Corporation Using an address pin as a snoop invalidate signal during snoop cycles
TW495987B (en) * 1999-02-01 2002-07-21 Hitachi Ltd Semiconductor integrated circuit and non-volatile memory device
US20050060486A1 (en) * 2003-09-16 2005-03-17 Samsung Electronics Co., Ltd. Dual buffer memory system for reducing data transmission time and control method thereof

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11972827B2 (en) 2021-08-27 2024-04-30 Winbond Electronics Corp. Semiconductor storage device and reading method

Also Published As

Publication number Publication date
JP2006323739A (ja) 2006-11-30
CN1866223A (zh) 2006-11-22
KR101310481B1 (ko) 2013-09-24
US20130124790A1 (en) 2013-05-16
US20060271755A1 (en) 2006-11-30
US8028119B2 (en) 2011-09-27
TW200710655A (en) 2007-03-16
US20120030403A1 (en) 2012-02-02
KR101269317B1 (ko) 2013-05-29
KR20120127368A (ko) 2012-11-21
KR20060120501A (ko) 2006-11-27

Similar Documents

Publication Publication Date Title
TWI418981B (zh) Memory modules, and information machines
JP5138869B2 (ja) メモリモジュール及びメモリシステム
KR100990299B1 (ko) 컨트롤러
KR102506392B1 (ko) 하이브리드 메모리에서 쓰기 및 플러시 지원을 위한 시스템 및 방법
US7136978B2 (en) System and method for using dynamic random access memory and flash memory
JP2006323739A5 (zh)
JP4463503B2 (ja) メモリモジュール及びメモリシステム
JP5391370B2 (ja) メモリモジュールとコントローラ
KR100958767B1 (ko) 메모리 모듈
JP2013137841A (ja) メモリシステム
JP2010225161A (ja) 半導体記憶装置
JP4766526B2 (ja) メモリモジュール

Legal Events

Date Code Title Description
MM4A Annulment or lapse of patent due to non-payment of fees