CN108595111A - A kind of method and solid state disk promoting solid state disk performance - Google Patents

A kind of method and solid state disk promoting solid state disk performance Download PDF

Info

Publication number
CN108595111A
CN108595111A CN201810209120.0A CN201810209120A CN108595111A CN 108595111 A CN108595111 A CN 108595111A CN 201810209120 A CN201810209120 A CN 201810209120A CN 108595111 A CN108595111 A CN 108595111A
Authority
CN
China
Prior art keywords
order
ssd
csq
ssd controller
mark
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.)
Pending
Application number
CN201810209120.0A
Other languages
Chinese (zh)
Inventor
许毅
吴娴
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Union Memory Information System Co Ltd
Original Assignee
Shenzhen Union Memory Information System Co Ltd
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 Shenzhen Union Memory Information System Co Ltd filed Critical Shenzhen Union Memory Information System Co Ltd
Priority to CN201810209120.0A priority Critical patent/CN108595111A/en
Publication of CN108595111A publication Critical patent/CN108595111A/en
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0659Command handling arrangements, e.g. command buffers, queues, command scheduling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0674Disk device
    • G06F3/0676Magnetic disk device

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

The invention discloses a kind of methods and solid state disk promoting solid state disk performance, it is characterized in that increasing order in SSD controller submits queue CSQ, after SSD firmwares receive the order that host issues, and push operations of joining the team are executed after getting out the caching of the order, the mark of the order is written to by push pointers in CSQ;SSD controller determine CSQ be non-empty when, order mark is obtained by pop pointers, after obtaining order mark, SSD controller actively first discharges SATA buses 250ns, after SSD controller actively first discharges SATA buses, host judges whether there is that there are newer commands to submit to SSD during 250ns, if there is being then handed down to SSD firmwares;The 250ns times start the data transfer operation of the order to rear SSD controller application SATA buses.SATA bus 250ns are actively first discharged by SSD controller, enough hosts issue new command information during 250ns, can promote the overall performance of multiple orders.

Description

A kind of method and solid state disk promoting solid state disk performance
Technical field
The present invention relates to technical field of memory more particularly to a kind of methods and solid state disk promoting solid state disk performance.
Background technology
Fig. 1 is SATA bus fundamental diagrams, and the characteristic of SATA universal serial bus is host or after mono- sides of SSD occupy bus, Another party cannot get bus control right, need after waiting for it to be released, and could apply arriving.Host issues life by bus It enables, SSD passes through bus transfer data or commands in return state.In NCQ, (Native Command Queuing at full speed arrange by order Team) function open in the case of, host can as possible it is multiple order to SSD, make full use of the high bandwidth of SSD.
In the prior art, if SSD firmwares prepare the speed of caching buffer quickly, the controller of SSD will one SATA buses directly are occupied, then host is the right to use for not getting SATA buses during this period, so can not issue new It orders to controller.Fig. 2 is that conventional NCQ function operations enable schematic diagram, for example, NCQ functions are opened, host for theory 32 orders can be sent to SSD:
The first step:Host sends 32 orders to SSD;
Second step:After SSD takes 32 orders, firmware gets out rapidly buffer, while the controller of SSD occupies SATA Bus establishes data transmission with the main memory of host, and SSD can be accounted for always as long as the buffer of available for transmission in the prior art With SATA buses, i.e., during SSD controller 32 order of transmission, host is the right to use applied less than SATA buses, Until the data of 32 orders have all passed, after SSD controller releases bus, host could obtain the SATA bus rights to use, hair Play next group of 32 orders.
Fig. 3 is conventional SSD activity commands number schematic diagram, this illustrates that movable order is not to be always maintained at 32 in SSD, But 0 is slowly dropped to from 32,32 are then suddenly increased to, then 0 is slowly dropped to from 32, it is clear that there is no play for this Go out the potentiality of NCQ functions.
Invention content
For disadvantages described above, present invention aims at any effective functionality advantages for playing NCQ, improve command process Speed.
To achieve the goals above, the present invention provides a kind of methods promoting solid state disk performance, it is characterised in that Increasing order in SSD controller submits queue CSQ, the order to submit queue for caching the order mark that host issues, SSD After firmware receives the order that host issues, and push operations of joining the team are executed after getting out the caching of the order, by the order Mark is written to by push pointers in CSQ;SSD controller determine CSQ be non-empty when, pass through pop pointers obtain order mark Will, after obtaining order mark, SSD controller actively first discharges SATA bus 250ns, and actively first release SATA is total for SSD controller After line, host judges whether there is that there are newer commands to submit to SSD during 250ns, if there is being then handed down to SSD firmwares; The 250ns times start the data transfer operation of the order to rear SSD controller application SATA buses.
The method of the described promotion solid state disk performance, it is characterised in that it is 32 that the length of queue CSQ is submitted in order, can be with 32 order marks of caching.
A kind of solid state disk, it is characterised in that increase order in the SSD controller of solid hard disk and submit queue CSQ, institute Stating order submits queue for caching the order mark that host issues, and after SSD firmwares receive the order that host issues, and prepares Push operations of joining the team are executed after the caching of the good order, and the mark of the order is written to by push pointers in CSQ;SSD is controlled Device processed determine CSQ be non-empty when, by pop pointers obtain order mark, obtain order mark after, SSD controller actively first SATA bus 250ns are discharged, after SSD controller actively first discharges SATA buses, host judges whether there is presence during 250ns Newer command will submit to SSD, if there is being then handed down to SSD firmwares;The 250ns times to rear SSD controller application SATA buses, and Start the data transfer operation of the order.
The solid state disk, it is characterised in that it is 32 that the length of queue CSQ is submitted in order, can cache 32 order marks Will.
Advantageous effect of the present invention:SATA bus 250ns are actively first discharged by SSD controller, it is main enough during 250ns Machine issues new command information, and host sends a newer command and probably expends 60ns;Each order delayed data transmits 250ns, The performance for having substantially no effect on single command, by taking the order of 4KB as an example, the data of 4KB pass through SATA buses (theoretical bandwidth 600MB/ S) it needs to spend 6600ns, spends more 250ns on this basis, influence to can be ignored substantially, and the entirety of multiple orders can be promoted Performance.
Description of the drawings
Fig. 1 is SATA bus fundamental diagrams;
Fig. 2 is that conventional NCQ function operations enable schematic diagram;
Fig. 3 is conventional SSD activity commands number schematic diagram;
Fig. 4 is that queue schematic diagram is submitted in order;
Fig. 5 is improved work flow diagram;
Fig. 6 is the activity command number schematic diagram increased after CQS.
Specific implementation mode
Following will be combined with the drawings in the embodiments of the present invention, and technical solution in the embodiment of the present invention carries out clear, complete Site preparation describes, it is clear that described embodiments are only a part of the embodiments of the present invention, instead of all the embodiments.It is based on Embodiment in the present invention, those of ordinary skill in the art are obtained every other without creative efforts Embodiment shall fall within the protection scope of the present invention.
Analysis knows that SSD controller will occupy always if the firmware of SSD prepares the speed of buffer quickly SATA bus transfer datas, host application issues more order less than SATA buses during causing leads to NCQ functions to SSD Due effect is not played.
This programme is proposed makes optimization to SSD controller, enables it to coordinate with host tacit agreement, and rationally shared SATA is total Line plays the function of NCQ, promotes the performance of SSD.
Increase order in SSD controller and submit queue (CSQ), such as Fig. 4, order submits queue to include at least Push pointers With Pop pointers;Wherein Push pointers are used by SSD firmwares;Wherein Pop pointers, SSD controller use;The queue occupies 32*4B The SRAM space of=128B.Timer Timer is set in SD controllers, before the data transmission that SSD controller starts newer command, It first discharges SATA buses and starts timing, stop timing after having crossed 250ns and apply for that SATA buses carry out data transmission.
Fig. 5 is improved work flow diagram, or with NCQ functions open, host submit 32 order for, SSD and The mode that SATA buses are shared in host cooperation is as follows:
1) host issues several newer commands, polishing 32;
2) SSD firmwares get out the buffer of some order;
3) mark of order is written to CSQ by SSD firmwares by push pointers, and moves push pointers afterwards;
4) when SSD controller judges CSQ non-emptys, order mark is obtained by pop pointers, buffer is ready for;
5) SSD controller discharges SATA buses, while starting timer Timer and starting timing;
6) host judges whether to need to submit new order to SSD, if so, then submitting, SATA buses are idle at this time 's;
7) after 250ns, SSD controller application SATA buses and the data transmission for starting the order.
New technology allows host within this time by discharging the one small meeting time of SATA buses before each order transmission data New order is issued, 32 orders of polishing can so ensure that the SSD moment is in the state of 32 orders of processing, such as Fig. 6 institutes Show, plays whole abilities of NCQ.
Ensure that SSD controller release SATA bus 250ns reasons have 2, reason 1:Enough hosts issue newly during 250ns Command information, host send a newer command probably expend 60ns;Reason 2:Each order delayed data transmits 250ns, base This does not influence the performance of single command, and by taking the order of 4KB as an example, the data of 4KB pass through SATA buses (theoretical bandwidth 600MB/s) It needs to spend 6600ns, spends more 250ns on this basis, influence to can be ignored substantially, and the globality of multiple orders can be promoted Can, the advantages outweigh the disadvantages.
Above disclosed is only an embodiment of the present invention, cannot limit the right model of the present invention with this certainly It encloses, those skilled in the art can understand all or part of the processes for realizing the above embodiment, and is wanted according to right of the present invention Equivalent variations made by asking still fall within the range that the present invention is covered.

Claims (4)

1. a kind of method promoting solid state disk performance, it is characterised in that increase order in SSD controller and submits queue CSQ, The order submits queue for caching the order mark that host issues, after SSD firmwares receive the order that host issues, and it is accurate Push operations of joining the team are executed after getting the caching of the order ready, the mark of the order is written to by push pointers in CSQ;SSD Controller determine CSQ be non-empty when, by pop pointers obtain order mark, obtain order mark after, SSD controller actively SATA bus 250ns are first discharged, after SSD controller actively first discharges SATA buses, host, which judges whether there is, during 250ns deposits SSD is submitted in newer command, if there is being then handed down to SSD firmwares;The 250ns times to rear SSD controller application SATA buses, And start the data transfer operation of the order.
2. the method according to claim 1 for promoting solid state disk performance, it is characterised in that the length of queue CSQ is submitted in order Degree is 32, can cache 32 order marks.
3. a kind of solid state disk, it is characterised in that the increase order submission queue CSQ in the SSD controller of solid hard disk, it is described Order submits queue for caching the order mark that host issues, and after SSD firmwares receive the order that host issues, and is ready to Push operations of joining the team are executed after the caching of the order, and the mark of the order is written to by push pointers in CSQ;SSD is controlled Device determine CSQ be non-empty when, by pop pointers obtain order mark, obtain order mark after, SSD controller actively first release SATA bus 250ns are put, after SSD controller actively first discharges SATA buses, host is judged whether there is in the presence of new during 250ns Order will submit to SSD, if there is being then handed down to SSD firmwares;The 250ns times open to rear SSD controller application SATA buses Begin the data transfer operation of the order.
4. solid state disk according to claim 3, it is characterised in that it is 32, Ke Yihuan that the length of queue CSQ is submitted in order Deposit 32 order marks.
CN201810209120.0A 2018-03-14 2018-03-14 A kind of method and solid state disk promoting solid state disk performance Pending CN108595111A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810209120.0A CN108595111A (en) 2018-03-14 2018-03-14 A kind of method and solid state disk promoting solid state disk performance

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810209120.0A CN108595111A (en) 2018-03-14 2018-03-14 A kind of method and solid state disk promoting solid state disk performance

Publications (1)

Publication Number Publication Date
CN108595111A true CN108595111A (en) 2018-09-28

Family

ID=63626367

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810209120.0A Pending CN108595111A (en) 2018-03-14 2018-03-14 A kind of method and solid state disk promoting solid state disk performance

Country Status (1)

Country Link
CN (1) CN108595111A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110413549A (en) * 2019-06-06 2019-11-05 深圳市金泰克半导体有限公司 Data transmission method, device, computer equipment and storage medium
CN112363670A (en) * 2020-10-14 2021-02-12 天津津航计算技术研究所 SATA NCQ command scheduling method

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102103467A (en) * 2009-12-16 2011-06-22 英特尔公司 Improving performance of a solid state disk by using a programmable bus arbiter to delay interface requests
CN103744796A (en) * 2013-09-29 2014-04-23 记忆科技(深圳)有限公司 Caching method and system by means of uSSD
US20140281600A1 (en) * 2013-03-14 2014-09-18 Steven E. Wells Apparatus and method to provide near zero power devslp in sata drives
CN107608909A (en) * 2017-09-19 2018-01-19 记忆科技(深圳)有限公司 A kind of method that NVMe solid state disk writes accelerate

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102103467A (en) * 2009-12-16 2011-06-22 英特尔公司 Improving performance of a solid state disk by using a programmable bus arbiter to delay interface requests
US20140281600A1 (en) * 2013-03-14 2014-09-18 Steven E. Wells Apparatus and method to provide near zero power devslp in sata drives
CN103744796A (en) * 2013-09-29 2014-04-23 记忆科技(深圳)有限公司 Caching method and system by means of uSSD
CN107608909A (en) * 2017-09-19 2018-01-19 记忆科技(深圳)有限公司 A kind of method that NVMe solid state disk writes accelerate

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110413549A (en) * 2019-06-06 2019-11-05 深圳市金泰克半导体有限公司 Data transmission method, device, computer equipment and storage medium
CN110413549B (en) * 2019-06-06 2023-05-09 深圳市金泰克半导体有限公司 Data transmission method, device, computer equipment and storage medium
CN112363670A (en) * 2020-10-14 2021-02-12 天津津航计算技术研究所 SATA NCQ command scheduling method

Similar Documents

Publication Publication Date Title
JP5159900B2 (en) Computer program, apparatus, and method for reducing access conflict of reserved device
US8001298B2 (en) Providing extended measurement data in an I/O processing system
US7937507B2 (en) Extended measurement word determination at a channel subsystem of an I/O processing system
CN105243033B (en) Data processing method and electronic equipment
TWI278755B (en) An apparatus and method for high performance volatile disk drive memory access using an integrated DMA engine
US10026442B2 (en) Data storage mechanism using storage system determined write locations
US7818479B2 (en) Interface apparatus and packet transfer method
US20090210579A1 (en) Open exchange limiting in an i/o processing system
WO2020000485A1 (en) Nvme-based data writing method, device, and system
JP2004185349A (en) Update data writing method using journal log
US8275925B2 (en) Methods and apparatus for improved serial advanced technology attachment performance
WO2013170731A1 (en) Method for writing data into storage device and storage device
TWI700590B (en) Interface adapter circuit
JP2002540526A (en) Host adapter for combining I / O completion reporting and method of using same
KR20180037099A (en) Non-volatile storage system and data storage access protocol for non-volatile storage devices
JP2007233896A (en) Storage device and control method thereof
CN108595111A (en) A kind of method and solid state disk promoting solid state disk performance
US7130932B1 (en) Method and apparatus for increasing the performance of communications between a host processor and a SATA or ATA device
JP2012048704A (en) Method and apparatus for improved host/initiator utilization in serial advanced technology attachment communication
JP2000293436A (en) Support for a plurality of unsolved request to a plurality of targets of pipeline memory system
TWI275943B (en) Method, system, and computer readable recording medium for returning data to read requests
CN106909523B (en) Large-scale data transmission method and system
JP2010092493A (en) Interface device and packet transfer method
US20100161853A1 (en) Method, apparatus and system for transmitting multiple input/output (i/o) requests in an i/o processor (iop)
JP2000132507A (en) Command processing method for scsi protocol and device used for the processing method

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
RJ01 Rejection of invention patent application after publication

Application publication date: 20180928

RJ01 Rejection of invention patent application after publication