TWI841113B - 記憶體定址方法及相關聯的控制器 - Google Patents
記憶體定址方法及相關聯的控制器 Download PDFInfo
- Publication number
- TWI841113B TWI841113B TW111147608A TW111147608A TWI841113B TW I841113 B TWI841113 B TW I841113B TW 111147608 A TW111147608 A TW 111147608A TW 111147608 A TW111147608 A TW 111147608A TW I841113 B TWI841113 B TW I841113B
- Authority
- TW
- Taiwan
- Prior art keywords
- command
- address
- card
- memory location
- cmd22
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 76
- 230000004044 response Effects 0.000 claims description 16
- 238000012546 transfer Methods 0.000 description 12
- 238000010586 diagram Methods 0.000 description 9
- 101001121408 Homo sapiens L-amino-acid oxidase Proteins 0.000 description 2
- 102100026388 L-amino-acid oxidase Human genes 0.000 description 2
- 101100233916 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) KAR5 gene Proteins 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 101100012902 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) FIG2 gene Proteins 0.000 description 1
- 230000003139 buffering effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
Images
Abstract
本發明提供一種用於存取安全數位(Secruity Digital,SD)卡的方法,該SD卡包含:用於從主機接收電壓供應的電壓供應引腳、至少一個接地引腳、用於從主機接收時脈信號的時脈引腳、用於從主機接收命令的命令引腳,以及用於將資料寫入到該SD卡中或從該SD卡讀取資料的四個資料引腳。該方法包含:通過該命令引腳,從主機接收包含第一位址的位址擴展命令;通過該命令引腳,從主機接收包含第二位址的存取命令;以及通過該資料引腳,存取該SD卡中由第三位址指示的至少一個記憶體位置,該第三位址是該第一位址和該第二位址的組合。該存取命令指示選自以下各項的將對該SD卡執行的存取操作:單讀取操作、單寫入操作、多讀取操作、多寫入操作和擦除操作。
Description
本發明涉及一種用於記憶體裝置的方法及相關控制器、記憶體裝置和主機,且更具體地說,涉及記憶體裝置的記憶體定址方法及相關控制器、記憶體裝置和主機。
隨著用於處理視頻資料及/或音樂資料的數位通信裝置或電子裝置的廣泛使用及IA(互聯網電器)產品的普及,已經研發出用於存儲數位資料的各種類型的存儲裝置。記憶卡變成市場中的主流產品,由於它具有體積袖珍和低功耗的優點。記憶卡非常適合在各種類型的主機/裝置/系統中使用,例如數位相機、數位攝像機、MP3播放機、行動電話、個人數位助理(PDA)或全球定位系統(GPS)裝置。
安全數位(security digital,SD)卡是市場中常用的記憶卡。然而,因為SD卡的命令中的位址參數或變數參數僅具有32位元(目前最大存儲容量),使SD卡可以支援2百萬百萬位元組(TB),這並不能滿足各種應用中的容量要求。希望具有可以支援更大容量的SD卡,並且還需要提供此類SD卡的定址或存取方法。
因此,本發明的一個目標是提供一種能夠存取支援大於2 TB的容量的SD卡的定址方法,並提供相關SD卡、SD卡的控制器和主機。
本發明的一個實施例揭示一種用於存取安全數字(SD)卡的方法,該SD卡包含:用於從主機接收電壓供應的電壓供應引腳、至少一個接地引腳、用於從主機接收時脈信號的時脈引腳、用於從主機接收命令的命令引腳,以及用於將資料寫入到SD卡中或從SD卡讀取資料的四個資料引腳。方法包含:通過命令引腳,從主機接收包含第一位址的位址擴展命令;通過命令引腳,從主機接收包含第二位址的存取命令;以及通過資料引腳,存取SD卡中由第三位址指示的至少一個記憶體位置,該第三位址是第一位址和第二位址的組合。存取命令指示選自以下各項的將對SD卡執行的存取操作:單讀取操作、單寫入操作、多讀取操作、多寫入操作和擦除操作。
本發明的另一實施例揭示一種SD卡的控制器,該控制器經配置以執行上述方法。
本發明的另一實施例揭示一種用於存取SD卡的方法,該SD卡包含:用於從主機接收電壓供應的電壓供應引腳;至少一個接地引腳;用於從主機接收時脈信號的時脈引腳;用於從主機接收命令的命令引腳;以及用於將資料寫入到SD卡中或從SD卡讀取資料的四個資料引腳。方法包含:通過命令引腳,向SD卡傳輸包含第一位址的位址擴展命令;通過命令引腳,向SD卡傳輸包含第二位址的存取命令;以及通過資料引腳,存取SD卡中由第三位址指示的至少一個記憶體位置,該第三位址是第一位址和第二位址的組合。存取命令指示選自以下各項的將對SD卡執
行的存取操作:單讀取操作、單寫入操作、多讀取操作、多寫入操作和擦除操作。
本發明的另一實施例揭示一種SD卡,其包含記憶體模組、輸入/輸出(I/O)介面和控制器。記憶體模組包含多個記憶體位置。I/O介面包含:用於從主機接收電壓供應的電壓供應引腳、至少一個接地引腳、用於從主機接收時脈信號的時脈引腳、用於從主機接收命令的命令引腳,以及用於將資料寫入到SD卡中或從SD卡讀取資料的四個資料引腳。控制器經配置以進行以下操作:通過命令引腳,從I/O介面接收包含第一位址的位址擴展命令;通過命令引腳,從I/O介面接收包含第二位址的存取命令;以及存取由第三位址指示的多個記憶體位置中的至少一個,該第三位址是第一位址和第二位址的組合。存取命令指示選自以下各項的將對SD卡執行的存取操作:單讀取操作、單寫入操作、多讀取操作、多寫入操作和擦除操作。
本發明的又一實施例揭示一種能夠存取SD卡的電子裝置。SD卡包含I/O介面和處理器。I/O介面包含:用於向SD卡提供電壓供應的電壓供應觸點、至少一個接地觸點、用於向SD卡提供時脈信號的時脈觸點、用於向SD卡提供命令的命令觸點,以及用於將資料寫入到SD卡中或從SD卡讀取資料的四個資料觸點。處理器經配置以進行以下操作:通過命令觸點,向SD卡傳輸包含第一位址的位址擴展命令;通過命令觸點,向SD卡傳輸包含第二位址的存取命令;以及通過資料觸點,存取SD卡中由第三位址指示的至少一個記憶體位置,該第三位址是第一位址和第二位址的組合。存取命令指示選自以下各項的將對SD卡執行的存取操作:單讀取操作、單寫入操作、多讀取操作、多寫入操作和擦除操作。
毫無疑問,所屬領域的一般技術人員在閱讀各圖和附圖中示出的優選實施例的以下詳細描述之後將明白本發明的目標。
110:快閃記憶體控制器
112:微處理器
112C:程式碼
112M:唯讀記憶體
114:控制邏輯
116:緩衝記憶體
118:介面邏輯
120:快閃記憶體模組
132:處理器
134:輸入/輸出介面
142:編碼器
144:解碼器
700:方法
702:步驟
704:步驟
706:步驟
708:步驟
710:步驟
712:步驟
800:方法
802:步驟
804:步驟
806:步驟
808:步驟
810:步驟
812:步驟
814:步驟
816:步驟
820:步驟
822:步驟
824:步驟
826:步驟
900:方法
901:步驟
902:步驟
904:步驟
906:步驟
908:步驟
910:步驟
912:步驟
914:步驟
922:步驟
924:步驟
926:步驟
1000:方法
1002:步驟
1004:步驟
1006:步驟
1100:方法
1102:步驟
1104:步驟
1106:步驟
1108:步驟
1120:步驟
1122:步驟
1200:狀態
1202:狀態
1204:狀態
1212:狀態
1214:狀態
1215:狀態
1216:狀態
1218:狀態
1222:狀態
1223:狀態
1224:狀態
1250:狀態
A:安全數位(SD)卡
A1:插腳
A2:插腳
A3:插腳
A4:插腳
A5:插腳
A6:插腳
A7:插腳
A8:插腳
A9:插腳
H:主機
圖1顯示根據本發明的一些實施例的SD卡的命令的示意圖。
圖2顯示根據本發明的一些實施例的記憶體命令序列。
圖3顯示根據本發明的一些實施例的記憶體命令序列。
圖4A顯示根據本發明的一些實施例的記憶體命令序列。
圖4B顯示根據本發明的一些實施例的記憶體命令序列。
圖5A是根據本發明的一些實施例的SD卡的示意圖。
圖5B是根據本發明的一些實施例的SD卡的引腳的描述的表格。
圖6是根據本發明的一些實施例的SD卡和主機的組合的框圖。
圖7是根據本發明的一些實施例的一種主機存取SD卡的方法的流程圖。
圖8是根據本發明的一些實施例的一種主機存取SD卡的方法的流程圖。
圖9是根據本發明的一些實施例的一種主機存取SD卡的方法的流程圖。
圖10是根據本發明的一些實施例的由SD卡或SD卡的控制器執行的用於存取SD卡的方法的流程圖。
圖11是根據本發明的一些實施例的由SD卡或SD卡的控制器執行的用於存取SD卡的方法的流程圖。
圖12是根據本發明的一些實施例的當存取SD卡時SD卡的狀態變化的
狀態圖。
圖1顯示根據本發明的一些實施例的SD卡的命令的示意圖。
SD卡和主機之間的通信是基於命令和資料的串流。命令可被視為執行特定操作的請求。通過SD卡的命令(CMD)引腳將命令從主機傳輸到SD卡。如圖1所示,命令的總長度是48位元。命令開始於起始位(“0”)且終止於停止位或結束位(“1”)。傳輸器位元“1”表示命令從主機傳輸到SD卡。從SD卡到主機的回應也通過命令引腳傳輸。在此情況下,傳輸器位元被設置成“0”。索引包含6位元,且指示命令類型,該命令類型係確定將對SD卡執行的操作。SD卡的各種命令的定義詳細描述於由SD卡協會公佈的“部分1實體層規範(Part 1 Physical Layer Specification)”的章節4.7.3中。位址變數參數(或位址參數)包含32位元,且指示命令的位址資訊。迴圈冗餘檢查(CRC)代碼包含7位元,且用於檢測傳輸錯誤和保護命令的索引和位址中的內容。
下文描述不同類型的命令的實例。
CMD17命令指示在SD卡中由命令中的32位元位址指示的記憶體位置上執行單讀取(或單個塊讀取)操作的命令。因為十進位數字17的二進位碼是“10001”,所以CMD 17命令的索引是“10001”。CMD24命令指示具有索引“11000”且在SD卡中由命令中的32位元位址指示的記憶體位置上執行單寫入(或單個塊寫入)操作的命令。因為十進位數字24的二進位碼是“11000”,所以CMD 24命令的索引是“11000”。
CMD18命令指示具有索引“10010”且從SD卡中由命令中
的32位元位址指示的記憶體位置開始執行多讀取(或多個塊讀取)操作的命令。CMD23命令和CMD18命令的組合(例如,CMD23命令後跟著CMD18命令)指示從SD卡中由CMD18命令中的32位元位址指示的記憶體位置開始的多讀取操作,其中CMD23具有資料讀取長度的資訊。
CMD25命令指示具有索引“11001”且從SD卡中由命令中的32位元位址指示的記憶體位置開始執行多寫入(或多個塊讀取)操作的命令。CMD23命令和CMD25命令的組合(例如,CMD23命令後跟著CMD25命令)指示從SD卡中由CMD25命令中的32位元位址指示的記憶體位置開始的多寫入操作,其中CMD23具有資料寫入長度的資訊。
CMD38命令指示具有索引“100110”且對SD卡執行擦除操作的命令。例如,CMD32命令和CMD38命令的組合(例如,CMD32命令後跟著CMD38命令)指示從SD卡中由CMD32命令中的32位元位址指示的記憶體位置開始的擦除操作。CMD32命令、CMD33命令和CMD38命令的組合(例如,CMD32命令後跟著CMD33命令,CMD33命令後跟著CMD38命令)指示從SD卡中由CMD32命令中的32位元位址指示的記憶體位置到SD卡中由CMD33命令中的32位元位址指示的記憶體位置的擦除操作。
CMD44命令指示具有索引“101100”且對SD卡執行資料傳送操作的命令。例如,CMD44命令和CMD45命令的組合(例如,CMD44命令後跟著CMD45命令)指示起始於SD卡中由CMD45命令中的32位元位址指示的記憶體位置的資料傳送操作。
通常,因為待執行操作的位址資訊由對應於操作的一個命令中的32位元位址指示,所以一個命令的定址或存取能力限於2TB(232(32
位元位址)*29(512B塊)=241位元組=2TB),從而將SD卡可以支援的最大容量限於2TB。
在本發明的一些實施例中,提供一種可以支援大於2TB的容量的記憶體定址方法。利用位址擴展命令來將存取命令中的32位元位址擴展到大於32位,由此可以提供大於2TB的容量。存取命令可包含上文所描述的命令CMD17、CMD18、CMD24、CMD25、CMD32、CMD33或CMD44,該命令攜載待執行的對應操作的位址資訊。在一些實施例中,存取命令可為上文所描述的命令CMD17、CMD18、CMD24、CMD25、CMD32、CMD33或CMD44的組合。位址擴展命令可為選自常規SD卡應用中的保留命令池的命令,即,位址擴展命令可為CMD22、CMD31、CMD39、CMD41或CMD51。在一些實施例中,位址擴展命令可為選自保留命令池的命令的組合,例如,位址擴展命令可包含兩個CMD22命令。
具體地說,位址擴展命令可具有索引“010110”(CMD22),並在它的32位元位址變數參數中攜載位址,其中該位址可為6位元(例如,32位元位址變數參數中的低6位元)、32位元或32位元位址變數參數中的任何其它數目個位元。位址擴展命令中的位址與在位址擴展命令之後的存取命令中的位址組合以形成組合位址,該組合位址包含大於32個位元,並且可用於存取大於2TB的記憶體容量。如果位址擴展命令中的位址具有6位元,那麼組合位址具有38位元,並且實現對128TB(26*2TB=128TB)記憶體空間的存取。如果位址擴展命令具有32位元,那麼組合位址具有64位元,並且實現對232*2TB記憶體空間的存取。根據優選實施例,位址擴展命令中的位址可為組合位址的高位位址,且存
取命令中的位址可為組合位址的低位元位址。在另一實施例中,位址擴展命令中的位址可為組合位址的低位元位址,且存取命令中的位址可為組合位址的高位位址。
在較佳實施例中,組合位址是通過串聯連接位址擴展命令中包含的位址和存取命令中包含的位址來生成。例如,如果位址擴展命令中包含的位址是[X31:X0],且存取命令中包含的位址是[Y31:Y0],那麼組合位址是[X31:X0,Y31:Y0](或在一些實施例中為[Y31:Y0,X31:X0])。圖2示出根據本發明的一些實施例的記憶體讀取命令序列的實例。位址擴展命令CMD22在單讀取命令CMD17或多讀取命令CMD18之前。位址擴展命令CMD22(在它的32位元位址變數參數中)攜載將與單讀取命令CMD17或多讀取命令CMD18中的位址組合以形成組合位址的位址,該組合位址包含多32個位元以上,且指示執行單讀取操作或多讀取操作的記憶體位置。
關於多讀取操作,可以使用CMD23命令來設置操作的資料讀取長度。任選地,可以使用CMD12命令來停止多讀取操作,而不用通過CMD23命令設置多讀取操作的資料讀取長度。
圖3示出根據本發明的一些實施例的記憶體寫入命令序列的實例。位址擴展命令CMD22在單寫入命令CMD24或多寫入命令CMD25之前。位址擴展命令CMD22(在它的32位元位址變數參數中)攜載將與單寫入命令CMD24或多寫入命令CMD25中的位址組合以形成組合位址的位址,該組合位址包含32個位以上,且指示執行單寫入操作或多寫入操作的記憶體位置。
關於多寫入操作,可以使用CMD23命令來設置操作的資料
寫入長度。任選地,可以使用CMD12命令來停止多寫入操作,而不用通過CMD23命令設置多寫入操作的資料寫入長度。
圖4A示出根據本發明的一些實施例的記憶體擦除命令序列的實例。一個位址擴展命令CMD22在CMD32命令之前,且(在它的32位元位址變數參數中)攜載將與CMD32命令中的位址組合以形成組合位址的位址,該組合位址包含大於32個位元,且指示起始擦除操作的記憶體位置。另一位址擴展命令CMD22在CMD33命令之前,且(在它的32位元位址變數參數中)攜載將與CMD33命令中的位址組合以形成另一組合位址的位址,該另一組合位址包含32個位元以上,且指示結束擦除操作的記憶體位置。CMD38命令發起擦除操作。
圖4B示出根據本發明的一些實施例的記憶體資料傳送命令序列的實例。CMD44命令指示SD卡上的資料傳送操作。位址擴展命令CMD22在CMD45命令之前,且(在它的32位元位址變數參數中)攜載將與CMD45命令中的位址組合以便形成組合位址的位址,該組合位址包含32個位元以上,且指示起始資料傳送的記憶體位置。
圖5A是SD卡A的俯視圖。如圖5A中所示,SD卡A包含9個引腳,標記為A1到A9。
圖5B是圖5A中示出的SD卡A的引腳A1到A9的描述或定義的表格。如表格中所示,引腳A1和A7到A9是用於將資料寫入到SD卡A中或從SD卡A讀取資料的資料引腳。引腳A2被稱為命令引腳,其可接收從主機傳輸到SD卡A的命令,並且可回應於該命令而將回應從SD卡A傳輸到主機。引腳A4被稱為VDD引腳且用作SD卡A的電壓供應引腳。引腳A4可經配置以接收在2.7到3.6伏(V)範圍內的電壓。引腳A5被稱為時脈
(CLK)引腳,且經配置以接收時脈信號。引腳A3和/或A6是接地引腳。
圖6是根據本發明的一些實施例的示出SD卡A和主機H的組合的框圖。SD卡A包含快閃記憶體模組120和快閃記憶體控制器(或控制器)110,其中快閃記憶體控制器110經佈置以存取快閃記憶體模組120。快閃記憶體控制器110可經配置以從主機H接收命令(例如,位址擴展命令或存取命令)並根據該命令中的位址存取快閃記憶體模組120中的記憶體位置。快閃記憶體控制器110包括微處理器112、唯讀記憶體(ROM)112M、控制邏輯114、緩衝記憶體116和介面邏輯118。ROM 112M經佈置以存儲程式碼112C,且微處理器112經佈置以執行程式碼112C,以便控制對快閃記憶體模組120的存取。控制邏輯114包括編碼器142和解碼器144。
在一些實施例中,快閃記憶體模組120包括多個快閃記憶體晶片,每一快閃記憶體晶片包括多個塊,且快閃記憶體控制器110將“塊”視作對快閃記憶體模組120執行操作的擦除單元。快閃記憶體控制器110可通過微處理器112執行程式碼112C。在一些實施例中,塊可包含特定數目個頁,其中快閃記憶體控制器110將“頁”視作將資料寫入到快閃記憶體模組120的單元。在一些實施例中,快閃記憶體模組120可包含3DNAND型快閃記憶體。
實際上,通過微處理器112執行程式碼112C的快閃記憶體控制器110可以使用其內元件來執行各種控制操作,例如使用控制邏輯114來控制快閃記憶體模組120的存取操作(特別是至少一個塊或至少一個頁上的存取操作)、使用緩衝記憶體116來執行所需緩衝過程,以及使用介面邏輯118來通過SD卡A的資料引腳與主機H通信。例如,緩衝記憶體116可為靜態隨機存取記憶體(靜態RAM(SRAM)),但是本發明不限於此。
主機H可包含處理器132和耦合到SD卡A的輸入/輸出(I/O)介面134。I/O介面134可包含分別對應於SD卡A的引腳的觸點(即,I/O介面可包含九個觸點)。I/O介面134可包含用於提供電壓供應的電壓供應觸點、一或多個接地觸點、用於提供時脈信號的時脈觸點及命令觸點,該命令觸點用於電連接到SD卡A的命令引腳且用於向SD卡A提供命令。主機H的每一觸點的定義可以指圖5B中示出的表格。
圖7是根據本發明的一些實施例的由主機(或主機的處理器)執行的用於存取SD卡的方法700的流程圖。詳細步驟如下:
步驟702:主機確定將對SD卡執行的存取操作。存取操作可選自以下各項:單讀取操作、單寫入操作、多讀取操作、多寫入操作和擦除操作。
步驟704:主機確定SD卡中進行存取操作的記憶體位置,其中記憶體位置可以由64位元位址指示。
步驟706:主機將64位元位址分隔成32位元高位位址和32位元低位位址。
步驟708:主機通過SD卡的命令引腳將包含高位位址(在位址變數參數中)的位址擴展命令從主機的I/O介面傳輸到SD卡。
步驟710:主機通過SD卡的命令引腳將包含低位元位址(在位址變數參數中)的存取命令和指示存取操作(在索引中)的資訊傳輸到SD卡。
步驟712:主機通過SD卡的資料引腳存取SD卡中由組合位址指示的記憶體位置,該組合位址是高位位址和低位元位址的組合。
在上方描述的實施例中,高位位址和低位元位址均為32位。在一些其它實施例中,在步驟704中確定的指示記憶體位置的位址可
為38位元,並且高位位址可為6位元,低位位址為32位元。根據本發明,高位位址的位元的數目可以是不大於32的任何數目,因此不限於上方的實施例。此外,在一些實施例中,位址擴展命令可包含低位位址,且存取命令可包含高位位址。
在一些實施例中,如果位址擴展命令包括CMD22命令,且存取命令包括CMD17命令,那麼存取SD卡的記憶體位置的步驟(步驟712)包含在由組合位址指示的記憶體位置上執行單讀取操作,該組合位址是根據CMD22命令中包含的高位位址和CMD17命令中包含的低位位址而生成的。
在一些實施例中,如果位址擴展命令包括CMD22命令,且存取命令包括CMD24命令,那麼存取SD卡的記憶體位置的步驟(步驟712)包含在由組合位址指示的記憶體位置上執行單寫入操作,該組合位址是根據CMD22命令中包含的高位位址和CMD24命令中包含的低位位址而生成的。
在一些實施例中,如果位址擴展命令包括CMD22命令,且存取命令包括CMD23命令和CMD18命令(如圖2所示),那麼存取SD卡的記憶體位置的步驟(步驟712)包含從由組合位址指示的記憶體位置開始執行多讀取操作,該組合位址是根據CMD22命令中包含的高位位址和CMD18命令中包含的低位位址而生成的。CMD23命令用於設置多讀取操作的資料讀取長度。
在一些實施例中,如果位址擴展命令包括CMD22命令,且存取命令包括CMD23命令和CMD25命令(如圖3中所示),那麼存取SD卡的記憶體位置的步驟(步驟712)包含從由組合位址指示的記憶體位置開始
執行多寫入操作,該組合位址是根據CMD22命令中包含的高位位址和CMD25命令中包含的低位位址而生成的。CMD23命令用於設置多寫入操作的資料寫入長度。
在一些實施例中,如果位址擴展命令包括CMD22命令,且存取命令包括CMD32和CMD38命令,那麼存取SD卡的記憶體位置的步驟(步驟712)包含回應於CMD38命令,從由組合位址指示的記憶體位置開始執行擦除操作。組合位址是根據CMD22命令中包含的高位位址和CMD32命令中包含的低位位址而生成的。
在一些實施例中,如果位址擴展命令包括第一CMD22命令和第二CMD22命令,且存取命令包括CMD32命令、CMD33命令和CMD38命令(如圖4A所示),那麼存取SD卡的記憶體位置的步驟(步驟712)包含在由起始位址指示的記憶體位置和由結束位址指示的另一記憶體位置之間執行擦除操作,其中起始位址是根據第一CMD22命令中包含的高位位址和CMD32命令中包含的低位位址而生成的,且結束位址是根據第二CMD22命令中包含的高位位址和CMD33命令中包含的低位位址而生成的。擦除操作由CMD38命令發起。
在一些實施例中,如果位址擴展命令包括CMD22命令,且存取命令包括CMD44命令和CMD45命令(如圖4B所示),那麼存取SD卡的記憶體位置的步驟(步驟712)包含執行從由組合位址指示的記憶體位置傳送資料,該組合位址是根據CMD22命令中包含的高位位址和CMD45命令中包含的低位位址而生成的。CMD44命令用於設置資料方向、優先任務ID和待傳送塊的總數。
應注意,圖7中所示的步驟的次序僅為示例性的,且這些
步驟可以根據各種應用以任何其它合適的次序重新佈置。例如,在一些其它實施例中,步驟704可在步驟702之前,或步驟710可在步驟708之前。
圖8是根據本發明的一些實施例的由主機執行的用於存取SD卡的方法800的流程圖。詳細步驟如下:
步驟802:主機接收SD卡的容量的資訊。該資訊可存儲在SD卡中的卡特定資料(CSD)寄存器中。
步驟804:主機確定SD卡的容量是否超過預定閾值,例如,可以通過32位元位址呈現的容量。閾值可為2TB或小於2TB。如果結果是肯定的,則執行步驟806。如果結果是否定的,則執行步驟820。
步驟806:主機確定將對SD卡執行的存取操作。存取操作可選自以下各項:單讀取操作、單寫入操作、多讀取操作、多寫入操作和擦除操作。
步驟808:主機確定SD卡中進行存取操作的記憶體位置,其中記憶體位置可以由64位元位址指示。
步驟810:主機將64位元位址分隔成32位元高位位址和32位元低位位址。
步驟812:主機通過SD卡的命令引腳將包含高位位址(在位址變數參數中)的位址擴展命令從主機的I/O介面傳輸到SD卡。
步驟814:主機通過SD卡的命令引腳將包含低位元位址(在位址變數參數中)的存取命令和指示存取操作(在索引中)的資訊傳輸到SD卡。
步驟816:主機通過SD卡的資料引腳存取SD卡中由組合位址指示的記憶體位置,該組合位址是高位位址和低位元位址的組合。
步驟820:主機確定將對SD卡執行的存取操作。存取操作可選自以
下各項:單讀取操作、單寫入操作、多讀取操作、多寫入操作和擦除操作。
步驟822:主機確定SD卡中進行存取操作的記憶體位置,其中記憶體位置由32位元位址指示。
步驟824:主機通過SD卡的命令引腳將包含32位元位址(在位址變數參數中)的存取命令和指示存取操作(在索引中)的資訊傳輸到SD卡。
步驟826:主機根據步驟824中的存取操作通過SD卡的資料引腳存取SD卡中由32位元位址指示的記憶體位置。
在當前實施例中,主機H首先確定SD卡的容量。如果SD卡的容量超過閾值,例如2 TB,則執行步驟806;否則,則執行步驟820。步驟806到816的操作與步驟702到712的操作大致相同。換句話說,如果主機H確定SD卡的容量超過2TB,那麼存取SD卡需要位址擴展命令;否則,僅存取命令對於存取SD卡來說就足夠了。
應注意,圖8中所示的步驟的次序僅為示例性的,且這些步驟可以根據各種應用以任何其它合適的次序重新佈置。例如,在一些其它實施例中,步驟806和步驟820可以組合並且可在步驟802之前,或步驟814可在步驟812之前。
圖9是根據本發明的一些實施例的由主機執行的用於存取SD卡的方法900的流程圖。詳細步驟如下:
步驟901:主機確定將對SD卡執行的存取操作。存取操作可選自以下各項:單讀取操作、單寫入操作、多讀取操作、多寫入操作和擦除操作。
步驟902:主機接收SD卡的容量的資訊。資訊可存儲在SD卡中的
CSD寄存器中。
步驟904:主機確定SD卡的容量是否超過預定閾值。閾值可為2TB或小於2TB。如果結果是肯定的,則執行步驟906。如果結果是否定的,則執行步驟922。
步驟906:主機確定SD卡中進行在步驟901中確定的存取操作的記憶體位置,其中記憶體位置可由64位元位址或32位元位址指示。如果記憶體位置將由大於32位元的位址指示,則執行步驟908。如果記憶體位置可由32位元位址指示,則執行步驟922。
步驟908:主機將64位元位址分隔成32位元高位位址和32位元低位位址。
步驟910:主機通過SD卡的命令引腳將包含高位位址(在位址變數參數中)的位址擴展命令從主機的I/O介面傳輸到SD卡。
步驟912:主機通過SD卡的命令引腳將包含低位元位址(在位址變數參數中)的存取命令和指示存取操作(在索引中)的資訊傳輸到SD卡。
步驟914:主機通過SD卡的資料引腳存取SD卡中由組合位址指示的記憶體位置,該組合位址是高位位址和低位元位址的組合。
步驟922:主機確定SD卡中進行存取操作的記憶體位置,其中記憶體位置由32位元位址指示。
步驟924:主機通過SD卡的命令引腳將包含32位元位址(在位址變數參數中)的存取命令和指示存取操作(在索引中)的資訊傳輸到SD卡。
步驟926:主機根據步驟824中的存取操作通過SD卡的資料引腳存取SD卡中由32位元位址指示的記憶體位置。
應注意,在方法900中,即使主機認識到SD卡支援大於例
如2TB的容量,主機仍然可以選擇可由32位元位址指示的記憶體位置來執行存取操作,而不需要傳輸位址擴展命令。
圖10是根據本發明的一些實施例的由SD卡或SD卡的控制器執行的用於存取SD卡的方法1000的流程圖。詳細步驟如下:
步驟1002:SD卡(或SD卡的控制器)通過SD卡的命令引腳從主機的I/O介面接收包含高位位址(在位址變數參數中)的位址擴展命令。
步驟1004:SD卡(或SD卡的控制器)通過SD卡的命令引腳接收包含低位元位址(在位址變數參數中)的存取命令和指示存取操作(在索引中)的資訊。存取操作可選自以下各項:單讀取操作、單寫入操作、多讀取操作、多寫入操作和擦除操作。
步驟1006:SD卡(或SD卡的控制器)存取SD卡中由組合位址指示的記憶體位置,該組合位址是高位位址和低位元位址的組合。
高位位址和低位元位址均可為32位元。在一些其它實施例中,高位位址可為6位元,且低位位址是32位元。在其它情況下,高位位址可為32位元且僅含有6位元有意義。根據本發明的,高位位址的位元(例如,有意義位元)的數目可以是不大於32的任何數目,因此不限於上方的實施例。此外,在一些實施例中,位址擴展命令可包含低位位址,且存取命令可包含高位位址。
在一些實施例中,如果位址擴展命令包括CMD22命令,且存取命令包括CMD17命令,那麼存取SD卡的記憶體位置的步驟(步驟1006)包含在由組合位址指示的記憶體位置上執行單讀取操作,該組合位址是根據CMD22命令中包含的高位位址和CMD17命令中包含的低位位址而生成的。
在一些實施例中,如果位址擴展命令包括CMD22命令,且存取命令包括CMD24命令,那麼存取SD卡的記憶體位置的步驟(步驟1006)包含在由組合位址指示的記憶體位置上執行單寫入操作,該組合位址是根據CMD22命令中包含的高位位址和CMD24命令中包含的低位位址而生成的。
在一些實施例中,如果位址擴展命令包括CMD22命令,且存取命令包括CMD23命令和CMD18命令(如圖2所示),那麼存取SD卡的記憶體位置的步驟(步驟1006)包含從由組合位址指示的記憶體位置開始執行多讀取操作,該組合位址是根據CMD22命令中包含的高位位址和CMD18命令中包含的低位位址而生成的。CMD23命令用於設置多讀取操作的資料讀取長度。
在一些實施例中,如果位址擴展命令包括CMD22命令,且存取命令包括CMD23命令和CMD25命令(如圖3中所示),那麼存取SD卡的記憶體位置的步驟(步驟1006)包含從由組合位址指示的記憶體位置開始執行多寫入操作,該組合位址是根據CMD22命令中包含的高位位址和CMD25命令中包含的低位位址而生成的。CMD23命令用於設置多寫入操作的資料寫入長度。
在一些實施例中,如果位址擴展命令包括CMD22命令,且存取命令包括CMD32和CMD38命令,那麼存取SD卡的記憶體位置的步驟(步驟1006)包含回應於CMD38命令,從由組合位址指示的記憶體位置開始執行擦除操作。組合位址是根據CMD22命令中包含的高位位址和CMD32命令中包含的低位位址而生成的。
在一些實施例中,如果位址擴展命令包括第一CMD22命令
和第二CMD22命令,且存取命令包括CMD32命令、CMD33命令和CMD38命令(如圖4A所示),那麼存取SD卡的記憶體位置的步驟(步驟1006)包含在由起始位址指示的記憶體位置和由結束位址指示的另一記憶體位置之間執行擦除操作,其中起始位址可根據第一CMD22命令中包含的高位位址和CMD32命令中包含的低位位址而生成,且結束位址可根據第二CMD22命令中包含的高位位址和CMD33命令中包含的低位位址而生成。擦除操作由CMD38命令發起。
在一些實施例中,如果位址擴展命令包括CMD22命令,且存取命令包括CMD44命令和CMD45命令(如圖4B所示),那麼存取SD卡的記憶體位置的步驟(步驟1006)包含執行從由組合位址指示的記憶體位置傳送資料,該組合位址是根據CMD22命令中包含的高位位址和CMD45命令中包含的低位位址而生成的。CMD44命令用於設置資料方向、優先任務ID和待傳送塊的總數。
應注意,圖10中所示的步驟的次序僅為示例性的,且這些步驟可以根據各種應用以任何其它合適的次序重新佈置。例如,在一些其它實施例中,步驟1004可在步驟1002之前。
圖11是根據本發明的一些實施例的由SD卡或SD卡的控制器執行的用於存取SD卡的方法1100的流程圖。詳細步驟如下:
步驟1102:SD卡(或SD卡的控制器)將SD卡的容量的資訊傳輸到主機。資訊可存儲在SD卡中的CSD寄存器中。
步驟1104:SD卡確定是否接收到包含高位位址(在位址變數參數中)位址擴展命令。如果接收到位址擴展命令,則執行步驟1106;否則執行步驟1120。
步驟1106:SD卡(或SD卡的控制器)通過SD卡的命令引腳接收包含低位元位址(在位址變數參數中)的存取命令和指示存取操作(在索引中)的資訊。存取操作可選自以下各項:單讀取操作、單寫入操作、多讀取操作、多寫入操作和擦除操作。
步驟1108:SD卡(或SD卡的控制器)存取SD卡中由組合位址指示的記憶體位置,該組合位址是高位位址和低位元位址的組合。存取操作可選自以下各項:單讀取操作、單寫入操作、多讀取操作、多寫入操作和擦除操作。
步驟1120:SD卡(或SD卡的控制器)通過SD卡的命令引腳從主機的I/O介面接收包含32位元位址(在位址變數參數中)的存取命令和指示存取操作(在索引中)的資訊。
步驟1122:SD卡(或SD卡的控制器)根據步驟1120中的存取操作存取SD卡中由32位元位址指示的記憶體位置。
應注意,圖11中所示的步驟的次序僅為示例性的,且這些步驟可以根據各種應用以任何其它合適的次序重新佈置。例如,用於接收存取命令的步驟1106和1120可以組合,並且可在步驟1104之前。
圖12是根據本發明的一些實施例的示出當存取SD卡時SD卡的狀態變化的狀態圖。
狀態圖開始於狀態1200,即傳送狀態,在狀態1200中,SD卡在特定時間段內未接收到任何存取命令。也就是說,SD卡尚未接收到任何高位位址或低位元位址。
在狀態1200中,如果接收到CMD17、CMD18、CMD24或CMD25命令,那麼SD卡接收到CMD17、CMD18、CMD24或CMD25命
令所攜載的低位位址,並且SD卡進入狀態1204。SD卡隨後進入狀態1250。
在狀態1200中,如果接收到CMD22命令,那麼SD卡接收到CMD22命令所攜載的高位位址,並且SD卡進入狀態1202。
在狀態1200中,如果接收到CMD23命令,那麼SD卡接收到CMD23命令所攜載的資料長度,並且SD卡進入狀態1222,其中SD卡尚未接收到任何高位位址或低位元位址。
在狀態1200中,如果接收到CMD32命令,那麼SD卡接收到CMD32命令所攜載的低位位址,並且SD卡進入狀態1212。
在狀態1202中,如果接收到新CMD22命令,那麼新CMD22命令所攜載的高位位址替換在SD卡從狀態1200切換到狀態1202時接收到的高位位址,並且SD卡保持處於狀態1202。
在狀態1202中,如果接收到CMD17、CMD18、CMD24或CMD25命令,那麼SD卡接收到CMD17、CMD18、CMD24或CMD25命令所攜載的低位位址,並且SD卡進入狀態1204。SD卡隨後進入狀態1250。
在狀態1202中,如果接收到命令32,那麼SD卡接收到CMD32命令所攜載的低位位址,並且SD卡進入狀態1212。
在狀態1222中,如果接收到新CMD23命令,那麼新CMD23命令所攜載的資料長度替換在SD卡從狀態1200切換到狀態1222時接收到的資料長度,並且SD卡保持處於狀態1222。
在狀態1222中,如果接收到CMD22命令,那麼SD卡接收到CMD22命令所攜載的高位位址,並且SD卡進入狀態1223。
在狀態1222中,如果接收到CMD18或CMD25命令,那麼SD卡接收到CMD18或CMD25命令所攜載的低位位址,並且SD卡進入狀態1224,其中SD卡隨後進入狀態1250。
在狀態1223中,如果接收到新CMD22命令,那麼新CMD22命令所攜載的高位位址替換在SD卡從狀態1222切換到狀態1223時接收到的高位位址,並且SD卡保持處於狀態1223。
在狀態1223中,如果接收到新CMD23命令,那麼新CMD23命令所攜載的資料長度替換當前資料長度,並且SD卡返回到狀態1222。
在狀態1223中,如果接收到CMD18或CMD25命令,那麼SD卡接收到CMD18或CMD25命令所攜載的低位位址,並且SD卡進入狀態1224,其中SD卡隨後進入狀態1250。
在狀態1212中,SD卡隨後進入狀態1214。
在狀態1214中,如果接收到CMD33命令,那麼SD卡接收到CMD33命令所攜載的低位位址,並且SD卡進入狀態1216。
在狀態1214中,如果接收到CMD22命令,那麼SD卡接收到CMD22命令所攜載的高位位址,並且SD卡進入狀態1215。
在狀態1215中,如果接收到新CMD22命令,那麼新CMD22命令所攜載的高位位址替換在SD卡從狀態1214切換到狀態1215時接收到的高位位址,並且SD卡保持處於狀態1215。
在狀態1215中,如果接收到CMD33命令,那麼SD卡接收到CMD33命令所攜載的低位位址,並且SD卡進入狀態1216。
在狀態1216中,如果接收到CMD38命令,那麼向SD卡指
示對應操作(例如,擦除操作),並且SD卡進入狀態1218,其中SD卡隨後進入狀態1250。
在狀態1250中,根據由存取命令(例如CMD17、CMD18、CMD24、CMD25、CMD32和CMD33)的索引欄位指示的操作,在SD卡中通過低位元位址或高位位址和低位元位址的組合確定的位置處存取SD卡。如果所確定的位置無法存取(例如,在唯讀區域內)或不存在於SD卡中(例如,超過SD卡的容量),那麼將拒絕存取,並且SD卡返回到狀態1200。
應注意,在圖12中示出的示例性實施例中,在狀態1202、狀態1222、狀態1223、狀態1214、狀態1215和狀態1216中,如果接收到非預期命令(即,除上文在相應描述中描述的命令以外的命令),那麼SD卡返回到傳送狀態1200(如由虛線箭頭指示)。
考慮到上文,本領域中的普通技術人員可以瞭解,圖7到11中描繪的流程圖是本發明的實施例,並且可以基於圖12的狀態圖推導出由SD卡或主機執行的其它流程圖。
可以使用以下條款進一步描述本發明:
1.一種用於存取安全數位(SD)卡的方法,該SD卡包括:用於從主機接收電壓供應的電壓供應引腳;至少一個接地引腳;用於從該主機接收時脈信號的時脈引腳;用於從該主機接收命令的命令引腳;以及用於將資料寫入到該SD卡中或從該SD卡讀取資料的四個資料引腳,該方法包括:
通過該命令引腳,從該主機接收包含第一位址的位址擴展命令;通過該命令引腳,從該主機接收包含第二位址的存取命令;以及通過該資料引腳,存取該SD卡中由第三位址指示的至少一個記憶體位置,該第三位址是該第一位址和該第二位址的組合;其中該存取命令指示選自以下各項的將對該SD卡執行的存取操作:單讀取操作、單寫入操作、多讀取操作、多寫入操作和擦除操作。
2.根據條款1該的方法,其中該第三位址是通過串聯連接該第一位址和該第二位址來生成。
3.根據條款1該的方法,其中該第一位址和該第二位址均為32位。
4.根據條款1該的方法,其中該第一位址是6位元,且該第二位址是32位元。
5.根據條款1該的方法,其中如果該位址擴展命令包括CMD22命令,且該存取命令包括CMD17命令,那麼存取該SD卡的該記憶體位置的步驟包含在由該第三位址指示的該記憶體位置上執行該單讀取操作,並且其中該第三位址是根據該CMD22命令中包含的該第一位址和該CMD17命令中包含的該第二位址而生成的。
6.根據條款1該的方法,其中如果該位址擴展命令包括CMD22命令,且該存取命令包括CMD24命令,那麼存取該SD卡的該記憶體位置的步驟包含在由該第三位址指示的該記憶體位置上執行該單寫入操作,並且其中該第三位址是根據該CMD22命令中包含的該第一位址和該CMD24命令中包含的該第二位址而生成的。
7.根據條款1該的方法,其中如果該位址擴展命令包括CMD22命令,且該存取命令包括CMD23命令和CMD18命令,那麼存取該SD卡的該記憶
體位置的步驟包含從由該第三位址指示的該記憶體位置開始執行該多讀取操作,並且其中該第三位址是根據該CMD22命令中包含的該第一位址和該CMD18命令中包含的該第二位址而生成的。
8.根據條款1該的方法,其中如果該位址擴展命令包括CMD22命令,且該存取命令包括CMD23命令和CMD25命令,那麼存取該SD卡的該記憶體位置的步驟包含從由該第三位址指示的該記憶體位置開始執行該多寫入操作,並且其中該第三位址是根據該CMD22命令中包含的該第一位址和該CMD25命令中包含的該第二位址而生成的。
9.根據條款1該的方法,其中如果該位址擴展命令包括CMD22命令,且該存取命令包括CMD32和CMD38命令,那麼存取該SD卡的該記憶體位置的步驟包含回應於該CMD38命令,從由該第三位址指示的該記憶體位置開始執行該擦除操作,並且其中該第三位址是根據該CMD22命令和該CMD32命令而生成的。
10.根據條款1該的方法,其中如果該位址擴展命令包括第一CMD22命令和第二CMD22命令,且該存取命令包括CMD32命令、CMD33命令和CMD38命令,那麼存取該SD卡的該記憶體位置的步驟包含回應於該CMD38命令,在由該第三位址指示的該記憶體位置和由第四位址指示的另一記憶體位置之間執行該擦除操作,並且其中該第三位址是根據該第一CMD22命令和該CMD32命令而生成的,且該第四位址是根據該第二CMD22命令和該CMD33命令而生成的。
11.根據條款1該的方法,其中如果該位址擴展命令包括CMD22命令,且該存取命令包括CMD44命令和CMD45命令,那麼存取該SD卡的該記憶體位置的步驟包含執行從由該第三位址指示的該記憶體位置傳送資
料,並且其中該第三位址是根據該CMD22命令中包含的該第一位址和該CMD45命令中包含的該第二位址而生成的。
12.根據條款1該的方法,還包括將該SD卡的容量的資訊傳輸到該主機。
13.一種SD卡的控制器,其經配置以執行根據條款1到12中任一條款所述的方法。
14.一種用於存取SD卡的方法,該SD卡包括:用於從主機接收電壓供應的電壓供應引腳;至少一個接地引腳;用於從該主機接收時脈信號的時脈引腳;用於從該主機接收命令的命令引腳;以及用於將資料寫入到該SD卡中或從該SD卡讀取資料的四個資料引腳,該方法包括:通過該命令引腳,向該SD卡傳輸包含第一位址的位址擴展命令;通過該命令引腳,向該SD卡傳輸包含第二位址的存取命令;以及通過該資料引腳,存取該SD卡中由第三位址指示的至少一個記憶體位置,該第三位址是該第一位址和該第二位址的組合;其中該存取命令指示選自以下各項的將對該SD卡執行的存取操作:單讀取操作、單寫入操作、多讀取操作、多寫入操作和擦除操作。
15.根據條款14該的方法,其中該第三位址是通過串聯連接該第一位址和該第二位址來生成。
16.根據條款14該的方法,還包括接收該SD卡的容量的資訊;其中如果該SD卡的該容量超過預定閾值,那麼執行傳輸該位址擴展命令的步
驟。
17.根據條款14該的方法,其中該第一位址和該第二位址均為32位元。
18.根據條款14該的方法,其中該第一位址是6位,且該第二位址是32位元。
19.根據條款14該的方法,其中如果該位址擴展命令包括CMD22命令,且該存取命令包括CMD17命令,那麼存取該SD卡的該記憶體位置的步驟包含在由該第三位址指示的該記憶體位置上執行該單讀取操作,並且其中該第三位址是根據該CMD22命令中包含的該第一位址和該CMD17命令中包含的該第二位址而生成的。
20.根據條款14該的方法,其中如果該位址擴展命令包括CMD22命令,且該存取命令包括CMD24命令,那麼存取該SD卡的該記憶體位置的步驟包含在由該第三位址指示的該記憶體位置上執行該單寫入操作,並且其中該第三位址是根據該CMD22命令中包含的該第一位址和該CMD24命令中包含的該第二位址而生成的。
21.根據條款14該的方法,其中如果該位址擴展命令包括CMD22命令,且該存取命令包括CMD23命令和CMD18命令,那麼存取該SD卡的該記憶體位置的步驟包含從由該第三位址指示的該記憶體位置開始執行該多讀取操作,並且其中該第三位址是根據該CMD22命令中包含的該第一位址和該CMD18命令中包含的該第二位址而生成的。
22.根據條款14該的方法,其中如果該位址擴展命令包括CMD22命令,且該存取命令包括CMD23命令和CMD25命令,那麼存取該SD卡的該記憶體位置的步驟包含從由該第三位址指示的該記憶體位置開始執行該多
寫入操作,並且其中該第三位址是根據該CMD22命令中包含的該第一位址和該CMD25命令中包含的該第二位址而生成的。
23.根據條款14該的方法,其中如果該位址擴展命令包括CMD22命令,且該存取命令包括CMD32和CMD38命令,那麼存取該SD卡的該記憶體位置的步驟包含回應於該CMD38命令,從由該第三位址指示的該記憶體位置開始執行該擦除操作,並且其中該第三位址是根據該CMD22命令和該CMD32命令而生成的。
24.根據條款14該的方法,其中如果該位址擴展命令包括第一CMD22命令和第二CMD22命令,且該存取命令包括CMD32命令、CMD33命令和CMD38命令,那麼存取該SD卡的該記憶體位置的步驟包含回應於該CMD38命令,在由該第三位址指示的該記憶體位置和由第四位址指示的另一記憶體位置之間執行該擦除操作,並且其中該第三位址是根據該第一CMD22命令和該CMD32命令而生成的,且該第四位址是根據該第二CMD22命令和該CMD33命令而生成的。
25.根據條款14該的方法,其中如果該位址擴展命令包括CMD22命令,且該存取命令包括CMD44命令和CMD45命令,那麼存取該SD卡的該記憶體位置的步驟包含執行從由該第三位址指示的該記憶體位置傳送資料,並且其中該第三位址是根據該CMD22命令中包含的該第一位址和該CMD45命令中包含的該第二位址而生成的。
26.根據條款14該的方法,還包括:確定存取可由第四位址指示的記憶體位置;通過該命令引腳,向該SD卡傳輸包含該第四位址的另一存取命令;以及
通過該資料引腳,存取由該第四位址指示的該SD卡的該記憶體位置。
27.一種SD卡,包括:記憶體模組,其包含多個記憶體位置;輸入/輸出(I/O)介面,其包括:用於從主機接收電壓供應的電壓供應引腳;至少一個接地引腳;用於從該主機接收時脈信號的時脈引腳;用於從該主機接收命令的命令引腳;以及用於將資料寫入到該SD卡中或從該SD卡讀取資料的四個資料引腳;以及控制器,其經配置以進行以下操作:通過該命令引腳,從該I/O介面接收包含第一位址的位址擴展命令;通過該命令引腳,從該I/O介面接收包含第二位址的存取命令;以及存取該多個記憶體位置中由第三位址指示的至少一個,該第三位址是該第一位址和該第二位址的組合,其中該存取命令指示選自以下各項的將對該SD卡執行的存取操作:單讀取操作、單寫入操作、多讀取操作、多寫入操作和擦除操作。
28.根據條款27該的SD卡,其中該第三位址是通過串聯連接該第一位址和該第二位址來生成。
29.根據條款27該的SD卡,其中該高位位址和該低位位址均為32位元。
30.根據條款27該的SD卡,其中該高位位址是6位元,且該低位位址
是32位元。
31.根據條款27該的SD卡,其中如果該位址擴展命令包括CMD22命令,且該存取命令包括CMD17命令,那麼該控制器在由該第三位址指示的該記憶體位置上執行單讀取操作,並且其中該第三位址是根據該CMD22命令中包含的該第一位址和該CMD17命令中包含的該第二位址而生成的。
32.根據條款27該的SD卡,其中如果該位址擴展命令包括CMD22命令,且該存取命令包括CMD24命令,那麼該控制器在由該第三位址指示的該記憶體位置上執行單寫入操作,並且其中該第三位址是根據該CMD22命令中包含的該第一位址和該CMD24命令中包含的該第二位址而生成的。
33.根據條款27該的SD卡,其中如果該位址擴展命令包括CMD22命令,且該存取命令包括CMD23命令和CMD18命令,那麼該控制器從由該第三位址指示的該記憶體位置開始執行多讀取操作,並且其中該第三位址是根據該CMD22命令中包含的該第一位址和該CMD18命令中包含的該第二位址而生成的。
34.根據條款27該的SD卡,其中如果該位址擴展命令包括CMD22命令,且該存取命令包括CMD23命令和CMD25命令,那麼該控制器從由該第三位址指示的該記憶體位置開始執行多寫入操作,並且其中該第三位址是根據該CMD22命令中包含的該第一位址和該CMD25命令中包含的該第二位址而生成的。
35.根據條款27該的SD卡,其中如果該位址擴展命令包括CMD22命令,且該存取命令包括CMD32和CMD38命令,那麼該控制器回應於該
CMD38命令而從由該第三位址指示的該記憶體位置開始執行擦除操作,並且其中該第三位址是根據該CMD22命令和該CMD32命令而生成的。
36.根據條款27該的SD卡,其中如果該位址擴展命令包括第一CMD22命令和第二CMD22命令,且該存取命令包括CMD32命令、CMD33命令和CMD38命令,那麼該控制器回應於該CMD38命令而在由該第三位址指示的該記憶體位置和由第四位址指示的另一記憶體位置之間執行擦除操作,並且其中該第三位址是根據該第一CMD22命令和該CMD32命令而生成的,且該第四位址是根據該第二CMD22命令和該CMD33命令而生成的。
37.根據條款27該的SD卡,其中如果該位址擴展命令包括CMD22命令,且該存取命令包括CMD44命令和CMD45命令,那麼該控制器執行從由該第三位址指示的該記憶體位置傳送資料,並且其中該第三位址是根據該CMD22命令中包含的該第一位址和該CMD45命令中包含的該第二位址而生成的。
38.根據條款27該的SD卡,其中該控制器還經配置以向該主機傳輸該SD卡的容量的資訊。
39.一種能夠存取SD卡的電子裝置,包括:I/O介面,其包括:用於向該SD卡提供電壓供應的電壓供應觸點;至少一個接地觸點;用於向該SD卡提供時脈信號的時脈觸點;用於向該SD卡提供命令的命令觸點;以及用於將資料寫入到該SD卡中或從該SD卡讀取資料的四個資料觸點;
以及處理器,其經配置以進行以下操作:通過該命令觸點,向該SD卡傳輸包含第一位址的位址擴展命令;通過該命令觸點,向該SD卡傳輸包含第二位址的存取命令;以及通過該資料觸點,存取該SD卡中由第三位址指示的至少一個記憶體位置,該第三位址是該第一位址和該第二位址的組合;其中該存取命令指示選自以下各項的將對該SD卡執行的存取操作:單讀取操作、單寫入操作、多讀取操作、多寫入操作和擦除操作。
40.根據條款39該的電子裝置,其中該第三位址是通過串聯連接該第一位址和該第二位址來生成。
41.根據條款39該的電子裝置,其中該處理器還經配置以基於從該I/O介面接收的資訊來確定該SD卡的容量;並且其中如果所確定的該SD卡的容量超過預定閾值,那麼傳輸該位址擴展命令。
42.根據條款39該的電子裝置,其中該第一位址和該第二位址均為32位元。
43.根據條款39該的電子裝置,其中該第一位址是6位元,且該第二位址是32位元。
44.根據條款39該的電子裝置,其中如果該位址擴展命令包括CMD22命令,且該存取命令包括CMD17命令,那麼該處理器在由該第三位址指示的該記憶體位置上執行單讀取操作,並且其中該第三位址是根據該CMD22命令中包含的該第一位址和該CMD17命令中包含的該第二位址而生成的。
45.根據條款39該的電子裝置,其中如果該位址擴展命令包括CMD22
命令,且該存取命令包括CMD24命令,那麼該處理器在由該第三位址指示的該記憶體位置上執行單寫入操作,並且其中該第三位址是根據該CMD22命令中包含的該第一位址和該CMD24命令中包含的該第二位址而生成的。
46.根據條款39該的電子裝置,其中如果該位址擴展命令包括CMD22命令,且該存取命令包括CMD23命令和CMD18命令,那麼該處理器從由該第三位址指示的該記憶體位置開始執行多讀取操作,並且其中該第三位址是根據該CMD22命令中包含的該第一位址和該CMD18命令中包含的該第二位址而生成的。
47.根據條款39該的電子裝置,其中如果該位址擴展命令包括CMD22命令,且該存取命令包括CMD23命令和CMD25命令,那麼該處理器從由該第三位址指示的該記憶體位置開始執行多寫入操作,並且其中該第三位址是根據該CMD22命令中包含的該第一位址和該CMD25命令中包含的該第二位址而生成的。
48.根據條款39該的電子裝置,其中如果該位址擴展命令包括CMD22命令,且該存取命令包括CMD32和CMD38命令,那麼該處理器回應於該CMD38命令而從由該第三位址指示的該記憶體位置開始執行擦除操作,並且其中該第三位址是根據該CMD22命令和該CMD32命令而生成的。
49.根據條款39該的電子裝置,其中如果該位址擴展命令包括第一CMD22命令和第二CMD22命令,且該存取命令包括CMD32命令、CMD33命令和CMD38命令,那麼該處理器回應於該CMD38命令而在由該第三位址指示的該記憶體位置和由第四位址指示的另一記憶體位置之間執行擦除操作,並且其中該第三位址是根據該第一CMD22命令和該
CMD32命令而生成的,且該第四位址是根據該第二CMD22命令和該CMD33命令而生成的。
50.根據條款39該的電子裝置,其中如果該位址擴展命令包括CMD22命令,且該存取命令包括CMD44命令和CMD45命令,那麼該處理器執行從由該第三位址指示的該記憶體位置傳送資料,並且其中該第三位址是根據該CMD22命令中包含的該第一位址和該CMD45命令中包含的該第二位址而生成的。
51.根據條款39該的電子裝置,其中如果該電子裝置確定存取可由第四位址指示的記憶體位置,那麼該處理器還經配置以進行以下操作:通過該命令引腳,向該SD卡傳輸包含該第四位址的另一存取命令;以及通過該資料引腳,存取由該第四位址指示的該SD卡的該記憶體位置。
應注意,上述揭示內容是出於說明性目的,且不應被視為限制本發明。所屬領域的技術人員將很容易觀察到可以對裝置和方法進行許多修改和更改,同時保持本發明的教示內容。因此,上述揭示內容應該被理解為僅受所附申請專利範圍的邊界限制。
1200:狀態
1202:狀態
1204:狀態
1212:狀態
1214:狀態
1215:狀態
1216:狀態
1218:狀態
1222:狀態
1223:狀態
1224:狀態
1250:狀態
Claims (14)
- 一種用於能夠存取SD卡的電子裝置的方法,該電子裝置包括:I/O介面,其包括:用於向該SD卡提供電壓供應的電壓供應觸點;至少一個接地觸點;用於向該SD卡提供時脈信號的時脈觸點;用於向該SD卡提供命令的命令觸點;以及用於將資料寫入到該SD卡中或從該SD卡讀取資料的四個資料觸點;以及該方法包括:通過該命令觸點,向該SD卡傳輸包含第一位址的位址擴展命令;通過該命令觸點,向該SD卡傳輸包含第二位址的存取命令;以及存取該SD卡中由第三位址指示的至少一個記憶體位置,該第三位址是該第一位址和該第二位址的組合;其中該存取命令指示選自以下各項的將對該SD卡執行的存取操作:單讀取操作、單寫入操作、多讀取操作、多寫入操作和擦除操作;其中如果該位址擴展命令包括CMD22命令,且該存取命令包括CMD23命令和CMD18命令,則存取該SD卡中的該記憶體位置的步驟包括在由該第三位址指示的該記憶體位置開始執行多讀取操作,並且其中該第三位址是根據該CMD22命令中包含的該第一位址和該CMD18命令中包含的該第二位址而生成的。
- 根據請求項1的該方法,其中該第三位址是通過串聯連接該第一位址和該第二位址來生成。
- 根據請求項1的該方法,其中該第一位址和該第二位址均為32位元。
- 根據請求項1的該方法,其中該第一位址是6位元,且該第二位址是32位元。
- 根據請求項1的該方法,其中如果該位址擴展命令包括CMD22命令,且該存取命令包括CMD17命令,則存取該SD卡中的該記憶體位置的步驟包括在由該第三位址指示的該記憶體位置上執行單讀取操作,並且其中該第三位址是根據該CMD22命令中包含的該第一位址和該CMD17命令中包含的該第二位址而生成的。
- 根據請求項1的該方法,其中如果該位址擴展命令包括CMD22命令,且該存取命令包括CMD24命令,則存取該SD卡中的該記憶體位置的步驟包括在由該第三位址指示的該記憶體位置上執行單寫入操作,並且其中該第三位址是根據該CMD22命令中包含的該第一位址和該CMD24命令中包含的該第二位址而生成的。
- 根據請求項1的該方法,其中如果該位址擴展命令包括CMD22命令,且該存取命令包括CMD23命令和CMD25命令,則存取該SD卡中的該記憶體位置的步驟包括從由該第三位址指示的該記憶體位置開始執行多寫 入操作,並且其中該第三位址是根據該CMD22命令中包含的該第一位址和該CMD25命令中包含的該第二位址而生成的。
- 根據請求項1的該方法,其中如果該位址擴展命令包括CMD22命令,且該存取命令包括CMD32和CMD38命令,則存取該SD卡中的該記憶體位置的步驟包括回應於該CMD38命令而從由該第三位址指示的該記憶體位置開始執行該擦除操作,並且其中該第三位址是根據該CMD22命令和該CMD32命令而生成的。
- 根據請求項1的該方法,其中如果該位址擴展命令包括第一CMD22命令和第二CMD22命令,且該存取命令包括CMD32命令、CMD33命令和CMD38命令,則存取該SD卡中的該記憶體位置的步驟包括回應於該CMD38命令而從由該第三位址指示的該記憶體位置至由第四位址指示的另一記憶體位置執行該擦除操作,並且其中該第三位址是根據該第一CMD22命令和該CMD32命令而生成的,且該第四位址是根據該第二CMD22命令和該CMD33命令而生成的。
- 根據請求項1的該方法,其中如果該位址擴展命令包括CMD22命令,且該存取命令包括CMD44命令和CMD45命令,則存取該SD卡中的該記憶體位置的步驟包括從由該第三位址指示的該記憶體位置傳送資料,並且其中該第三位址是根據該CMD22命令中包含的該第一位址和該CMD45命令中包含的該第二位址而生成的。
- 一種用於能夠存取SD卡的電子裝置的方法,該電子裝置包括:I/O介面,其包括:用於向該SD卡提供電壓供應的電壓供應觸點;至少一個接地觸點;用於向該SD卡提供時脈信號的時脈觸點;用於向該SD卡提供命令的命令觸點;以及用於將資料寫入到該SD卡中或從該SD卡讀取資料的四個資料觸點;以及該方法包括:通過該命令觸點,向該SD卡傳輸包含第一位址的位址擴展命令;通過該命令觸點,向該SD卡傳輸包含第二位址的存取命令;以及存取該SD卡中由第三位址指示的至少一個記憶體位置,該第三位址是該第一位址和該第二位址的組合;其中該存取命令指示選自以下各項的將對該SD卡執行的存取操作:單讀取操作、單寫入操作、多讀取操作、多寫入操作和擦除操作;其中如果該位址擴展命令包括第一CMD22命令和第二CMD22命令,且該存取命令包括CMD32命令、CMD33命令和CMD38命令,則存取該SD卡中的該記憶體位置的步驟包括回應於該CMD38命令而從由該第三位址指示的該記憶體位置至由第四位址指示的另一記憶體位置執行該擦除操作,並且其中該第三位址是根據該第一CMD22命令和該CMD32命令而生成的,且該第四位址是根據該第二CMD22命令和該CMD33命令而生成的。
- 根據請求項11的該方法,其中如果該位址擴展命令包括CMD22命令,且該存取命令包括CMD44命令和CMD45命令,則存取該SD卡中的該記憶體位置的步驟包括從由該第三位址指示的該記憶體位置傳送資料,並且其中該第三位址是根據該CMD22命令中包含的該第一位址和該CMD45命令中包含的該第二位址而生成的。
- 根據請求項11的該方法,更包括接收該SD卡的容量的資訊。
- 一種電子裝置,其包括:I/O介面,其包括:用於向該SD卡提供電壓供應的電壓供應觸點;至少一個接地觸點;用於向該SD卡提供時脈信號的時脈觸點;用於向該SD卡提供命令的命令觸點;以及用於將資料寫入到該SD卡中或從該SD卡讀取資料的四個資料觸點;以及處理器,其經配置以執行請求項1至13中任一項所述的方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201762610937P | 2017-12-28 | 2017-12-28 | |
US62/610,937 | 2017-12-28 |
Publications (2)
Publication Number | Publication Date |
---|---|
TW202314723A TW202314723A (zh) | 2023-04-01 |
TWI841113B true TWI841113B (zh) | 2024-05-01 |
Family
ID=
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110119431A1 (en) | 2009-11-13 | 2011-05-19 | Chowdhury Rafat | Memory system with read-disturb suppressed and control method for the same |
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110119431A1 (en) | 2009-11-13 | 2011-05-19 | Chowdhury Rafat | Memory system with read-disturb suppressed and control method for the same |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI695382B (zh) | 記憶體定址方法及相關聯的控制器 | |
US20120151294A1 (en) | Method and apparatus for correcting errors in memory device | |
US20140082267A1 (en) | EMBEDDED MULTIMEDIA CARD (eMMC), HOST CONTROLLING eMMC, AND METHOD OPERATING eMMC SYSTEM | |
US20140082224A1 (en) | Embedded multimedia card (emmc), emmc system including the emmc, and method of operating the emmc | |
KR20170105760A (ko) | 데이터 저장 장치 및 그것의 동작 방법 | |
US20190317892A1 (en) | Memory system, data processing system, and operating method of memory system | |
CN110059032A (zh) | 存储器接口及具有存储器接口的存储器控制器 | |
US20180239557A1 (en) | Nonvolatile memory device, data storage device including the same, and operating method of data storage device | |
CN107066201B (zh) | 数据存储装置及其方法 | |
TWI507883B (zh) | 記憶卡存取裝置、其控制方法與記憶卡存取系統 | |
US10754768B2 (en) | Memory system using descriptor lookup tables to access setting information for a non-volatile memory, and an operating method thereof | |
US11748025B2 (en) | Nonvolatile memory device, data storage device including the same and operating method thereof | |
US9990311B2 (en) | Peripheral interface circuit | |
US20190278703A1 (en) | Memory system, operating method thereof and electronic device | |
TWI841113B (zh) | 記憶體定址方法及相關聯的控制器 | |
CN107301872B (zh) | 半导体存储器装置的操作方法 | |
US20140149646A1 (en) | Memory systems including flash memories, first buffer memories, second buffer memories and memory controllers and methods for operating the same | |
US20230244402A1 (en) | Storage device and operating method of storage device | |
KR101175250B1 (ko) | 낸드 플래시 메모리 장치와 그의 컨트롤러 및 이들의 라이트 오퍼레이션 방법 | |
US20230112776A1 (en) | Operation method of memory module, operation method of memory controller, and operation method of memory system | |
CN113448487A (zh) | 写入闪存管理表的计算机可读取存储介质、方法及装置 | |
CN116504289A (zh) | 存储器件 | |
KR20170089646A (ko) | 반도체 메모리 장치 및 그것을 포함하는 데이터 저장 장치 |