TWI692689B - 記憶卡控制器、記憶卡、使用於記憶卡控制器的方法以及連接至記憶卡的電子裝置 - Google Patents

記憶卡控制器、記憶卡、使用於記憶卡控制器的方法以及連接至記憶卡的電子裝置 Download PDF

Info

Publication number
TWI692689B
TWI692689B TW107146596A TW107146596A TWI692689B TW I692689 B TWI692689 B TW I692689B TW 107146596 A TW107146596 A TW 107146596A TW 107146596 A TW107146596 A TW 107146596A TW I692689 B TWI692689 B TW I692689B
Authority
TW
Taiwan
Prior art keywords
card
memory card
specific data
capacity
host
Prior art date
Application number
TW107146596A
Other languages
English (en)
Other versions
TW201931125A (zh
Inventor
謝兆魁
Original Assignee
慧榮科技股份有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 慧榮科技股份有限公司 filed Critical 慧榮科技股份有限公司
Publication of TW201931125A publication Critical patent/TW201931125A/zh
Application granted granted Critical
Publication of TWI692689B publication Critical patent/TWI692689B/zh

Links

Images

Classifications

    • 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
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/06Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication
    • G06F12/0615Address space extension
    • G06F12/0623Address space extension for memory modules
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • G06F3/0607Improving or facilitating administration, e.g. storage management by facilitating the process of upgrading existing storage systems, e.g. for improving compatibility between host and storage device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/0644Management of space entities, e.g. partitions, extents, pools
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0658Controller construction arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/08Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers from or to individual record carriers, e.g. punched card, memory card, integrated circuit [IC] card or smart card
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/10Programming or data input circuits
    • G11C16/14Circuits for erasing electrically, e.g. erase voltage switching circuits
    • G11C16/16Circuits for erasing electrically, e.g. erase voltage switching circuits for erasing blocks, e.g. arrays, words, groups
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/26Sensing or reading circuits; Data output circuits
    • 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/1051Data output circuits, e.g. read-out amplifiers, data output buffers, data output registers, data output level conversion circuits
    • G11C7/1063Control signal output circuits, e.g. status or busy flags, feedback command signals
    • 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/1078Data input circuits, e.g. write amplifiers, data input buffers, data input registers, data input level conversion circuits
    • G11C7/109Control signal input circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/20Memory cell initialisation circuits, e.g. when powering up or down, memory clear, latent image memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/10Providing a specific technical effect
    • G06F2212/1004Compatibility, e.g. with legacy hardware
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/10Providing a specific technical effect
    • G06F2212/1056Simplification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/72Details relating to flash memory management
    • G06F2212/7201Logical to physical mapping or translation of blocks or pages
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/72Details relating to flash memory management
    • G06F2212/7204Capacity control, e.g. partitioning, end-of-life degradation
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Read Only Memory (AREA)
  • Memory System (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Storage Device Security (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

一種記憶卡控制器,耦接至一主機,該記憶卡控制器包括一處理電路,該處理電路從記憶卡之快閃記憶體中讀出一卡特定資以儲存該卡特定資料於一暫存器中,該卡特定資料中有標示一乘數參數及一基本容量,以及用以發送該卡特定資料至該主機,令該主機根據該卡特定資料中所標示之該乘數參數及該基本容量來計算得到記憶卡之一最大容量。

Description

記憶卡控制器、記憶卡、使用於記憶卡控制器的方法以及連接至記憶卡的電子裝置
本案係有關於一種記憶卡通訊機制,特別有關於快閃記憶體控制器、記憶卡、使用於快閃記憶體控制器的方法以及連接至記憶卡的主機。
一般來說,目前現有的快閃記憶體與主機之間的通訊僅支援至多32位元長度之邏輯位址空間的定址,主機發送一命令時所傳入的位址參數至多僅能傳入32位元長度之邏輯位址,使現有快閃記憶體的最大容量受限於2TB,因此,現有安全數位卡一般係回報最大容量2TB給主機。
然而,隨著科技產品與應用的進展,例如手機錄影要求的畫質愈來愈高,使得最大容量為2TB的快閃記憶體對於未來的應用很可能是不夠的,因此,對於容量超過2TB的快閃記憶體來說,極需要一種新穎的通訊機制,令安全數位卡能夠回報超過2TB容量給主機以及可支援超過32位元長度之邏輯位址空間的定址能力。
因此,本案的目的之一在於提供一種快閃記憶體控制器、記憶卡裝置、使用於快閃記憶體控制器的方法以及連接至記憶卡裝置的主機,支援新穎的通訊機制,令記憶卡裝置能夠回報超過2TB容量給主機以及可支援超過32位元長度之邏輯位址空間的定址能力,同時能夠兼容現有的通訊機制,記憶卡裝置也能夠回報小於2TB容量給主機以及可支援現有32位元長度之邏輯位址空間的定址能力。
根據本發明的實施例,其係揭露一種記憶卡控制器,用以通過一外部訊號埠耦接至一主機,以及用以通過一記憶卡之一內部連接而耦接於一快閃記憶體,以及該記憶卡控制器包含一處理電路,該處理電路,用以從該快閃記憶體中讀出一卡特定資以儲存該卡特定資料於一暫存器中,該卡特定資料中有標示一乘數參數及一基本容量,以及,如果該處理電路接收到該主機之一處理器通過一記憶卡驅動電路所發送之一要求命令CMD9,則該處理電路係通過該外部訊號埠以及該記憶卡驅動電路發送該卡特定資料至該主機之該處理器,令該主機之該處理器可根據該卡特定資料中所標示之該乘數參數及該基本容量來計算得到該記憶卡之一最大容量;其中所標示之該基本容量係採用該卡特定資料中具有22個位元的C_size欄位來表示,以及所標示之該乘數參數係採用該卡特定資料中N個容量標示位元來表示0至M的數值範圍,以表示2的0次方至2的M次方的乘數範圍,M為大於1的正整數。
根據本發明的實施例,另揭露一種記憶卡,記憶卡包含上述之記憶卡控制器以及一快閃記憶體。
根據本發明的實施例,另揭露一種使用於一記憶卡控制器的方法,該記憶卡控制器通過一外部訊號埠耦接至一主機,以及該記憶卡控制器通過一記憶卡之一內部連接而耦接於一快閃記憶體,該方法包含:從該快閃記憶體中讀出一卡特定資以儲存該卡特定資料於該記憶卡控制器之一暫存器中,該卡特定資料中有標示一乘數參數及一基本容量;以及如果該記憶卡控制器接收到該主機之一處理器通過一記憶卡驅動電路及該外部連接埠所發送之一要求命令CMD9,則通過該外部訊號埠以及該記憶卡驅動電路發送該卡特定資料至該主機之該處理器,令該主機之該處理器可根據該卡特定資料中所標示之該乘數參數及該基本容量來計算得到該記憶卡之一最大容量;其中所標示之該基本容量係採用該卡特定資料中具有22個位元的C_size欄位來表示,以及所標示之該乘數參數係採用該卡特定資料中N個容量標示位元來表示0至M的數值範圍,以表示2的0次方至2的M次方的乘數範圍,M為大於1的正整數。
根據本發明的實施例,另揭露一種電子裝置,電子裝置用以通過一外部訊號埠連接至一記憶卡,以及該電子裝置包含一記憶卡驅動電路及一處理器,記憶卡驅動電路用以驅動該記憶卡;處理器耦接至該記憶卡驅動電路,用以通過該記憶卡驅動電路發送一要求命令CMD9至該記憶卡之一記憶卡控制器,接收該記憶卡之該記憶卡控制器因應於該要求命令CMD9所發送之一卡特定資料、分析讀出該卡特定資料中所標示之一乘數參數及一基本容量、以及根據該卡特定資料中所標示之該乘數參數及該基本容量來計算得到該記憶卡的一最大容量;其中所標示之該基本容量係採用該卡特定資料中具有22個位元的C_size欄位來表示,以及所標示之該乘數參數係採用該卡特定資料中N個容量標示位元來表示0至M的數值範圍,以表示2的0次方至2的M次方的乘數範圍,M為大於1的正整數。
根據本發明的實施例,另揭露一種使用於一電子裝置之方法,該電子裝置用以通過一外部訊號埠連接至一記憶卡,該電子裝置具有一記憶卡驅動電路以驅動該記憶卡以及一處理器,以及該方法包含:使用該記憶卡驅動電路以驅動該記憶卡;通過該記憶卡驅動電路發送一要求命令CMD9至該記憶卡之一記憶卡控制器;接收該記憶卡之該記憶卡控制器因應於該要求命令CMD9所發送之一卡特定資料;分析讀出該卡特定資料中所標示之一乘數參數及一基本容量;以及根據該卡特定資料中所標示之該乘數參數及該基本容量來計算得到該記憶卡的一最大容量;其中所標示之該基本容量係採用該卡特定資料中具有22個位元的C_size欄位來表示,以及所標示之該乘數參數係採用該卡特定資料中N個容量標示位元來表示0至M的數值範圍,以表示2的0次方至2的M次方的乘數範圍,M為大於1的正整數。
請參照第1圖,第1圖為本發明實施例之記憶卡裝置100與電子裝置105(例如作為主機使用)的方塊示意圖。記憶卡裝置100例如通過其特定通訊介面的至少一第一外部訊號埠(例如USB介面,但不限定)連接至主機105的至少一第二外部訊號埠而連接至主機105的記憶卡驅動電路1051,記憶卡裝置100包含有一快閃記憶體110(包括一或多個快閃記憶體晶片)與一快閃記憶體控制器120,快閃記憶體控制器120連接至該至少一第一外部訊號埠,且快閃記憶體控制器120與快閃記憶體110之間通過一內部匯流排而進行資料傳輸,主機105包含有記憶卡驅動電路1051、一顯示器1052及一處理器1053,控制器120至少包含一處理電路1201及一暫存器115。記憶卡裝置100例如是一安全數位卡(Secure Digital Memory Card),例如SDHC卡、SDXC卡、SDUC卡、PCIe SD卡或NVMe SD卡等等,而記憶卡驅動電路1051例如是一安全數位卡驅動電路;應注意,記憶卡裝置100並未限定於安全數位卡,在其他實施例亦可以是其他不同類型的記憶卡。主機105的處理器1053與控制器120的處理電路1201進行訊號通訊(例如控制命令的發送與接收)時會通過安全數位卡驅動電路1051、該至少一第二外部訊號埠、該至少一第一外部訊號埠,此外,記憶卡控制器120係通過該內部匯流排來對該快閃記憶體110進行資料操作的處理。
當記憶卡裝置100被供電時,控制器120可通過該內部匯流排從快閃記憶體110中讀出快閃記憶體110的基本特性資訊,並將該資訊儲存於暫存器115中,該基本特性資訊例如是卡特定資料(Card Specific Data, CSD),控制器120的處理電路1201可以偵測檢查快閃記憶體110本身的特性並寫入其基本特性資訊於暫存器115中。
主機105於初始化以及與安全數位卡100進行簡單的溝通時,處理器1053會寫入命令至主機的暫存器(未顯示於第1圖)中,之後由安全數位卡驅動電路1051從主機的暫存器讀出命令並發送一要求命令並依序通過該至少一第二外部訊號埠、該至少一第一外部訊號埠而傳送至安全數位卡100的控制器120,以要求安全數位卡100回報資訊,例如發送一要求命令CMD9至安全數位卡100以求要回報該卡特定資料,安全數位卡100的控制器120於接收到要求命令CMD9之後,會輸出並回報暫存器115所儲存之卡特定資料CSD至主機105,控制器120會先從暫存器115取得卡特定資料CSD,之後再依序通過該至少一第一外部訊號埠、該至少一第二外部訊號埠與安全數位卡驅動電路1051而傳送該卡特定資料CSD至主機105的處理器1053,處理器1053可由該卡特定資料計算及/或得到目前這張快閃記憶體110的資訊。應注意,實作上,安全數位卡驅動電路1051係會與相應的驅動軟體搭配而實現發送命令及傳送資訊的功能。
卡特定資料CSD係由記憶卡製造商於量產安全數位卡時通過一開卡裝置載入一特定開卡程式所產生的,該特定開卡程式例如是由安全數位卡的控制器的製造商所提供,例如記憶卡製造商決定好快閃記憶體的類型及選定相應的控制器後,會通過使用控制器的製造商之特定開卡程式來開卡初始化該快閃記憶體,此時記憶卡製造商會決定出該張安全數位卡的最大容量,並將對應於該最大容量的卡特定資料CSD相當於燒錄一樣永久地寫入至快閃記憶體內,本案在於例如一快閃記憶體能夠支援到300TB的最大容量空間,如果記憶卡製造商生產的是具有2TB的安全數位卡,則可令其於被永久地寫入之卡特定資料CSD的一預定欄位標示出相應的資訊,另外,如果記憶卡製造商生產的是具有300TB的安全數位卡,則令其除了在該預定欄位標示出基本容量的相應資訊,另在卡特定資料CSD之其他閒置欄位標示出一額外的容量資訊,因此,將來要連接至該安全數位卡之用卡主機只要參照該兩者資料就可得知該安全數位卡具有300TB的最大容量。
在第一實施例,當於工廠量產安全數位卡100時,記憶卡製造商的開卡設備可以於安全數位卡100之該卡特定資料中標示出用以計算快閃記憶體110之最大容量的一乘數參數。在控制器120回報暫存器115所儲存之卡特定資料CSD至主機105之後,主機105的處理器1053可以由該卡特定資料得到記憶卡製造商所標示的基本容量的相應資訊及額外的容量資訊,計算得到目前這張安全數位卡100(即快閃記憶體110)的最大容量,使得快閃記憶體回報主機的容量上限可以盡量擴充而不受限於例如2TB的現有快閃記憶體最大容量。
以卡特定資料為例,卡特定資料資訊例如具有128個位元之資料結構[127:0],其中2個位元(例如[127:126])用來記錄這張快閃記憶體之版本資訊,22個位元(例如C_size欄位[69:48])用來記錄一張快閃記憶體的容量,C_size欄位於本實施例係當作一基本容量,該基本容量的最大值對應於32位元長度邏輯位址空間的最大容量上限。
然而,22個位元僅能夠表示出最大容量為2TB,無法表示超過2TB的容量,因此不合於目前使用,為了解決這個問題,本案的作法係於卡特定資料資訊中另外採用了N個位元來表示快閃記憶體最大容量的乘數參數,例如2的N次方之乘數,N例如是5,該N個位元可利用卡特定資料資訊中的5個原本作為保留位元(例如[75:71])的閒置位元來標示快閃記憶體最大容量參數,此後可稱為容量標示位元或是第一位元。5個位元可以表示從0至31的數值範圍,因此是從2的0次方至2的31次方的乘數範圍。該5個位元例如變動範圍從“00000”至“11111”以表示0到32的值,當表示為32的值時,搭配C_size欄位至多所表示出的基本容量2TB,可以表示支援64位元長度位址定址的容量空間大小。此外在其他實施例,也可以是取6個閒置位元例如[75:70]來作為容量標示位元,該6個位元的變動範圍例如從“000000”至“100000”以表示0到32的值,當表示為32的值時,搭配C_size欄位所表示出的容量2TB,也可以表示支援64位元長度位址定址的容量空間大小。應注意的是,本案並不限定N的個數,也並不限定乘數參數為2的N次方,在其他實施變型,乘數參數也可以是其他數值的N次方,例如4的N次方等等。
請參照第2圖,第2圖所繪示為主機105與安全數位卡100進行最大容量的溝通時於該特定通訊介面上的資料範例示意圖。如第2圖所示,主機105發送要求命令CMD9至安全數位卡100,接著安全數位卡100回報該卡特定資料CSD至主機105,其中2個位元為卡特定資料CSD的版本,此外,上述的5個容量標示位元可以是設置於C_size欄位之前的5個位元,然此並非是本案的限制。
記憶卡製造商的開卡設備可依據快閃記憶體110的最大容量是否超過一特定容量(例如32位元位址空間所對應的最大容量2TB)來設定卡特定資料CSD的版本資訊,例如,如果快閃記憶體110本身的最大容量就不超過2TB,則記憶卡製造商的開卡設備會設定卡特定資料CSD的版本資訊為舊的版本,以表示出目前這張快閃記憶體最多僅支持2TB容量,相容於現有的舊裝置,因此即便是具有新版本功能的安全數位卡亦可以被設定為舊版本而相容於僅具有舊版本驅動程式的主機;此外,舊版本驅動程式的主機也可以被更新為新版本。而如果快閃記憶體110的最大容量超過了2TB,則記憶卡製造商的開卡設備會設定卡特定資料CSD的版本資訊為新的版本,以表示出目前這張快閃記憶體可支持超過2TB容量。
因此,主機105的處理器1053於接收到控制器120所回報的卡特定資料CSD時可經過檢查該版本資訊來初步判斷目前這張快閃記憶體的最大容量是否超過例如32位元位址空間所對應的最大容量2TB,如果是舊版本,則處理器1053根據原先C_size欄位的22位元之值來判斷這張快閃記憶體的最大容量,而如果是新版本,則處理器1053除了參考C_size欄位的22位元之外另外會基於上述5個特定的容量標示位元所指出的乘數參數來計算其最大容量。
如上所述,當主機105接收到卡特定資料CSD時,處理器1053可參照C_size欄位的22個位元所代表的值以及上述5個容量標示位元所表示的值(乘數參數),來計算得到這張快閃記憶體110的最大容量,換言之,本案的安全數位卡100並非直接將最大容量告知主機105,而是通過於卡特定資料資訊的資料結構中標示出一快閃記憶體容量的乘數,令處理器1053自行計算得出快閃記憶體110的最大容量。舉例來說,請參考以下的表格,以下的表格為本案之卡特定資料CSD的幾種可能實施方式:
Figure 107146596-A0304-0001
如上所述,C_size的欄位所表示的是一基本的快閃記憶體容量資訊,例如其值可用於表示最多2TB大小的容量,於第一例子中,為了表示出該張快閃記憶體具有1.5TB的最大容量,記憶卡製造商的開卡設備可以設定C_size欄位的位元所代表之值以對應於1.5TB,並且設定N個容量標示位元所代表的值為0,即容量的乘數參數為20 =1,因此,主機的處理器1053在接收到該卡特定資料後可以計算得到快閃記憶體110的最大容量為1.5TB。
於一實施例中,為了表示出該張快閃記憶體具有3TB的最大容量,記憶卡製造商的開卡設備可以設定C_size欄位的位元所代表之值以對應於1.5TB,並且設定N個位元所代表的值為1,即容量的乘數參數為21 =2,因此,主機的處理器1053在接收到該卡特定資料後可以計算得到快閃記憶體110的最大容量為3TB。
於一實施例中,為了表示出該張快閃記憶體具有2TB的最大容量,記憶卡製造商的開卡設備可以設定C_size欄位的位元所代表之值以對應於2TB,並且設定N個容量標示位元所代表的值為0,即容量的乘數參數為20 =1,因此,主機的處理器1053在接收到該卡特定資料後可以計算得到快閃記憶體110的最大容量為2TB。
此外,其他實施例,記憶卡製造商的開卡設備也可以設定C_size欄位的位元所代表之值以對應於1TB,並且設定N個位元所代表的值為1,即容量的乘數參數為21 =2,因此,處理器1053在接收到該卡特定資料後可以計算得到快閃記憶體110的最大容量為2TB。也就是說,記憶卡製造商的開卡設備可以採用多種不同的設定方式來表達出相同的容量大小。
於一實施例中,為了表示出該張快閃記憶體具有4TB的最大容量,記憶卡製造商的開卡設備可以設定C_size欄位的位元所代表之值以對應於2TB,並且設定N個位元所代表的值為1,即容量的乘數參數為21 =2,因此,處理器1053在接收到該卡特定資料後可以計算得到快閃記憶體110的最大容量為4TB。
於一實施例中,為了表示出該張快閃記憶體具有16EB的最大容量,記憶卡製造商的開卡設備可以設定C_size的欄位的位元所代表之值以對應於2TB,並且設定N個位元所代表的值為23,即容量乘數參數為223 。因此,處理器1053在接收到該卡特定資料後可以計算得到快閃記憶體110的最大容量為16EB。
此外,為了表示出該張快閃記憶體具有2.5TB的最大容量大小,記憶卡製造商的開卡設備可以設定C_size欄位的位元所代表之值以對應於1.25TB,並且設定N個位元所代表的值為1,即容量乘數參數為21 ,因此,處理器1053在接收到該卡特定資料後可以計算得到快閃記憶體110的最大容量為2.5TB。
其他例子中,為了表示出該張快閃記憶體具有3TB的最大容量大小,記憶卡製造商的開卡設備可以設定C_size欄位的位元所代表之值以對應於1.5TB,並且設定N個位元所代表的值為1,即容量乘數參數為21 ,因此,處理器1053在接收到該卡特定資料後可以計算得到快閃記憶體110的最大容量為3TB。
另外,為了表示出該張快閃記憶體具有30TB的最大容量大小,記憶卡製造商的開卡設備可以設定C_size欄位的位元所代表之值以對應於1.875TB,並且設定N個位元所代表的值為4,即容量乘數參數為24 。因此,處理器1053在接收到該卡特定資料後可以計算得到快閃記憶體110的最大容量為30TB。
另外,為了表示出該張快閃記憶體具有300TB的最大容量大小,記憶卡製造商的開卡設備可以設定C_size欄位的位元所代表之值以對應於1.171875TB,並且設定N個位元所代表的值為8,即容量乘數參數為28 ,因此,處理器1053在接收到該卡特定資料後可以計算得到快閃記憶體110的最大容量為300TB。
另外,為了表示出該張快閃記憶體具有3000TB的最大容量大小,記憶卡製造商的開卡設備可以設定C_size欄位的位元所代表之值以對應於1.46484375TB,並且設定N個位元所代表的值為11,即容量乘數參數為211 ,因此,處理器1053在接收到該卡特定資料後可以計算得到快閃記憶體110的最大容量為3000TB。
本案通過於卡特定資料中採用並設定N個容量標示位元的欄位來設定出一2的N次方之容量乘數參數,可以大幅擴展了快閃記憶體的最大容量空間上限,相較於現有技術係採用C_size欄位來直接表示快閃記憶體的最大容量,目前現有技術僅能夠表示出2TB的最大容量空間上限,而本案除了可以擴展了快閃記憶體的最大容量空間上限,同時採用了某一數值之次方的乘數參數以避免採用過多的容量標示位元來實現,例如採用了5個容量標示位元,並搭配原本C_size的22個位元的欄位,即可以標示表達出支持16EB的最大容量空間上限。
再者,當主機105的處理器1053在接收到該卡特定資料並計算得到快閃記憶體110的最大容量之後,可以將計算的結果顯示於顯示器1052上,令使用者得知快閃記憶體110的最大容量。請參照第3圖,第3圖是本發明實施例主機之處理器1053將快閃記憶體110之最大容量的計算結果顯示於顯示器1052的示意圖,顯示器1052可顯示出目前這張快閃記憶體110的最大容量為465TB(超過2TB)、已使用空間為103TB以及可用的空間為362TB;需注意的是,上述數值及顯示的內容僅為一種可能的實施例,並非本案的限制。
再者,在本案的其他實施例,當主機105計算得知快閃記憶體110的最大容量後,處理器1053會根據其最大容量而控制安全數位卡驅動電路1051發送不同位元長度的邏輯位址並依序通過該至少一第二外部訊號埠、該至少一第一外部訊號埠而至安全數位卡100的控制器120,令安全數位卡100的控制器120將該邏輯位址轉換為實體位址後再根據實體位址並通過該內部匯流排來對快閃記憶體110進行對應的處理操作。例如在本實施例,如果最大容量不超過2TB,則主機105會由安全數位卡驅動電路1051發送32位元的邏輯位址並依序通過該至少一第二外部訊號埠、該至少一第一外部訊號埠而至安全數位卡100的控制器120,其中32位元長度的邏輯位址空間可以涵蓋2TB的資料容量大小,而如果最大容量超過2TB,則主機105會發送較長位元的邏輯位址(例如38位元的邏輯位址或64位元的邏輯位址等,依快閃記憶體110的最大容量而定)至安全數位卡100,以涵蓋超過2TB的資料容量大小。
對於32位元長度邏輯位址空間及較長位元長度邏輯位址空間(例如38位元或64位元)的定址相容性而言,本案不需要另外實現額外的接腳或連接埠,可採用舊有32位元長度邏輯位址空間的接腳或連接埠即可實現較長位元長度邏輯位址空間的定址,也就是,主機105可以通過舊有32位元長度邏輯位址空間的接腳或連接埠(亦即該至少一第二外部訊號埠、該至少一第一外部訊號埠)來發送帶有較長位元長度邏輯位址的多種不同的命令至安全數位卡100。
以下實施例,主機105的驅動電路1051係發送第一命令並傳入第一部份位址參數(最多可帶有32位元長度的位址參數),接著發送第二命令並傳入第二部份位址參數(最多可帶有32位元長度的位址參數),令安全數位卡100的控制器120的處理電路1201於接收到第一部份位址參數及第二部份位址參數後可以組合而得出較長位元長度的位址參數(比32位元長度長的位址),例如從兩個32位元的部份位址參數可以組合得到完整的64位元的位址參數,並根據第二命令的命令類型來進行命令序列的任務指派、資料單元寫入或讀取、抹除等操作。應注意的是,第一命令例如可採用原先安全數位卡規格中所制定為保留命令(reserved command)的命令來實現,例如CMD22、CMD31、CMD39、CMD41及CMD51等,此外,第一部份位址參數與第二部份位址參數並不限定必然等於32位元的位元長度,主機105的處理器1053可根據快閃記憶體110的實際最大容量來決定第一部份位址參數與第二部份位址參數的總位元長度,例如128TB的最大容量空間,則總位元長度會設定為38位元長度,其中例如第一部份位址參數指示出6位元長度,而第二部份位址參數指示出32位元長度,然此並非本案的限制。本案的第一部份位址參數與第二部份位址參數均是可變的。此外,本案所述的一個資料單元所指的可以是一個儲存頁的資料或一個區塊的資料,並無限制。
請參照第4圖,其所繪示為本案一實施例之主機105發送不同命令至安全數位卡100以進行不同位元長度邏輯位址的資料單元寫入的示意圖,如第4圖所示,對於發送帶有32位元長度邏輯位址的寫入命令至安全數位卡100,主機105例如由安全數位卡驅動電路1051發送命令CMD24同時並傳入32位元的位址參數(例如一個資料單元的邏輯位址)依序通過該至少一第二外部訊號埠、該至少一第一外部訊號埠而至安全數位卡100的控制器120,接著通過上述相同路徑發送一個資料單元的資料至安全數位卡100的控制器120,使得控制器120接收到該寫入命令及該資料單元之後通過該內部匯流排而寫入一個對應32位元長度邏輯位址的資料單元至快閃記憶體110。而對於發送帶有較長位元長度例如64位元長度邏輯位址的寫入命令至安全數位卡100,主機105例如由安全數位卡驅動電路1051先發送一個特定命令(例如第一命令CMD22,但非限定)同時並傳入第一部份位址參數(例如64位元長度邏輯位址中較高的32個位元(32 most significant bits),視為是第一32位元長度邏輯位址)依序通過該至少一第二外部訊號埠、該至少一第一外部訊號埠而至安全數位卡100的控制器120,接著再發送命令CMD24至安全數位卡100同時並傳入第二部份位址參數(例如64位元長度邏輯位址中較低的32個位元(32 least significant bits),視為是第二32位元長度邏輯位址)依序通過該至少一第二外部訊號埠、該至少一第一外部訊號埠而至安全數位卡100的控制器120,接著通過上述相同路徑再發送一個資料單元的資料至安全數位卡100的控制器120,使得控制器120接收到上述兩個命令及該資料單元的資料之後通過該內部匯流排而寫入一個對應64位元長度邏輯位址的資料單元至快閃記憶體110。再者,在另一實施例,主機105也可以在發送命令CMD22之前通過相同訊號路徑先發送命令CMD20至安全數位卡100,指示出影片速度等級(video speed class)的資料寫入。應注意,以下實施例所述從主機105發送一命令至安全數位卡100之控制器120的訊號路徑均相同於上述的訊號路徑,反之,從控制器120發送資料至主機105的訊號路徑係依序通過該至少一第一外部訊號埠、該至少一第二外部訊號埠;均不再重述。
對於多資料單元的寫入來說,當發送帶有32位元長度邏輯位址的多資料單元寫入命令至安全數位卡100,主機105例如通過安全數位卡驅動電路1051發送命令CMD25至安全數位卡100並傳入32位元的位址參數(例如一個資料單元的邏輯位址)至安全數位卡100,接著發送多個資料單元的資料至安全數位卡100,以寫入多個均對應於32位元長度邏輯位址的資料單元資料,其中該32位元的位址參數可以是多個資料單元中的寫入起始邏輯位址。另外,當發送帶有64位元長度邏輯位址的多資料單元寫入命令至安全數位卡100,主機105例如通過安全數位卡驅動電路1051先發送特定命令(例如第一命令CMD22)並傳入第一部份位址參數(例如64位元長度邏輯位址中較高的32個位元),接著再發送命令CMD25至安全數位卡100並傳入第二部份位址參數(例如64位元長度邏輯位址中較低的32個位元),接著再發送多個資料單元的資料至安全數位卡100,以寫入多個均對應於64位元長度邏輯位址的資料單元,其中該第一部份位址參數與該第二部份位址參數所組合而成的64位元的位址參數可以是上述多個資料單元中的寫入起始邏輯位址。
因此,當控制器120的處理電路1201接收到該特定命令例如CMD22時,可先得到第一部份位址參數,接著再收到命令CMD24或CMD25時可得到第二部份位址參數,組合該第一部份位址參數與該第二部份位址參數,可得到64位元長度的位址參數,而根據命令CMD24或CMD25的命令類型,可得知是一個資料單元的寫入或是多個資料單元的寫入,因此可進行64位元之邏輯位址的一或多個資料單元的寫入操作。反之,如果控制器120的處理電路1201僅接收到命令CMD24或命令CMD25所對應傳入的第二部份位址參數,而並未接收到特定命令CMD22及所對應的第一部份位址參數,則控制器120的處理電路1201預設該第一部份位址參數的值為0,並判斷目前主機105是要寫入一或多個具有32位元長度邏輯位址的資料單元。
請參照第5圖,其所繪示為本案一實施例之主機105發送不同命令至安全數位卡100以進行不同位元長度之邏輯位址的資料單元讀取的示意圖,如第5圖所示,對於發送帶有32位元長度邏輯位址的讀取命令至安全數位卡100,主機105例如通過安全數位卡驅動電路1051發送命令CMD17至安全數位卡100並傳入32位元的位址參數(例如一個資料單元的邏輯位址)至安全數位卡100,接著從安全數位卡100讀回一個資料單元的資料。而對於發送帶有64位元長度邏輯位址的讀取命令至安全數位卡100,主機105例如通過安全數位卡驅動電路1051先發送一個特定命令(例如第一命令CMD22)並傳入第一部份位址參數(例如64位元長度邏輯位址中較高的32個位元),接著再發送命令CMD17至安全數位卡100並傳入第二部份位址參數(例如64位元長度邏輯位址中較低的32個位元),接著則從安全數位卡100讀回一個對應64位元長度邏輯位址的資料單元。
對於多資料單元的讀取來說,當發送帶有32位元長度邏輯位址的多資料單元讀取命令至安全數位卡100,主機105例如通過安全數位卡驅動電路1051發送命令CMD18至安全數位卡100並傳入32位元的位址參數(例如一個資料單元的邏輯位址)至安全數位卡100,接著從安全數位卡100讀回多個資料單元的資料,其中該32位元的位址參數可以是多個資料單元中的讀取起始邏輯位址。另外,當發送帶有64位元長度邏輯位址的多資料單元讀取命令至安全數位卡100,主機105例如通過安全數位卡驅動電路1051先發送特定命令(例如第一命令CMD22)並傳入第一部份位址參數(例如64位元長度邏輯位址中較高的32個位元),接著再發送命令CMD18至安全數位卡100並傳入第二部份位址參數(例如64位元長度邏輯位址中較低的32個位元),接著則從安全數位卡100讀回多個資料單元的資料,其中該第一部份位址參數與該第二部份位址參數所組合而成的64位元的位址參數可以是上述多個資料單元中的讀取起始邏輯位址。
因此,當控制器120的處理電路1201接收到該特定命令例如CMD22時,可先得到第一部份位址參數,接著再收到命令CMD17或CMD18時可得到第二部份位址參數,組合該第一部份位址參數與該第二部份位址參數,可得到64位元長度的位址參數,而根據命令CMD17或CMD18的命令類型,可得知是一個資料單元的讀取或是多個資料單元的讀取,因此可進行64位元之邏輯位址的一或多個資料單元的讀取操作。反之,如果控制器120的處理電路1201僅接收到命令CMD17或命令CMD18所對應傳入的第二部份位址參數,而並未接收到特定命令CMD22及所對應的第一部份位址參數,則控制器120的處理電路1201預設該第一部份位址參數的值為0,並判斷目前主機105是要讀取一或多個具有32位元長度邏輯位址的資料單元。
另外,主機105亦可以於命令CMD22之前發送一命令CMD23以指示出資料寫入或讀取的長度,請參照第6圖,其所繪示為本案一實施例之主機105發送不同命令至安全數位卡100以進行指定資料長度之資料單元的寫入及讀取的示意圖,如第6圖所示,主機105例如通過安全數位卡驅動電路1051先發送命令CMD23至安全數位卡100並傳入一個指定的資料長度參數,接著發送命令CMD25至安全數位卡100並傳入32位元的位址參數(例如一個資料單元的邏輯位址)至安全數位卡100,接著發送對應於該指定的資料長度參數之多個資料單元的資料至安全數位卡100,以寫入對應32位元長度邏輯位址之指定的資料長度參數之多個資料單元,其中該32位元的位址參數係為指定的資料長度參數之多個資料單元的起始位址。
另外,主機105例如也可以通過安全數位卡驅動電路1051先發送命令CMD23至安全數位卡100並傳入一個指定的資料長度參數,接著發送一個特定命令(例如第一命令CMD22,但非限定)並傳入第一部份位址參數(例如64位元長度邏輯位址中較高的32個位元),接著發送命令CMD25至安全數位卡100並第二部份位址參數(例如64位元長度邏輯位址中較低的32個位元)至安全數位卡100,接著才發送對應於該指定的資料長度參數之多個資料單元的資料至安全數位卡100,以寫入對應64位元長度邏輯位址之指定的資料長度參數之多個資料單元,其中該64位元的位址參數係為指定的資料長度參數之多個資料單元的起始位址,並可由第一部份位址參數與第二部份位址參數所組合得到。
另外,對於資料的讀取,主機105例如通過安全數位卡驅動電路1051先發送指示命令CMD23至安全數位卡100並傳入一個指定讀取的資料長度參數,接著發送命令CMD18至安全數位卡100並傳入32位元的位址參數(例如一個資料單元的邏輯位址)至安全數位卡100,接著從安全數位卡100讀回對應於該指定讀取之資料長度參數的多個資料單元的資料,其中該32位元的位址參數係為指定讀取的資料長度參數之多個資料單元的起始位址。另外,主機105例如也可以通過安全數位卡驅動電路1051先發送命令CMD23至安全數位卡100並傳入一個指定讀取的資料長度參數,接著發送一個特定命令(例如第一命令CMD22,但非限定)並傳入第一部份位址參數(例如64位元長度邏輯位址中較高的32個位元),接著發送命令CMD25至安全數位卡100並第二部份位址參數(例如64位元長度邏輯位址中較低的32個位元)至安全數位卡100,接著才從安全數位卡100讀回對應於該指定讀取的資料長度參數之多個資料單元的資料,其中該64位元的位址參數係為指定讀取的資料長度參數之多個資料單元的起始位址,並可由第一部份位址參數與第二部份位址參數所組合得到。
再者,上述亦適用於區塊抹除及區塊轉移的命令佇列任務指派(Command Queue Task Assignment)的實施例。請參照第7圖,其所繪示為本案一實施例之主機105發送不同命令至安全數位卡100以進行區塊抹除及命令佇列任務指派的實施例示意圖,如第7圖所示,主機105例如通過安全數位卡驅動電路1051先發送命令CMD32至安全數位卡100並傳入32位元的指定抹除起始位址參數,接著發送命令CMD33至安全數位卡100並傳入32位元的指定抹除結束位址參數至安全數位卡100,接著發送命令CMD38至安全數位卡100,以進行區塊抹除。因此,當控制器120的處理電路1201依序接收到命令CMD32及32位元的指定抹除起始位址參數、命令CMD33及32位元的指定抹除結束位址參數、命令CMD38時,控制器120的處理電路1201可據此對指定要抹除的32位元位址區段所對應的區塊內容進行抹除。
另外,主機105例如通過安全數位卡驅動電路1051先發送一個特定命令(例如第一命令CMD22,但非限定)並傳入第一部份位址參數(例如64位元長度邏輯位址中較高的32個位元),接著發送命令CMD32至安全數位卡100並傳入第二部份位址參數(例如64位元長度邏輯位址中較低的32個位元)至安全數位卡100,其中上述第一部份位址參數與第二部份位址參數係可組合得到64位元的指定抹除起始位址參數。接著,主機105通過安全數位卡驅動電路1051發送特定命令CMD22並傳入另一個第一部份位址參數(例如64位元長度邏輯位址中較高的32個位元),接著發送命令CMD33至安全數位卡100並傳入另一個第二部份位址參數(例如64位元長度邏輯位址中較低的32個位元)至安全數位卡100,其中上述另一個第一部份位址參數與另一個第二部份位址參數係可組合得到64位元的指定抹除結束位址參數,最後再接著發送命令CMD38至安全數位卡100,以進行區塊抹除。因此,當控制器120的處理電路1201依序接收到上述命令與對應的參數值時,控制器120的處理電路1201可組合得到64位元的指定抹除起始位址參數與64位元的指定抹除結束位址參數,並據此對指定要抹除的64位元位址區段所對應的區塊內容進行抹除。
另外,對於資料單元轉移的命令佇列任務指派,主機105例如通過安全數位卡驅動電路1051先發送第一移轉命令CMD44至安全數位卡100並傳入資料方向、優先權、任務ID及資料單元總數等移轉參數,接著發送第二移轉命令CMD45至安全數位卡100並傳入該任務ID所對應的32位元的指定資料單元起始位址參數至安全數位卡100,因此,當控制器120的處理電路1201依序接收到上述命令及參數時,控制器120的處理電路1201可據此從32位元起始位址進行資料單元轉移。另外,對於64位元位址的資料單元轉移,主機105例如通過安全數位卡驅動電路1051先發送命令CMD44至安全數位卡100並傳入資料方向、優先權、任務ID及資料單元總數等參數,接著發送一個特定命令(例如第一命令CMD22,但非限定)並傳入該任務ID所對應的第一部份位址參數(例如64位元長度邏輯位址中較高的32個位元),接著再發送第二移轉命令CMD45至安全數位卡100並傳入該任務ID所對應的第二部份位址參數(例如較低的32位元長度邏輯位址)至安全數位卡100,因此,當控制器120的處理電路1201依序接收到上述命令及參數時,控制器120的處理電路1201可據此組合得到64位元起始位址,並從該64位元起始位址進行資料單元轉移。
因此,綜合上述實施例,本案的控制器120的處理電路1201於接收到第一部份位址參數及第二部份位址參數後可以組合而得出較長位元長度的位址參數,例如從兩個32位元的部份位址參數組合得到完整的64位元的位址參數,並根據對應到的命令類型進行命令序列的任務指派、資料單元寫入或讀取、抹除等操作。換言之,本案是通過發送第一命令並傳入第一部份位址參數至安全數位卡以及發送第二命令並傳入第二部份位址參數至安全數位卡,令安全數位卡的控制器120的處理電路1201可以參考第一、第二部份位址參數來組合得到較長位元的位址參數,例如64位元的位址參數,據此進行對應的任務指派、資料單元寫入或讀取的操作。再者,該第一部份位址參數可以是較高位元位址參數而該第二部份位址參數可以是較低位元位址參數,此外,該第一部份位址參數也可以是較低位元位址參數而該第二部份位址參數可以是較高位元位址參數,凡此設計變型均符合本案的精神。再者,上述的特定命令可以是利用原本作為一保留命令(reserved command)的閒置命令來實現大於32位元的位址延伸命令,且不限定於命令CMD22,也可以採用其他的保留命令例如CMD31、CMD39、CMD41或CMD51等來實現,該些保留命令在本發明中賦予了新的意義,亦可稱為第一命令。
另外,本案不需要另外實現額外的接腳或連接埠,並且在最低的變動之下,即可採用舊有32位元長度邏輯位址空間的接腳或連接埠即可實現較長位元長度邏輯位址空間的定址,以下表格列舉了一特定安全數位卡範例的SD模式的接腳編號及對應的名稱、類型、描述說明:
Figure 107146596-A0304-0002
其中S表示電源供給,I表示輸入,O表示採用推拉驅動的輸出,PP表示採用推拉驅動的輸入輸出。上述命令均是通過CMD接腳所傳輸,而所要傳輸的資料則通過接腳DAT0、DAT1、DAT2及CD/DAT3所傳輸。
請參照第8圖,第8圖是一安全數位卡的一命令的傳輸格式的範例示意圖,如第8圖所示,上述多個命令的每一個命令例如均以該傳輸格式於CMD接腳上進行傳輸,例如,一第一命令、讀取命令或是寫入命令等等的每一命令,從主機105的驅動電路1051通過第二訊號埠及第一訊號埠而傳送至安全數位卡100時,依序例如包括有起始位元“0”、傳輸位元“1”、命令內容、CRC校驗碼以及結束位元“1”,其中命令內容依序包括有多個位元所組成的一命令類型(第一、讀取或寫入等等)、位址資訊或參數例如(前述的一個32位元的部份位址參數),CRC校驗碼例如是由7個位元所組成的CRC校驗和(checksum),該命令的傳輸格式的總長度例如是48個位元。因此,當通過內部匯排流而於第一訊號埠的CMD接腳上依序收到起始位元“0”及傳輸位元“1”時,控制器120即可偵測到主機105目前正傳送一個命令至安全數位卡100,並且依照該命令的傳輸格式,可依序得到命令類型的資訊及位址資訊或參數(例如32位元的部份位址參數),以及通過CRC校驗和可檢查所傳輸的命令的位元資訊是否有錯,最後當偵測到結束位元“1”時,即可知道命令的結尾位置。
請參照第9圖,第9圖是本發明實施例的主機105發送命令CMD22及寫入命令CMD24以寫入一資料至安全數位卡100的命令傳輸格式的範例示意圖。舉例來說,如第9圖所示,主機105進行一64位元位址(例如0x0505_0505_0A0A_0A0A(但不限定))的資料寫入時,主機105會發送命令CMD22時,依序傳送起始位元“0”、傳輸位元“1”、CMD22的命令內容、CMD22的CRC校驗碼及結束位元“1”,接著傳送起始位元“0”、傳輸位元“1”、CMD24的命令內容、CMD24的CRC校驗碼及結束位元“1”,接著再傳送該被寫入的資料,其中CMD22的命令內容帶有CMD22的命令類型的資訊(例如0x16)以及該64位元位址的較高32個位元(例如0x0505_0505),而CMD24的命令內容帶有CMD24的命令類型的資訊(例如0x18)以及該64位元位址的較低32個位元(例如0x0A0A_0A0A),當控制器120的處理電路1201接收到該兩命令的命令類型的資訊及位址資訊或參數後可組合得出該64位元位址以及得知主機105要進行的是寫入命令的操作。應注意的是,第9圖所示的CMD22及CMD24僅是用來更清楚說明命令類型的資訊及位址資訊的範例,並非是本案的限制。
此外,熟悉此項技藝者在本發明的教導之下,亦得理解在另一實施例中,得令主機105進行一64位元位址(例如0x0A0A_0A0A 0505_0505_但不限定))的資料寫入時,CMD22命令內容中所夾帶的位址資訊(例如0x0505 0505)代表64位元位址中的較低的32個位元,而令寫入命令CMD24所夾帶的位址資訊(例如0x0A0A_0A0A)代表64位元位址中的較高的32個位元。換言之,在主機發送CMD22與CMD24順序不變的情況之下,令CMD22與CMD24分別傳遞64位元位址的其中一部分,而記憶體控制器120在接收到CMD22與CMD24所分別傳遞64位元位址的其中一部分時,亦得依與主機之間的協議,正確的組合出完整的64位元位址,此亦為本發明之涵蓋範圍。
第10圖是本發明實施例之安全數位卡100之操作狀態改變的狀態示意圖。如第10圖所示,假設狀態圖開始於狀態1200,狀態1200為一準備傳送資料狀態(transfer state),安全數位卡100此時還沒有接收到任一存取命令,也就是說,安全數位卡100還沒有接收到任一上述的64位元長度邏輯位址中較高的32個位元以及64位元長度邏輯位址中較低的32個位元。
如果在狀態1200接收到命令CMD17、CMD18、CMD24或CMD25,則表示安全數位卡100只接收到了32個位元的位址參數,也就是接收到命令CMD17、CMD18、CMD24或CMD25所帶有的一64位元長度邏輯位址中較低的32個位元,接著進入到狀態1204,狀態1204為一得到較低位元之位址參數的狀態,接著安全數位卡100會從狀態1204進入到狀態1250,狀態1250為執行或拒絕(execution or rejection),例如在狀態1250時如果安全數位卡100只接收到CMD17、CMD18、CMD24或CMD25所帶有的一64位元長度邏輯位址中較低的32個位元,該較低的32個位元會被視為是要執行操作的一32位元的邏輯位址,此時,安全數位卡100內的控制器120會對快閃記憶體110進行32位元的邏輯位址的讀取/或寫入,而如果一命令是無法執行的,例如該命令對應的位址超出範圍,或是命令是寫入命令但是所決定的位址是只允許讀取的區域(read-only area)而無法被寫入,則安全數位卡100會拒絕該命令所要執行的操作。之後會從狀態1250回到狀態1200。
而如果在狀態1200接收到命令CMD22,則表示安全數位卡100先接收到了一64位元長度邏輯位址中較高的32個位元,也就是接收到命令CMD22所帶有的一64位元長度邏輯位址中較高的32個位元,接著進入到狀態1202,狀態1202為一得到較高位元之位址參數的狀態,在狀態1202中,如果再次接收到一命令CMD22,則安全數位卡100會根據最後一次所接收到的命令CMD22來更新所接收到之64位元長度邏輯位址中較高的32個位元,在狀態1202中如果安全數位卡100接收到CMD17、CMD18、CMD24或CMD25,則接著進入狀態1204,表示安全數位卡100接收到CMD17、CMD18、CMD24或CMD25所帶有的一64位元長度邏輯位址中較低的32個位元,在這個情況中,當進入狀態1250,安全數位卡100內的控制器120會對快閃記憶體110進行64位元的邏輯位址的讀取/或寫入。如果是在狀態1202中接收到CMD32,則安全數位卡100會進入狀態1212。
而如果是在狀態1202中接收到並非是CMD22、CMD17、CMD18、CMD24、CMD25或CMD32的其他命令,則安全數位卡100會進入到狀態1260,當進入狀態1260時會回到準備傳送資料的狀態1200。
如果在狀態1200接收到命令CMD23,則表示安全數位卡100接收到了一指示出資料寫入或讀取的長度之命令,安全數位卡100會進入到狀態1222,該狀態1222為得到較高位元位址為零的狀態,亦即尚未得到64位元長度邏輯位址中較高的32個位元,在該狀態1222中如果重復接收到命令CMD23,則會維持於狀態1222中。而如果在狀態1222中接收到命令CMD22,則表示安全數位卡100目前接收到了命令CMD22所帶有的64位元長度邏輯位址中較高的32個位元,此時安全數位卡100進入狀態1223。
在該狀態1223為一得到較高位元之位址參數的狀態,在該狀態1223中如果又接收到命令CMD23,表示前一個所接收到的命令CMD22失效,安全數位卡100會從狀態1223切換至狀態1222。如果在該狀態1223中接收到其他命令,則安全數位卡100會進入到狀態1260,當進入狀態1260時會回到準備傳送資料的狀態1200。如果在狀態1223中接收到命令CMD18/25,則表示安全數位卡100 目前接收到了命令CMD18/25所帶有的64位元長度邏輯位址中較低的32個位元,此時安全數位卡100會切換至狀態1224,狀態1224為一得到較低位元之位址參數的狀態,接著安全數位卡100會從狀態1224進入到狀態1250。如果安全數位卡100接收到了64位元長度邏輯位址中較高的32個位元及較低的32個位元,則狀態1250中控制器120會對快閃記憶體110進行64位元長度邏輯位址的指定長度之讀/寫。
如果安全數位卡100是在狀態1222中接收到命令CMD18/25,則表示安全數位卡100只接收到32個位元的位址,目前會進入到狀態1224,之後安全數位卡100會從狀態1224進入到狀態1250,在狀態1250中控制器120會對快閃記憶體110進行32位元長度邏輯位址的指定長度之讀/寫。
在狀態1200中如果接收到命令CMD32,則表示安全數位卡100接收到命令CMD32所帶有的32個位元(該32個位元可能是一32位元長度的邏輯起始位址或是一64位元長度之邏輯起始位址的較低32個位元),此時會進入狀態1212,狀態1212為得到邏輯起始位址之32個位元的狀態,接著進入到狀態1214,狀態1214為一等候位址之狀態。
如果在狀態1214接收到命令CMD33,則表示安全數位卡100接收到命令CMD33所帶有的32個位元(該32個位元可能是一32位元長度的邏輯結束位址或是一64位元長度之邏輯結束位址的較低32個位元),此時會進入狀態1216,狀態1216為得到邏輯結束位址之32個位元的狀態,接著如果接收到命令CMD38,則進入到狀態1218,狀態1218為得到執行命令的狀態。因此,如果安全數位卡100是依序從狀態1212、1214、1216至1218,則控制器120會根據32位元邏輯起始位址及32位元邏輯結束位址來對快閃記憶體110進行抹除操作。
如果在狀態1214接收到命令CMD22,則表示安全數位卡100接收到命令CMD22所帶有的32個位元,此時因為先前是從狀態1212切換至狀態1214,所以控制器120可判斷目前狀態1214所接收到命令CMD22帶有的是一64位元長度之邏輯結束位址的較高的32個位元,接著進入狀態1215,狀態1215為得到邏輯結束位址之較高的32個位元的狀態,而如果在狀態1215中又接收到命令CMD22,則表示主機105更新了64位元長度之邏輯結束位址的較高的32個位元,安全數位卡100於接收到新的命令CMD22後更新64位元長度之邏輯結束位址的較高的32個位元。
在狀態1215中如果接收到命令CMD33,則表示安全數位卡100接收到命令CMD33所帶有的32個位元(該32個位元是一64位元長度之邏輯結束位址的較低32個位元),此時會進入狀態1216,狀態1216為得到邏輯結束位址之32個位元的狀態,接著如果接收到命令CMD38,則進入到狀態1218,狀態1218為得到執行命令的狀態。因此,如果安全數位卡100是依序從狀態1200、1202、1212、1214、1215、1216至1218,則控制器120會根據64位元邏輯起始位址及64位元邏輯結束位址來對快閃記憶體110進行抹除操作。
應注意的是,在狀態1202、1222、1223、1214、1215以及狀態1216中,如果接收到一個未被預期的命令(亦即一個並未被描述於上述流程狀態切換中的其他命令),則安全數位卡100均會至狀態1260,然後回到準備傳送資料狀態1200。 以上所述僅為本發明之較佳實施例,凡依本發明申請專利範圍所做之均等變化與修飾,皆應屬本發明之涵蓋範圍。
100‧‧‧安全數位卡105‧‧‧主機110‧‧‧快閃記憶體115‧‧‧暫存器120‧‧‧控制器1051‧‧‧安全數位卡驅動電路1052‧‧‧顯示器1053‧‧‧處理器1200、1202、1204、1212、1214、1215、1216、1218、1222、1223、1224、1250、1260‧‧‧狀態1201‧‧‧處理電路
第1圖為本發明實施例之安全數位卡與作為主機之一電子裝置進行通訊的方塊示意圖。 第2圖為主機與安全數位卡進行最大容量的溝通時於該特定通訊介面上的傳輸資料範例示意圖。 第3圖為本發明實施例電子裝置之處理器將快閃記憶體之最大容量的計算結果顯示於顯示器的示意圖。 第4圖為本案一實施例之主機發送不同命令至安全數位卡以進行不同位元長度邏輯位址的資料單元寫入的示意圖。 第5圖為本案一實施例之主機發送不同命令至安全數位卡以進行不同位元長度之邏輯位址的資料單元讀取的示意圖。 第6圖為本案一實施例之主機發送不同命令至安全數位卡以進行指定資料長度之資料單元的寫入及讀取的示意圖。 第7圖為本案一實施例之主機發送不同命令至安全數位卡以進行區塊抹除及命令佇列任務指派的實施例示意圖。 第8圖是一安全數位卡的一命令的傳輸格式的範例示意圖。 第9圖是本發明實施例的主機發送命令CMD22及寫入命令CMD24以寫入一資料至安全數位卡的命令傳輸格式的範例示意圖。 第10圖是本發明實施例之存取安全數位卡之狀態改變的狀態示意圖。
100‧‧‧安全數位卡
105‧‧‧主機
110‧‧‧快閃記憶體
115‧‧‧暫存器
120‧‧‧快閃記憶體控制器
1051‧‧‧安全數位卡驅動電路
1052‧‧‧顯示器
1053‧‧‧處理器
1201‧‧‧處理電路

Claims (24)

  1. 一種記憶卡控制器,用以通過一外部訊號埠耦接至一主機,以及用以通過一記憶卡之一內部連接而耦接於一快閃記憶體,以及該記憶卡控制器包含: 一處理電路,用以從該快閃記憶體中讀出一卡特定資以儲存該卡特定資料於一暫存器中,該卡特定資料中有標示一乘數參數及一基本容量,以及,如果該處理電路接收到該主機之一處理器通過一記憶卡驅動電路所發送之一要求命令CMD9,則該處理電路係通過該外部訊號埠以及該記憶卡驅動電路發送該卡特定資料至該主機之該處理器,令該主機之該處理器可根據該卡特定資料中所標示之該乘數參數及該基本容量來計算得到該記憶卡之一最大容量; 其中所標示之該基本容量係採用該卡特定資料中具有22個位元的C_size欄位來表示,以及所標示之該乘數參數係採用該卡特定資料中N個容量標示位元來表示0至M的數值範圍,以表示2的0次方至2的M次方的乘數範圍,M為大於1的正整數。
  2. 如申請專利範圍第1項所述之記憶卡控制器,其中該主機係將該乘數參數乘上該基本容量來計算得到該記憶卡之該最大容量。
  3. 如申請專利範圍第1項所述之記憶卡控制器,其中該基本容量之一最大值係對應於32位元邏輯位址空間的一最大容量上限。
  4. 如申請專利範圍第1項所述之記憶卡控制器,其中該處理電路所發送之該卡特定資料標示有一版本資訊,令該主機根據該版本資訊來初步判斷該記憶卡之該最大容量是否超過一特定位元長度位址空間所對應之一最大容量。
  5. 如申請專利範圍第1項所述之記憶卡控制器,其中該處理電路所發送之該卡特定資料標示有一版本資訊,令該主機根據該版本資訊來判斷是否參考該卡特定資料中所標示之該乘數參數來計算該記憶卡之該最大容量。
  6. 如申請專利範圍第5項所述之記憶卡控制器,其中當該版本資訊符合該主機之一驅動電路之一版本資訊時,該主機會參考該卡特定資料中所標示之該乘數參數來計算該記憶卡之該最大容量。
  7. 一種記憶卡,包含: 如申請專利範圍第1項所述之記憶卡控制器;以及 一快閃記憶體。
  8. 一種使用於一記憶卡控制器的方法,該記憶卡控制器通過一外部訊號埠耦接至一主機,以及該記憶卡控制器通過一記憶卡之一內部連接而耦接於一快閃記憶體,該方法包含: 從該快閃記憶體中讀出一卡特定資以儲存該卡特定資料於該記憶卡控制器之一暫存器中,該卡特定資料中有標示一乘數參數及一基本容量;以及 如果該記憶卡控制器接收到該主機之一處理器通過一記憶卡驅動電路及該外部連接埠所發送之一要求命令CMD9,則通過該外部訊號埠以及該記憶卡驅動電路發送該卡特定資料至該主機之該處理器,令該主機之該處理器可根據該卡特定資料中所標示之該乘數參數及該基本容量來計算得到該記憶卡之一最大容量; 其中所標示之該基本容量係採用該卡特定資料中具有22個位元的C_size欄位來表示,以及所標示之該乘數參數係採用該卡特定資料中N個容量標示位元來表示0至M的數值範圍,以表示2的0次方至2的M次方的乘數範圍,M為大於1的正整數。
  9. 如申請專利範圍第8項所述之方法,其中該乘數參數乘上該基本容量而計算得到該記憶卡之該最大容量。
  10. 如申請專利範圍第8項所述之方法,另包含: 於所發送之該卡特定資料標示出一版本資訊,令該主機根據該版本資訊來初步判斷該記憶卡之該最大容量是否超過一特定位元長度位址空間所對應之一最大容量。
  11. 如申請專利範圍第10項所述之方法,另包含: 於所發送之該卡特定資料標示出一版本資訊,令該主機根據該版本資訊來判斷是否參考該卡特定資料中所標示之該乘數參數來計算該記憶卡之該最大容量。
  12. 如申請專利範圍第11項所述之方法,其中當該版本資訊符合該主機之一驅動電路之一版本資訊時,該主機會參考該卡特定資料中所標示之該乘數參數來計算該記憶卡之該最大容量。
  13. 一種電子裝置,用以通過一外部訊號埠連接至一記憶卡,該電子裝置包含: 一記憶卡驅動電路,用以驅動該記憶卡; 一處理器,耦接至該記憶卡驅動電路,用以通過該記憶卡驅動電路發送一要求命令CMD9至該記憶卡之一記憶卡控制器,接收該記憶卡之該記憶卡控制器因應於該要求命令CMD9所發送之一卡特定資料、分析讀出該卡特定資料中所標示之一乘數參數及一基本容量、以及根據該卡特定資料中所標示之該乘數參數及該基本容量來計算得到該記憶卡的一最大容量; 其中所標示之該基本容量係採用該卡特定資料中具有22個位元的C_size欄位來表示,以及所標示之該乘數參數係採用該卡特定資料中N個容量標示位元來表示0至M的數值範圍,以表示2的0次方至2的M次方的乘數範圍,M為大於1的正整數。
  14. 如申請專利範圍第13項所述之電子裝置,其中該處理器係將該乘數參數乘上該基本容量來計算得到該記憶卡之該最大容量。
  15. 如申請專利範圍第13項所述之電子裝置,其中該基本容量之一最大值係對應於32位元邏輯位址空間的一最大容量上限。
  16. 如申請專利範圍第13項所述之電子裝置,其中該卡特定資料標示有一版本資訊,以及該處理器係根據該版本資訊來初步判斷該記憶卡之該最大容量是否超過一特定位元長度位址空間所對應之一最大容量。
  17. 如申請專利範圍第13項所述之電子裝置,其中該卡特定資料標示有一版本資訊,以及該處理器係根據該版本資訊來判斷是否參考該卡特定資料中所標示之該乘數參數來計算該記憶卡之該最大容量。
  18. 如申請專利範圍第13項所述之電子裝置,另包含: 一顯示器,耦接至該處理器; 其中該處理器係將所計算之該記憶卡之該最大容量顯示於該顯示器之畫面上。
  19. 一種使用於一電子裝置之方法,該電子裝置用以通過一外部訊號埠連接至一記憶卡,該電子裝置具有一記憶卡驅動電路以驅動該記憶卡以及一處理器,以及該方法包含: 使用該記憶卡驅動電路以驅動該記憶卡; 通過該記憶卡驅動電路發送一要求命令CMD9至該記憶卡之一記憶卡控制器; 接收該記憶卡之該記憶卡控制器因應於該要求命令CMD9所發送之一卡特定資料; 分析讀出該卡特定資料中所標示之一乘數參數及一基本容量;以及 根據該卡特定資料中所標示之該乘數參數及該基本容量來計算得到該記憶卡的一最大容量; 其中所標示之該基本容量係採用該卡特定資料中具有22個位元的C_size欄位來表示,以及所標示之該乘數參數係採用該卡特定資料中N個容量標示位元來表示0至M的數值範圍,以表示2的0次方至2的M次方的乘數範圍,M為大於1的正整數。
  20. 如申請專利範圍第19項所述之方法,其中計算得到該記憶卡的該最大容量之步驟包含: 將該乘數參數乘上該基本容量來計算得到該記憶卡之該最大容量。
  21. 如申請專利範圍第19項所述之方法,其中該基本容量之一最大值係對應於32位元邏輯位址空間的一最大容量上限。
  22. 如申請專利範圍第19項所述之方法,其中該卡特定資料標示有一版本資訊,以及該方法另包含: 根據該版本資訊來初步判斷該記憶卡之該最大容量是否超過一特定位元長度位址空間所對應之一最大容量。
  23. 如申請專利範圍第19項所述之方法,其中該卡特定資料標示有一版本資訊,以及該方法另包含: 根據該版本資訊來判斷是否參考該卡特定資料中所標示之該乘數參數來計算該記憶卡之該最大容量。
  24. 如申請專利範圍第19項所述之方法,另包含: 將所計算之該記憶卡之該最大容量顯示於該電子裝置之一顯示器的一畫面上。
TW107146596A 2017-12-28 2018-12-22 記憶卡控制器、記憶卡、使用於記憶卡控制器的方法以及連接至記憶卡的電子裝置 TWI692689B (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US201762610937P 2017-12-28 2017-12-28
US62/610,937 2017-12-28
US201862619930P 2018-01-22 2018-01-22
US62/619,930 2018-01-22

Publications (2)

Publication Number Publication Date
TW201931125A TW201931125A (zh) 2019-08-01
TWI692689B true TWI692689B (zh) 2020-05-01

Family

ID=67058286

Family Applications (5)

Application Number Title Priority Date Filing Date
TW109135271A TWI792073B (zh) 2017-12-28 2018-12-22 快閃記憶體控制器、安全數位卡、使用於快閃記憶體控制器的方法以及存取安全數位卡的主機
TW107146596A TWI692689B (zh) 2017-12-28 2018-12-22 記憶卡控制器、記憶卡、使用於記憶卡控制器的方法以及連接至記憶卡的電子裝置
TW111146484A TW202314512A (zh) 2017-12-28 2018-12-22 快閃記憶體控制器、安全數位卡、使用於快閃記憶體控制器的方法以及存取安全數位卡的主機
TW109110823A TWI714487B (zh) 2017-12-28 2018-12-22 記憶卡控制器以及使用於記憶卡控制器的方法
TW107146579A TWI709858B (zh) 2017-12-28 2018-12-22 快閃記憶體控制器、安全數位卡、使用於快閃記憶體控制器的方法以及存取安全數位卡的主機

Family Applications Before (1)

Application Number Title Priority Date Filing Date
TW109135271A TWI792073B (zh) 2017-12-28 2018-12-22 快閃記憶體控制器、安全數位卡、使用於快閃記憶體控制器的方法以及存取安全數位卡的主機

Family Applications After (3)

Application Number Title Priority Date Filing Date
TW111146484A TW202314512A (zh) 2017-12-28 2018-12-22 快閃記憶體控制器、安全數位卡、使用於快閃記憶體控制器的方法以及存取安全數位卡的主機
TW109110823A TWI714487B (zh) 2017-12-28 2018-12-22 記憶卡控制器以及使用於記憶卡控制器的方法
TW107146579A TWI709858B (zh) 2017-12-28 2018-12-22 快閃記憶體控制器、安全數位卡、使用於快閃記憶體控制器的方法以及存取安全數位卡的主機

Country Status (7)

Country Link
US (5) US10691589B2 (zh)
EP (1) EP3732575A4 (zh)
JP (1) JP2021508878A (zh)
KR (1) KR20200095526A (zh)
CN (2) CN110046104B (zh)
TW (5) TWI792073B (zh)
WO (2) WO2019129193A1 (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11392470B2 (en) * 2019-05-15 2022-07-19 Dell Products L.P. Information handling system to allow system boot when an amount of installed memory exceeds processor limit
US11500901B2 (en) * 2019-06-28 2022-11-15 Nxp B.V. Apparatuses and methods involving synchronization using data in the data/address field of a communications protocol
CN111309482B (zh) * 2020-02-20 2023-08-15 浙江亿邦通信科技有限公司 基于哈希算法的区块链任务分配系统、装置及可存储介质
US11249847B2 (en) * 2020-04-09 2022-02-15 Micron Technology, Inc. Targeted command/address parity low lift

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101399076A (zh) * 2007-09-28 2009-04-01 智多星电子科技有限公司 电子数据快闪记忆卡、控制方法和决定闪存装置类型方法
TW201407468A (zh) * 2012-04-20 2014-02-16 Memory Technologies Llc 在記憶體模組中管理操作狀態資料

Family Cites Families (51)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04112251A (ja) * 1990-08-31 1992-04-14 Nec Ic Microcomput Syst Ltd マイクロコンピュータ
JP3711422B2 (ja) * 1995-12-20 2005-11-02 セイコーエプソン株式会社 情報処理回路
US20050204187A1 (en) * 2004-03-11 2005-09-15 Lee Charles C. System and method for managing blocks in flash memory
US6914550B2 (en) * 2003-10-09 2005-07-05 Texas Instruments Incorporated Differential pipelined analog to digital converter with successive approximation register subconverter stages using thermometer coding
TWM253045U (en) * 2003-12-16 2004-12-11 I O Interconnect Inc Removable flash memory portable storage device task
US20080082736A1 (en) * 2004-03-11 2008-04-03 Chow David Q Managing bad blocks in various flash memory cells for electronic data flash card
JP4515793B2 (ja) * 2004-03-11 2010-08-04 株式会社東芝 メモリカード装置およびメモリカード制御方法
US7814377B2 (en) 2004-07-09 2010-10-12 Sandisk Corporation Non-volatile memory system with self test capability
US7565469B2 (en) * 2004-11-17 2009-07-21 Nokia Corporation Multimedia card interface method, computer program product and apparatus
US20070119931A1 (en) * 2005-11-25 2007-05-31 C-Media Electronics Inc. Apparatus for reading/writing storage devices
WO2007097439A1 (ja) * 2006-02-21 2007-08-30 Nec Corporation プログラムの実行制御システム、実行制御方法、実行制御用コンピュータプログラム
KR100783988B1 (ko) 2006-10-31 2007-12-07 주식회사 하이닉스반도체 플래시 메모리 장치 및 동작방법
JP4956143B2 (ja) 2006-11-02 2012-06-20 株式会社東芝 半導体メモリカード、ホスト装置、及びデータ転送方法
US7694099B2 (en) 2007-01-16 2010-04-06 Advanced Risc Mach Ltd Memory controller having an interface for providing a connection to a plurality of memory devices
US7916557B2 (en) * 2007-04-25 2011-03-29 Micron Technology, Inc. NAND interface
CN103226679B (zh) * 2007-05-09 2016-06-08 金士顿科技股份有限公司 安全且可扩充的固态磁盘系统
CN101324867B (zh) * 2007-06-16 2011-07-20 深圳市硅格半导体有限公司 基于半导体存储介质的数据管理装置及管理方法
JP2009086988A (ja) * 2007-09-28 2009-04-23 Toshiba Corp メモリカード
JP2009104729A (ja) * 2007-10-24 2009-05-14 Toshiba Corp 不揮発性半導体記憶装置
KR100979744B1 (ko) * 2008-06-26 2010-09-02 에스디씨마이크로 주식회사 메모리 주소 확장 기능을 가지는 씨피유 메모리 결합어셈블리
CN101782870B (zh) 2009-01-16 2011-12-14 旺宏电子股份有限公司 存储器装置与其控制方法
CN101650690B (zh) 2009-09-21 2011-03-02 中兴通讯股份有限公司 大容量存储卡的应用方法及移动终端
CN102023927A (zh) * 2009-09-22 2011-04-20 点序科技股份有限公司 闪存控制装置及其存取方法
JP5150591B2 (ja) 2009-09-24 2013-02-20 株式会社東芝 半導体装置及びホスト機器
JP2011107851A (ja) * 2009-11-13 2011-06-02 Toshiba Corp メモリシステム
TWI421871B (zh) * 2009-11-27 2014-01-01 Macronix Int Co Ltd 定址一記憶積體電路之方法與裝置
CN102214482B (zh) 2010-04-07 2013-05-01 中国科学院电子学研究所 高速大容量固态电子记录器
US8713242B2 (en) * 2010-12-30 2014-04-29 Solid State System Co., Ltd. Control method and allocation structure for flash memory device
JP2012204880A (ja) * 2011-03-23 2012-10-22 Toshiba Corp メモリ装置及びその制御方法
JP2012212396A (ja) * 2011-03-31 2012-11-01 Toshiba Corp メモリカード及びホスト機器
TWI471862B (zh) 2011-08-19 2015-02-01 Silicon Motion Inc 快閃記憶體控制器
JP2013191169A (ja) * 2012-03-15 2013-09-26 Toshiba Corp ホスト機器、メモリコントローラ、及びメモリ装置
KR101988260B1 (ko) 2012-09-14 2019-06-12 삼성전자주식회사 임베디드 멀티미디어 카드, 및 이의 동작 방법
JP5976608B2 (ja) * 2012-10-30 2016-08-23 株式会社東芝 メモリデバイス
CN103268775A (zh) 2013-05-17 2013-08-28 深圳市江波龙电子有限公司 存储芯片、存储设备及存储芯片使用方法
KR102210961B1 (ko) * 2013-06-12 2021-02-03 삼성전자주식회사 불휘발성 메모리 장치를 포함하는 메모리 시스템 및 그것의 동적 접근 방법
CN103488436B (zh) 2013-09-25 2017-04-26 华为技术有限公司 内存扩展系统及方法
CN104679592A (zh) 2013-12-02 2015-06-03 北京兆易创新科技股份有限公司 一种微控制单元mcu中资源动态分配的方法和系统
CN103809920B (zh) 2014-02-13 2017-05-17 杭州电子科技大学 一种超大容量固态硬盘的实现方法
US9454310B2 (en) * 2014-02-14 2016-09-27 Micron Technology, Inc. Command queuing
US9606738B2 (en) * 2014-03-10 2017-03-28 Kabushiki Kaisha Toshiba Memory system with a bridge part provided between a memory and a controller
JP2016029556A (ja) * 2014-07-15 2016-03-03 株式会社東芝 ホスト機器および拡張性デバイス
US10194809B2 (en) * 2015-08-24 2019-02-05 Verily Life Sciences Llc Integrated electronics for photoplethysmography and electrocardiography
US9418731B1 (en) * 2015-11-06 2016-08-16 Phison Electronics Corp. Memory management method, memory storage device and memory control circuit unit
US9837135B2 (en) * 2016-03-03 2017-12-05 Samsung Electronics Co., Ltd. Methods for addressing high capacity SDRAM-like memory without increasing pin cost
TWI599880B (zh) * 2016-03-22 2017-09-21 威盛電子股份有限公司 非揮發性記憶體裝置及其操作方法
TWI637264B (zh) 2016-05-20 2018-10-01 慧榮科技股份有限公司 資料儲存裝置之資料頁對齊方法及其查找表的製作方法
TWI592864B (zh) * 2016-06-21 2017-07-21 慧榮科技股份有限公司 資料儲存裝置及其資料維護方法
US10303384B1 (en) 2017-11-28 2019-05-28 Western Digital Technologies, Inc. Task readiness for queued storage tasks
US10866746B2 (en) * 2017-12-28 2020-12-15 Silicon Motion Inc. Memory addressing methods and associated controller, memory device and host
US10705997B2 (en) * 2018-05-16 2020-07-07 Mixd Media Llc. MIXDTAPE—cassette tape replica record/playback device

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101399076A (zh) * 2007-09-28 2009-04-01 智多星电子科技有限公司 电子数据快闪记忆卡、控制方法和决定闪存装置类型方法
TW201407468A (zh) * 2012-04-20 2014-02-16 Memory Technologies Llc 在記憶體模組中管理操作狀態資料
TW201712528A (zh) * 2012-04-20 2017-04-01 記憶體科技公司 用於管理操作狀態資料之方法、記憶體模組及主機裝置

Also Published As

Publication number Publication date
TW202030612A (zh) 2020-08-16
US10691589B2 (en) 2020-06-23
EP3732575A4 (en) 2021-10-27
US20220147445A1 (en) 2022-05-12
TWI714487B (zh) 2020-12-21
US10853239B2 (en) 2020-12-01
CN110032336A (zh) 2019-07-19
US11249893B2 (en) 2022-02-15
US20190205068A1 (en) 2019-07-04
TW202314512A (zh) 2023-04-01
TWI709858B (zh) 2020-11-11
TWI792073B (zh) 2023-02-11
KR20200095526A (ko) 2020-08-10
EP3732575A1 (en) 2020-11-04
CN110046104B (zh) 2022-11-15
TW202117545A (zh) 2021-05-01
US20240045798A1 (en) 2024-02-08
CN110032336B (zh) 2023-04-07
CN110046104A (zh) 2019-07-23
TW201931127A (zh) 2019-08-01
JP2021508878A (ja) 2021-03-11
US20200293440A1 (en) 2020-09-17
WO2019129194A1 (en) 2019-07-04
US11829289B2 (en) 2023-11-28
TW201931125A (zh) 2019-08-01
WO2019129193A1 (en) 2019-07-04
US20190205248A1 (en) 2019-07-04

Similar Documents

Publication Publication Date Title
TWI692689B (zh) 記憶卡控制器、記憶卡、使用於記憶卡控制器的方法以及連接至記憶卡的電子裝置
US6859856B2 (en) Method and system for a compact flash memory controller
US11630791B2 (en) Data storage system and method for multiple communication protocols and memory access
US20070005829A1 (en) Memory card having memory element and card controller thereof
CN1595381B (zh) 桥控制器、桥和操作该桥的方法
US20060224821A1 (en) System for parallel updating flash memory and method for the same
JP2008521080A (ja) マルチメディア・カード・インターフェース方法、コンピュータ・プログラム及び装置
US7437503B2 (en) Method and apparatus for handling data transfers
CN106227682B (zh) 电子装置、存储器装置及其数据交换方法
KR100602278B1 (ko) 플래쉬 메모리
JP2002149625A (ja) マイクロコンピュータの制御方法