TW201905933A - Methods for reducing data error in transceiving of flash storage interface and apparatuses using the same - Google Patents

Methods for reducing data error in transceiving of flash storage interface and apparatuses using the same

Info

Publication number
TW201905933A
TW201905933A TW106146500A TW106146500A TW201905933A TW 201905933 A TW201905933 A TW 201905933A TW 106146500 A TW106146500 A TW 106146500A TW 106146500 A TW106146500 A TW 106146500A TW 201905933 A TW201905933 A TW 201905933A
Authority
TW
Taiwan
Prior art keywords
level
data
transmission rate
data transmission
error
Prior art date
Application number
TW106146500A
Other languages
Chinese (zh)
Other versions
TWI649756B (en
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 慧榮科技股份有限公司
Priority to CN201810530621.9A priority Critical patent/CN109213624B/en
Priority to US16/013,105 priority patent/US10848263B2/en
Application granted granted Critical
Publication of TWI649756B publication Critical patent/TWI649756B/en
Publication of TW201905933A publication Critical patent/TW201905933A/en

Links

Landscapes

  • Communication Control (AREA)

Abstract

An embodiment of a method for reducing data error in transceiving of flash storage interface, executed by a processing unit of a first side, is introduced to comprise the following steps: repeatedly monitoring a data frame and/or a control frame received from a second side; and triggering a transmission data rate setting adjustment when information of the data frame and/or the control frame indicates that the lowest layer of the second side detects an error of received data.

Description

降低快閃儲存介面中傳收資料錯誤方法以及使用該方法的裝置  Method for reducing transmission data error in flash storage interface and device using the same  

本發明關連於一種快閃記憶體,特別是一種降低快閃儲存介面中傳收資料錯誤方法以及使用該方法的裝置。 The present invention relates to a flash memory, and more particularly to a method for reducing the error of transmitted data in a flash memory interface and a device using the same.

快閃記憶體裝置通常分為NOR快閃裝置與NAND快閃裝置。NOR快閃裝置為隨機存取裝置,主裝置(host)可於位址腳位上提供存取NOR快閃裝置的任意位址,並即時地由NOR快閃裝置的資料腳位上獲得儲存於該位址上的資料。相反地,NAND快閃裝置並非隨機存取,而是序列存取。NAND快閃裝置無法像NOR快閃裝置一樣,可以存取任何隨機位址,主裝置反而需要寫入序列的位元組(bytes)值到NAND快閃裝置中,用以定義請求命令(command)的類型(如,讀取、寫入、抹除等),以及此命令上的位址。位址可指向一個頁面(在快閃記憶體中的一個寫入作業的最小資料塊)或一個區塊(在快閃記憶體中的一個抹除作業的最小資料塊)。實際上,NAND快閃裝置通常從記憶體單元(memory cells)上讀取或寫入完整的數頁資料。當一整頁的資料從陣列讀取到裝置中的緩存器(buffer)後,藉由使用提取訊號(strobe signal)順序地敲出(clock out)內 容,讓主單元可逐位元組或字元組(words)存取資料。 Flash memory devices are generally classified into NOR flash devices and NAND flash devices. The NOR flash device is a random access device, and the host device can provide any address of the NOR flash device on the address pin, and is instantly stored in the data pin of the NOR flash device. The information on this address. Conversely, NAND flash devices are not random access, but sequential access. The NAND flash device cannot access any random address like the NOR flash device, and the master device needs to write the byte value of the sequence to the NAND flash device to define the request command (command). The type (eg, read, write, erase, etc.) and the address on this command. The address can point to a page (the smallest data block of a write job in flash memory) or a block (the smallest data block of an erase job in flash memory). In fact, NAND flash devices typically read or write complete pages of data from memory cells. When a full page of data is read from the array into a buffer in the device, the main unit can be bitwise or word by sequentially clocking out the content using a strobe signal. A group of words access data.

快閃記憶體裝置通常包含裝置端及儲存單元,並且以快閃儲存介面連接上主控端。隨著快閃儲存介面的資料傳輸速度越來越快,資料於傳收時更容易發生錯誤。因此,需要一種方法以及使用該方法的裝置,用以降低快閃儲存介面中傳收資料錯誤。 The flash memory device usually includes a device end and a storage unit, and is connected to the main control terminal by a flash storage interface. As the data transfer speed of the flash storage interface becomes faster and faster, data is more prone to errors when transmitted. Therefore, there is a need for a method and apparatus for using the method for reducing transmission data errors in a flash storage interface.

本發明的實施例提出一種降低快閃儲存介面中傳收的資料錯誤方法,由第一端的處理單元執行,包含下列步驟:持續監督從第二端接收的資料訊框以及/或控制訊框;以及當資料訊框以及/或上述控制訊框包含的訊息指出第二端的最底層偵測到接收資料錯誤時,觸發資料傳輸率設定調整。 Embodiments of the present invention provide a method for reducing data errors transmitted in a flash storage interface, which is executed by a processing unit at a first end, and includes the following steps: continuously supervising data frames and/or control frames received from the second end And triggering the data transmission rate setting adjustment when the data frame and/or the control frame includes a message indicating that the bottom layer of the second end detects the received data error.

本發明的實施例提出一種降低快閃儲存介面中傳收資料錯誤的裝置,包含最底層及處理單元。最底層耦接於對應端,處理單元耦接於最底層。處理單元透過最底層持續監督從對應端接收的資料訊框以及/或控制訊框;以及當資料訊框以及/或控制訊框包含的資訊指出對應端的最底層偵測到接收資料錯誤時,觸發資料傳輸率設定調整。 Embodiments of the present invention provide an apparatus for reducing transmission data errors in a flash storage interface, including a bottom layer and a processing unit. The bottom layer is coupled to the corresponding end, and the processing unit is coupled to the bottom layer. The processing unit continuously monitors the data frame and/or the control frame received from the corresponding end through the bottom layer; and triggers when the information frame and/or the information contained in the control frame indicates that the bottom layer of the corresponding end detects the received data error. Data transfer rate setting adjustment.

110‧‧‧計算裝置 110‧‧‧ Computing device

130‧‧‧主控端 130‧‧‧Master

131‧‧‧物理層 131‧‧‧ physical layer

133‧‧‧物理轉換層 133‧‧‧Physical conversion layer

135‧‧‧資料連接層 135‧‧‧data connection layer

137‧‧‧處理單元 137‧‧‧Processing unit

150‧‧‧裝置端 150‧‧‧ device side

151‧‧‧物理層 151‧‧‧ physical layer

153‧‧‧物理轉換層 153‧‧‧Physical conversion layer

155‧‧‧資料連接層 155‧‧‧data connection layer

157‧‧‧處理單元 157‧‧‧Processing unit

170‧‧‧存取介面 170‧‧‧Access interface

170_0~170_j‧‧‧存取子介面 170_0~170_ j ‧‧‧Access subinterface

180‧‧‧儲存單元 180‧‧‧ storage unit

180_0_0~180_j_i‧‧‧儲存子單元 180_0_0~180_ j _ i ‧‧‧Storage subunit

310_0‧‧‧資料線 310_0‧‧‧Information line

320_0_0~320_0_i‧‧‧晶片致能控制訊號 320_0_0~320_0_ i ‧‧‧ Chip enable control signal

S411~S499‧‧‧方法步驟 S411~S499‧‧‧ method steps

50‧‧‧資料連接層訊框 50‧‧‧Data Link Layer Frame

51‧‧‧資料訊框 51‧‧‧Information frame

511‧‧‧第0通訊類別資料訊框 511‧‧‧0th Communication Category Information Frame

513‧‧‧第1通訊類別資料訊框 513‧‧‧1st communication category information frame

53‧‧‧控制訊框 53‧‧‧Control frame

533‧‧‧否定應答控制訊框 533‧‧‧Negative response control frame

61‧‧‧RReq比特 61‧‧‧RReq bits

63‧‧‧CCITT CRC-16校驗碼 63‧‧‧CCITT CRC-16 check code

80‧‧‧PACP_GET_req訊框 80‧‧‧PACP_GET_req frame

81‧‧‧MIBattribute欄位 81‧‧‧MIBattribute field

第1圖係依據本發明實施例之快閃記憶體的系統架構示意圖。 1 is a schematic diagram of a system architecture of a flash memory according to an embodiment of the present invention.

第2圖係依據本發明實施例之存取介面與儲存單元的方塊圖。 2 is a block diagram of an access interface and a storage unit in accordance with an embodiment of the present invention.

第3圖係依據本發明實施例之一個存取子介面與多個儲存子單元的連接示意圖。 Figure 3 is a schematic diagram showing the connection of an access sub-interface and a plurality of storage sub-units according to an embodiment of the present invention.

第4A至4B圖係依據本發明實施例之運行於低速檔時之資料傳輸率設定調整方法的流程圖。 4A to 4B are flowcharts of a data transmission rate setting adjustment method when operating at a low speed according to an embodiment of the present invention.

第5圖係依據本發明實施例之控制及資料訊框的分類樹。 Figure 5 is a classification tree of control and data frames in accordance with an embodiment of the present invention.

第6圖係顯示依據本發明實施例之否定應答控制訊框的資料結構。 Figure 6 is a diagram showing the data structure of a negative response control frame in accordance with an embodiment of the present invention.

第7圖係顯示依據本發明實施例之包含覆寫之否定應答控制訊框的資料訊框的資料結構。 Figure 7 is a diagram showing the data structure of a data frame including an overwritten negative response control frame in accordance with an embodiment of the present invention.

第8圖係顯示依據本發明實施例之PACP_GET_req訊框的資料結構。 Figure 8 is a diagram showing the data structure of a PACP_GET_req frame in accordance with an embodiment of the present invention.

第9A至9B圖係依據本發明實施例之運行於低速檔時之資料傳輸率設定調整方法的流程圖。 9A to 9B are flowcharts of a data transmission rate setting adjustment method when operating at a low speed according to an embodiment of the present invention.

以下說明係為完成發明的較佳實現方式,其目的在於描述本發明的基本精神,但並不用以限定本發明。實際的發明內容必須參考之後的權利要求範圍。 The following description is a preferred embodiment of the invention, which is intended to describe the basic spirit of the invention, but is not intended to limit the invention. The actual inventive content must be referenced to the scope of the following claims.

必須了解的是,使用於本說明書中的”包含”、”包括”等詞,係用以表示存在特定的技術特徵、數值、方法步驟、作業處理、元件以及/或組件,但並不排除可加上更多的技術特徵、數值、方法步驟、作業處理、元件、組件,或以上的任意組合。 It must be understood that the terms "comprising", "comprising" and "the" are used in the <RTI ID=0.0> </RTI> <RTIgt; </ RTI> to indicate the existence of specific technical features, numerical values, method steps, work processes, components and/or components, but do not exclude Add more technical features, values, method steps, job processing, components, components, or any combination of the above.

於權利要求中使用如”第一”、"第二"、"第三"等詞係用來修飾權利要求中的元件,並非用來表示之間具有優先權 順序,先行關係,或者是一個元件先於另一個元件,或者是執行方法步驟時的時間先後順序,僅用來區別具有相同名字的元件。 The words "first", "second", and "third" are used in the claims to modify the elements in the claims, and are not used to indicate a priority order, an advance relationship, or a component. Prior to another component, or the chronological order in which the method steps are performed, it is only used to distinguish components with the same name.

第1圖係依據本發明實施例之快閃記憶體的系統架構示意圖。快閃記憶體的系統架構包含裝置端150,並透過通用快閃儲存(UFS,Universal Flash Storage)介面與主控端130溝通。UFS是個快閃儲存規範,用以達成較高的資料傳輸速度及更可靠的快閃記憶儲存,並且不需要因為快閃儲存單元的類型不同而配置不同的轉換器。快閃記憶體可配備於數位相機、行動電話、消費性電子設備等之中。UFS介面可運行於脈波寬度調變檔(PWM,Pulse-Width Modulation gear)及高速檔(HS,High-Speed gear)。脈波寬度調變檔可為1Gbps(Gigabits per second)或更低速,而高速檔可為1.4Gbps或更高速。脈波寬度調變檔可稱為低速檔。例如,表1列舉UFS規範所定義不同高速檔(HS-GEARs)的資料傳輸率: 例如,高速檔HS-G1的A級資料傳輸率為1248Mbps,而高速檔HS-G1的B級資料傳輸率為1248Mbps,高速檔HS-G2的A級資料傳輸率為2496Mbps,而高速檔HS-G2的B級資料傳輸率為 2915.2Mbps,依此類推。表2列舉UFS規範所定義不同脈波寬度調變檔(PWM-GEARs)的資料傳輸率: 低速檔PWM-G0的資料傳輸率介於0.01至3Mbps之間,低速檔PWM-G1的資料傳輸率介於3至9Mbps之間,低速檔PWM-G2的資料傳輸率介於6至18Mbps之間,依此類推。 1 is a schematic diagram of a system architecture of a flash memory according to an embodiment of the present invention. The system architecture of the flash memory includes the device end 150 and communicates with the host 130 through a Universal Flash Storage (UFS) interface. UFS is a flash storage specification for achieving higher data transfer speeds and more reliable flash memory storage, and does not require different converters to be configured due to different types of flash memory cells. Flash memory can be used in digital cameras, mobile phones, consumer electronics, and the like. The UFS interface can operate in Pulse-Width Modulation gear (PWM) and High-Speed gear (HS). The pulse width modulation can be 1 Gbps (Gigabits per second) or lower, and the high speed can be 1.4 Gbps or higher. The pulse width modulation file can be referred to as a low speed gear. For example, Table 1 lists the data transfer rates for different high-speed files (HS-GEARs) defined by the UFS specification: For example, the high-speed HS-G1 has a Class A data transmission rate of 1248 Mbps, while the high-speed HS-G1 Class B data transmission rate is 1248 Mbps, and the high-speed file HS-G2 Class A data transmission rate is 2496 Mbps, while the high-speed file HS-G2 has a Class A data transmission rate of 2496 Mbps. G2's Class B data transfer rate is 2915.2 Mbps, and so on. Table 2 lists the data transmission rates of the different pulse width modulation files (PWM-GEARs) defined by the UFS specification: The data transmission rate of the low-speed PWM-G0 is between 0.01 and 3 Mbps, the data transmission rate of the low-speed PWM-G1 is between 3 and 9 Mbps, and the data transmission rate of the low-speed PWM-G2 is between 6 and 18 Mbps. ,So on and so forth.

快閃記憶體更包含儲存單元180,並且裝置端150使用存取介面170與儲存單元180溝通,可採用雙倍資料率(double data rate,DDR)通訊協定與儲存單元180溝通,例如,開放NAND快閃(open NAND flash interface,ONFI)、雙倍資料率開關(DDR toggle)或其他介面。裝置端150的處理單元157透過存取介面170寫入資料到儲存單元180中的指定位址,以及從儲存單元180中的指定位址讀取資料。詳細來說,裝置端150的處理單元157透過存取介面170寫入資料到儲存單元180中的指定位址,以及從儲存單元180中的指定位址讀取資料。存取介 面170使用數個電子訊號來協調裝置端150的處理單元與儲存單元180間的資料與命令傳遞,包含資料線(data line)、時脈訊號(clock signal)與控制訊號(control signal)。資料線可用以傳遞命令、位址、讀出及寫入的資料;控制訊號線可用以傳遞晶片致能(chip enable,CE)、位址提取致能(address latch enable,ALE)、命令提取致能(command latch enable,CLE)、寫入致能(write enable,WE)等控制訊號。 The flash memory further includes a storage unit 180, and the device end 150 communicates with the storage unit 180 using the access interface 170, and can communicate with the storage unit 180 by using a double data rate (DDR) protocol, for example, open NAND. Open NAND flash interface (ONFI), double data rate switch (DDR toggle) or other interface. The processing unit 157 of the device end 150 writes the data to the specified address in the storage unit 180 through the access interface 170, and reads the data from the specified address in the storage unit 180. In detail, the processing unit 157 of the device end 150 writes the data to the specified address in the storage unit 180 through the access interface 170, and reads the data from the specified address in the storage unit 180. The access interface 170 uses a plurality of electronic signals to coordinate data and command transmission between the processing unit of the device 150 and the storage unit 180, including a data line, a clock signal, and a control signal. . The data line can be used to transfer commands, addresses, read and write data; the control signal line can be used to transmit chip enable (CE), address latch enable (ALE), command extraction Control signals such as command latch enable (CLE) and write enable (WE).

儲存單元180可包含多個儲存子單元,每一個儲存子單元實施於一個晶粒(die)上,各自使用關聯的存取子介面與處理單元157進行溝通。第2圖係依據本發明實施例之存取介面與儲存單元的方塊圖。快閃記憶體可包含j+1個存取子介面170_0至170_j,存取子介面又可稱為通道(channel),每一個存取子介面連接i+1個儲存子單元。換句話說,i+1個儲存子單元共享一個存取子介面。例如,當快閃記憶體包含4個通道(j=3)且每一個通道連接4個儲存單元(i=3)時,快閃記憶體一共擁有16個儲存單元180_0_0至180_j_i。處理單元157可驅動存取子介面170_0至170_j中之一者,從指定的儲存子單元讀取資料。每個儲存子單元擁有獨立的晶片致能(CE)控制訊號。換句話說,當欲對指定的儲存子單元進行資料讀取時,需要驅動關聯的存取子介面致能此儲存子單元的晶片致能控制訊號。第3圖係依據本發明實施例之一個存取子介面與多個儲存子單元的連接示意圖。處理單元157可透過存取子介面170_0使用獨立的晶片致能控制訊號320_0_0至320_0_i來從連接的儲存子單元180_0_0至180_0_i中選擇出其中一者,接著,透過共享的資料 線310_0從選擇出的儲存子單元的指定位置讀取資料。 The storage unit 180 can include a plurality of storage subunits, each of which is implemented on a die, each communicating with the processing unit 157 using an associated access sub-interface. 2 is a block diagram of an access interface and a storage unit in accordance with an embodiment of the present invention. The flash memory may include j + 1 access sub-interfaces 170_0 to 170_ j , the access sub-interfaces may also be referred to as channels, and each access sub-interface is connected to i + 1 storage sub-units. In other words, i + 1 storage subunits share an access subinterface. For example, when the flash memory comprises four channels (j = 3) and each channel connected to a storage unit 4 (i = 3), flash memory has a total of 16 storage units 180_0_0 to 180_ j _ i. The processing unit 157 may drive the sub-access interface 170_0 to 170_ j by one of read data from the specified storage subunit. Each storage subunit has an independent wafer enable (CE) control signal. In other words, when data reading is to be performed on a specified storage subunit, it is necessary to drive the associated access subinterface to enable the wafer enable control signal of the storage subunit. Figure 3 is a schematic diagram showing the connection of an access sub-interface and a plurality of storage sub-units according to an embodiment of the present invention. The processing unit 157 may be accessed through the use of separate sub-wafer interface 170_0 enable control signal to 320_0_0 320_0_ i selects from the storage sub-unit connected to 180_0_ i 180_0_0 wherein one out, then, through the sharing of data lines from the selector 310_0 Read the data at the specified location of the storage subunit.

主控端130的處理單元137可使用存取介面120透過指定通訊協定與計算裝置110進行溝通,例如,通用序列匯流排(universal serial bus,USB)、先進技術附著(advanced technology attachment,ATA)、序列先進技術附著(serial advanced technology attachment,SATA)、快速周邊元件互聯(peripheral component interconnect express,PCI-E)或其他介面。 The processing unit 137 of the host 130 can communicate with the computing device 110 through the designated communication protocol using the access interface 120, for example, a universal serial bus (USB), an advanced technology attachment (ATA), Serial advanced technology attachment (SATA), peripheral component interconnect express (PCI-E) or other interface.

主控端130及裝置端150各自包含UFS互聯層(UIC,UFS InterConnect layer)。UFS互聯層是UFS分層架構的最底層,管理主控端130及裝置端150間的連接。主控端130的UFS互聯層可包含物理層(PHY,L1 layer)131、物理轉換層(physical adapter,L1.5 layer)133及資料連接層(data link,L2 layer)135。裝置端150的UFS互聯層可包含物理層151、物理轉換層153及資料連接層155。物理層131及151中之每一者可包含差動輸出對,如圖1的TXP及TXN,用以傳送資料至對應端,以及差動輸入對,如圖1的RXP及RXN,用以從對應端接收資料。例如,主控端130的物理層131可透過差動輸出對傳送資料至裝置端150,以及透過差動輸入對從裝置端150接收資料。反面來說,裝置端150的物理層131可透過差動輸出對傳送資料至主控端130,以及透過差動輸入對從主控端130接收資料。 The host 130 and the device 150 each include a UFS InterConnect layer (UIC). The UFS interconnect layer is the lowest layer of the UFS layered architecture, and manages the connection between the host 130 and the device 150. The UFS interconnect layer of the host 130 may include a physical layer (PHY, L1 layer) 131, a physical adapter (L1.5 layer) 133, and a data link (L2 layer) 135. The UFS interconnect layer of the device end 150 may include a physical layer 151, a physical conversion layer 153, and a data connection layer 155. Each of the physical layers 131 and 151 may include a differential output pair, such as TXP and TXN of FIG. 1, for transmitting data to the corresponding end, and a differential input pair, such as RXP and RXN of FIG. The corresponding end receives the data. For example, the physical layer 131 of the host 130 can transmit data to the device end 150 through the differential output pair and receive data from the device terminal 150 through the differential input pair. Conversely, the physical layer 131 of the device end 150 can transmit data to the host 130 through the differential output pair and receive data from the host 130 through the differential input pair.

主控端130及裝置端150中之每一者(亦可稱為傳送端)於運行在高速檔時,可透過其最底層(例如,UFS互聯層)持續監督從對應端接收的資料訊框以及/或控制訊框,並且,當 資料訊框以及/或控制訊框包含的資訊指出對應端的最底層(例如,UFS互聯層)運行於低速檔時偵測到接收資料錯誤時,觸發資料傳輸率設定調整。例如,主控端130可持續監督從裝置端150接收的資料訊框以及/或控制訊框,並且,當資料訊框以及/或控制訊框指出裝置端150的最底層運行於低速檔時偵測到接收資料錯誤時,觸發資料傳輸率設定調整,反之亦然。預設條件指對應端的UFS互聯層運行於低速檔時偵測到接收資料錯誤。第4圖係依據本發明實施例之運行於低速檔時之資料傳輸率設定調整方法的流程圖。此方法由處理單元137或157於載入並執行特定微碼或軟體指令時實施。脈波寬度調變可使用硬體電路實施於傳送端的實體層之中,用以將訊息編碼為脈衝訊號(pulsing signal)。傳送端的實體層可調整脈衝訊號的頻率,用以獲得更高或更低的資料傳輸率。此方法可實施於主控端130的處理單元137或裝置端150的處理單元157,統稱為傳送端的處理單元。傳送端的處理單元可為通用處理器(general-purpose processor)、微控制器(microcontroller)、微控制器單元(MCU,microcontroller unit)等。當傳送端的處理單元從傳送端的非揮發性記憶體(non-volatile memory)載入並執行相關韌體時實施資料傳輸率設定調整方法。傳送端的處理單元可持續監督透過差動輸入對從另一端(或可稱為對應端或接收端)接收的資料訊框(data frames)或控制訊框(control frames),並且判斷是否接收到相應於之前傳送資料的資料連接層的否定應答控制訊框(NAC,negative acknowledgement control frame)(步驟S411)。第5圖係依據本發明實施例之控制及資料訊框的分類樹。資料連 接層訊框50包含二類:資料訊框(TCx)51及控制訊框53。資料訊框51可更分為二類:第0通訊類別資料訊框(TC0,Trraffic Class 0 Data Frames);及第1通訊類別資料訊框(TC1,Trraffic Class 0 Data Frames)。控制訊框家族53包含可被傳送端的邏輯(硬體電路)辨識或解析的否定應答控制訊框533。當對應端於任何訊框中偵測到錯誤或接收到具有錯誤的訊框序號(FSN,Frame Sequence Number)的資料訊框時,傳送否定應答控制訊框533給傳送端。第6圖係顯示依據本發明實施例之否定應答控制訊框的資料結構。否定應答控制訊框533的長度為2個符號(symbols),而每個符號為16比特。否定應答控制訊框533包含RReq比特(第0個符號的第0比特),用以請求傳送端重新初始其物理層中的傳送部分。否定應答控制訊框533可使用CCITT CRC-16校驗碼63保護(第1個符號)。第7圖係顯示依據本發明實施例之包含覆寫之否定應答控制訊框的資料訊框的資料結構。於另一些實施例中,否定應答控制訊框533可覆寫多份DL_SDU位元組中之一者而乘載於資料訊框511或513中。 Each of the main control unit 130 and the device end 150 (also referred to as a transmitting end) can continuously monitor the data frame received from the corresponding end through the bottom layer (for example, the UFS interconnect layer) when running at the high speed file. And/or the control frame, and triggering the data transmission when the data frame and/or the control frame information indicates that the bottom layer of the corresponding end (for example, the UFS interconnection layer) detects the receiving data error when running at the low speed file. Rate setting adjustment. For example, the host 130 can continuously monitor the data frame and/or control frame received from the device end 150, and when the data frame and/or control frame indicates that the lowest layer of the device end 150 is running at a low speed, When the received data error is detected, the data transmission rate setting adjustment is triggered, and vice versa. The preset condition means that the UFS interconnect layer at the corresponding end detects a received data error when running at a low speed. Fig. 4 is a flow chart showing a method of adjusting a data transmission rate setting when operating at a low speed in accordance with an embodiment of the present invention. This method is implemented by processing unit 137 or 157 when loading and executing a particular microcode or software instruction. The pulse width modulation can be implemented in the physical layer of the transmitting end using a hardware circuit for encoding the message into a pulse signal. The physical layer of the transmitting end can adjust the frequency of the pulse signal to obtain a higher or lower data transmission rate. This method can be implemented in the processing unit 137 of the host 130 or the processing unit 157 of the device end 150, which is collectively referred to as a processing unit at the transmitting end. The processing unit of the transmitting end may be a general-purpose processor, a microcontroller, a microcontroller unit (MCU), or the like. The data transmission rate setting adjustment method is implemented when the processing unit at the transmitting end loads and executes the relevant firmware from the non-volatile memory of the transmitting end. The processing unit at the transmitting end can continuously monitor the data frames or control frames received from the other end (or may be referred to as the corresponding end or the receiving end) through the differential input, and determine whether the corresponding information is received. The negative acknowledgement control frame (NAC) of the data connection layer of the previous data is transmitted (step S411). Figure 5 is a classification tree of control and data frames in accordance with an embodiment of the present invention. The data connection layer frame 50 includes two types: a data frame (TCx) 51 and a control frame 53. The information frame 51 can be further divided into two categories: a 0th communication category data frame (TC0, Trraffic Class 0 Data Frames); and a first communication category data frame (TC1, Trraffic Class 0 Data Frames). The control frame family 53 contains a negative acknowledgement control frame 533 that can be recognized or parsed by the logic (hardware circuitry) of the transmitting end. When the corresponding end detects an error in any frame or receives a data frame with an incorrect frame sequence number (FSN), a negative acknowledgement control frame 533 is transmitted to the transmitting end. Figure 6 is a diagram showing the data structure of a negative response control frame in accordance with an embodiment of the present invention. The length of the negative response control frame 533 is 2 symbols, and each symbol is 16 bits. The negative acknowledgement control frame 533 contains RReq bits (bit 0 of the 0th symbol) for requesting the transmitting end to reinitialize the transmitted portion in its physical layer. The negative acknowledgement control frame 533 can be protected (the first symbol) using the CCITT CRC-16 check code 63. Figure 7 is a diagram showing the data structure of a data frame including an overwritten negative response control frame in accordance with an embodiment of the present invention. In other embodiments, the negative acknowledgement control frame 533 can overwrite one of the plurality of DL_SDU bytes and be carried in the data frame 511 or 513.

由於對應端偵測到先前傳送的資料有錯誤的原因不一定是因為UFS互聯層運行於低速檔而造成,所以需要進一步檢查,避免進行沒有用的資料傳輸率設定調整。參考第4圖。當接收到相應於之前傳送資料的資料連接層的否定應答控制訊框(NAC,negative acknowledgement control frame)(步驟S411中”是”的路徑),傳送端的處理單元發送請求給對應端,用以請求關聯於否定應答控制訊框的可能原因,並且從對應端接收回覆(response)(步驟S413)。此請求可為UFS規範中定義的 PACP_GET_req。第8圖係顯示依據本發明實施例之PACP_GET_req訊框的資料結構。PACP_GET_req訊框80包含MIBattribute欄位(第2個符號)81,定義欲存取對應端中的哪些屬性(Attributes)。請求中的MIBattribute欄位定義欲存取對應端中的錯誤碼。回覆中可包含錯誤碼,指出對應端於資料連接層中發生的錯誤事件的錯誤類型。於一些實施例中,錯誤碼可乘載於DL_LM_SAP狀態基元(status primitive)中的DLErrorCode列舉(Enumeration)。表1列出DL_LM_SAP狀態基元的參數範例: 例如,錯誤碼DLErrorCode=5指示對應端的物理轉換層於接收資料時發生循環冗餘校驗(CRC,Cyclic Redundancy Check)錯誤。錯誤碼DLErrorCode=13指示對應端的物理層於接收資料時發生符號錯誤。 Since the reason why the corresponding end detects that the previously transmitted data has an error is not necessarily caused by the UFS interconnection layer running at a low speed, further inspection is required to avoid the useless data transmission rate setting adjustment. Refer to Figure 4. When receiving a negative acknowledgement control frame (NAC, negative acknowledgement control frame) corresponding to the data connection layer of the previously transmitted data (the path of YES in step S411), the processing unit at the transmitting end sends a request to the corresponding end for requesting A possible cause associated with the negative response control frame is received, and a response is received from the corresponding end (step S413). This request can be PACP_GET_req as defined in the UFS specification. Figure 8 is a diagram showing the data structure of a PACP_GET_req frame in accordance with an embodiment of the present invention. The PACP_GET_req frame 80 contains the MIBattribute field (2nd symbol) 81, which defines which attributes (Attributes) in the corresponding end are to be accessed. The MIBattribute field in the request defines the error code to be accessed in the corresponding end. The reply may contain an error code indicating the type of error of the error event that occurred in the data connection layer. In some embodiments, the error code can be multiplied by the DLErrorCode enumeration (Enumeration) in the DL_LM_SAP status primitive. Table 1 lists examples of parameters for the DL_LM_SAP state primitive: For example, the error code DLErrorCode=5 indicates that the physical conversion layer of the corresponding end generates a Cyclic Redundancy Check (CRC) error when receiving data. The error code DLErrorCode=13 indicates that the physical layer of the corresponding end has a symbol error when receiving the data.

參考第4A至4B圖。當從對應端接收回覆後(步驟S413),傳送端的處理單元判斷對應端的最底層是否發生循環冗餘校驗錯誤或符號錯誤(步驟S431)。由於對應端發生的錯誤可能只是偶然發生,因此傳送端的處理單元可維護比特錯誤率計數器(BER,Bit Error Rate counter),初始為1,用以記錄對應端發生循環冗餘校驗錯誤或符號錯誤的次數,並且於偵測到對應端發生循環冗餘校驗錯誤或符號錯誤至少二次之後再進行資料傳輸率設定調整。當對應端發生循環冗餘校驗錯誤或符號錯誤時(步驟S431中”是”的路徑),傳送端的處理單元更判斷比特錯誤率計數器的值是否到達或高於預設閥值(例如,2至10間的任意整數)(步驟S433)。當比特錯誤率計數器的值低於預設閥值時(步驟S433中”否”的路徑),比特錯誤率計數器的值加1(步驟S451),並進行下一次否定應答控制訊框的判斷(步驟S411)。當比特錯誤率計數器的值到達或高於預設閥值時(步驟S433中”是”的路徑),傳送端的處理單元調整傳送端中實體層的資料傳輸率設定,用以讓後續資料訊框以新的資料傳輸率設定進行傳送(步驟S435、S437、S453、S455及S457)。詳細的資料傳輸率設定調整,描述如下:當傳送端的實體層的目前資料傳輸 率設定處於第一水平(依序沿著步驟S471中”否”的路徑、步驟S473中”否”的路徑及步驟S475中”否”的路徑),傳送端的處理單元驅動傳送端的實體層,用以調整資料傳輸率設定至第二水平(步驟S499)。當傳送端的實體層的目前資料傳輸率設定處於第二水平(依序沿著步驟S471中”否”的路徑、步驟S473中”否”的路徑及步驟S475中”是”的路徑),傳送端的處理單元驅動傳送端的實體層,用以調整資料傳輸率設定至第三水平(步驟S497)。當傳送端的實體層的目前資料傳輸率設定處於第三水平(步驟S471中”是”的路徑),傳送端的處理單元驅動傳送端的實體層,用以調整資料傳輸率設定至第四水平(步驟S491)。當傳送端的實體層的目前資料傳輸率設定處於第四水平(依序沿著步驟S471中”否”的路徑、步驟S473中”是”的路徑及步驟S477中”否”的路徑),傳送端的處理單元驅動傳送端的實體層,用以調整資料傳輸率設定至第五水平(步驟S495)。當傳送端的實體層的目前資料傳輸率設定處於第五水平(依序沿著步驟S471中”否”的路徑、步驟S473中”是”的路徑及步驟S477中”是”的路徑),傳送端的處理單元驅動傳送端的實體層,用以調整資料傳輸率設定至第一水平(步驟S493)。其中,第一水平高於第二水平,第二水平高於第三水平,第三水平高於第四水平,及第四水平高於第五水平。於一些實施例中,第一水平為最大資料傳輸率x60%,第二水平為最大資料傳輸率x55%,第三水平為最大資料傳輸率x50%,第四水平為最大資料傳輸率x45%,及第五水平為最大資料傳輸率x40%。於此須注意的是,傳送端的實體層的資料傳輸率設定處於較高水平所傳送資料的資料量 於單位時間(例如,一秒)高於傳送端的實體層的資料傳輸率設定處於較低水平時。於此另須注意的是,當目前傳送端的實體層的目前資料傳輸率設定處於第五水平時,傳送端的實體層的資料傳輸率設定無須再進一步調整,反而需要調整資料傳輸率以外的參數來提升於低速檔時的傳輸可靠性。於此須注意的是,步驟S491、S493、S495、S497及S499中之每一者可更重設比特錯誤率計數器的值為1。 Refer to Figures 4A through 4B. After receiving the reply from the corresponding end (step S413), the processing unit at the transmitting end determines whether a cyclic redundancy check error or a symbol error has occurred at the lowest layer of the corresponding end (step S431). Since the error occurring at the corresponding end may only occur by chance, the processing unit at the transmitting end can maintain a Bit Error Rate Counter (BER), which is initially 1 to record a cyclic redundancy check error or a symbol error at the corresponding end. The number of times, and the data transmission rate setting adjustment is performed after detecting that the corresponding side has a cyclic redundancy check error or a symbol error at least twice. When a cyclic redundancy check error or a symbol error occurs at the corresponding end (the path of YES in step S431), the processing unit at the transmitting end further determines whether the value of the bit error rate counter reaches or is higher than a preset threshold (for example, 2) Any integer to 10) (step S433). When the value of the bit error rate counter is lower than the preset threshold (the path of NO in step S433), the value of the bit error rate counter is incremented by one (step S451), and the judgment of the next negative response control frame is performed ( Step S411). When the value of the bit error rate counter reaches or exceeds the preset threshold ("YES" path in step S433), the processing unit at the transmitting end adjusts the data transmission rate setting of the physical layer in the transmitting end for the subsequent data frame. The transmission is performed with a new data transmission rate setting (steps S435, S437, S453, S455, and S457). The detailed data transmission rate setting adjustment is described as follows: when the current data transmission rate of the physical layer of the transmitting end is set to the first level (the path along the "No" in step S471, the path and the step of "NO" in step S473. In the path of "NO" in S475, the processing unit at the transmitting end drives the physical layer of the transmitting end to adjust the data transmission rate setting to the second level (step S499). When the current data transmission rate of the physical layer of the transmitting end is set to the second level (the path of "NO" in step S471, the path of "NO" in step S473, and the path of "Yes" in step S475), the transmitting end The processing unit drives the physical layer of the transmitting end to adjust the data transmission rate setting to the third level (step S497). When the current data transmission rate of the physical layer of the transmitting end is set to the third level ("YES" in step S471), the processing unit at the transmitting end drives the physical layer of the transmitting end to adjust the data transmission rate setting to the fourth level (step S491). ). When the current data transmission rate of the physical layer of the transmitting end is set to the fourth level (the path of "NO" in step S471, the path of "Yes" in step S473, and the path of "No" in step S477), the transmitting end The processing unit drives the physical layer of the transmitting end to adjust the data transmission rate setting to the fifth level (step S495). When the current data transmission rate of the physical layer of the transmitting end is set to the fifth level (the path of "NO" in step S471, the path of "Yes" in step S473, and the path of "Yes" in step S477), the transmitting end The processing unit drives the physical layer of the transmitting end to adjust the data transmission rate setting to the first level (step S493). Wherein, the first level is higher than the second level, the second level is higher than the third level, the third level is higher than the fourth level, and the fourth level is higher than the fifth level. In some embodiments, the first level is a maximum data transmission rate x60%, the second level is a maximum data transmission rate x55%, the third level is a maximum data transmission rate x50%, and the fourth level is a maximum data transmission rate x45%, And the fifth level is the maximum data transmission rate x40%. It should be noted that the data transmission rate of the physical layer of the transmitting end is set at a higher level. The data amount of the data transmitted at a higher level is lower than the data transmission rate of the physical layer at the transmitting end per unit time (for example, one second). Time. It should also be noted that when the current data transmission rate of the physical layer of the transmitting end is set to the fifth level, the data transmission rate setting of the physical layer of the transmitting end does not need further adjustment, but instead needs to adjust parameters other than the data transmission rate. Increased transmission reliability at low gears. It should be noted here that each of steps S491, S493, S495, S497, and S499 may reset the value of the bit error rate counter to 1.

第9A至9B圖係依據本發明實施例之運行於低速檔時之資料傳輸率設定調整方法的流程圖。整體而言,第9A至9B圖的流程相較於第4A至4B圖的流程省略了比特錯誤率計數器的維護,也就是說,缺少了步驟S433及步驟S451。詳細來說,當從對應端接收到相應於之前傳送資料的資料連接層的否定應答控制訊框,及偵測到對應端發生循環冗餘校驗錯誤或符號錯誤時(步驟S411中”是”的路徑接著步驟S431中”是”的路徑),傳送端的處理單元調整傳送端中實體層的資料傳輸率設定,用以讓後續資料訊框以新的資料傳輸率設定進行傳送(步驟S435、S437、S453、S455及S457)。 9A to 9B are flowcharts of a data transmission rate setting adjustment method when operating at a low speed according to an embodiment of the present invention. Overall, the flow of the FIGS. 9A to 9B omits the maintenance of the bit error rate counter compared to the flow of FIGS. 4A to 4B, that is, the steps S433 and S451 are missing. In detail, when a negative response control frame corresponding to the data connection layer of the previously transmitted data is received from the corresponding end, and a cyclic redundancy check error or a symbol error is detected at the corresponding end ("YES" in step S411" The path of the path is YES in step S431. The processing unit at the transmitting end adjusts the data transmission rate setting of the physical layer in the transmitting end, so that the subsequent data frame is transmitted with the new data transmission rate setting (steps S435, S437). , S453, S455 and S457).

雖然第1至3圖中包含了以上描述的元件,但不排除在不違反發明的精神下,使用更多其他的附加元件,已達成更佳的技術效果。此外,雖然第4A、4B圖及第9A、9B圖的流程圖採用指定的順序來執行,但是在不違反發明精神的情況下,熟習此技藝人士可以在達到相同效果的前提下,修改這些步驟間的順序,所以,本發明並不侷限於僅使用如上所述的順序。此外,熟習此技藝人士亦可以將若干步驟整合為一個步 驟,或者是除了這些步驟外,循序或平行地執行更多步驟,本發明亦不因此而侷限。 Although the above-described elements are included in FIGS. 1 to 3, it is not excluded that more other additional elements are used without departing from the spirit of the invention, and a better technical effect has been achieved. Further, although the flowcharts of FIGS. 4A, 4B and 9A, 9B are executed in a specified order, those skilled in the art can modify these steps without achieving the same effect without violating the spirit of the invention. The order is so, therefore, the invention is not limited to the use of only the order as described above. In addition, those skilled in the art may also integrate several steps into one step, or in addition to these steps, performing more steps sequentially or in parallel, and the present invention is not limited thereby.

雖然本發明使用以上實施例進行說明,但需要注意的是,這些描述並非用以限縮本發明。相反地,此發明涵蓋了熟習此技藝人士顯而易見的修改與相似設置。所以,申請權利要求範圍須以最寬廣的方式解釋來包含所有顯而易見的修改與相似設置。 Although the present invention has been described using the above embodiments, it should be noted that these descriptions are not intended to limit the invention. On the contrary, this invention covers modifications and similar arrangements that are apparent to those skilled in the art. Therefore, the scope of the claims should be interpreted in the broadest form to include all obvious modifications and similar arrangements.

Claims (20)

一種降低快閃儲存介面中傳收資料錯誤方法,由一第一端的處理單元執行,包含:持續監督從一第二端接收的一資料訊框以及/或一控制訊框;以及當上述資料訊框以及/或上述控制訊框包含的資訊指出上述第二端的一最底層偵測到接收資料錯誤時,觸發一資料傳輸率設定調整。  A method for reducing error in transmitting data in a flash storage interface is performed by a processing unit at a first end, comprising: continuously supervising a data frame received from a second end and/or a control frame; and The information frame and/or the information contained in the control frame indicates that a data transmission rate setting adjustment is triggered when a bottom layer of the second end detects that the received data is incorrect.   如申請專利範圍第1項所述的降低快閃儲存介面中傳收資料錯誤方法,其中,上述第一端及上述第二端透過一通用快閃儲存介面互相溝通。  The method for reducing the error in transmitting data in the flash storage interface according to the first aspect of the invention, wherein the first end and the second end communicate with each other through a universal flash storage interface.   如申請專利範圍第2項所述的降低快閃儲存介面中傳收資料錯誤方法,其中,上述最底層為一通用快閃儲存互聯層,上述通用快閃儲存互聯層包含一物理層及一物理轉換層,上述方法包含:當偵測到上述第二端回覆的一錯誤碼指出上述第二端的上述物理轉換層於接收資料時發生循環冗餘校驗錯誤,或上述第二端的上述物理層於接收資料時發生符號錯誤時,觸發上述資料傳輸率設定調整。  The method for reducing the error of transmitting data in the flash storage interface according to claim 2, wherein the bottom layer is a general flash storage interconnect layer, and the universal flash storage interconnect layer comprises a physical layer and a physics. The conversion layer includes: when detecting an error code of the second end reply, indicating that the physical conversion layer of the second end generates a cyclic redundancy check error when receiving the data, or the physical layer of the second end is When the symbol error occurs when receiving data, the above data transmission rate setting adjustment is triggered.   如申請專利範圍第3項所述的降低快閃儲存介面中傳收資料錯誤方法,包含:當接收到相應於之前傳送資料的一資料連接層的一否定應答控制訊框時,發送一請求給上述第二端,用以請求關聯於上述否定應答控制訊框的原因;以及 從上述第二端接收一回覆,其中上述回覆包含上述錯誤碼。  The method for reducing the error of transmitting data in the flash storage interface according to claim 3, comprising: sending a request to a negative response control frame corresponding to a data connection layer of the previously transmitted data The second end is configured to request a reason associated with the negative response control frame; and receive a reply from the second end, wherein the reply includes the error code.   如申請專利範圍第2項所述的降低快閃儲存介面中傳收資料錯誤方法,其中,上述通用快閃儲存介面運行於1Gbps或更低速。  The method for reducing the error in transmitting data in a flash storage interface according to claim 2, wherein the universal flash storage interface operates at 1 Gbps or lower.   如申請專利範圍第2項所述的降低快閃儲存介面中傳收資料錯誤方法,其中,上述最底層為一通用快閃儲存互聯層,上述通用快閃儲存互聯層包含一物理層及一物理轉換層,上述處理單元維護一比特錯誤率計數器,用以紀錄上述第二端的上述物理層及上述物理轉換層於接收資料時發生錯誤的次數,上述方法包含:當偵測到上述第二端回覆的一錯誤碼指出上述第二端的上述物理轉換層於接收資料時發生循環冗餘校驗錯誤,或上述第二端的上述物理層於接收資料時發生符號錯誤時,判斷上述比特錯誤率計數器的一值是否到達或高於一閥值;當上述比特錯誤率計數器的上述值到達或高於上述閥值時,觸發上述資料傳輸率設定調整。  The method for reducing the error of transmitting data in the flash storage interface according to claim 2, wherein the bottom layer is a general flash storage interconnect layer, and the universal flash storage interconnect layer comprises a physical layer and a physics. a conversion layer, the processing unit maintaining a one-bit error rate counter for recording the number of times the physical layer and the physical conversion layer of the second end generate an error when receiving the data, the method comprising: detecting the second end reply An error code indicates that the physical conversion layer of the second end generates a cyclic redundancy check error when receiving data, or the physical layer of the second end detects a symbol error when receiving data, and determines one of the bit error rate counters. Whether the value reaches or exceeds a threshold; when the above value of the bit error rate counter reaches or exceeds the threshold, the data transmission rate setting adjustment is triggered.   如申請專利範圍第6項所述的降低快閃儲存介面中傳收資料錯誤方法,其中,上述閥值為2至10間的任意整數。  The method for reducing the error of the transmitted data in the flash storage interface according to claim 6, wherein the threshold is any integer between 2 and 10.   如申請專利範圍第1項所述的降低快閃儲存介面中傳收資料錯誤方法,其中,上述資料傳輸率設定調整包含:當上述第一端的一實體層的一資料傳輸率設定處於一第一水平時,驅動上述第一端的上述實體層,用以調整上述資料傳輸率設定至一第二水平;當上述第一端的上述實體層的上述資料傳輸率設定處於上 述第二水平時,驅動上述第一端的上述實體層,用以調整上述資料傳輸率設定至一第三水平;當上述第一端的上述實體層的上述資料傳輸率設定處於上述第三水平時,驅動上述第一端的上述實體層,用以調整上述資料傳輸率設定至一第四水平;當上述第一端的上述實體層的上述資料傳輸率設定處於上述第四水平時,驅動上述第一端的上述實體層,用以調整上述資料傳輸率設定至一第五水平;當上述第一端的上述實體層的上述資料傳輸率設定處於上述第五水平時,驅動上述第一端的上述實體層,用以調整上述資料傳輸率設定至上述第一水平;其中,上述第一水平高於上述第二水平,上述第二水平高於上述第三水平,上述第三水平高於上述第四水平,及上述第四水平高於上述第五水平。  The method for reducing the error of transmitting data in the flash storage interface according to the first aspect of the patent application, wherein the data transmission rate setting adjustment comprises: when a data transmission rate of a physical layer of the first end is set to be one a level, driving the physical layer of the first end to adjust the data transmission rate to a second level; when the data transmission rate of the physical layer of the first end is set to the second level, Driving the physical layer of the first end to adjust the data transmission rate to a third level; and when the data transmission rate setting of the physical layer of the first end is at the third level, driving the first The physical layer of the terminal is configured to adjust the data transmission rate to a fourth level; and when the data transmission rate of the physical layer of the first end is set to be at the fourth level, driving the entity at the first end a layer, configured to adjust the data transmission rate set to a fifth level; when the data transmission rate setting of the physical layer of the first end is When the fifth level is described, the physical layer of the first end is driven to adjust the data transmission rate to the first level; wherein the first level is higher than the second level, and the second level is higher than the foregoing At the third level, the third level is higher than the fourth level, and the fourth level is higher than the fifth level.   如申請專利範圍第8項所述的降低快閃儲存介面中傳收資料錯誤方法,其中,上述第一水平為一最大資料傳輸率x60%,上述第二水平為上述最大資料傳輸率x55%,上述第三水平為上述最大資料傳輸率x50%,上述第四水平為上述最大資料傳輸率x45%,及上述第五水平為上述最大資料傳輸率x40%。  The method for reducing the error of the transmitted data in the flash storage interface according to the eighth aspect of the patent application, wherein the first level is a maximum data transmission rate x60%, and the second level is the maximum data transmission rate x55%, The third level is the maximum data transmission rate x50%, the fourth level is the maximum data transmission rate x45%, and the fifth level is the maximum data transmission rate x40%.   如申請專利範圍第8項所述的降低快閃儲存介面中傳收資料錯誤方法,其中,上述第一端的上述實體層的上述資料傳輸率設定處於較高水平於一單位時間所傳送資料的資料量高於上述第一端的上述實體層的上述資料傳輸率設定處 於較低水平時。  The method for reducing the error of the transmitted data in the flash storage interface according to the eighth aspect of the patent application, wherein the data transmission rate of the physical layer at the first end is set to a higher level of data transmitted in one unit time. When the data transmission rate of the physical layer higher than the first end is set to a lower level.   一種降低快閃儲存介面中傳收資料錯誤裝置,包含:一最底層,耦接於一對應端;以及一處理單元,耦接於上述最底層,透過上述最底層持續監督從上述對應端接收的一資料訊框以及/或一控制訊框;以及當上述資料訊框以及/或上述控制訊框包含的資訊指出上述對應端的一最底層偵測到接收資料錯誤時,觸發一資料傳輸率設定調整。  An apparatus for reducing transmission data in a flash storage interface includes: a bottom layer coupled to a corresponding end; and a processing unit coupled to the bottom layer and continuously received from the corresponding end through the bottom layer a data frame and/or a control frame; and triggering a data transmission rate setting adjustment when the data frame and/or the information contained in the control frame indicates that a bottom layer of the corresponding end detects a received data error .   如申請專利範圍第11項所述的降低快閃儲存介面中傳收資料錯誤裝置,其中,上述裝置及上述對應端透過一通用快閃儲存介面互相溝通。  The apparatus for reducing the transmission of data in the flash storage interface according to claim 11, wherein the device and the corresponding end communicate with each other through a universal flash storage interface.   如申請專利範圍第12項所述的降低快閃儲存介面中傳收資料錯誤裝置,其中,上述最底層為一通用快閃儲存互聯層,上述通用快閃儲存互聯層包含一物理層及一物理轉換層,以及上述處理單元當偵測到上述對應端回覆的一錯誤碼指出上述對應端的上述物理轉換層於接收資料時發生循環冗餘校驗錯誤,或上述對應端的上述物理層於接收資料時發生符號錯誤時,觸發上述資料傳輸率設定調整。  The apparatus for reducing the error of the data in the flash storage interface according to claim 12, wherein the bottom layer is a general flash storage interconnect layer, and the universal flash storage interconnect layer comprises a physical layer and a physics. The conversion layer, and the processing unit detecting that the error code of the corresponding end reply indicates that the physical conversion layer of the corresponding end generates a cyclic redundancy check error when receiving the data, or the physical layer of the corresponding end is when receiving the data When the symbol error occurs, the above data transmission rate setting adjustment is triggered.   如申請專利範圍第13項所述的降低快閃儲存介面中傳收資料錯誤裝置,其中,上述處理單元當接收到相應於之前傳送資料的一資料連接層的一否定應答控制訊框時,發送一請求給上述第二端,用以請求關聯於上述否定應答控制訊框的原因;以及從上述第二端接收一回覆,其中上述回覆包含上述錯誤碼。  The apparatus for reducing the error in the flash storage interface according to claim 13 , wherein the processing unit sends when a negative response control frame corresponding to a data connection layer of the previously transmitted data is received. a request to the second end for requesting a reason associated with the negative acknowledgement control frame; and receiving a reply from the second end, wherein the reply includes the error code.   如申請專利範圍第12項所述的降低快閃儲存介面中傳收資料錯誤裝置,其中,上述通用快閃儲存介面運行於1Gbps或更低速。  The apparatus for reducing data transmission in a flash storage interface according to claim 12, wherein the universal flash storage interface operates at 1 Gbps or lower.   如申請專利範圍第12項所述的降低快閃儲存介面中傳收資料錯誤裝置,其中,上述最底層為一通用快閃儲存互聯層,上述通用快閃儲存互聯層包含一物理層及一物理轉換層,上述處理單元維護一比特錯誤率計數器,用以紀錄上述對應端的上述物理層及上述物理轉換層於接收資料時發生錯誤的次數,以及,上述處理單元當偵測到上述對應端回覆的一錯誤碼指出上述對應端的上述物理轉換層於接收資料時發生循環冗餘校驗錯誤,或上述對應端的上述物理層於接收資料時發生符號錯誤時,判斷上述比特錯誤率計數器的一值是否到達或高於一閥值;以及當上述比特錯誤率計數器的上述值到達或高於上述閥值時,觸發上述資料傳輸率設定調整。  The apparatus for reducing the error of the data in the flash storage interface according to claim 12, wherein the bottom layer is a general flash storage interconnect layer, and the universal flash storage interconnect layer comprises a physical layer and a physics. a conversion layer, the processing unit maintaining a one-bit error rate counter for recording the number of times the physical layer and the physical conversion layer of the corresponding end generate an error when receiving the data, and the processing unit detects the reply of the corresponding end An error code indicates that the physical conversion layer of the corresponding end generates a cyclic redundancy check error when receiving data, or the physical layer of the corresponding end generates a symbol error when receiving data, and determines whether a value of the bit error rate counter reaches Or higher than a threshold; and when the above-mentioned value of the bit error rate counter reaches or exceeds the threshold, the data transmission rate setting adjustment is triggered.   如申請專利範圍第16項所述的降低快閃儲存介面中傳收資料錯誤裝置,其中,上述閥值為2至10間的任意整數。  The device for reducing the transmission data in the flash storage interface according to claim 16, wherein the threshold is any integer between 2 and 10.   如申請專利範圍第11項所述的降低快閃儲存介面中傳收資料錯誤裝置,其中,上述去加重設定調整包含:當上述裝置的上述實體層的一資料傳輸率設定處於一第一水平時,驅動上述裝置的上述實體層,用以調整上述資料傳輸率設定至一第二水平;當上述裝置的上述實體層的上述資料傳輸率設定處於上述第二水平時,驅動上述裝置的上述實體層,用以調整上述 資料傳輸率設定至一第三水平;當上述裝置的上述實體層的上述資料傳輸率設定處於上述第三水平時,驅動上述裝置的上述實體層,用以調整上述資料傳輸率設定至一第四水平;當上述裝置的上述實體層的上述資料傳輸率設定處於上述第四水平時,驅動上述裝置的上述實體層,用以調整上述資料傳輸率設定至一第五水平;當上述裝置的上述實體層的上述資料傳輸率設定處於上述第五水平時,驅動上述裝置的上述實體層,用以調整上述資料傳輸率設定至上述第一水平;其中,上述第一水平高於上述第二水平,上述第二水平高於上述第三水平,上述第三水平高於上述第四水平,及上述第四水平高於上述第五水平。  The device for reducing the error in the flash memory storage interface according to claim 11, wherein the de-emphasis setting adjustment comprises: when a data transmission rate setting of the physical layer of the device is at a first level Driving the physical layer of the device to adjust the data transmission rate to a second level; when the data transmission rate of the physical layer of the device is set to the second level, driving the physical layer of the device And adjusting the data transmission rate to a third level; when the data transmission rate setting of the physical layer of the device is at the third level, driving the physical layer of the device to adjust the data transmission rate Setting to a fourth level; when the data transmission rate setting of the physical layer of the device is at the fourth level, driving the physical layer of the device to adjust the data transmission rate to a fifth level; When the data transmission rate setting of the physical layer of the device is at the fifth level, driving The physical layer of the device is configured to adjust the data transmission rate to the first level; wherein the first level is higher than the second level, the second level is higher than the third level, and the third level is higher At the fourth level above, and the fourth level above is higher than the fifth level.   如申請專利範圍第18項所述的降低快閃儲存介面中傳收資料錯誤裝置,其中,上述第一水平為一最大資料傳輸率x60%,上述第二水平為上述最大資料傳輸率x55%,上述第三水平為上述最大資料傳輸率x50%,上述第四水平為上述最大資料傳輸率x45%,及上述第五水平為上述最大資料傳輸率x40%。  The apparatus for reducing the error in transmitting data in the flash storage interface according to claim 18, wherein the first level is a maximum data transmission rate x60%, and the second level is the maximum data transmission rate x55%. The third level is the maximum data transmission rate x50%, the fourth level is the maximum data transmission rate x45%, and the fifth level is the maximum data transmission rate x40%.   如申請專利範圍第18項所述的降低快閃儲存介面中傳收資料錯誤裝置,其中,上述裝置的上述最底層的上述實體層的上述去加重設定處於較高水平於一單位時間所傳送資料的資料量高於上述裝置的上述最底層的上述實體層的上述去加重設定處於較低水平時。  The device for reducing the error in transmitting data in the flash storage interface according to claim 18, wherein the de-emphasis setting of the bottom layer of the physical layer of the device is higher than a data transmitted in one unit time. The amount of data is higher than the above-described de-emphasis setting of the above-mentioned lowest layer of the above-mentioned physical layer of the above device at a lower level.  
TW106146500A 2017-06-30 2017-12-29 Methods for reducing data error in transceiving of flash storage interface and apparatuses using the same TWI649756B (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201810530621.9A CN109213624B (en) 2017-06-30 2018-05-29 Method and apparatus for reducing errors in data transmission and reception in flash memory interface
US16/013,105 US10848263B2 (en) 2017-06-30 2018-06-20 Methods for reducing data errors in transceiving of a flash storage interface and apparatuses using the same

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201762527177P 2017-06-30 2017-06-30
US62/527,177 2017-06-30

Publications (2)

Publication Number Publication Date
TWI649756B TWI649756B (en) 2019-02-01
TW201905933A true TW201905933A (en) 2019-02-01

Family

ID=65432199

Family Applications (4)

Application Number Title Priority Date Filing Date
TW106146237A TWI645298B (en) 2017-06-30 2017-12-28 Methods for reducing data error in transceiving of flash storage interface and apparatuses using the same
TW106146500A TWI649756B (en) 2017-06-30 2017-12-29 Methods for reducing data error in transceiving of flash storage interface and apparatuses using the same
TW106146502A TWI654517B (en) 2017-06-30 2017-12-29 Methods for reducing data error in transceiving of flash storage interface and apparatuses using the same
TW106146501A TWI654526B (en) 2017-06-30 2017-12-29 Methods for reducing data error in transceiving of flash storage interface and apparatuses using the same

Family Applications Before (1)

Application Number Title Priority Date Filing Date
TW106146237A TWI645298B (en) 2017-06-30 2017-12-28 Methods for reducing data error in transceiving of flash storage interface and apparatuses using the same

Family Applications After (2)

Application Number Title Priority Date Filing Date
TW106146502A TWI654517B (en) 2017-06-30 2017-12-29 Methods for reducing data error in transceiving of flash storage interface and apparatuses using the same
TW106146501A TWI654526B (en) 2017-06-30 2017-12-29 Methods for reducing data error in transceiving of flash storage interface and apparatuses using the same

Country Status (1)

Country Link
TW (4) TWI645298B (en)

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060179152A1 (en) * 2005-01-31 2006-08-10 Broadcom Corporation In-band access of management registers
US8127200B2 (en) 2006-12-24 2012-02-28 Sandisk Il Ltd. Flash memory device and system with randomizing for suppressing errors
US8566676B2 (en) 2007-01-05 2013-10-22 Qualcomm Incorporated FEC code and code rate selection based on packet size
US8144608B2 (en) * 2007-01-22 2012-03-27 Broadcom Corporation Method and system for medium access control (MAC) rate selection
KR101854232B1 (en) * 2010-11-09 2018-05-04 삼성전자주식회사 Pseudo-open drain type output driver having de-emphasis function and semiconductor memory device, and control method thereof
US9195537B2 (en) 2011-03-02 2015-11-24 Sandisk Technologies Inc. Method of data storage in non-volatile memory
US20130343131A1 (en) * 2012-06-26 2013-12-26 Lsi Corporation Fast tracking for flash channels
US8914696B2 (en) 2012-08-29 2014-12-16 Seagate Technology Llc Flash memory read scrub and channel tracking
KR20140071639A (en) * 2012-12-04 2014-06-12 에스케이하이닉스 주식회사 Semiconductor memory device improving operating speed and data storage device including the same
US9116824B2 (en) 2013-03-15 2015-08-25 Sandisk Technologies Inc. System and method to reduce read latency of a data storage device
US20140310536A1 (en) * 2013-04-16 2014-10-16 Qualcomm Incorporated Storage device assisted inline encryption and decryption
TWI509624B (en) 2013-07-01 2015-11-21 Asolid Technology Co Ltd Flash memory apparatus, memory controller and method for controlling flash memory
KR20150014002A (en) * 2013-07-25 2015-02-06 삼성전자주식회사 Storage system including data transfer speed manager and data method for changing data transfer speed thereof
US9203391B2 (en) * 2014-04-22 2015-12-01 Qualcomm Incorporated Pulse-width modulation data decoder
KR102268699B1 (en) * 2015-06-29 2021-06-28 삼성전자주식회사 Operation method of storage device, operation method of host device, and operation method of user system including storage device and host device
US10101763B2 (en) * 2015-07-29 2018-10-16 Sandisk Technologies Inc. Interface adjustment processes for a data storage device
CN105761753A (en) 2016-02-02 2016-07-13 清华大学 Data scrambler/descrambler, memory device and scrambling/descrambling method
CN105786749B (en) 2016-03-16 2018-08-07 山东华芯半导体有限公司 A kind of double channel A TA agreement bridge-sets based on NAND FLASH interfaces
CN106850476B (en) * 2017-02-24 2019-09-17 合肥兆芯电子有限公司 Balanced device method of adjustment, applicable equalizer and memory storage apparatus

Also Published As

Publication number Publication date
TWI645298B (en) 2018-12-21
TW201905692A (en) 2019-02-01
TWI654517B (en) 2019-03-21
TWI649756B (en) 2019-02-01
TW201905722A (en) 2019-02-01
TWI654526B (en) 2019-03-21
TW201905723A (en) 2019-02-01

Similar Documents

Publication Publication Date Title
EP2977904A1 (en) Method and system of live error recovery
TWI676991B (en) Methods for testing a storage unit and apparatuses using the same
US10637509B2 (en) Methods for reducing data errors in transceiving of a flash storage interface and apparatuses using the same
TWI512609B (en) Methods for scheduling read commands and apparatuses using the same
US20200174865A1 (en) Controller, storage device having the controller, and method of operating the controller
WO2016095435A1 (en) Multi-chip cascading method, chip and device, and storage medium
US20190121765A1 (en) System, Apparatus And Method For Hardware-Based Bi-Directional Communication Via Reliable High Performance Half-Duplex Link
JP2015506039A (en) Integrated data masking, data poisoning and data bus inversion signaling
CN103544994A (en) Flash memory controller and flash memory debugging method
CN110399324A (en) It interrupts converter and interrupts conversion method
KR20140146275A (en) Operating method for memory controller controlling nonvolatile memory device and nonvolatile memroy system
TWI507981B (en) Command executing method, connector and memory storage device
CN103019987A (en) Method and system for transmitting data on basis of USB (universal serial bus) interfaces
KR102140297B1 (en) Nonvolatile memory devicee and data storage device including the same
WO2017000684A1 (en) Data reading method, peer device, controller, and storage medium
TW201405320A (en) Method of improving data transmission and related computer system
TWI649756B (en) Methods for reducing data error in transceiving of flash storage interface and apparatuses using the same
US20190007160A1 (en) Methods for reducing data errors in transceiving of a flash storage interface and apparatuses using the same
CN103401743B (en) Method and device for eliminating interference signals for I2C (Inter-IC BUS)
US20210173808A1 (en) Early parity error detection on an i3c bus
Saadé et al. A system-level overview and comparison of three High-Speed Serial Links: USB 3.0, PCI Express 2.0 and LLI 1.0
US20190007168A1 (en) Methods for reducing data errors in transceiving of a flash storage interface and apparatuses using the same
CN109213624B (en) Method and apparatus for reducing errors in data transmission and reception in flash memory interface
CN109213623B (en) Method and apparatus for reducing errors in data transmission and reception in flash memory interface
KR101520141B1 (en) Bit inversion for communication interface