CN108170369A - 主机装置与数据传输速率控制方法 - Google Patents
主机装置与数据传输速率控制方法 Download PDFInfo
- Publication number
- CN108170369A CN108170369A CN201710778481.2A CN201710778481A CN108170369A CN 108170369 A CN108170369 A CN 108170369A CN 201710778481 A CN201710778481 A CN 201710778481A CN 108170369 A CN108170369 A CN 108170369A
- Authority
- CN
- China
- Prior art keywords
- rate
- memory device
- data memory
- electric source
- data
- Prior art date
- Legal status (The legal status 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 status listed.)
- Granted
Links
- 230000005540 biological transmission Effects 0.000 title claims abstract description 118
- 238000000034 method Methods 0.000 title claims abstract description 20
- 230000008859 change Effects 0.000 claims abstract description 45
- 238000012545 processing Methods 0.000 claims abstract description 24
- 238000012508 change request Methods 0.000 claims abstract description 20
- 238000012790 confirmation Methods 0.000 claims description 19
- 238000012546 transfer Methods 0.000 claims description 7
- 238000013500 data storage Methods 0.000 abstract description 11
- 230000004044 response Effects 0.000 abstract description 4
- 230000003068 static effect Effects 0.000 description 17
- 230000003139 buffering effect Effects 0.000 description 8
- 238000004891 communication Methods 0.000 description 6
- 238000005138 cryopreservation Methods 0.000 description 5
- 238000013461 design Methods 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- 238000007726 management method Methods 0.000 description 4
- 230000007246 mechanism Effects 0.000 description 3
- 230000006399 behavior Effects 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- KCXVZYZYPLLWCC-UHFFFAOYSA-N EDTA Chemical compound OC(=O)CN(CC(O)=O)CCN(CC(O)=O)CC(O)=O KCXVZYZYPLLWCC-UHFFFAOYSA-N 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 229960001484 edetic acid Drugs 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
- G06F3/0613—Improving I/O performance in relation to throughput
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3206—Monitoring of events, devices or parameters that trigger a change in power modality
- G06F1/3215—Monitoring of peripheral devices
- G06F1/3225—Monitoring of peripheral devices of memory devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0625—Power saving in storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0629—Configuration or reconfiguration of storage systems
- G06F3/0634—Configuration or reconfiguration of storage systems by changing the state or mode of one or more devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0661—Format or protocol conversion arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/0679—Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
- G06F9/4405—Initialisation of multiprocessor systems
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Software Systems (AREA)
- Computer Security & Cryptography (AREA)
- Power Sources (AREA)
- Communication Control (AREA)
Abstract
本发明涉及一种主机装置与数据传输速率控制方法,透过一既定介面耦接至一数据储存装置,包括处理器与信号处理装置。处理器透过既定介面存取数据储存装置所储存的数据。信号处理装置执行信号处理。处理器透过既定介面发出第一电源模式改变请求封包至数据储存装置,以请求将既定介面的数据传输速率由第一速率调整为第二速率。处理器透过既定介面自数据储存装置接收第一电源模式改变确认封包,以及响应第一电源模式改变确认封包,决定将数据传输速率维持在第一速率而不调整为第二速率。
Description
技术领域
本发明有关于一种数据传输速率控制方法,以避免因传输速率设定不适当而发生数据处理壅塞、传输停顿或发生无法预期的存取错误的问题。
背景技术
随着数据储存装置的科技在近几年快速地成长,许多数据储存装置,如符合SD/MMC规格、CF规格、MS规格与XD规格的记忆卡、固态硬碟、内嵌式存储器(embedded MultiMedia Card,缩写为eMMC)以及通用快闪存储器(Universal Flash Storage,缩写为UFS)已经广泛地被应用在多种用途上。因此,在这些数据储存装置上,如何有效的存取控制也变成一个重要的议题。
为了提高数据储存装置的存取效能,本发明提出一种新的传输速率控制方法,不仅可有效控置传输速率,更可避免因传输速率设定不适当而发生数据处理壅塞、传输停顿或无法预期的存取错误的问题。
发明内容
本发明提出一种主机装置,透过一既定介面耦接至一数据储存装置,包括处理器与信号处理装置。处理器透过既定介面存取数据储存装置所储存的数据。信号处理装置执行信号处理。处理器透过既定介面发出第一电源模式改变请求封包至数据储存装置,以请求将既定介面的数据传输速率由第一速率调整为第二速率。处理器透过既定介面自数据储存装置接收第一电源模式改变确认封包,以及响应第一电源模式改变确认封包,决定将数据传输速率维持在第一速率而不调整为第二速率。
本发明另提出一种数据传输速率控制方法,包括:由一处理器透过一既定介面发出一第一电源模式改变请求封包至一数据储存装置,以请求该数据储存装置将该既定介面的一数据传输速率由一第一速率调整为一第二速率;由该处理器透过该既定介面自该数据储存装置接收一第一电源模式改变确认封包;以及响应该第一电源模式改变确认封包,将该数据传输速率维持在该第一速率而不调整为该第二速率。
附图说明
图1A是显示根据本发明的一实施例所述的电子装置范例方块图。
图1B是显示根据本发明的另一实施例所述的电子装置范例方块图。
图2是显示根据本发明的一实施例所述的设定数据传输速率的封包讯息流程。
图3是显示根据本发明的一实施例所述的一数据传输速率控制方法流程图。
图4是显示根据本发明的一实施例所述的一数据传输速率控制方法流程图。
图5是显示根据本发明的第一方面实施例所述的设定数据传输速率的封包讯息流程。
图6是显示根据本发明的第二方面实施例所述的设定数据传输速率的封包讯息流程。
符号说明
100-数据储存装置;
110A、110B-控制器;
111、ROM-只读存储器;
112、SRAM-静态随机存取存储器;
120-存储器装置;
200-主机装置;
210-处理器;
220-温度感应装置;
230-直接存储器存取装置;
240、DRAM-动态随机存取存储器;
250-信号处理装置;
251-数位信号处理器;
252-多媒体信号处理器;
253-通信单元;
300A、300B-电子装置;
PACP_PWR_req-电源模式改变请求封包;
PACP_PWR_cnf-电源模式改变确认封包;
TX-传送路径;
RX-接收路径。
具体实施方式
为让本发明的目的、特征和优点能更明显易懂,下文特举出本发明的具体实施例,并配合附图,作详细说明如下。目的在于说明本发明的精神而非用以限定本发明的保护范围,应理解下列实施例可经由软件、硬件、固件、或上述任意组合来实现。
图1A是显示根据本发明的一实施例所述的电子装置范例方块图。电子装置300A可包括数据储存装置100与主机装置200。数据储存装置100可包括控制器110A与存储器装置120。控制器110A可包括只读存储器(ROM)111与静态随机存取存储器(Static RandomAccess Memory,缩写为SRAM)112。存储器装置120可包括一或多个非挥发性存储器,例如,快闪存储器。
主机装置200可至少包括处理器210、温度感应装置220、直接存储器存取(DMA)装置230、动态随机存取存储器(Dynamic Random Access Memory,缩写为DRAM)240以及信号处理装置250。温度感应装置220用以感应环境温度,以取得一感应温度,并且将感应温度提供给处理器210。直接存储器存取装置230与DRAM240耦接至数据储存装置100,用以搬运或暂存欲写入或读取自数据储存装置100的数据。信号处理装置250可包含多个用以执行信号处理的不同装置,例如,数位信号处理器251、多媒体信号处理器252、以及一或多个通信单元253。通信单元253可提供有线或无线通信的服务。通信单元253可包括例如,一无线收发机、一天线模组以及一调制解调器(MODEM)(图未示),用以依循一既定通信规格提供有线或无线通信的服务。信号处理装置250亦可根据处理器210所存取的数据执行信号处理。处理器210用以控制主机装置200所包含的各元件的运作。
主机装置200与数据储存装置100可透过一既定介面相互连接,处理器210可透过既定介面存取数据储存装置100所储存的数据。例如,当数据储存装置100包含一或多个通用快闪存储器(Universal Flash Storage,缩写为UFS)时,主机装置200与数据储存装置100可透过UFS介面相互连接。UFS介面可包括如图1A所示的用以将指令及数据传送至数据储存装置100的一传送路径TX与用以自数据储存装置100接收指令及数据的一接收路径RX。
图1B是显示根据本发明的另一实施例所述的电子装置范例方块图。于此实施例中,SRAM 112被配置于控制器110B外部,并且耦接至控制器110B。
值得注意的是,为简化说明,图1A与图1B仅显示与本发明相关的元件,并且图1A与图1B仅显示多种可应用本发明的架构的其中两种。然而,本发明的实施并不仅限于图1A与图1B所示的元件与架构。
如上述,主机装置200与数据储存装置100可透过既定介面(例如,UFS介面)相互连接。主机装置200可传送一电源模式改变请求封包至数据储存装置100,用以设定既定介面的一数据传输速率。
图2是显示根据本发明的一实施例所述的设定数据传输速率的封包讯息流程。由主机装置端(例如,由处理器210)透过既定介面传送一电源模式改变请求封包PACP_PWR_req至数据储存装置。接收到电源模式改变请求封包PACP_PWR_req后,数据储存装置端(例如,由控制器110A或110B)透过既定介面回应一电源模式改变确认封包PACP_PWR_cnf至主机装置端。待此流程结束后,主机装置与数据储存装置便可应用电源模式改变请求封包内所指示的数据传输速率进行数据传输。
根据本发明的一实施例,数据传输速率可包含由主机装置端将数据传送至数据储存装置端的一传送速率以及由主机装置端自数据储存装置接收数据的一接收速率。电源模式改变请求封包可至少包含用以设定传送速率的一传送速率栏位TXGear,以及设定接收速率的一接收速率栏位RXGear。
根据本发明的一实施例,UFS介面的传送/接收速率由两个模式所定义,包含电源改变模式(PWM)与高速(HS)模式。PWM模式进一步定义了8个速率档位,包含PWM_G0~PWM_G7。其中PWM_G0档位定义的最大传送/接收速率为3百万位元/秒,最小传送/接收速率为0.01百万位元/秒,PWM_G1档位定义的最大传送/接收速率为9百万位元/秒,最小传送/接收速率为3百万位元/秒,PWM_G2档位定义的最大传送/接收速率为18百万位元/秒,最小传送/接收速率为6百万位元/秒,PWM_G3档位定义的最大传送/接收速率为36百万位元/秒,最小传送/接收速率为12百万位元/秒,PWM_G4档位定义的最大传送/接收速率为72百万位元/秒,最小传送/接收速率为24百万位元/秒,PWM_G5档位定义的最大传送/接收速率为144百万位元/秒,最小传送/接收速率为48百万位元/秒,PWM_G6档位定义的最大传送/接收速率为288百万位元/秒,最小传送/接收速率为96百万位元/秒,PWM_G7档位定义的最大传送/接收速率为576百万位元/秒,最小传送/接收速率为192百万位元/秒。
HS模式进一步定义了6个速率档位,包含HS-G1~HS-G3,A系列以及HS-G1~HS-G3,B系列。其中HS-G1A系列定义的传送/接收速率为1248百万位元/秒,HS-G1B系列定义的传送/接收速率为1457.6百万位元/秒,HS-G2A系列定义的传送/接收速率为2496百万位元/秒,HS-G2B系列定义的传送/接收速率为2915.2百万位元/秒,HS-G3A系列定义的传送/接收速率为4992百万位元/秒,HS-G3B系列定义的传送/接收速率为5830.4百万位元/秒。
于传统的设计中,既定介面的数据传输速率仅能由主机装置200端决定及控制。当数据储存装置100端接收到电源模式改变请求封包PACP_PWR_req后,通常必须接受主机装置200端的请求,并且将电源模式改变确认封包PACP_PWR_cnf的状态(status)栏位设定为请求接受(PWR_OK),再回传至主机装置端。
于传统的设计中,数据储存装置100仅能于能力不匹配或者装置失败而无法支援的情形拒绝主机装置200变更数据传输速率的请求。所述的能力不匹配系指数据储存装置100的软件及硬件实际上并不支援主机装置200所指定的速率档位(即,欲变更的速率档位)。于此情境之下,数据储存装置100将电源模式改变确认封包PACP_PWR_cnf的状态(status)栏位设定为错误(PWR_ERROR_CAP),再回传至主机装置端,以告知能力不匹配或者装置失败的情形。
当主机装置200判断装置失败时,可启动重新开机程序,控制数据储存装置100执行重新开机,并且重新与数据储存装置100建立连线。
然而,当数据储存装置100的能力足以匹配主机装置200所指定的速率档位,但因数据储存装置100目前的运作状态忙碌,而导致数据储存装置100于接收到电源模式改变请求封包的当下,暂时无法支援主机装置200所指定的速率档位时,于此时响应电源模式改变请求封包而调整速率并不恰当。若数据储存装置100在此情况下响应主机装置200的请求而变更数据传输速率,则有可能造成数据处理壅塞、传输停顿或甚至发生无法预期的存取错误。
举例而言,当数据储存装置100于背景执行存储器管理机制,例如,垃圾回收、数据块搬移、或抹除数据等行为时,会占用到部分的数据吞吐量及传输频宽。此时,若数据储存装置100在能力符合的情况下必须无条件接受主机装置200所发出的提高数据传输速率请求的话,则当数据储存装置100所剩余的传输频宽或数据吞吐量不足以应付较高的数据传输速率,将会造成如上述数据处理壅塞、传输停顿或甚至发生无法预期的存取错误。
举另一例而言,当数据储存装置100的静态随机存取存储器112的使用率高于一既定缓冲临界值时,代表静态随机存取存储器112的剩余空间可能不足。此时,若数据储存装置100在能力符合的情况下必须无条件接受主机装置200所发出的降低数据传输速率请求的话,则用以输出静态随机存取存储器112内所储存的数据的速率也必须随之降低,如此一来,降低了数据储存装置100的存取效能。
为了解决上述问题,以下将介绍一种数据传输速率控制方法。有别于传统技术中只要数据储存装置100能支援主机装置200所指定的速率档位便无法拒绝变更数据传输速率请求的设计,于所述的数据传输速率控制方法中,数据储存装置可根据目前的运作状态决定是否拒绝主机装置200所发出的变更数据传输速率的请求,并且可自行判断于适当的时间再将数据传输速率调整为主机装置200所指定的速率档位。以下将针对所述的数据传输速率控制方法做更详细的介绍。
图3是显示根据本发明的一实施例所述的一数据传输速率控制方法流程图,图中所示的步骤是由主机装置200的处理器210所执行。首先,当处理器210判断有调整数据传输速率的需求时,透过既定介面发出第一电源模式改变请求封包至数据储存装置100,以请求将既定介面的数据传输速率由第一速率调整为第二速率(步骤S302),其中依系统需求的不同,第一速率可高于或低于第二速率。接着,处理器210透过既定介面自数据储存装置100接收第一电源模式改变确认封包(步骤S304)。当第一电源模式改变确认封包指示出数据储存装置100拒绝调整数据传输速率时,处理器210响应该第一电源模式改变确认封包,决定将数据传输速率维持在第一速率而不调整为第二速率(步骤S306)。举例而言,当处理器210判断第一电源模式改变确认封包的一状态栏位被设定为忙碌时,处理器210决定将数据传输速率维持在第一速率而不调整为第二速率。
图4是显示根据本发明的一实施例所述的一数据传输速率控制方法流程图,图中所示的步骤是由数据储存装置100的控制器110A或110B所执行。首先,由控制器110A/110B透过既定介面自主机装置200接收第一电源模式改变请求封包,其中第一电源模式改变请求封包请求数据储存装置100将既定介面的数据传输速率由第一速率调整为第二速率(步骤S402)。接着,控制器110A/110B判断数据储存装置100的运作状态是否为忙碌(步骤S404)。若是,控制器110A/110B决定拒绝调整数据传输速率的请求,并且将数据传输速率维持在第一速率而不调整为第二速率(步骤S406)。若否,则控制器110A/110B决定接受调整数据传输速率的请求,并且将数据传输速率调整为第二速率(步骤S408)。
图5是显示根据本发明的第一方面实施例所述的设定数据传输速率的封包讯息流程。首先,由主机装置端(例如,由处理器210)透过既定介面传送一电源模式改变请求封包PACP_PWR_req至数据储存装置,以请求将既定介面的数据传输速率由第一速率调整为第二速率。举例而言,处理器210可根据温度感应装置220所感应到的温度,或者根据信号处理装置250所需要的一数据处理速率调整于主机装置200与数据储存装置100之间用以传输数据的数据传输速率。
接收到电源模式改变请求封包PACP_PWR_req后,数据储存装置端(例如,由控制器110A或110B)判断数据储存装置100目前的运作状态。
于本发明的一实施例中,数据储存装置100的运作状态可包括一正常状态与一忙碌状态。控制器110A/100B可根据数据储存装置100一缓冲区使用率(例如,静态随机存取存储器112的使用率)、存储器装置120的一剩余传输频宽以及存储器装置120的一数据吞吐量的一或多者判断该数据储存装置的该运作状态是否为忙碌。
举例而言,当数据储存装置100一缓冲区使用率(例如,静态随机存取存储器112的使用率)高于一既定缓冲临界值时(例如,静态随机存取存储器112的缓冲区总容量的一半),控制器110A/100B可判断数据储存装置100目前的运作状态为忙碌。否则,控制器110A/100B可判断数据储存装置100目前的运作状态为正常。
举另一而言,当存储器装置120于背景执行存储器管理机制,例如,垃圾回收、数据块搬移、或抹除数据等行为时,会占用到部分的数据吞吐量及传输频宽。当存储器装置120的剩余传输频宽或数据吞吐量不足时,控制器110A/100B可判断数据储存装置100目前的运作状态为忙碌。否则,控制器110A/100B可判断数据储存装置100目前的运作状态为正常。
值得注意的是,控制器110A/100B亦可动态调整上述既定缓冲临界值、剩余传输频宽临界值、或数据吞吐量临界值。举例而言,控制器110A/100B可根据静态随机存取存储器112所储存的指令序列(command queue)决定既定缓冲临界值、剩余传输频宽临界值、或数据吞吐量临界值。例如,根据指令序列中即将被执行的指令的类别。
此外,值得注意的是,以上仅为本发明的多种变化实施的其中一种,本发明并不限于此。
当数据储存装置100的能力足以匹配主机装置200所指定的速率档位(即,数据储存装置100可支援主机装置200所指定的第二速率),但数据储存装置100目前的运作状态为忙碌时,控制器110A/100B可判断为无法满足此速率需求。控制器110A/100B可透过既定介面传送一电源模式改变确认封包PACP_PWR_cnf至主机装置端,以回应接收到的电源模式改变请求封包PACP_PWR_req。
于电源模式改变确认封包PACP_PWR_cnf中,控制器110A/100B将状态(status)栏位设定为忙碌(PWR_BUSY),用以拒绝主机装置200所发出的变更数据传输速率的请求。
此外,根据本发明的一实施例,控制器110A/100B可将电源模式改变请求封包所承载的资讯储存于静态随机存取存储器112中,并且持续监控数据储存装置100的运作状态。举例而言,控制器110A/100B可记录电源模式改变请求封包PACP_PWR_req内的旗标(Flags)栏位、传送电源模式(TxMode)栏位、传送线路(TxLane)栏位、传送速率(TXGear)栏位、接收电源模式(RxMode)栏位、接收线路(RxLane)栏位、接收速率(RXGear)栏位等。然而,值得注意的是,本发明并不限于此。举例而言,控制器110A/100B亦可于静态随机存取存储器112记录自主机装置200接收到的电源模式改变请求封包PACP_PWR_req的所有内容。
当控制器110A/100B判断数据储存装置100可满足主机装置200所指定的速率时(例如,数据储存装置100的运作状态恢复为正常时),控制器110A/100B可根据静态随机存取存储器112中所储存有关电源模式改变请求封包的资讯发出另一电源模式改变请求封包至主机装置200,以请求将数据传输速率由第一速率调整为第二速率。
于本发明的另一实施例中,当控制器110A/100B判断数据储存装置100可满足主机装置200所指定的速率时,控制器110A/100B亦可透过既定介面传送另一电源模式改变确认封包PACP_PWR_cnf至主机装置端,其中此电源模式改变确认封包PACP_PWR_cnf的状态(status)栏位设定为请求接受(PWR_OK),表示数据储存装置100接受先前调整数据传输速率的请求。
如上述,根据本发明的一实施例,数据传输速率可包含由主机装置端将数据传送至数据储存装置端的一传送速率以及由主机装置端自数据储存装置接收数据的一接收速率。值得注意的是,于本发明实施例中,由主机装置或控制器110A/100B所请求的传送速率以及接收速率可为相同或不同的。
除上述于本发明第一方面实施例中,主机装置200被动地等待数据储存装置100告知其可满足主机装置200所指定的速率时,再调整数据传输速率的实施方式外,于本发明的第二方面实施例中,主机装置200亦可主动询问数据储存装置100的运作状态。
图6是显示根据本发明的第二方面实施例所述的设定数据传输速率的封包讯息流程。首先,由主机装置端(例如,由处理器210)透过既定介面传送一电源模式改变请求封包PACP_PWR_req至数据储存装置,以请求将既定介面的数据传输速率由第一速率调整为第二速率。
于接收到电源模式改变请求封包PACP_PWR_req后,数据储存装置端(例如,由控制器110A或110B)判断数据储存装置100目前的运作状态。
当数据储存装置100的能力足以匹配主机装置200所指定的速率档位(即,数据储存装置100可支援主机装置200所指定的第二速率),但数据储存装置100目前的运作状态为忙碌时,控制器110A/100B可判断为无法满足此速率需求。控制器110A/100B可透过既定介面传送一电源模式改变确认封包PACP_PWR_cnf至主机装置端,以回应接收到的电源模式改变请求封包PACP_PWR_req。
于电源模式改变确认封包PACP_PWR_cnf中,控制器110A/100B将状态(status)栏位设定为忙碌(PWR_BUSY),用以拒绝主机装置200所发出的变更数据传输速率的请求。此外,根据本发明的一实施例,控制器110A/100B可将电源模式改变请求封包所承载的资讯储存于静态随机存取存储器112中,并且持续监控数据储存装置100的运作状态。
于接收到指示拒绝的电源模式改变确认封包PACP_PWR_cnf后,主机装置200可设起一计时器。当计时器所计数的时间届满,但主机装置并未自数据储存装置100接收到任何电源模式改变请求封包PACP_PWR_req或者并未自数据储存装置100接收到一状态栏位被设定为请求接受的另一电源模式改变确认封包时,处理器210可再次发出一电源模式改变请求封包PACP_PWR_req至数据储存装置100,以请求将既定介面的数据传输速率由第一速率调整为第二速率。
此流程可于一既定期间被反复执行,或者设定可被执行一既定次数。当处理器210于既定期间内或者于执行既定次数后仍未自数据储存装置100接收到任何电源模式改变请求封包PACP_PWR_req或者未自数据储存装置100接收到一状态栏位被设定为请求接受的另一电源模式改变确认封包时,处理器210可执行一重新开机(reboot)程序,用以将该数据储存装置重新开机。举例而言,处理器210可传送一电源模式改变请求封包PACP_PWR_req,以执行一重新开机程序。于此电源模式改变请求封包PACP_PWR_req中,一线重置(LINE-RESET)的旗标会被设起,用以要求数据储存装置100执行一重新开机程序。
除了传送电源模式改变请求封包PACP_PWR_req外,处理器210亦可执行一线重置程序,将传送路径TX上的差动信号线TX_P与TX_N的电压拉低,或者执行硬件重置程序,用以控制数据储存装置100执行重新开机,并且重新与数据储存装置100建立连线。
有别于传统技术中只要数据储存装置100能支援主机装置200所指定的速率档位便无法拒绝变更数据传输速率请求的设计,于本发明的第一方面与第二方面的实施例中,数据储存装置可根据目前的运作状态决定是否拒绝主机装置200所发出的变更数据传输速率的请求,并且可自行判断于适当的时间(例如,忙碌状态解除后)再将数据传输速率调整为主机装置200所指定的速率档位。
此外,有别于传统技术中数据传输速率仅能由主机装置200端决定及控制的设计,于本发明的实施例中,数据储存装置亦可决定及控制数据传输速率,并可发出电源模式改变请求封包PACP_PWR_req请求调整数据传输速率。
如此一来,不仅可有效控置传输速率,更可避免因传输速率设定不适当或强制要求数据储存装置100调整传输速率而发生数据处理壅塞、传输停顿或无法预期的存取错误的问题。
举例而言,当数据储存装置100于背景执行存储器管理机制时,主机装置200发出提高数据传输速率的请求。此时,根据本发明的一实施例,数据储存装置100可先拒绝变更数据传输速率的请求,并且于存储器管理操作完成后,再根据上述方式接受变更数据传输速率的请求。例如,传送另一电源模式改变请求封包至主机装置200,请求将数据传输速率调整为主机装置200所指定的速率,或者传送另一电源模式改变确认封包至主机装置200,并且将状态栏位被设定为请求接受。
举另一例而言,当数据储存装置100的静态随机存取存储器112的使用率高于一既定缓冲临界值时,代表静态随机存取存储器112的剩余空间可能不足。此时,若主机装置200发出降低数据传输速率的请求,数据储存装置100可先拒绝变更数据传输速率的请求,并且于静态随机存取存储器112内所储存的数据先用原先设定的速率传送出去后,再根据上述方式接受变更数据传输速率的请求。
值得注意的是,于本发明的第一方面与第二方面的实施例中,控制器110A/100B将状态(status)栏位设定为忙碌(PWR_BUSY),是用以拒绝主机装置200所发出的变更数据传输速率的请求,而非用以拒绝主机装置200所发出的进入省电模式的请求。因此,本发明的实施例中的拒绝与当主机装置于电源模式改变请求封包中要求将传送电源模式(TxMode)或接收电源模式(RxMode)设定为省电模式(hibernate)时的拒绝并不相同。
本发明说明书中"耦接"一词是泛指各种直接或间接的电性连接方式。本发明虽以较佳实施例揭示如上,然其并非用以限定本发明的范围,任何熟悉本技术领域者,在不脱离本发明的精神和范围内,当可做些许的更动与润饰,因此本发明的保护范围当由权利要求书界定为准。
Claims (14)
1.一种主机装置,透过一既定介面耦接至一数据储存装置,包括:
一处理器,透过该既定介面存取该数据储存装置所储存的数据;以及
一信号处理装置,用以执行信号处理;
其中该处理器透过该既定介面发出一第一电源模式改变请求封包至该数据储存装置,以请求将该既定介面的一数据传输速率由一第一速率调整为一第二速率;
该处理器透过该既定介面自该数据储存装置接收一第一电源模式改变确认封包;以及
响应该第一电源模式改变确认封包,该处理器决定将该数据传输速率维持在该第一速率而不调整为该第二速率。
2.如权利要求1所述的主机装置,其特征在于,当该处理器判断该第一电源模式改变确认封包的一状态栏位被设定为忙碌时,该处理器决定将该数据传输速率维持在该第一速率而不调整为该第二速率。
3.如权利要求1所述的主机装置,其特征在于,于接收到该第一电源模式改变确认封包后,该处理器更透过该既定介面自该数据储存装置接收请求将该数据传输速率由该第一速率调整为该第二速率的一第二电源模式改变请求封包。
4.如权利要求1所述的主机装置,其特征在于,于接收到该第一电源模式改变确认封包后,该处理器更透过该既定介面发出一第三电源模式改变请求封包至该数据储存装置,以请求将该既定介面的该数据传输速率由该第一速率调整为该第二速率。
5.如权利要求1所述的主机装置,其特征在于,当该处理器于一既定期间内并未自该数据储存装置接收到一第二电源模式改变请求封包或者并未自该数据储存装置接收到一状态栏位被设定为请求接受的一第二电源模式改变确认封包时,该处理器执行一重新开机程序,用以将该数据储存装置重新开机。
6.如权利要求1所述的主机装置,其特征在于,该处理器根据该信号处理装置所需要的一数据处理速率决定发出该第一电源模式改变请求封包。
7.如权利要求1所述的主机装置,其特征在于,该数据储存装置包含一通用快闪存储器,并且该既定介面为通用快闪存储器介面。
8.一种数据传输速率控制方法,包括:
由一处理器透过一既定介面发出一第一电源模式改变请求封包至一数据储存装置,以请求该数据储存装置将该既定介面的一数据传输速率由一第一速率调整为一第二速率;
由该处理器透过该既定介面自该数据储存装置接收一第一电源模式改变确认封包;以及
响应该第一电源模式改变确认封包,将该数据传输速率维持在该第一速率而不调整为该第二速率。
9.如权利要求8所述的方法,其特征在于,还包括:
判断该第一电源模式改变确认封包的一状态栏位内容,其中当该状态栏位被设定为忙碌时,将该数据传输速率维持在该第一速率而不调整为该第二速率。
10.如权利要求8所述的方法,其特征在于,还包括:
于接收该第一电源模式改变确认封包后,自该数据储存装置接收请求将该数据传输速率由该第一速率调整为该第二速率的一第二电源模式改变请求封包。
11.如权利要求8所述的方法,其特征在于,还包括:
于接收该第一电源模式改变确认封包后,由该处理器发出一第三电源模式改变请求封包至该数据储存装置,以请求将该数据传输速率由该第一速率调整为该第二速率。
12.如权利要求8所述的方法,其特征在于,还包括:
当该处理器于一既定期间内并未自该数据储存装置接收一第二电源模式改变请求封包或者并未自该数据储存装置接收一状态栏位被设定为请求接受的一第二电源模式改变确认封包时,由该处理器执行一重新开机程序,用以将该数据储存装置重新开机。
13.如权利要求8所述的方法,其特征在于,该数据传输速率包含将数据自一主机装置传送至该数据储存装置的一传送速率以及由该主机装置自该数据储存装置接收数据的一接收速率。
14.如权利要求8所述的方法,其特征在于,该数据传输速率为一通用快闪存储器介面的数据传输速率。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201662430971P | 2016-12-07 | 2016-12-07 | |
US62/430,971 | 2016-12-07 | ||
TW106112348 | 2017-04-13 | ||
TW106112348A TWI610179B (zh) | 2016-12-07 | 2017-04-13 | 主機裝置與資料傳輸速率控制方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108170369A true CN108170369A (zh) | 2018-06-15 |
CN108170369B CN108170369B (zh) | 2021-10-15 |
Family
ID=61728323
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710778481.2A Active CN108170369B (zh) | 2016-12-07 | 2017-09-01 | 主机装置与数据传输速率控制方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US10275163B2 (zh) |
CN (1) | CN108170369B (zh) |
TW (2) | TWI610179B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113572569A (zh) * | 2020-04-28 | 2021-10-29 | 华为技术有限公司 | 一种传输速率切换方法以及相关装置 |
CN114510094A (zh) * | 2020-11-17 | 2022-05-17 | 瑞昱半导体股份有限公司 | 温度控制方法、通信系统与控制电路 |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11231873B2 (en) * | 2018-12-07 | 2022-01-25 | Intel Corporation | Apparatus and method for assigning velocities to write data |
KR20210128628A (ko) * | 2020-04-17 | 2021-10-27 | 에스케이하이닉스 주식회사 | 전자 장치와, 이를 위한 데이터 저장 장치 및 동작 방법 |
KR20220046948A (ko) * | 2020-10-08 | 2022-04-15 | 삼성전자주식회사 | 스토리지 컨트롤러, 스토리지 시스템 및 그 동작방법 |
US20220398024A1 (en) * | 2020-12-18 | 2022-12-15 | Micron Technology, Inc. | Dynamic interval for a memory device to enter a low power state |
TWI781793B (zh) * | 2021-10-15 | 2022-10-21 | 致伸科技股份有限公司 | 一種資料回報率之調整方法 |
TWI792613B (zh) * | 2021-10-15 | 2023-02-11 | 致伸科技股份有限公司 | 一種資料回報率之調整方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1411298A (zh) * | 2001-09-28 | 2003-04-16 | 华为技术有限公司 | 在通信系统中控制传输速率的方法和装置 |
CN101156458A (zh) * | 2005-02-23 | 2008-04-02 | 美商内数位科技公司 | 动态适应封包传输速率的无线通信方法及装置 |
JP2011157206A (ja) * | 2010-02-03 | 2011-08-18 | Konica Minolta Business Technologies Inc | 画像形成装置及びその制御方法 |
CN105659542A (zh) * | 2014-07-01 | 2016-06-08 | 华为技术有限公司 | 数据传输控制方法、无源光网络设备及装置、无源光网络 |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
MX9702434A (es) * | 1991-03-07 | 1998-05-31 | Masimo Corp | Aparato de procesamiento de señales. |
JP4112729B2 (ja) * | 1999-02-16 | 2008-07-02 | 株式会社ルネサステクノロジ | 半導体装置 |
US20070081453A1 (en) * | 2005-10-11 | 2007-04-12 | Via Technologies, Inc. | Method and apparatus for data transmission in a wireless communication system |
US20090161799A1 (en) | 2007-12-21 | 2009-06-25 | Mediatek, Inc. | Decoding communication signals |
US8149702B2 (en) * | 2007-12-21 | 2012-04-03 | Mediatek Inc. | Multi-mode bit rate processor |
TWI423032B (zh) * | 2009-04-30 | 2014-01-11 | Ralink Technology Corp | 提升資料傳輸效能的方法 |
CN102156529A (zh) * | 2010-02-11 | 2011-08-17 | 仁宝电脑工业股份有限公司 | 硬盘省电方法及硬盘省电装置 |
TWI550408B (zh) * | 2011-04-22 | 2016-09-21 | 晨星半導體股份有限公司 | 多核心電子系統及其速率調節裝置 |
US20130046732A1 (en) * | 2011-08-17 | 2013-02-21 | Hsin-Ti Chueh | Data synchronization management methods and systems |
WO2014065873A1 (en) * | 2012-10-22 | 2014-05-01 | Jeff Willey | Control messaging in multislot link layer flit |
TWI507881B (zh) * | 2013-04-10 | 2015-11-11 | Realtek Semiconductor Corp | 通訊裝置與設置資料傳輸的方法 |
-
2017
- 2017-04-13 TW TW106112348A patent/TWI610179B/zh active
- 2017-04-14 TW TW106112539A patent/TWI634430B/zh active
- 2017-09-01 CN CN201710778481.2A patent/CN108170369B/zh active Active
- 2017-11-22 US US15/820,727 patent/US10275163B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1411298A (zh) * | 2001-09-28 | 2003-04-16 | 华为技术有限公司 | 在通信系统中控制传输速率的方法和装置 |
CN101156458A (zh) * | 2005-02-23 | 2008-04-02 | 美商内数位科技公司 | 动态适应封包传输速率的无线通信方法及装置 |
JP2011157206A (ja) * | 2010-02-03 | 2011-08-18 | Konica Minolta Business Technologies Inc | 画像形成装置及びその制御方法 |
CN105659542A (zh) * | 2014-07-01 | 2016-06-08 | 华为技术有限公司 | 数据传输控制方法、无源光网络设备及装置、无源光网络 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113572569A (zh) * | 2020-04-28 | 2021-10-29 | 华为技术有限公司 | 一种传输速率切换方法以及相关装置 |
WO2021218239A1 (zh) * | 2020-04-28 | 2021-11-04 | 华为技术有限公司 | 一种传输速率切换方法以及相关装置 |
CN113572569B (zh) * | 2020-04-28 | 2024-03-26 | 华为技术有限公司 | 一种传输速率切换方法以及相关装置 |
CN114510094A (zh) * | 2020-11-17 | 2022-05-17 | 瑞昱半导体股份有限公司 | 温度控制方法、通信系统与控制电路 |
CN114510094B (zh) * | 2020-11-17 | 2023-10-31 | 瑞昱半导体股份有限公司 | 温度控制方法、通信系统与控制电路 |
Also Published As
Publication number | Publication date |
---|---|
US10275163B2 (en) | 2019-04-30 |
US20180157417A1 (en) | 2018-06-07 |
TW201822010A (zh) | 2018-06-16 |
TWI634430B (zh) | 2018-09-01 |
CN108170369B (zh) | 2021-10-15 |
TW201822007A (zh) | 2018-06-16 |
TWI610179B (zh) | 2018-01-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108170369A (zh) | 主机装置与数据传输速率控制方法 | |
CN108170370A (zh) | 数据储存装置与数据传输速率控制方法 | |
CN100366029C (zh) | 通信控制器、主机端控制器、通信设备、通信系统和方法 | |
US20180046591A1 (en) | USB Port Controller with Automatic Transmit Retries and Receive Acknowledgements | |
US7925954B2 (en) | Techniques for entering a low-power link state | |
US8051314B2 (en) | Serial ATA (SATA) power optimization through automatic deeper power state transition | |
CN108628544A (zh) | 主机装置与数据传输速率控制方法 | |
CN106815156A (zh) | 一种实现固态硬盘交互的装置、方法和和电子设备 | |
CN110896372B (zh) | 一种i2c链路切换方法、终端及存储介质 | |
CN104615558A (zh) | 一种数据传送方法及电子装置 | |
KR20180116717A (ko) | 직렬 시스템 버스 인터페이스 및 직접메모리액세스 컨트롤러를 갖는 전자 시스템 및 그 동작 방법 | |
JP2011070547A (ja) | データ記憶装置のアクセス制御装置 | |
US20100106869A1 (en) | USB Storage Device and Interface Circuit Thereof | |
CN115543877A (zh) | 一种pcie数据传输方法及相关装置 | |
JP3659481B2 (ja) | Plc用表示システムおよびplcと表示器とのデータ通信方法 | |
CN108241586A (zh) | 控制器电路与估计延迟补偿方法 | |
JP2001282467A (ja) | Sdカード認証領域へのデータリード/ライトの方法およびデータ通信装置 | |
JP4458873B2 (ja) | シリアルデータ転送方法とその装置 | |
CN112241279A (zh) | 一种自适应的电子控制单元软件升级方法、系统及汽车 | |
US20240184263A1 (en) | Effective slave parameter management method and device of communication-based control system | |
CN104809087A (zh) | 电子装置系统的数据传输方法及电子装置系统 | |
JP2639248B2 (ja) | 通信インターフェイス装置 | |
JP2006065632A (ja) | 通信制御装置及び通信制御方法 | |
JP4666369B2 (ja) | Usbデバイス | |
JP2004186782A (ja) | データ書き込み制御方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |