的各種信息存儲在寄存器中。信息收集單元221可將寄存器與存儲器控制器120的特定狀態(tài)信息關(guān)聯(lián)。
[0060]例如,信息收集單元221可包括:收集模塊,其被構(gòu)造為主動收集存儲裝置100的狀態(tài)信息;以及寄存器,其被構(gòu)造為存儲收集到的狀態(tài)信息。
[0061]信息添加單元222將通過信息收集單元221收集的狀態(tài)信息添加至由存儲器控制器120輸出至外部主機裝置的數(shù)據(jù)。例如,存儲器控制器120可從外部主機裝置接收各種請求。基于輸入請求,存儲器控制器120執(zhí)行對應(yīng)于輸入請求的操作。在執(zhí)行對應(yīng)于輸入請求的操作過程中,存儲器控制器120向外部主機裝置提供包括所執(zhí)行操作的結(jié)果信息的數(shù)據(jù)(例如,響應(yīng)數(shù)據(jù))。存儲器控制器120將狀態(tài)信息添加至將被提供至外部主機裝置的數(shù)據(jù)。
[0062]在本發(fā)明構(gòu)思的示例性實施例中,信息收集單元221和信息添加單元222中的至少一個可利用軟件、硬件或硬件和軟件的組合來實現(xiàn)。
[0063]圖2是示出根據(jù)本發(fā)明構(gòu)思的示例性實施例的存儲裝置100的操作方法的流程圖。參照圖1和圖2,在步驟SllO中,收集狀態(tài)信息。例如,信息收集單元221可定期地、連續(xù)地或當(dāng)狀態(tài)信息改變時收集狀態(tài)信息。
[0064]在步驟S120中,確定是否接收到請求。如果沒有從外部主機裝置(未示出)接收到請求,則存儲裝置100可不利用狀態(tài)信息執(zhí)行操作。如果從外部主機裝置接收到請求,則方法前進至步驟S130。
[0065]在步驟S130中,存儲裝置100根據(jù)輸入請求執(zhí)行操作。在步驟S140中,存儲裝置100產(chǎn)生包括操作信息和狀態(tài)信息的響應(yīng)數(shù)據(jù)。例如,存儲裝置100可生成包含指示操作執(zhí)行結(jié)果的信息和狀態(tài)信息的響應(yīng)數(shù)據(jù)。
[0066]在步驟S150中,存儲器控制器120向外部主機裝置提供包括操作信息和狀態(tài)信息的響應(yīng)數(shù)據(jù)。
[0067]在本發(fā)明構(gòu)思的示例性實施例中,來自外部主機裝置的請求可包含用于在存儲裝置100寫數(shù)據(jù)的請求、用于從存儲裝置100讀數(shù)據(jù)的請求、用于擦除存儲裝置100中的數(shù)據(jù)的請求、用于控制存儲裝置100的請求等。來自外部主機裝置的請求可為由存儲裝置120與外部主機裝置之間的通信標(biāo)準(zhǔn)定義的請求之一。請求不必須包括針對狀態(tài)信息的請求,實際上請求可以不包括針對狀態(tài)信息的請求。換句話說,存儲裝置100從外部主機裝置接收正常請求,并且根據(jù)正常請求執(zhí)行操作。存儲裝置100向外部主機裝置提供指示操作執(zhí)行結(jié)果的正常響應(yīng)數(shù)據(jù)。具體地說,存儲裝置100可另外發(fā)送狀態(tài)信息。
[0068]將收集狀態(tài)信息的操作SllO描述為在從外部主機裝置接收請求之前執(zhí)行。然而,本發(fā)明構(gòu)思不限于此。例如,可在從外部主機裝置接收請求之后執(zhí)行收集狀態(tài)信息的操作
SllOo
[0069]圖3示出了根據(jù)本發(fā)明構(gòu)思的示例性實施例的存儲裝置100輸出的數(shù)據(jù)的格式。在本發(fā)明構(gòu)思的示例性實施例中,存儲裝置100可根據(jù)由通用閃存(UFS)規(guī)格定義的通用閃存協(xié)議信息單元(UPIU)的格式輸出數(shù)據(jù)。
[0070]參照圖3,存儲裝置100輸出響應(yīng)UPIU。響應(yīng)UPIU由多個字段形成。利用在方框中標(biāo)記的編號來稱呼響應(yīng)UPIU的各個字段。響應(yīng)UPIU的各個字段包括I字節(jié)數(shù)據(jù)。
[0071]響應(yīng)UPIU的第O字段包括關(guān)于事務(wù)類型的信息。例如,分配給響應(yīng)UPIU的事務(wù)碼為‘100001b’。響應(yīng)UPIU的第I字段包含關(guān)于標(biāo)記的信息。第I字段可存儲指示存儲裝置100將發(fā)送的數(shù)據(jù)量大于外部主機裝置請求的數(shù)據(jù)量的數(shù)據(jù)上溢標(biāo)記、指示存儲裝置100將發(fā)送的數(shù)據(jù)量小于外部主機裝置請求的數(shù)據(jù)量的數(shù)據(jù)下溢標(biāo)記、指示請求的數(shù)據(jù)的緩沖區(qū)偏移或傳輸計數(shù)異常的標(biāo)記等。響應(yīng)UPIU的第2字段存儲關(guān)于目標(biāo)裝置的邏輯單元編號(LUN)的信息,并且響應(yīng)UPIU的第3字段包括關(guān)于任務(wù)標(biāo)簽的信息。
[0072]響應(yīng)UPIU的第4字段的一部分(例如,4個比特)用作狀態(tài)信息區(qū)域SIA,第4字段的其余部分(例如,4個比特)包含關(guān)于命令集類型的信息。例如,命令集類型可包括小計算機系統(tǒng)接口(SCSI)命令集、UFS專用命令集、供應(yīng)商專用命令集等。響應(yīng)UPIU的第5字段用作狀態(tài)信息區(qū)域SIA。響應(yīng)UPIU的第6字段是響應(yīng)字段(表示為‘V’)。第6字段可包括指示對應(yīng)于從外部主機裝置接收的請求的操作是成功還是失敗的信息。響應(yīng)UPIU的第7字段根據(jù)SCSI命令集存儲關(guān)于SCSI狀態(tài)的信息。
[0073]響應(yīng)UPIU的第8字段包括額外頭部段(EHS)的總長度。響應(yīng)UPIU的第9字段存儲裝置信息。響應(yīng)UPIU的第10字段和第11字段包含關(guān)于數(shù)據(jù)段的有效字節(jié)數(shù)的信息。例如,第10字段包括其最高有效位(MSB),并且第11字段包括其最低有效位(LSB)。
[0074]響應(yīng)UPIU的第12字段至第15字段可包括當(dāng)發(fā)生數(shù)據(jù)上溢時存儲裝置100沒有發(fā)送的字節(jié)數(shù)、當(dāng)發(fā)生數(shù)據(jù)下溢時存儲裝置100沒有發(fā)送的字節(jié)數(shù)等。例如,可在第12字段至第15字段中找到殘留數(shù)據(jù)傳輸計數(shù)。
[0075]響應(yīng)UPIU的第16字段至第31字段用作狀態(tài)信息區(qū)域SIA。
[0076]頭部的端對端循環(huán)冗余校驗(CRC)碼(示為圖3和隨后多張附圖中的頭部E2ECRC)可選地添加在響應(yīng)UPIU的第31字段之后。例如,如果第O字段的第一比特為‘0’,則可省略頭部的端對端CRC碼(在圖3和隨后多張附圖中示為HD = O)。在這種情況下,響應(yīng)UPIU的第k字段可為第31字段之后的第32字段。
[0077]響應(yīng)UPIU的第k字段存儲關(guān)于感測數(shù)據(jù)字段的長度的信息。響應(yīng)UPIU的第(k+1)字段至第(k+19)字段是感測數(shù)據(jù)字段,并包含關(guān)于錯誤狀態(tài)的額外信息。
[0078]數(shù)據(jù)的端對端CRC碼(在圖3和隨后多張附圖中示為數(shù)據(jù)E2ECRC)可選地添加在響應(yīng)UPIU的第(k+19)字段之后。例如,如果第O字段的第二比特為‘0’,則可省略數(shù)據(jù)的端對端CRC碼(在圖3和隨后多張附圖中示為DD = O)。
[0079]響應(yīng)UPIU的第4字段的一部分、第5字段和第16字段至第31字段用作狀態(tài)信息區(qū)域SIA??蓪顟B(tài)信息添加為狀態(tài)信息區(qū)域SIA的至少一個字段或至少一個比特。
[0080]在狀態(tài)信息加至除狀態(tài)信息區(qū)域SIA之外的其他字段的情況下,狀態(tài)信息會損壞將要從存儲裝置100發(fā)送至外部主機裝置的數(shù)據(jù)。因此,由于將狀態(tài)信息添加為除了已包括數(shù)據(jù)的那些字段以外的字段中的狀態(tài)信息區(qū)域SIA的至少一個字段或至少一個比特,因此可將狀態(tài)信息與存儲裝置100執(zhí)行的操作的結(jié)果一起發(fā)送至外部主機裝置。狀態(tài)信息的這種用途可增加存儲裝置100的操作性能。例如,主機裝置可使用該信息來確定如何控制存儲裝置。
[0081]在本發(fā)明構(gòu)思的示例性實施例中,根據(jù)各種信息類型,可在狀態(tài)信息區(qū)域SIA的預(yù)定位置(例如,一字段或一比特)中包括兩個或更多個狀態(tài)信息。根據(jù)兩個或更多個狀態(tài)信息的類型的兩個或更多個狀態(tài)信息的位置對于存儲裝置100和外部主機可為共同的。接收響應(yīng)UPIU的主機裝置可從狀態(tài)信息區(qū)域SIA的預(yù)定位置提取兩個或更多個狀態(tài)信息。
[0082]例如,如圖4所示,第一狀態(tài)信息SIl可包括在響應(yīng)UPIU的第16字段中,第二狀態(tài)信息SI2可包括在響應(yīng)UPIU的第17字段中。第三狀態(tài)信息SI3可包括在響應(yīng)UPIU的第18字段中,第四狀態(tài)信息SI4可包括在響應(yīng)UPIU的第19字段中。在存儲裝置100提供第二狀態(tài)信息SI2的情況下,其將第二狀態(tài)信息SI2添加至第17字段。在存儲裝置100不提供第二狀態(tài)信息SI2的情況下,其可清空第17字段。
[0083]在本發(fā)明構(gòu)思的示例性實施例中,兩個或更多個狀態(tài)信息可包括在狀態(tài)信息區(qū)域SIA中。兩個或更多個狀態(tài)信息可與指示各個信息類型的標(biāo)記數(shù)據(jù)一起提供。在這種情況下,不根據(jù)兩個或更多個狀態(tài)信息的類型來確定兩個或更多個信息的位置,并且標(biāo)記數(shù)據(jù)的位置是預(yù)定的。例如,將狀態(tài)信息區(qū)域SIA的各個字段的第一比特設(shè)為包括標(biāo)記數(shù)據(jù),并且可以將狀態(tài)信息區(qū)域SIA的其余比特設(shè)為包括與標(biāo)記數(shù)據(jù)關(guān)聯(lián)的狀態(tài)信息。外部主機裝置可基于標(biāo)記數(shù)據(jù)提取狀態(tài)信息。
[0084]例如,如圖5所示,可將響應(yīng)UPIU的第16字段至第19字段設(shè)為包括狀態(tài)信息。第16字段至第19字段的每一個的至少第一比特可設(shè)為包括標(biāo)記數(shù)據(jù)F。第16字段至第19字段的每一個的其余比特可設(shè)為包括狀態(tài)信息SIl至SI4。
[0085]在存儲裝置100被構(gòu)造為提供第一狀態(tài)信息SIl和第二狀態(tài)信息SI2的情況下,其將指示第一狀態(tài)信息SIl的類型的標(biāo)記數(shù)據(jù)F添加至第16字段的至少第一比特,并將第一狀態(tài)信息SIl添加至第16字段的其余比特。存儲裝置100將指示第二狀態(tài)信息SI2的類型的標(biāo)記數(shù)據(jù)F添加至第17字段的至少第一比特,并將第二狀態(tài)信息SI2添加至第17字段的其余比特。
[0086]在存儲裝置100被構(gòu)造為提供第三狀態(tài)信息SI3和第四狀態(tài)信息SI4的情況下,其將指示第三狀態(tài)信息SI3的類型的標(biāo)記數(shù)據(jù)F添加至第18字段的至少第一比特,并將第三狀態(tài)信息SI3添加至第18字段的其余比特。存儲裝置100將指示第四狀態(tài)信息SI4的類型的標(biāo)記數(shù)據(jù)F添加至第19字段的至少第一比特,并將第四狀態(tài)信息SI4添加至第19字段的其余比特。
[0087]作為另一示例,兩個或更多個狀態(tài)信息可包括在狀態(tài)信息區(qū)域SIA中。兩個或更多個狀態(tài)信息可與狀態(tài)信息映射數(shù)據(jù)一起提供,狀態(tài)信息映射數(shù)據(jù)指示了兩個或更多個狀態(tài)信息的類型和兩個或更多個狀態(tài)信息存儲的位置。在這種情況下,狀態(tài)信息映射數(shù)據(jù)的大小和位置可為預(yù)定的。兩個或更多個狀態(tài)信息的大小和位置可不受限制。外部主機裝置可利用狀態(tài)信息映射數(shù)據(jù)提取兩個或更多個狀態(tài)信息。
[0088]例如,如圖6所示,響應(yīng)UPIU的第16字段至第19字段可設(shè)為包括狀態(tài)信息。狀態(tài)信息映射數(shù)據(jù)SIM可包括在第16字段的一些比特中。對應(yīng)于狀態(tài)信息映射數(shù)據(jù)SM的狀態(tài)信息SIA可包括在第16字段的其余比特以及第17字段至第19字段中。
[0089]圖7示出了根據(jù)本發(fā)明構(gòu)思的示例性實施例的存儲裝置100輸出的數(shù)據(jù)的格式。在本發(fā)明構(gòu)思的示例性實施例中,根據(jù)UFS規(guī)格,存儲裝置100可根據(jù)UPIU的格式輸出數(shù)據(jù)。
[0090]參照圖7,存儲裝置100輸出數(shù)據(jù)輸出UPIU。數(shù)據(jù)輸出UPIU由多個字段形成。利用在方框中標(biāo)記的編號來稱呼數(shù)據(jù)輸出UPIU的各個字段。數(shù)據(jù)輸出UPIU的各個字段包括I字節(jié)數(shù)據(jù)。
[0091]數(shù)據(jù)輸出UPIU的第O字段包括關(guān)于事務(wù)類型的信息。例如,分配給數(shù)據(jù)輸出UPIU的事務(wù)碼是‘ 100010b’。數(shù)據(jù)輸出UPIU的第I字段是標(biāo)記字段,并且不在數(shù)據(jù)輸出UPIU中使用。數(shù)據(jù)輸出UPIU的第2字段存儲關(guān)于目標(biāo)裝置的LUN的信息,并且數(shù)據(jù)輸出UPIU的第3字段包括關(guān)于任務(wù)標(biāo)簽的信息。
[0092]數(shù)據(jù)輸出UPIU的第4字段至第7字段可用作狀態(tài)信息區(qū)域SIA。
[0093]數(shù)據(jù)輸出UPIU的第8字段包括EHS的總長度。數(shù)據(jù)輸出UPIU的第9字段用作狀態(tài)信息區(qū)域SIA。數(shù)據(jù)輸出UPIU的第10字段和第11字段包含關(guān)于數(shù)據(jù)段的有效字節(jié)數(shù)的信息。
[0094]數(shù)據(jù)輸出UPIU的第12字段至第15字段可包括關(guān)于將被發(fā)