TW202013200A - 記憶卡存取裝置及方法以及電腦程式產品 - Google Patents

記憶卡存取裝置及方法以及電腦程式產品 Download PDF

Info

Publication number
TW202013200A
TW202013200A TW107139391A TW107139391A TW202013200A TW 202013200 A TW202013200 A TW 202013200A TW 107139391 A TW107139391 A TW 107139391A TW 107139391 A TW107139391 A TW 107139391A TW 202013200 A TW202013200 A TW 202013200A
Authority
TW
Taiwan
Prior art keywords
host
memory card
length
logical block
processing unit
Prior art date
Application number
TW107139391A
Other languages
English (en)
Other versions
TWI681296B (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 慧榮科技股份有限公司
Application granted granted Critical
Publication of TWI681296B publication Critical patent/TWI681296B/zh
Publication of TW202013200A publication Critical patent/TW202013200A/zh

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/004Error avoidance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/10Program control for peripheral devices
    • G06F13/12Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor
    • G06F13/124Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor where hardware is a sequential transfer control unit, e.g. microprocessor, peripheral processor or state-machine
    • 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)
  • Quality & Reliability (AREA)
  • Computer Hardware Design (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

本發明提出一種記憶卡存取裝置,至少包含處理單元,用於偵測插入於記憶卡存取裝置的記憶卡的邏輯區塊長度是否能被主機端支援;以及當偵測到插入的記憶卡的邏輯區塊長度無法被主機端支援時,為回應從主機端接收到請求感測命令,通過主機端介面回覆不能觸發後續寫入的感測資料給主機端。

Description

記憶卡存取裝置及方法以及電腦程式產品
本發明涉及資料存取技術,尤指一種記憶卡存取裝置及方法以及電腦程式產品。
讀卡機是用來協助記憶卡及計算機主機端間交互的介面裝置,使得計算機主機端可存取記憶卡中儲存的資料,以及將讀取的資料儲存於主機端。計算機主機端可通過其通用序列匯流排(Universal Serial Bus, USB)的埠驅動讀卡機。記憶卡可為CF、SD、microSD或MMC卡等。大部分的讀卡機也提供寫入資料的能力。為了存取多樣使用不同格式的記憶卡,讀卡機可偵測記憶卡的能力及規格,並且據以回報它的基本資料及操作狀態給計算機主機端。然而,計算機主機端可能無法支援特定的記憶卡能力而錯誤地存取記憶卡中的資料,甚至更糟的是毀損記憶卡中的資料。因此,本發明提出一種記憶卡存取裝置及方法以及電腦程式產品,用以避免記憶卡中的資料被毀損。
有鑑於此,如何減輕或消除上述相關領域的缺失,實為有待解決的問題。
本說明書提供一種記憶卡存取裝置的實施例,其包含:主機端介面及處理單元。處理單元偵測插入於記憶卡存取裝置的記憶卡的邏輯區塊長度是否能被主機端支援;以及當偵測到插入的記憶卡的邏輯區塊長度無法被主機端支援時,為回應主機端發出的請求感測命令,通過主機端介面回覆不能觸發後續寫入的感測資料給主機端。
本說明書另提供一種電腦程式產品的實施例,由讀卡機的處理單元載入並執行,包含以下的程式碼:偵測插入於讀卡機的記憶卡的邏輯區塊長度是否能被主機端支援;以及當偵測到插入的記憶卡的邏輯區塊長度無法被主機端支援時,為回應主機端發出的請求感測命令,回覆不能觸發後續寫入的感測資料給主機端。
上述實施例的優點之一,通過回覆不能觸發後續寫入的感測資料給不支援插入的記憶卡的邏輯區塊長度的主機端,讓主機端不會更新記憶卡中的開機區及檔案配置表影像,避免丟失連結到檔案的全部或部分重要資訊。
本發明的其他優點將搭配以下的說明和圖式進行更詳細的解說。
以下說明為完成發明的較佳實現方式,其目的在於描述本發明的基本精神,但並不用以限定本發明。實際的發明內容必須參考之後的權利要求範圍。
必須了解的是,使用於本說明書中的”包含”、”包括”等詞,用以表示存在特定的技術特徵、數值、方法步驟、作業處理、元件以及/或組件,但並不排除可加上更多的技術特徵、數值、方法步驟、作業處理、元件、組件,或以上的任意組合。
於權利要求中使用如”第一”、"第二"、"第三"等詞是用來修飾權利要求中的元件,並非用來表示之間具有優先順序,前置關係,或者是一個元件先於另一個元件,或者是執行方法步驟時的時間先後順序,僅用來區別具有相同名字的元件。
必須了解的是,當元件描述為”連接”或”耦接"至另一元件時,可以是直接連結、或耦接至其他元件,可能出現中間元件。相反地,當元件描述為”直接連接”或”直接耦接”至另一元件時,其中不存在任何中間元件。使用來描述元件之間關係的其他語詞也可類似方式解讀,例如”介於”相對於”直接介於”,或者是”鄰接”相對於”直接鄰接”等等。
參考圖1。資料存取系統可包含行動電話,作為主機端110。雖然實施例的系統以行動電話為例,本領域技術人員也可以將主機端110應用在其他計算機裝置,例如,個人電腦、筆記型電腦(Laptop PC)、平板電腦、數位相機、數位攝影機等。主機端110可使用通用序列匯流排(Universal Serial Bus, USB)通信協議連接並驅動讀卡機130。記憶卡150可插入讀卡機130中,使得主機端110可通過讀卡機130存取記憶卡150。讀卡機130可為可拆卸式媒體的大量儲存子系統(removable-media mass storage subsystem),透過其USB埠連接主機端110。主機端110及讀卡機130可透過交換標準定義的命令塊(command block)、資料及狀態資訊彼此通訊,如於1998年12月14日發表的Universal Serial Bus Mass Storage Class: UFI Command Specification rev. 1.0。讀卡機130可依據主機端110發出的命令,通過通用快閃記憶儲存(Universal Flash Storage UFS)通信協議存取記憶卡150中的資料。
參考圖2。主機端110可包含處理單元210,以及用於連接讀卡機130的USB匯流排230。當處理單元210載入及執行檔案系統211、UFI驅動程式213及USB驅動程式215的軟體以及/或韌體指令時,完成特定功能。檔案系統211執行於特定的作業系統,用於控制如何儲存資料至記憶卡150,以及從記憶卡150讀取資料。通過將資料切分成邏輯的片段及給予每個片段名稱,容易分離並識別資訊。檔案系統211使用特定結構(如FAT12、FAT16、FAT32、exFAT等)及邏輯規則管理這些群聚的資訊以及它們的名稱。UFI驅動程式213通過發送所述標準定義的UFI命令塊,控制讀卡機130。讀卡機130中執行的UFI功能模塊,用於處理這些命令塊。所有命令塊、資料及狀態資訊的交換,可通過於USB匯流排230上傳遞封包實現,而這些交換由USB驅動程式215管理。主機端還包含記憶體250,用於儲存執行中所需的資料,如變數、資料表、資料結構等。記憶體250可為特定類型的隨機存取記憶體(Random Access Memory RAM),提供揮發性的儲存空間。
當記憶卡150插入讀卡機130時,主機端110及讀卡機130間會進行一些交互,用於初始化主機端110及記憶卡150間的連線。參考圖3。於一些實施方式中,當主機端110偵測到一個設備插入其USB埠時,發送測試單元就緒(TEST UNIT READY)命令312,用以檢查插入的設備是否就緒。由於記憶卡150尚未插入讀卡機130,讀卡機130回覆CSW失敗(fail)訊息318給主機端110。主機端110發送請求感測(REQUEST SENSE)命令322,用於指示讀卡機130傳送指定邏輯單元的感測資料給主機端110。當讀卡機130偵測到記憶卡150插入讀卡機130後,回覆媒體改變(MEDIA CHANGED)的感測資料328給主機端110。接著,主機端110再一次發送測試單元就緒命令332,再次檢查插入的設備是否就緒。由於記憶卡150已經插入讀卡機130,讀卡機130回覆CSW通過(pass)訊息338給主機端110。接著,主機端110發送讀取能力命令342,請求讀卡機130提供目前插入媒體的能力。讀卡機130詢問能力資訊後,據此產生並回覆目前能力描述元(current capacity descriptor)348給主機端110,例如,其中的第0至3個位元組紀錄記憶卡150可定址區塊總數,而第5至7位元組紀錄記憶卡150中每個邏輯區塊的長度(以位元組為單位)。每個邏輯區塊的長度可為512、1K、2K、4K位元組等。於媒體初始作業中,主機端110依據讀卡機130回報的能力資訊計算儲存開機區(boot sector)、檔案配置表影像(file allocation table image)等的邏輯位址,並且發出一系列讀取(READ)命令352給讀卡機130,用以取得儲存於這些邏輯位址的開機區、檔案配置表影像等資訊。接著,為了後續運作的需要,主機端110修改開機區、檔案配置表影像中的有關內容,並發出一系列寫入(WRITE)命令362給讀卡機130,用於將更新後的內容儲存回記憶卡150。
然而,當運行主機端110的作業系統或檔案系統211無法支援過長的邏輯區塊長度時,更新後的開機區及檔案配置表影像會丟失連結到檔案的全部或部分重要資訊,造成記憶卡150中儲存的檔案毀損。例如,作業系統或檔案系統211只支援512位元組而不能支援4K位元組的邏輯區塊長度。雖然UFI驅動程式213通過USB介面接收到每個邏輯區塊長度為4K位元組的資料,但是作業系統或檔案系統211只會處理每個邏輯區塊中前512位元組的資料,忽略了之後的3.5K位元組的資料,造成寫回記憶卡150後非預期性地丟失資料。
為解決如上所述的問題,讀卡機130需要執行預防機制,避免記憶卡150中儲存的檔案在連結上不支援特定邏輯區塊長度的主機端110時被毀損。參考圖4,讀卡機130至少包含處理單元410,可使用多種方式實施,例如使用專用硬體或通用硬體(如單一處理器、具平行處理能力的多處理器、圖形處理器或其他具運算能力的處理器),並且在執行韌體或軟體指令(instructions)時,提供如下所述的功能。處理單元可至少包含算數邏輯單元(ALU,Arithmetic and Logic Unit)以及位移器(Bit Shifter)。處理單元110是一種多功能裝置,可以執行算數及邏輯功能。算數邏輯單元負責執行數學運算(如加、減、乘、除等)、布林運算(如AND、OR、NOT、NAND、NOR、XOR、XNOR等)或特殊函數運算(如三角函數、平方、三方、n次方、平方根、三方根、n次方根等)。通常,模式選擇輸入決定算數邏輯單元執行邏輯運算或算數運算。位移器負責位移運算及比特旋轉。記憶體420可使用高效匯流排(high-performance bus)連接處理單元410,用於儲存執行中所需的資料,如變數、資料表、資料結構等。記憶體420可為特定類型的隨機存取記憶體,提供揮發性的儲存空間。
處理單元410、記憶體420、USB介面460及記憶卡介面480可用系統匯流排(system bus)450彼此連接,並使用特定通訊協定在裝置間傳遞資料。USB介面460可包含USB媒體存取控制層(Media Access Control MAC)及USB實體層(Physical layer PHY),用於連接主機端110的USB埠。處理單元410可載入並執行相應的UFI驅動程式及USB驅動程式,用於接收並解譯(interpret)主機端110傳送的UFI命令(如測試單元就緒、請求感測、讀取、寫入及抹除命令等)、邏輯區塊編號及資料,並且產生及傳送UFI訊息、描述元及資料等給主機端110。記憶卡介面480可包含主機端控制器(如SD或eMMC主機端控制器),用於連接記憶卡150。處理單元410可載入執行相應的UFS驅動程式,用於產生及傳送UFS命令(如辨認、讀取、寫入及抹除命令等)、邏輯區塊編號及資料等給記憶卡150,並且接收及解譯記憶卡150傳送的完成元件(Completion Element CE)及資料等。
讀卡機130可執行錯誤預防方法,避免發生如上所述的錯誤。首先,處理單元410偵測插入於讀卡機130中的記憶卡150的邏輯區塊長度是否無法被主機端110支援。當偵測到插入的記憶卡150的邏輯區塊長度無法被主機端110支援時,為回應從主機端110接收到請求感測命令,通過主機端介面回覆不能觸發後續處理的感測資料給主機端110。
詳細流程可參考圖5。當處理單元410通過USB介面460從主機端110接收到請求感測命令後(步驟S510),可通過記憶卡介面480詢問記憶卡130的邏輯區塊長度(步驟S520)。於步驟S520,處理單元410可發送讀取能力(Read Capacity)命令給記憶卡150,用於請求提供記憶卡150的目前能力。處理單元410可從記憶卡150接收讀取能力資料回覆(Read Capacity Data Response),其中的第4至7位元組包含其邏輯區塊長度。讀取能力命令是一種UFS SCSI命令。可理解的是,步驟S520也可以執行於步驟S510之前,本發明並不因此侷限。處理單元410可儲存讀取能力資料回覆中的邏輯區塊長度至記憶體420,直到記憶卡150被移出讀卡機130。
當處理單元410判斷回覆的邏輯區塊長度為不需要檢查的長度,例如4K位元組(步驟S530中”否”的路徑),則回覆能夠觸發主機端110後續處理的感測資料(Sense Data),例如,指出媒體改變的感測鍵值(Sense Key)(步驟S535)。感測鍵值提供用以回報錯誤及例外狀態的基本類型。
當處理單元410判斷回覆的邏輯區塊長度為需要檢查的長度且主機端110運行的作業系統及檔案系統支援記憶卡150的邏輯區塊長度(步驟S530中”是”的路徑接步驟S540中”是”的路徑),則回覆能夠觸發主機端110後續處理的感測資料,例如,指出媒體改變的感測鍵值 (步驟S535)。
當處理單元410判斷回覆的邏輯區塊長度為需要檢查的長度且主機端110運行的作業系統或檔案系統不支援記憶卡150的邏輯區塊長度(步驟S530中”是”的路徑接步驟S540中”否”的路徑),則回覆不能夠觸發主機端110後續寫入的感測資料,例如,指出媒體不存在(MEDIA NOT PRESENT)或媒體受寫入防護(WRITE PROTECTED MEDIA)的感測鍵值,防止主機端110更新開機區及檔案配置表影像,造成丟失連結到檔案的全部或部分重要資訊(步驟S535)。
由於不同的作業系統會使用不同的配置長度,處理單元410可藉由請求感測命令中配置長度(allocation length)的值判斷主機端110中運行的作業系統。請求感測命令的配置長度欄位描述主機端110能夠接收的感測資料的最大位元組數目。例如,運行安卓作業系統(Android)、視窗7/10/XP作業系統(Windows 7/10/XP)及Mac作業系統的主機端的能夠接收的感測資料的最大位元組數目為96(也就是”0x60”)、18(也就是”0x12”)及18,而安卓作業系統或其檔案系統不支援4K位元組的邏輯區塊長度。如上所述不支援作業系統或其檔案系統與需檢查的邏輯區塊長度間的映射資訊可使用任意的資料結構儲存於記憶體420,例如資料表、決策規則(decision rules)等,有利於處理單元410判斷。於另一些實施例,如上所述的映射資訊也可反應在程式碼的判斷邏輯。於步驟S540,當處理單元410偵測到請求感測命令的配置長度欄位中的值為”0x60”時,判斷主機端110運行的作業系統或檔案系統不支援記憶卡150的邏輯區塊長度。當處理單元410偵測到請求感測命令的配置長度欄位中的值為”0x12”時,判斷主機端110運行的作業系統或檔案系統支援記憶卡150的邏輯區塊長度。
參考圖6,讀卡機可於接收到請求感測命令322時,啟動錯誤預防處理程序600,執行如圖5所示的方法流程。於錯誤預防處理程序600中,處理單元410可通過記憶卡介面480發送讀取能力命令612給記憶卡150,並且從記憶卡150接收讀取能力資料回覆618,用於完成記憶卡150的邏輯區塊長度的詢問。可理解的是,本領域技術人員可將讀取能力命令612的發送執行於啟動錯誤預防處理程序600之前,或者,將讀取能力命令612的發送及讀取能力資料回覆618的接收,執行於啟動錯誤預防處理程序600之前,本發明並不因此侷限。當處理單元410判斷回覆的邏輯區塊長度為不需要檢查的長度(步驟S530中”否”的路徑),或回覆的邏輯區塊長度為需要檢查的長度且主機端110運行的作業系統或檔案系統支援記憶卡150的邏輯區塊長度(步驟S530中”是”的路徑接步驟S540中”是”的路徑),則回覆能夠觸發主機端110後續處理的感測資料628(步驟S535)。後續處理可包含測試單元就緒命令332及讀取能力命令342的傳送及相應訊息338及目前能力描述元348的接收。後續處理另可包含如上所述開機區及檔案配置表影像的讀取、修改及寫入。
參考圖7,於錯誤預防處理程序600中,當處理單元410判斷回覆的邏輯區塊長度為需要檢查的長度且主機端110運行的作業系統或檔案系統不支援記憶卡150的邏輯區塊長度(步驟S530中”是”的路徑接步驟S540中”否”的路徑),則回覆不能夠觸發主機端110後續寫入的感測資料718,例如,指出媒體不存在或寫入防護媒體的感測鍵值(步驟S545)。後續寫入可包含如上所述開機區及檔案配置表影像的讀取、修改及寫入。
處理單元410所執行資料存取控制的方法步驟,可使用一個或多個功能模塊組成的電腦程式產品來實現。這些功能模塊存儲於非揮發性儲存裝置,並且可被處理單元410於特定時間點載入並執行。參考圖8,處理單元110執行主機端介面驅動模塊810以完成步驟S510、S535及S545的操作,執行記憶卡介面驅動模塊820以完成步驟S520的操作,以及執行錯誤預防處理模塊830以完成步驟S530及S540的操作。主機端介面驅動模塊810、記憶卡介面驅動模塊820及錯誤預防處理模塊830間的資料傳遞可透過函數呼叫(function calls)、全域變數(global variables)等完成。主機端介面驅動模塊810可包USB介面460的驅動程式,如相應的UFI驅動程式及USB驅動程式,而記憶卡介面驅動模塊820可包含記憶卡介面480的驅動程式,如UFS驅動程式。
本發明所述的方法中的全部或部分步驟可以電腦程式實現,例如電腦的作業系統、電腦中特定硬體的驅動程式、或軟體應用程式。此外,也可實現於如上所示的其他類型程式。所屬技術領域的技術人員可將本發明實施例的方法撰寫成電腦程式,為求簡潔不再加以描述。依據本發明實施例方法實施的電腦程式,可儲存於適當的電腦可讀取資料載具,例如DVD、CD-ROM、USB碟、硬碟,亦可置於可通過網路(例如,網際網路,或其他適當載具)存取的網路伺服器。
雖然圖4中包含了以上描述的元件,但不排除在不違反發明的精神下,使用更多其他的附加元件,已達成更佳的技術效果。此外,雖然圖5的流程圖採用指定的順序來執行,但是在不違反發明精神的情況下,熟習此技藝人士可以在達到相同效果的前提下,修改這些步驟間的順序,所以,本發明並不侷限於僅使用如上所述的順序。此外,熟習此技藝人士亦可以將若干步驟整合為一個步驟,或者是除了這些步驟外,循序或平行地執行更多步驟,本發明亦不因此而侷限。
雖然本發明使用以上實施例進行說明,但需要注意的是,這些描述並非用以限縮本發明。相反地,此發明涵蓋了熟習此技藝人士顯而易見的修改與相似設置。所以,申請權利要求範圍須以最寬廣的方式解釋來包含所有顯而易見的修改與相似設置。
110:主機端
130:讀卡機
150:記憶卡
210、410:處理單元
211:檔案系統
213:UFI驅動程式
215:USB驅動程式
230:USB匯流排
250、420:記憶體
312、332:測試單元就緒命令
318:CSW失敗訊息
322:請求感測命令
328:媒體改變的感測資料
338:CSW通過訊息
342:讀取能力命令
348:目前能力描述元
352:讀取命令
358:寫入命令
450:系統匯流排
460:USB介面
480:記憶卡介面
S510~S545:方法步驟
600:錯誤預防處理程序
612:讀取能力命令
618:讀取能力資料回覆
628:能夠觸發主機端後續處理的感測資料
718:不能夠觸發主機端後續寫入的感測資料
810:主機端介面驅動模塊
820:記憶卡介面驅動模塊
830:錯誤預防處理模塊
圖1為依據本發明實施例的資料存取系統示意圖。
圖2為主機端的方塊圖。
圖3為一些實施方式的主機端及讀卡機間的交互順序圖。
圖4為依據本發明實施例的讀卡機的系統架構圖。
圖5為依據本發明實施例的記憶卡存取方法的流程圖。
圖6及7為依據本發明實施例的主機端及讀卡機間的交互順序圖。
圖8為依據本發明實施例的讀卡機中資料存取的軟體模塊示意圖。
S510~S545:方法步驟

Claims (13)

  1. 一種記憶卡存取裝置,包含: 一主機端介面,耦接於一主機端;以及 一處理單元,耦接於所述主機端介面,用於偵測插入於所述記憶卡存取裝置的一記憶卡的一邏輯區塊長度是否能被所述主機端支援;以及當偵測到插入的所述記憶卡的所述邏輯區塊長度無法被所述主機端支援時,為回應所述主機端發出的一請求感測命令,通過所述主機端介面回覆不能觸發後續寫入的一感測資料給所述主機端。
  2. 如請求項1所述的記憶卡存取裝置,包含: 一記憶卡介面,耦接於所述處理單元, 其中,所述處理單元通過所述記憶卡介面詢問所述記憶卡,用於取得所述記憶卡的所述邏輯區塊長度。
  3. 如請求項1所述的記憶卡存取裝置,其中,當所述處理單元判斷所述記憶卡的所述邏輯區塊長度為不需要檢查的長度時,為回應所述主機端發出的所述請求感測命令,通過所述主機端介面回覆能夠觸發所述主機端後續處理的一感測資料給所述主機端。
  4. 如請求項1所述的記憶卡存取裝置,其中,當所述處理單元判斷所述記憶卡的所述邏輯區塊長度為需要檢查的長度且所述主機端運行的一作業系統及一檔案系統支援所述記憶卡的所述邏輯區塊長度時,為回應所述主機端發出的所述請求感測命令,通過所述主機端介面回覆能夠觸發所述主機端後續處理的一感測資料給所述主機端。
  5. 如請求項3至4中任一項所述的記憶卡存取裝置,其中,能夠觸發所述主機端後續處理的所述感測資料為指出媒體改變的一感測鍵值。
  6. 如請求項1所述的記憶卡存取裝置,其中,當所述處理單元判斷所述記憶卡的所述邏輯區塊長度為需要檢查的長度並且所述主機端運行的一作業系統或一檔案系統不支援所述記憶卡的所述邏輯區塊長度時,為回應所述主機端發出的所述請求感測命令,通過所述主機端介面回覆不能夠觸發所述主機端後續寫入的所述感測資料給所述主機端。
  7. 如請求項6所述的記憶卡存取裝置,其中,不能夠觸發所述主機端後續寫入的所述感測資料為指出媒體不存在或媒體受寫入防護的感測鍵值。
  8. 如請求項1所述的記憶卡存取裝置,其中,所述處理單元通過偵測所述請求感測命令的一配置長度欄位中的值來判斷所述主機端是否支援所述記憶卡的所述邏輯區塊長度。
  9. 一種電腦程式產品,用以由一讀卡機的一處理單元載入並執行,包含以下的程式碼: 偵測插入於所述讀卡機的一記憶卡的一邏輯區塊長度是否能被一主機端支援;以及 當偵測到插入的所述記憶卡的所述邏輯區塊長度無法被所述主機端支援時,為回應所述主機端發出的一請求感測命令,回覆不能觸發後續寫入的一感測資料給所述主機端。
  10. 如請求項9所述的電腦程式產品,更包含以下的程式碼: 詢問所述記憶卡,用於取得所述記憶卡的所述邏輯區塊長度。
  11. 如請求項9所述的電腦程式產品,更包含以下的程式碼: 當判斷所述記憶卡的所述邏輯區塊長度為需要檢查的長度並且所述主機端運行的一作業系統或一檔案系統不支援所述記憶卡的所述邏輯區塊長度時,為回應所述主機端發出的所述請求感測命令,回覆不能夠觸發所述主機端後續寫入的一感測資料給所述主機端。
  12. 如請求項11所述的電腦程式產品,其中,不能夠觸發所述主機端後續寫入的所述感測資料為指出媒體不存在或媒體受寫入防護的感測鍵值。
  13. 如請求項9所述的電腦程式產品,更包含以下的程式碼: 通過偵測所述請求感測命令的一配置長度欄位中的值來判斷所述主機端是否支援所述記憶卡的所述邏輯區塊長度。
TW107139391A 2018-09-28 2018-11-06 記憶卡存取裝置及方法以及電腦程式產品 TWI681296B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201862738405P 2018-09-28 2018-09-28
US62/738,405 2018-09-28

Publications (2)

Publication Number Publication Date
TWI681296B TWI681296B (zh) 2020-01-01
TW202013200A true TW202013200A (zh) 2020-04-01

Family

ID=69942674

Family Applications (1)

Application Number Title Priority Date Filing Date
TW107139391A TWI681296B (zh) 2018-09-28 2018-11-06 記憶卡存取裝置及方法以及電腦程式產品

Country Status (2)

Country Link
CN (1) CN110968441B (zh)
TW (1) TWI681296B (zh)

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100357875C (zh) * 2006-01-25 2007-12-26 骆建军 自动调整容量的sd存储卡
TWI347556B (en) * 2007-07-20 2011-08-21 Usb card reader control device and manufacturing method for the same
TW200933490A (en) * 2008-01-28 2009-08-01 Afa Technologies Inc USB card reader and method of automatically executing program with the USB card reader
TWI386809B (zh) * 2009-03-20 2013-02-21 Aten Int Co Ltd 記憶體整合裝置及方法
TW201040979A (en) * 2009-05-04 2010-11-16 Etrend Electronics Inc Firmware program operating method of small input and output (I/O) device memory card
TW201104470A (en) * 2009-07-29 2011-02-01 Tomtom Int Bv Data storage system and method
US9104546B2 (en) * 2010-05-24 2015-08-11 Silicon Motion Inc. Method for performing block management using dynamic threshold, and associated memory device and controller thereof
TW201145178A (en) * 2010-06-09 2011-12-16 Cepa Electronics Group Inc Card reader allowing memory combination and method thereof
CN102789430B (zh) * 2011-05-18 2015-11-18 群联电子股份有限公司 存储器储存装置、其存储器控制器与存取方法
TWI489474B (zh) * 2011-10-25 2015-06-21 Silicon Motion Inc 內嵌閃存卡燒機方法以及測試板、以及內嵌閃存卡
CN103092799B (zh) * 2012-12-28 2015-07-22 飞天诚信科技股份有限公司 一种usb设备及其识别主机操作系统的方法
US20150212806A1 (en) * 2014-01-29 2015-07-30 Transcend Information, Inc. Initialization method and initializaion system for storage device
US9454310B2 (en) * 2014-02-14 2016-09-27 Micron Technology, Inc. Command queuing
TWM489308U (en) * 2014-05-29 2014-11-01 Eclat Forever Machinery Co Ltd Exposure machine
TWI507876B (zh) * 2014-07-21 2015-11-11 Phison Electronics Corp 記憶體儲存裝置及控制方法、記憶體控制電路單元及模組
US9804783B1 (en) * 2014-10-17 2017-10-31 Sk Hynix Memory Solutions Inc. Hierarchical host controller for SSD device

Also Published As

Publication number Publication date
TWI681296B (zh) 2020-01-01
CN110968441A (zh) 2020-04-07
CN110968441B (zh) 2023-06-06

Similar Documents

Publication Publication Date Title
US11216206B2 (en) Method of operating data storage device
TWI613675B (zh) 具有減小讀取延時之資料儲存裝置及其操作方法
KR102147970B1 (ko) 비휘발성 메모리 기반의 스토리지 디바이스의 복구 방법 및 상기 스토리지 디바이스를 포함하는 전자 시스템의 동작 방법
US9678760B2 (en) Memory card and storage system having authentication program and method for operating thereof
KR102229024B1 (ko) 스스로 에러를 검출하고 로그를 저장할 수 있는 데이터 저장 장치와 이를 포함하는 시스템
WO2017092002A1 (zh) 应用于计算机系统的数据迁移方法和装置、计算机系统
US9529805B2 (en) Systems and methods for providing dynamic file system awareness on storage devices
US11556466B2 (en) Logical-to-physical data structures
TWI489272B (zh) 保護資料的方法、記憶體控制器與記憶體儲存裝置
US20220100425A1 (en) Storage device, operating method of storage device, and operating method of computing device including storage device
TW202101227A (zh) 閃存實體資源集合管理裝置及方法以及電腦程式產品
CN115757207A (zh) 缓存状态管理方法、装置、通信设备及存储介质
US10642531B2 (en) Atomic write method for multi-transaction
CN111324414A (zh) Nvm存储介质模拟器
TWI681296B (zh) 記憶卡存取裝置及方法以及電腦程式產品
KR102554418B1 (ko) 메모리 컨트롤러 및 이를 포함하는 스토리지 장치
KR102555800B1 (ko) 스토리지 시스템 및 그 동작 방법
US10489335B1 (en) Apparatus and method and computer program product for accessing a memory card
US10019574B2 (en) Systems and methods for providing dynamic file system awareness on storage devices
KR20210001206A (ko) 컨트롤러, 메모리 시스템 및 그것의 동작 방법
US11288204B2 (en) Logical and physical address field size reduction by alignment-constrained writing technique
US20230043925A1 (en) Storage device and operating method thereof
KR20240100077A (ko) 스토리지 장치 및 그의 동작 방법
CN112162709A (zh) 查询数据正确性的方法、装置、计算机设备及存储介质
KR20170110808A (ko) 데이터 저장 장치를 포함하는 데이터 처리 시스템