WO2011147324A1 - 多接口固态硬盘及其处理方法和系统 - Google Patents

多接口固态硬盘及其处理方法和系统 Download PDF

Info

Publication number
WO2011147324A1
WO2011147324A1 PCT/CN2011/074760 CN2011074760W WO2011147324A1 WO 2011147324 A1 WO2011147324 A1 WO 2011147324A1 CN 2011074760 W CN2011074760 W CN 2011074760W WO 2011147324 A1 WO2011147324 A1 WO 2011147324A1
Authority
WO
WIPO (PCT)
Prior art keywords
command
interface
operation command
flash
host
Prior art date
Application number
PCT/CN2011/074760
Other languages
English (en)
French (fr)
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 KR1020127013992A priority Critical patent/KR20120087980A/ko
Priority to EP11786096A priority patent/EP2492916A4/en
Priority to RU2012128534/08A priority patent/RU2012128534A/ru
Priority to MX2012005934A priority patent/MX2012005934A/es
Priority to BR112012014266A priority patent/BR112012014266A2/pt
Publication of WO2011147324A1 publication Critical patent/WO2011147324A1/zh
Priority to US13/473,297 priority patent/US20120233386A1/en

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • 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/0604Improving or facilitating administration, e.g. storage management
    • G06F3/0607Improving or facilitating administration, e.g. storage management by facilitating the process of upgrading existing storage systems, e.g. for improving compatibility between host and storage device
    • 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/0661Format or protocol conversion arrangements
    • 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/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
    • 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/0683Plurality of storage devices
    • G06F3/0688Non-volatile semiconductor memory arrays

Definitions

  • the present invention relates to the field of communications, and in particular, to a multi-interface solid state hard disk and a processing method and system thereof.
  • SSD Solid State Disk
  • flash memory flash memory
  • Ordinary SATA Serial Advanced Technology Attachment, Serial Advanced Technology Attachment
  • PCIe Peripheral Component Interconnect Express
  • peripheral devices are faster interconnected.
  • the SSD of the interface has the advantages of greater capacity and higher performance, and can be well applied to areas requiring high capacity and performance.
  • the SSDs of the PCIe interface on the market are SSDs of a single PCIe interface.
  • the SSD and the host 1 (for example, a PC or a server) are connected through a PCIe interface, and the host 1 uses the driver 1 as the SSD.
  • the storage device can directly access the SSD; the host 2 sends the access command to the SSD through the driver 2 and the agent module running on the host 1 and then the driver 1 on the host 1 to implement the indirect access to the SSD.
  • the SSD of a single PCIe interface can only be inserted into one host and can only be directly accessed by one host.
  • Other hosts can only access the SSD indirectly, which makes the indirect access to the SSD host with less access bandwidth and larger access delay. Good to meet the needs of each host for SSD high performance, high bandwidth and large capacity.
  • the embodiment of the present invention provides a multi-interface solid state hard disk and a processing method and system thereof, which are used to solve the problem that the prior art can only be directly accessed by one host, and multiple hosts cannot directly share the access SSD, thereby failing to satisfy each host pair.
  • a multi-interface solid state hard disk includes a plurality of interface control units, a command scheduling unit, a flash control unit, and a flash chip, and each interface control unit corresponds to a communication interface;
  • the interface control unit is configured to receive an operation command by using the communication interface
  • the command scheduling unit is configured to acquire the operation command from a plurality of the interface control units according to a scheduling rule, and put the operation command into a command queue;
  • the command scheduling unit is further configured to: take the operation command from the command queue and send the operation command to the flash control unit;
  • the flash control unit is configured to convert the received operation command into a flash operation command, and operate the flash chip by using the flash operation command.
  • a multi-interface solid state hard disk processing method includes:
  • a multi-interface solid state hard disk processing system includes: at least one host and at least one multi-interface solid state hard disk;
  • the host includes a multi-interface solid state hard disk drive, and the direct communication connection between the host and the multi-interface solid state hard disk is implemented by running the driver, and the host is configured to send an operation command to the multi-interface solid state hard disk;
  • the multi-interface solid state drive includes a plurality of interface control units, a command scheduling unit, a flash control unit, and a flash chip, each interface control unit respectively corresponding to a communication interface, and the interface control unit is configured to receive through the communication interface An operation command sent by the host; the command scheduling unit is configured to acquire the operation command from a plurality of the interface control units according to a scheduling rule, and put the operation command into a command queue; the command scheduling unit further And the flash control unit is configured to convert the received operation command into a flash operation command, and the flash operation command is used to output the operation command from the command queue.
  • the flash chip is operated.
  • the multi-interface solid state hard disk and the operation command processing method and system provided by the embodiments of the present invention provide multiple communication interfaces in the solid state hard disk, so that different hosts can directly communicate with the solid state hard disk interface through different communication interfaces, thereby avoiding
  • hosts other than the host directly connected to the SSD need to access the SSD indirectly.
  • Different hosts can directly access the SSD concurrently, and do not need to access each other through sharing. Therefore, the access bandwidth is increased to meet the requirements of each host for the high performance, high bandwidth, and large capacity of the SSD.
  • FIG. 1 is a block diagram showing the composition of a solid state hard disk processing system in the prior art
  • FIG. 2 is a block diagram showing the composition of a multi-interface solid state hard disk according to Embodiment 1 of the present invention
  • FIG. 3 is a block diagram showing the composition of a multi-interface solid state hard disk according to Embodiment 2 of the present invention.
  • FIG. 4 is a flowchart of a method for processing a multi-interface solid state hard disk according to Embodiment 3 of the present invention.
  • FIG. 5 is a flowchart of another multi-interface solid state hard disk processing method according to Embodiment 3 of the present invention.
  • FIG. 6 is a structural block diagram of a multi-interface solid state hard disk processing system according to Embodiment 4 of the present invention.
  • FIG. 7 is a structural block diagram of another multi-interface solid state hard disk processing system according to Embodiment 4 of the present invention.
  • FIG. 8 is a structural block diagram of another multi-interface solid state hard disk processing system according to Embodiment 4 of the present invention.
  • the embodiment of the present invention provides a multi-interface solid state hard disk, as shown in FIG. 2, comprising a plurality of interface control units 11, a command scheduling unit 12, a flash control unit 13 and a flash chip 14;
  • Each of the interface control units 11 respectively corresponds to a communication interface, and the interface control unit 11 is configured to receive an operation command through the communication interface; specifically, the communication interface may be a PCIe interface, or a SATA interface; and the interface control unit 11
  • the received operation command is from various hosts connected to the hard disk card, such as a PC, a server, etc., and is not limited herein.
  • the command scheduling unit 12 is configured to acquire the operation command from the plurality of the interface control units 11 according to the scheduling rule, and put the operation command into the command queue.
  • the command scheduling unit 12 may adopt multiple The principle of the communication interface polling, or the operation command in the plurality of interface control units 11 according to the principle that a plurality of the communication interface numbers are preceded by a lower number priority or a higher number, or other user-defined principles. Scheduling is not limited here.
  • the command scheduling unit 12 is further configured to: take the operation command from the command queue and send the operation command to the flash control unit 13; specifically, when the operation command is taken out from the command queue, follow the command.
  • the queue first-in-first-out rule which in turn takes out the operation command.
  • the flash control unit 13 is configured to convert the received operation command into a flash operation command, and operate the flash chip 14 by using the flash operation command; specifically, the flash chip herein may adopt NAND (NAND) flash to obtain better performance; since the command received through the interface control unit does not directly operate the flash chip, it is necessary to convert the operation command into a flash operation command by the flash control unit 13 to the flash.
  • the chip operates, such as reading data or writing data or other control operations.
  • multiple communication interfaces are set in the solid state hard disk, so that different hosts can directly communicate with the solid state hard disk interface through different communication interfaces, thereby avoiding direct sharing of SSDs when multiple hosts share the SSD.
  • a host other than the connected host needs to access the SSD indirectly. Different hosts can directly access the SSD concurrently. They do not need to access each other through sharing. Therefore, the access bandwidth of the host is improved and the host pairs are satisfied. SSD's high performance, high bandwidth and high capacity requirements.
  • the embodiment of the present invention provides a multi-interface solid state hard disk.
  • the system includes a plurality of interface control units 11, a command scheduling unit 12, a flash control unit 13, and a flash chip 14.
  • Each of the interface control units 11 respectively corresponds to a communication interface, and the interface control unit 11 is configured to receive an operation command through the communication interface;
  • the multiple communication interfaces may be PCIe interfaces, but the embodiment of the present invention is not limited thereto, and the communication interface may also be a SATA interface; the multiple communications are performed according to characteristics of the PCIe interface and the SATA interface.
  • the interface is configured as a PCIe interface. Compared with the SATA interface, the transmission bandwidth between the host and the SSD can be increased, which can meet the requirements of the bandwidth performance.
  • the embodiment of the present invention does not limit this.
  • the interface types of the multiple communication interfaces may be flexibly set according to user requirements.
  • a part of the plurality of communication interfaces is set as a PCIe interface, and another part is set as a SATA interface;
  • the two communication interfaces can be set as the SATA interface, and the multiple communication interfaces can be set in the application field where the transmission bandwidth and the transmission performance are relatively high.
  • the PCIe interface For the PCIe interface.
  • the interface control unit 11 is configured to receive an operation command by using a communication interface, for example, receiving an operation command from the host through a PCIe interface or a SATA interface, where the operation command may be a read/write command, or may be a command with a maintenance function.
  • a communication interface for example, receiving an operation command from the host through a PCIe interface or a SATA interface, where the operation command may be a read/write command, or may be a command with a maintenance function.
  • the log query command, the bad block statistics query command, and the number of data block erasures in the flash are not limited in this embodiment of the present invention.
  • the command scheduling unit 12 acquires the operation command from a plurality of the interface control units 11 according to a scheduling rule, and puts the operation command into a command queue;
  • the command scheduling unit 12 obtains the operation command from the plurality of the interface control units 11 according to the scheduling rule, and when the operation command is put into the command queue, the following methods may be used, including:
  • the command scheduling unit 12 sends an acquisition command for obtaining an operation command to the plurality of interface control units according to the scheduling rule; after receiving the acquisition command sent by the command scheduling unit, the interface control unit sends an operation command to the command scheduling unit 12;
  • the scheduling unit 12 places the received operation command into the command queue.
  • the command scheduling unit 12 may adopt a principle of polling according to a plurality of the communication interfaces, or according to a plurality of the communication interface numbers, according to a principle of lower number priority or higher number priority, to the plurality of interface control units 11
  • the operation command is scheduled, and is not limited herein.
  • the command scheduling unit 12 may also use other customized scheduling rules according to the requirements of the user, which is not limited in this embodiment of the present invention.
  • the command scheduling unit 12 may adopt a principle of polling according to a plurality of the communication interfaces. include:
  • the command scheduling unit 12 transmits a read command for acquiring the operation command to the interface control unit 1 and the interface control unit 12 according to a predetermined cycle, and the interface control unit 1 and the interface control unit 2 receive the read.
  • the temporary operation command is sent to the command scheduling unit 12; the command scheduling unit 12 puts the received command 1 into the command queue, and then puts the received command 2 into the command queue. .
  • the command scheduling unit 12 employs a priority according to a plurality of the communication interface numbers according to a lower number
  • an operation command is acquired from a plurality of the interface control units 11, and the operation command is placed in a command queue.
  • the method may include:
  • the command scheduling unit 12 sequentially sends the acquisition to the corresponding interface control unit 1 and the interface control unit 2 according to the order of the two communication interfaces from low to high or the number of the two communication interfaces from high to low.
  • the command scheduling unit 12 adopts the principle of prioritizing a higher number according to a plurality of the communication interface numbers, an operation command is acquired from a plurality of the interface control units 11, and the operation command is placed in the command queue.
  • the method may include:
  • the command scheduling unit 12 sequentially sends a read command for acquiring the operation command to the corresponding interface control unit 2 and the interface control unit 1 according to the order of the two communication interfaces from high to low; the interface control unit 2 and the interface After receiving the read command, the control unit 1 sends the temporarily stored operation command to the command scheduling unit; the command scheduling unit puts the received command 2 into the command queue first, and then receives the received command. 1 Put in the command queue.
  • the command scheduling unit 12 is further configured to take out an operation command of the previous enqueue from the command queue and send the operation command to the flash control unit 13. Specifically, when the operation command is taken out from the command queue, the operation command is sequentially taken out according to the rules of the command queue first-in-first-out.
  • the command scheduling unit 12 is physically provided with an ingress port corresponding to the number of interface control units and an egress port; each ingress port is respectively connected to an egress port of the corresponding interface control unit, and the egress port and the flash control unit are in the ingress. a port connection; the command scheduling unit 12 acquires the operation command from a plurality of the interface control units 11 according to a scheduling rule, and puts the operation command into a command queue through the ingress port, and the operation is performed After the command is taken out from the command queue, the slave operation command is sent to the flash control unit through the egress port.
  • the flash control unit 13 is configured to convert the received operation command into a flash operation command, and operate the flash chip 14 by using the flash operation command;
  • the flash control unit 13 receives the operation command, converts the operation command into a flash operation command, and sends the flash operation command to the flash chip 14.
  • the flash chip can be used here. NAND Flash, for better performance; since the command received by the interface control unit does not directly operate the flash chip, the flash control unit 13 needs to convert the operation command into a flash operation command and then operate the flash chip. Such as reading data or writing data.
  • the flash control unit 13 may be connected to one or more flash chips 14 according to the capacity requirement; or the embodiment of the present invention may also include multiple flash control units, each flash controller and one or more flashes. The chips are connected, and each flash control unit is connected to the command dispatch unit 12 via a bus.
  • the command scheduling unit 12 is further configured to determine whether the operation command is composed of multiple commands; Determining that the operation command is composed of a plurality of commands, dividing the operation command into a plurality of commands, and transmitting the plurality of commands to the flash control unit; if it is determined that the operation command is composed of one command, A command is sent to the flash control unit.
  • the operation command received by the flash control unit 13 includes a plurality of commands
  • the plurality of commands are respectively converted into corresponding multiple flash operation commands, and the plurality of flash operation commands are respectively sent.
  • a flash chip wherein the flash chip processes the plurality of flash operation commands in parallel; when the operation command received by the flash control unit 13 includes a command, converting the one command into a corresponding flash operation Commanding, and sending the flash operation command to the flash chip for processing.
  • the flash chip executes the operation command, returning the execution result of the operation command to the command scheduling unit 12, so that the command scheduling unit 12 ends the execution of the corresponding operation command;
  • the unit 12 receives the execution result of the operation command, and returns the execution result of the operation command to the host through the corresponding interface control unit 11.
  • the execution result of the operation command when the execution result of the operation command is returned to the host through the corresponding interface control unit, the execution result may be directly returned to the host through the corresponding interface control unit by using an interrupt mode; The execution result is sent to the corresponding interface control unit, and the host periodically detects whether the execution result of the operation command is saved in the interface control unit. If it is detected that the execution result of the operation command is saved in the interface control unit, the host acquires the The execution result is not limited in the specific implementation, and the specific method is selected according to the specific circumstances.
  • the first executed command is first returned to the command scheduling unit, so that the command scheduling unit ends the execution of the command.
  • each unit may be implemented by using various hardware processing chips.
  • the interface control unit and the command scheduling unit may use a PLD (Programable).
  • Logic Device, Programmable Logic Device) such as FPGA (Field-Programmable Gate) Array, Field Programmable Gate Array), CPLD (Complex Programmable Logic) Device, complex programmable logic device)
  • the flash control unit is implemented by another PLD; or each unit is implemented by a single PLD chip, which is not limited herein.
  • multiple communication interfaces are set in the solid state hard disk, so that different hosts can directly communicate with the solid state hard disk interface through different communication interfaces, thereby avoiding direct sharing of SSDs when multiple hosts share the SSD.
  • the host other than the connected host needs to access the SSD indirectly. Different hosts can directly access the SSD concurrently, and do not need to access each other through sharing. Therefore, the access bandwidth is increased to meet the SSD of each host. The need for features such as high performance, high bandwidth and large capacity.
  • the interface of the multi-interface SSD is a PCIe interface
  • the performance of the PCIe interface is further improved compared with other interfaces, so that the host can fully utilize the high performance, high bandwidth, and large SSD.
  • the command scheduling unit ends the execution of the command, so that there are as many free channels in the SSD as possible for other commands to be processed, thereby improving the performance of the SSD.
  • the embodiment of the invention provides a multi-interface solid state hard disk processing method. As shown in FIG. 4, the method includes:
  • the multi-interface solid state hard disk is provided with multiple interface control units, and each interface control unit corresponds to a communication interface; the received operation command is from the host, and is used to operate the flash inside the SSD.
  • the operation command is temporarily stored in the interface control unit, and is waiting for subsequent scheduling.
  • the command scheduling unit of the SSD can be scheduled according to the scheduling rule, and the operation command is put into the command queue.
  • the specific steps can include the following steps:
  • the command scheduling unit sends an acquisition command for obtaining an operation command to the plurality of interface control units according to the scheduling rule; after receiving the acquisition command, the interface control unit sends the operation command to the command scheduling unit; the command scheduling unit places the received operation command Into the command queue.
  • the command scheduling unit may adopt a principle of polling according to a plurality of the communication interfaces, or perform operation commands in multiple interface control units according to a plurality of the communication interface numbers according to a lower number priority or a higher number priority.
  • the scheduling is performed.
  • the embodiment of the present invention may also use other customized scheduling rules according to the requirements of the user, which is not limited in this embodiment of the present invention.
  • command scheduling unit scheduling the operation commands in the multiple interface control units according to various scheduling algorithms, refer to the corresponding description in Embodiment 2, and details are not described herein again.
  • the operation command is sequentially taken out according to the rule of the command queue first-in-first-out.
  • step 203 as shown in FIG. 5, the following steps may also be included:
  • step 2031 Determine whether the operation command is composed of multiple commands. If it is determined that the operation command is composed of multiple commands, step 2032 is performed. If it is determined that the operation command is composed of one command, step 2033 is performed.
  • the operation command is divided into a plurality of commands, and step 204 is executed, that is, the plurality of commands are converted into corresponding multiple flash operation commands, and the flash chip in the solid state hard disk is operated.
  • Step 20 executing step 204, converting the one command into a corresponding one of the flash operation commands, and operating the flash chip in the solid state hard disk.
  • the flash chip here can use NAND Flash, for better performance; because the operation command received through the communication interface does not directly operate the flash chip, it is necessary to convert the operation command into a flash operation command before the flash chip can be operated, such as reading Data or write data or other control operations.
  • the method may further include:
  • the command scheduling unit receives an execution result of the operation command, and executes the operation command The result is returned to the host via the corresponding interface control unit.
  • the execution result of the operation command when the execution result of the operation command is returned to the host through the corresponding interface control unit, the execution result may be directly returned to the host through the corresponding interface control unit by using an interrupt mode; The execution result is sent to the corresponding interface control unit, and the host periodically detects whether the execution result of the operation command is saved in the interface control unit. If it is detected that the execution result of the operation command is saved in the interface control unit, the host acquires the The execution result is not limited in the specific implementation, and the specific method is selected according to the specific circumstances.
  • the first executed command is first returned to the command scheduling unit, so that the command scheduling unit ends the execution of the command.
  • the operation command when the host sends an operation command to the solid state hard disk through multiple communication interfaces of the solid state hard disk, the operation command is independently set and received by the plurality of interface control units, and is controlled by the command scheduling unit. Dispatching the received operation command into the command queue, so that the received operation command has an operation sequence, and when the operation command needs to be operated, the operation is sent from the command queue to the flash control unit to control the processing.
  • the operation command obtains the operation result, so that different hosts can directly communicate with the SSD interface through different communication interfaces, thereby avoiding indirect access of hosts other than the host directly connected to the SSD when multiple hosts share the SSD.
  • the problem of the SSD is that different hosts can directly access the SSD concurrently, thereby improving the access bandwidth and satisfying the requirements of each host for the high performance, high bandwidth and large capacity of the SSD.
  • the command scheduling unit ends the execution of the command, so that there are as many free channels in the SSD as possible for other commands to be processed, thereby improving the performance of the SSD.
  • the embodiment of the present invention provides a multi-interface solid state hard disk processing system, including at least one host and a multi-interface SSD.
  • the host is a host, the host is a host that can connect at least two communication interfaces of the multi-interface SSD;
  • the host is a plurality of hosts, the host is a host that can connect at least one communication interface of the multi-interface SSD.
  • the system includes multiple hosts and one multi-interface SSD, and each host includes a communication interface as an example, and specifically describes a multi-interface SSD processing system. As shown in FIG. 6, the system includes: multiple hosts and one Multi-interface SSD.
  • Each host is provided with an interface for communicating with the multi-interface SSD, and the connection with the multi-interface SSD is implemented through the interface; after the host successfully runs the multi-interface SSD driver, the host and the multi-interface SSD can be implemented.
  • a direct communication connection is used, and the multi-interface SSD is used as a storage device of the host itself.
  • the host 1, the host 2, the host n are respectively connected to the multi-interface SSD through the communication interface 1, the communication interface 2, the communication interface n (not shown) of the multi-interface SSD;
  • the interface control unit 1, the interface control unit 2, and the interface control unit are one-to-one corresponding to the communication interface 1, the communication interface 2, and the communication interface n. n, respectively receiving the operation command sent by the host 1, the host 2, the host n.
  • Different hosts are connected to the same SSD through different communication interfaces; different hosts run their multi-interface SSD drivers, and the multi-interface SSDs are initialized as independent storage devices of the host, enabling multi-interface SSDs connecting multiple hosts.
  • the size and extent of the access space of the multi-interface SSD accessed by each host are the size of the storage device externally presented by the multi-interface SSD.
  • the processing of the operation command received by the multiple interface SSDs by the multiple interface control units can be referred to the descriptions in Embodiment 1, Embodiment 2, and Embodiment 3, and details are not described herein again.
  • multiple communication interfaces are set in the multi-interface SSD, so that different hosts directly communicate with the SSD interface through different communication interfaces, thereby avoiding direct connection with the SSD when multiple hosts share the SSD.
  • the host other than the host needs to access the SSD indirectly, so that different hosts can directly access the SSD concurrently, and do not need to access each other through sharing mode. Therefore, the access bandwidth is increased to meet the high SSD of each host.
  • the embodiment of the present invention further provides a multi-interface SSD processing system, which can set a host directly connected to a multi-interface SSD as a master-slave relationship.
  • a multi-interface SSD includes two communication interfaces as an example, and the processing is specifically described.
  • the system as shown in Figure 7, includes: two hosts (Host 1 and Host 2) and a multi-interface SSD.
  • the two hosts each include an interface connected to the multi-interface SSD, and the connection with the multi-interface SSD is implemented through the interface; after the host successfully runs the SSD driver, the host 1 and the host 2 are independent. Accessing the multi-interface SSD; in the specific implementation, the host 1 can be set as the master device, the host 2 is set as the standby device, and the link relationship is maintained between the host 1 and the host 2.
  • the host 1 and the host 2 are respectively connected to the multi-interface SSD through the communication interface 1 and the communication interface 2 of the multi-interface SSD.
  • the standby device does not access the SSD; when the host 1 fails, the standby host 2 starts to access the SSD.
  • the host 1 transmits an operation command to the multi-interface SSD through the communication interface 1 of the multi-interface SSD, and the interface control unit 1 receives the operation command through the communication interface 1.
  • the host 2 transmits an operation command to the multi-interface SSD through the communication interface 2 of the multi-interface SSD, and the interface control unit 2 receives the operation command through the communication interface 2.
  • the processing of the operation command received by the multiple interface SSDs by the multiple interface control units can be referred to the descriptions in Embodiment 1, Embodiment 2, and Embodiment 3, and details are not described herein again.
  • an active/standby relationship is set between different hosts connected to the multi-interface SSD.
  • the standby host can continue to perform corresponding operations, thereby improving system reliability.
  • the embodiment of the present invention further provides a multi-interface SSD processing system, which can set a host that communicates with the multi-interface SSD as a host of multiple communication interfaces, and the host in the embodiment of the present invention sets the host as two communication interfaces as an example.
  • the processing system is illustrated. As shown in FIG. 8, the system includes:
  • a host and a multi-interface SSD contains a multi-interface SSD driver and two inter-SSD communication interfaces.
  • the interface 1 and the interface 2 of the host are respectively connected to the communication interface 1 and the communication interface 2 (not shown) of the multi-interface SSD, and each interface of the host is driven by running the multi-interface SSD.
  • the multi-interface SSD can be independently accessed, and two independent multi-interface SSDs are displayed on the host to be connected to the host; in a specific implementation, the host can send an operation to the multi-interface SSD through one of the two interfaces.
  • the command may also send an operation command to the multi-interface SSD through two interfaces at the same time; when an operation command is sent to the multi-interface SSD through two interfaces at the same time, the host side displays that the host can simultaneously access two multi-interface SSDs. This allows the bandwidth of the host and multi-interface SSD to be expanded, which can make the performance of the SSD better.
  • the processing of the operation command received by the multiple interface SSDs by the multiple interface control units can be referred to the descriptions in Embodiment 1, Embodiment 2, and Embodiment 3, and details are not described herein again.
  • multiple interfaces are set on the same host, and the multiple interfaces are connected to different communication interfaces of the multi-interface SSD.
  • multiple interfaces of the host may be Concurrently sending operation commands to the multi-interface SSD, extending the interface bandwidth between a host and the SSD, different hosts can directly access the SSD solid state hard disk concurrently, improve access bandwidth, and satisfy each host to the SSD.
  • Card SSDs require high performance, high bandwidth and large capacity.
  • the present invention can be implemented by means of software plus necessary general hardware, and of course, by hardware, but in many cases, the former is a better implementation. .
  • the technical solution of the present invention which is essential or contributes to the prior art, can be embodied in the form of a software product stored in a readable storage medium, such as a floppy disk of a computer.
  • a hard disk or optical disk, etc. includes instructions for causing a computer device (which may be a personal computer, server, or network device, etc.) to perform the methods described in various embodiments of the present invention.

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 Transfer Systems (AREA)
  • Computer And Data Communications (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)

Abstract

本发明实施例公开了一种多接口固态硬盘及其处理方法和系统,涉及通信领域,实现多个主机直接共享访问SSD,满足各主机对SSD高性能、高带宽和大容量的需求。本发明的多接口固态硬盘包括:多个接口控制单元、命令调度单元、flash控制单元以及flash芯片,每个接口控制单元分别对应于一个通信接口;接口控制单元通过通信接口接收操作命令;命令调度单元按照调度规则从多个接口控制单元中获取操作命令,将该操作命令放入命令队列并从中取出该操作命令发送给flash控制单元;flash控制单元将该操作命令转化为flash操作命令对flash芯片进行操作。

Description

多接口固态硬盘及其处理方法和系统
本申请要求于2010年5月27日提交中国专利局、申请号为201010184698.9、发明名称为“多接口固态硬盘及其处理方法和系统”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本发明涉及通信领域,尤其涉及一种多接口固态硬盘及其处理方法和系统。
背景技术
SSD(Solid State Disk,固态硬盘)以flash(闪存)作为存储介质,与传统硬盘相比,具有数据存取速度快、防震抗摔、低功耗、经久耐用、无噪音、外观轻薄等优势,在某些特殊应用场景下,具有替代传统硬盘的良好前景。普通SATA(Serial Advanced Technology Attachment,串行高级技术附件)3.0接口的SSD硬盘受限于SATA3.0接口的带宽,往往不能发挥其最大性能,相比之下,基于PCIe(Peripheral Component Interconnect Express,外围设备互联较快)接口的SSD具有更大容量更高性能的优势,可以很好地应用于对容量和性能要求较高的领域。
目前市场上的PCIe接口的SSD,都是单个PCIe接口的SSD,如图1所示,SSD和主机1(例如PC机、或服务器等)通过PCIe接口连接,主机1通过驱动1将SSD作为自身的存储设备,可以直接访问SSD;主机2通过驱动2和主机1上运行的代理模块,然后再通过主机1上的驱动1将对SSD的访问命令下发到SSD,实现对SSD的间接访问。
在实现上述多个主机共享访问SSD的过程中,发明人发现现有技术中至少存在如下问题:
单个PCIe接口的SSD只能插入到一台主机,只能被一个主机直接访问,其他主机则只能间接访问该SSD,使得间接访问该SSD的主机访问带宽较小,访问延迟较大,不能很好地满足各主机对SSD高性能、高带宽和大容量的需求。
发明内容
本发明的实施例提供一种多接口固态硬盘及其处理方法和系统,用于解决现有技术只能被一个主机直接访问一,无法实现多个主机直接共享访问SSD,从而不能满足各主机对SSD高性能、高带宽和大容量的需求的技术问题。
为达到上述目的,本发明的实施例采用如下技术方案:
一种多接口固态硬盘,包括多个接口控制单元、命令调度单元、flash控制单元以及flash芯片,每个接口控制单元分别对应于一个通信接口;
所述接口控制单元,用于通过所述通信接口接收操作命令;
所述命令调度单元,用于按照调度规则从多个所述接口控制单元中获取所述操作命令,将所述操作命令放入命令队列;
所述命令调度单元还用于从所述命令队列中取出所述操作命令并发送给所述flash控制单元;
所述flash控制单元,用于将接收到的所述操作命令转化为flash操作命令,通过所述flash操作命令对所述flash芯片进行操作。
一种多接口固态硬盘处理方法,包括:
通过多个通信接口接收操作命令;
按照调度规则获取从所述多个通信接口接收的所述操作命令,将所述操作命令放入命令队列;
从所述命令队列中取出所述操作命令;
将所述操作命令转化为flash操作命令,对所述固态硬盘中的flash芯片进行操作。
一种多接口固态硬盘处理系统,包括:至少一个主机和至少一个多接口固态硬盘;
所述主机包括多接口固态硬盘驱动,通过运行所述驱动,实现所述主机和所述多接口固态硬盘的直接通信连接,所述主机用于向所述多接口固态硬盘发送操作命令;
所述多接口固态硬盘包括多个接口控制单元、命令调度单元、flash控制单元以及flash芯片,每个接口控制单元分别对应于一个通信接口;所述接口控制单元,用于通过所述通信接口接收所述主机发送的操作命令;所述命令调度单元,用于按照调度规则从多个所述接口控制单元中获取所述操作命令,将所述操作命令放入命令队列;所述命令调度单元还用于从所述命令队列中取出所述操作命令并发送给所述flash控制单元;所述flash控制单元,用于将接收到的所述操作命令转化为flash操作命令,通过所述flash操作命令对所述flash芯片进行操作。
本发明实施例提供的多接口固态硬盘及操作命令的处理方法和系统,在固态硬盘中设置多个通信接口,使得不同的主机可以通过不同的通信接口与该固态硬盘接口直接通信连接,避免了当多个主机共享SSD时,除与该SSD直接连接的主机以外的主机需要间接访问该SSD的问题,实现不同的主机可以并发地直接访问该固态硬盘,不需要相互之间通过共享方式进行访问,因此,提高了访问带宽,满足各主机对SSD的高性能、高带宽和大容量等特性的需求。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为现有技术中的固态硬盘处理系统的组成框图;
图2为本发明实施例1中多接口固态硬盘的组成框图;
图3为本发明实施例2中多接口固态硬盘的组成框图;
图4为本发明实施例3中多接口固态硬盘处理方法流程图;
图5为本发明实施例3中另一多接口固态硬盘处理方法流程图;
图6为本发明实施例4中一种多接口固态硬盘处理系统的组成框图;
图7为本发明实施例4中另一种多接口固态硬盘处理系统的组成框图;
图8为本发明实施例4中另一种多接口固态硬盘处理系统的组成框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例1
本发明实施例提供一种多接口固态硬盘,如图2所示,包括多个接口控制单元11,命令调度单元12,flash控制单元13以及flash芯片14;
每个所述接口控制单元11分别对应于一个通信接口,所述接口控制单元11用于通过所述通信接口接收操作命令;具体的,通信接口可以是PCIe接口,或者SATA接口等;接口控制单元11接收的操作命令来自与硬盘卡相连的各种主机,例如PC、服务器等,在此并不限定。
所述命令调度单元12用于按照调度规则从多个所述接口控制单元11中获取所述操作命令,将所述操作命令放入命令队列;具体的,所述命令调度单元12可以采用按照多个所述通信接口轮询的原则,或者根据多个所述通信接口编号按照较低编号优先或较高编号优先的原则,或者其他用户自定义的原则对多个接口控制单元11中的操作命令进行调度,在此并不限定。
所述命令调度单元12还用于从所述命令队列中取出所述操作命令并发送给所述flash控制单元13;具体的,在将所述操作命令从所述命令队列中取出时,按照命令队列先进先出的规则,依次将所述操作命令取出。
所述flash控制单元13用于将接收到所述操作命令转化为flash操作命令,通过所述flash操作命令对所述flash芯片14进行操作;具体的,这里的flash芯片可以采用NAND (与非)flash,以获得更好的性能;由于通过接口控制单元接收的命令并不能直接对flash芯片进行操作,因此,需要通过flash控制单元13将操作命令进行转化成flash操作命令后对flash芯片进行操作,如读数据或写数据或者其他控制操作等。
本发明实施例中,在固态硬盘中设置多个通信接口,使得不同的主机可以通过不同的通信接口与该固态硬盘接口直接通信连接,避免了当多个主机共享SSD时,除与该SSD直接连接的主机以外的主机需要间接访问该SSD的问题,实现不同的主机可以并发地直接访问该SSD,不需要相互之间通过共享方式进行访问,因此,提高了主机的访问带宽,满足各主机对SSD高性能、高带宽和大容量的需求。
实施例2
本发明实施例提供一种多接口固态硬盘,如图3所示,包括多个接口控制单元11、命令调度单元12、flash控制单元13和flash芯片14。
每个所述接口控制单元11分别对应于一个通信接口,所述接口控制单元11用于通过所述通信接口接收操作命令;
具体的,所述多个通信接口可以为PCIe接口,但本发明实施例对此不进行限制,所述通信接口还可以为SATA接口;根据PCIe接口和SATA接口的特性,将所述多个通信接口设置为PCIe接口,相对于使用SATA接口,可以提高主机与所述SSD之间的传输带宽,可以满足对带宽性能要求很高的领域;但本发明实施例对此不进行限制。所述多个通信接口的接口类型可以根据用户的需求灵活的设置,例如,为了兼容具有不同类型接口的主机,将所述多个通信接口一部分设置为PCIe接口,另一部分设置为SATA接口;为了适应对带宽的要求不是很高的应用领域,还可以将所述两个通信接口都设置为SATA接口;对于传输带宽和传输性能要求比较高的应用领域,可以将所述多个通信接口都设置为PCIe接口。
接口控制单元11,用于通过通信接口接收操作命令,例如,通过PCIe接口或SATA接口接收来自主机的操作命令;其中,所述操作命令可以为读写命令,还可以为一些具有维护功能的命令,例如,日志查询命令、坏块统计查询命令以及flash内数据块擦除次数等命令,本发明实施例对此不进行限制。
本发明实施例中,所述命令调度单元12按照调度规则从多个所述接口控制单元11中获取所述操作命令,将所述操作命令放入命令队列;
具体的,所述命令调度单元12在按照调度规则从多个所述接口控制单元11中获取所述操作命令,将所述操作命令放入命令队列时,可以采用以下的方法,包括:
命令调度单元12按照调度规则向多个所述接口控制单元发送获取操作命令的获取命令;接口控制单元接收到命令调度单元发送的获取命令后,将操作命令发送到所述命令调度单元12;命令调度单元12将接收到的操作命令放入命令队列中。具体的,命令调度单元12可以采用按照多个所述通信接口轮询的原则,或者根据多个所述通信接口编号按照较低编号优先或较高编号优先的原则对多个接口控制单元11中的操作命令进行调度,在此并不限定。除了上述调度规则为,所述命令调度单元12还可以根据用户的需求使用其他自定义的调度规则,本发明实施例对此不进行限制。
例如,当所述命令调度单元12采用按照多个所述通信接口轮询的原则,从多个所述接口控制单元11中获取操作命令,并将所述操作命令放入命令队列时,具体可以包括:
当所述多接口SSD的两个接口控制单元(接口控制单元1和接口控制单元2),通过对应的通信接口分别接收到主机1和主机2发送的操作命令(命令1和命令2)后,所述命令调度单元12按照预定的周期向所述接口控制单元1和接口控制单元12发送获取所述操作命令的读取命令,所述接口控制单元1和接口控制单元2在接收到该读取命令后,将其暂存的操作命令下发给所述命令调度单元12;该命令调度单元12将接收的命令1先放入命令队列中,再将接收到的命令2放入该命令队列中。
例如,当所述命令调度单元12采用根据多个所述通信接口编号按照较低编号优先的原则,从多个所述接口控制单元11中获取操作命令,并将所述操作命令放入命令队列时,具体可以包括:
当所述多接口SSD的两个接口控制单元(接口控制单元1和接口控制单元2),通过对应的通信接口分别接收到主机1和主机2发送的操作命令(命令1和命令2)后,所述命令调度单元12按照两个通信接口的编号从低到高的顺序或者两个通信接口的编号从高到低的顺,依次向对应的接口控制单元1和接口控制单元2发送获取所述操作命令的读取命令;接口控制单元1和接口控制单元2在接收到该读取命令后,将其暂存的操作命令下发给所述命令调度单元;该命令调度单元将接收的命令1先放入命令队列中,再将接收到的命令2放入该命令队列中。
例如,当所述命令调度单元12采用根据多个所述通信接口编号按照较高编号优先的原则,从多个所述接口控制单元11中获取操作命令,并将所述操作命令放入命令队列时,具体可以包括:
当所述多接口SSD的两个接口控制单元(接口控制单元1和接口控制单元2),通过对应的通信接口分别接收到主机1和主机2发送的操作命令(命令1和命令2)后,所述命令调度单元12按照两个通信接口的编号从高到低的顺序,依次向对应的接口控制单元2和接口控制单元1发送获取所述操作命令的读取命令;接口控制单元2和接口控制单元1在接收到该读取命令后,将其暂存的操作命令下发给所述命令调度单元;该命令调度单元将接收的命令2先放入命令队列中,再将接收到的命令1放入该命令队列中。
进一步的,当需要执行所述操作命令时,所述命令调度单元12还用于从所述命令队列中将之前入队的操作命令取出并发送给所述flash控制单元13。具体的,在将操作命令从命令队列中取出时,按照命令队列先进先出的规则,依次将操作命令取出。
所述命令调度单元12在物理上设置有对应于接口控制单元数量的入端口和一个出端口;每个入端口分别与其对应的接口控制单元的出端口相连,该出端口与flash控制单元的入端口连接;所述命令调度单元12按照调度规则从多个所述接口控制单元11中获取所述操作命令,并通过该入端口将所述操作命令放入命令队列中,并在将所述操作命令从所述命令队列中取出后,通过该出端口将所述从操作命令发送给所述flash控制单元。
所述flash控制单元13用于将接收到所述操作命令转化为flash操作命令,通过所述flash操作命令对所述flash芯片14进行操作;
具体的,所述flash控制单元13接收所述操作命令,将所述操作命令转化为flash操作命令,并将所述flash操作命令发送给所述Flash芯片14,具体的,这里的flash芯片可以采用NAND flash,以获得更好的性能;由于通过接口控制单元接收的命令并不能直接对flash芯片进行操作,因此,需要通过flash控制单元13将操作命令进行转化成flash操作命令后对flash芯片进行操作,如读数据或写数据等。
此外,根据对容量的需求,该flash控制单元13可以与一个或多个flash芯片14相连;或者,本发明实施例也可以包括多个flash控制单元,每个flash控制器与一个或多个flash芯片相连,各个flash控制单元通过总线与命令调度单元12相连。
进一步的,需要说明的是,在所述命令调度单元12从所述命令队列将所述操作命令取出后,所述命令调度单元12还用于判断所述操作命令是否由多条命令组成;若判定所述操作命令由多条命令组成,将所述操作命令划分为多条命令,并将所述多条命令发送给所述flash控制单元;若判定所述操作命令由一条命令组成,将所述一条命令发送给所述flash控制单元。
并且,当所述flash控制单元13接收到的所述操作命令包含多条命令时,将所述多条命令分别转化为对应的多条flash操作命令,并将所述多条flash操作命令分别发送给flash芯片,以便所述flash芯片并行处理所述多条flash操作命令;当所述flash控制单元13接收到的所述操作命令包含一条命令时,将所述一条命令转化为一条对应的flash操作命令,并将所述flash操作命令发送给flash芯片处理。
进一步的,当所述flash芯片执行完所述操作命令时,将所述操作命令的执行结果返回给所述命令调度单元12,以便该命令调度单元12结束相应操作命令的执行;所述命令调度单元12接收所述操作命令的执行结果,并将所述操作命令的执行结果通过对应的接口控制单元11返回给所述主机。
具体的,将所述操作命令的执行结果通过对应的接口控制单元返回给所述主机时,可以采用中断方式将所述执行结果直接通过对应的接口控制单元返回给所述主机;也可以将所述执行结果发送给对应的接口控制单元,由主机周期性的检测接口控制单元中是否保存有操作命令的执行结果,若检测到接口控制单元中保存有操作命令的执行结果,则该主机获取所述执行结果;具体实施时本发明对此不进行限制,具体选用何种方式,可以根据具体情况具体选用。
具体的,当组成操作命令的多条命令并发执行时,先执行完的命令先返回给所述命令调度单元,以便该命令调度单元结束该命令的执行。
本发明实施例中,上述各单元可以通过各种硬件处理芯片来实现,例如,上述接口控制单元以及命令调度单元可以用一个PLD(Programable Logic Device,可编程逻辑器件)芯片(如FPGA(Field-Programmable Gate Array,现场可编程门阵列)、CPLD(Complex Programmable Logic Device,复杂可编程逻辑器件))等来实现,flash控制单元用另一个PLD来实现;或者各个单元都单独用一个PLD芯片来实现,在此并不限定。
本发明实施例中,在固态硬盘中设置多个通信接口,使得不同的主机可以通过不同的通信接口与该固态硬盘接口直接通信连接,避免了当多个主机共享SSD时,除与该SSD直接连接的主机以外的主机需要间接访问该SSD的问题,实现不同的主机可以并发地直接访问该固态硬盘,不需要相互之间通过共享方式进行访问,因此,提高了访问带宽,满足各主机对SSD的高性能、高带宽和大容量等特性的需求。
并且,本发明实施例中多接口SSD的接口为PCIe接口时,基于PCIe接口的性能,相对于其他接口,进一步的提高了访问带宽,使得主机可以充分的使用SSD的高性能、高带宽和大容量等特性,从而使得系统的性能得到较大程度的提高。
进一步的,在将接收到的主机发送的操作命令从命令队列中取出后,判断所述操作命令是否由多个命令组成,在判定由多个命令组成时,将所述操作命令划分为多个命令,并将所述多个命令同时下发,使得多命令处于并列处理中,可以提高命令的处理速度;并且处于并列处理中的多条命令中的一条先处理完后,可以先将处理结果返回给命令调度单元,以便该命令调度单元结束该命令的执行,使得SSD内有尽可能多空闲通道供其他命令的处理,从而提高了SSD的性能。
实施例3
本发明实施例提供一种多接口固态硬盘处理方法,如图4所示,该方法包括:
201、通过多个通信接口接收操作命令;
具体的,本发明实施例中,多接口固态硬盘设置有多个接口控制单元,每个接口控制单元与一种通信接口对应;接收的操作命令来自主机,用于对SSD内部的flash进行操作。
进一步的,在接收到操作命令后,先将所述操作命令暂存到该接口控制单元中,等待后续被调度。
202、按照调度规则获取从所述多个通信接口接收的所述操作命令,将所述操作命令放入命令队列;
具体的,可以通过SSD的命令调度单元按照调度规则进行调度,并将操作命令放入命令队列中;具体可以包括如下步骤:
命令调度单元按照调度规则向多个所述接口控制单元发送获取操作命令的获取命令;接口控制单元接收到获取命令后,将操作命令发送到命令调度单元;命令调度单元将接收到的操作命令放入命令队列中。
其中,命令调度单元可以采用按照多个所述通信接口轮询的原则,或者根据多个所述通信接口编号按照较低编号优先或较高编号优先的原则对多个接口控制单元中的操作命令进行调度,除了上述调度规则为,本发明实施例还可以根据用户的需求使用其他自定义的调度规则,本发明实施例对此不进行限制。
其中,所述命令调度单元按照各种调度算法对多个接口控制单元中的操作命令进行调度的具体实现,可以参考实施例2中的相应描述,此处将不再赘述。
203、从所述命令队列中取出所述操作命令。
具体的,在将所述操作命令从所述命令队列中取出时,按照命令队列先进先出的规则,依次将所述操作命令取出。
204、将所述操作命令转化成flash操作命令,对所述固态硬盘中的flash芯片进行操作。
需要说明的是,在步骤203之后,如图5所示,还可以包括如下步骤:
2031、判断所述操作命令是否由多条命令组成;若判定所述操作命令由多条命令组成,则执行步骤2032;若判定所述操作命令由一条命令组成,则执行步骤2033。
2032、将所述操作命令划分为多条命令,并执行步骤204,即将所述多条命令转化成对应的多条flash操作命令,对所述固态硬盘中的flash芯片进行操。
2033、执行步骤204,即将所述一条命令转化成对应的一条flash操作命令,对所述固态硬盘中的flash芯片进行操作。
具体的,这里的flash芯片可以采用NAND flash,以获得更好的性能;由于通过通信接口接收到的操作命令并不能直接对flash芯片进行操作,因此,需要将操作命令进行转化成flash操作命令后,才能对flash芯片进行操作,如读数据或写数据或者其他控制操作等。
需要说明的时,在步骤204之后,该方法还可以包括:
将所述操作命令的执行结果返回给所述命令调度单元,以便该命令调度单元结束相应操作命令的执行;所述命令调度单元接收所述操作命令的执行结果,并将所述操作命令的执行结果通过对应的接口控制单元返回给所述主机。
具体的,将所述操作命令的执行结果通过对应的接口控制单元返回给所述主机时,可以采用中断方式将所述执行结果直接通过对应的接口控制单元返回给所述主机;也可以将所述执行结果发送给对应的接口控制单元,由主机周期性的检测接口控制单元中是否保存有操作命令的执行结果,若检测到接口控制单元中保存有操作命令的执行结果,则该主机获取所述执行结果;具体实施时本发明对此不进行限制,具体选用何种方式,可以根据具体情况具体选用。
具体的,当组成操作命令的多条命令并发执行时,先执行完的命令先返回给所述命令调度单元,以便该命令调度单元结束该命令的执行。
具体的,上述各步骤的实施可具体参见实施例1和实施例2中的相关描述,此处将不再赘述。
本发明实施例中,当主机通过固态硬盘的多个通信接口向所述固态硬盘发送操作命令时,通过独立设置并与所述多个接口控制单元接收所述操作命令,并由命令调度单元按照调度规则将接收到的操作命令调度放入命令队列中,使得接收到的操作命令具有操作的顺序,当需要操作所述操作命令时,从所述命令队列取出发送给flash控制单元控制处理所述操作命令,得到操作结果,使得不同的主机可以通过不同的通信接口与该固态硬盘接口直接通信连接,避免了当多个主机共享SSD时,除与该SSD直接连接的主机以外的主机需要间接访问该SSD的问题,实现不同的主机可以并发地直接访问该固态硬盘,提高了访问带宽,满足各主机对SSD的高性能、高带宽和大容量等特性的需求。
进一步的,在将接收到的主机发送的操作命令从命令队列中取出后,判断所述操作命令是否由多个命令组成,在判定由多个命令组成时,将所述操作命令划分为多个命令,并将所述多个命令同时下发,使得多命令处于并列处理中,可以提高命令的处理速度;并且处于并列处理中的多条命令中的一条先处理完后,可以先将处理结果返回给命令调度单元,以便该命令调度单元结束该命令的执行,使得SSD内有尽可能多空闲通道供其他命令的处理,从而提高了SSD的性能。
实施例4
本发明实施例提供一种多接口固态硬盘处理系统,包括至少一个主机和多接口SSD,当所述主机为一个主机时,所述主机为至少可以连接多接口SSD的两个通信接口的主机;当所述主机为多个主机时,所述主机为可以至少连接多接口SSD的一个通信接口的主机。
本发明实施例以该系统包含多个主机和一个多接口SSD,每个主机包含一个通信接口为例,具体阐述多接口SSD处理系统,该系统如图6所示,包括:多个主机和一个多接口SSD。
每个主机设置有一个与该多接口SSD通信的接口,通过该接口实现与该多接口SSD的连接;当所述主机成功运行多接口SSD驱动后,便可实现主机与所述多接口SSD的直接通信连接,并将所述多接口SSD作为所述主机自身的存储设备。
例如,主机1、主机2…主机n,分别通过所述多接口SSD的通信接口1、通信接口2…通信接口n(图中未标出),与所述多接口SSD相连接;当所述主机1、主机2…主机n向所述多接口SSD发送操作命令时,由于所述通信接口1、通信接口2…通信接口n一一对应的接口控制单元1、接口控制单元2…接口控制单元n,分别接收所述主机1、主机2…主机n发送的操作命令。
通过不同的通信接口,实现不同的主机连接到同一个SSD;不同的主机运行其多接口SSD驱动,都将该多接口SSD初始化为主机自身独立的存储设备,使连接多个主机的多接口SSD在不同的主机上显示为独立的存储设备,每个主机访问该多接口SSD的访问空间的大小和范围,都为该多接口SSD对外呈现的存储设备的大小。
具体的,该多接口SSD对多个接口控制单元接收到的操作命令的处理,可以参考实施例1、实施例2和实施例3中的描述,此处将不再赘述。
本发明实施例中,在多接口SSD中设置多个通信接口,使得不同的主机通过不同的通信接口与该SSD接口直接通信连接,避免了当多个主机共享SSD时,除与该SSD直接连接的主机以外的主机需要间接访问该SSD的问题,实现不同的主机可以并发地直接访问该SSD,不需要相互之间通过共享方式进行访问,因此,提高了访问带宽,满足各主机对SSD的高性能、高带宽和大容量等特性的需求。
本发明实施例还提供一种多接口SSD处理系统,可以将与多接口SSD直接连接的主机设置为主备关系,本发明实施例以多接口SSD包含两个通信接口为例,具体阐述该处理系统;如图7所示,包括:两个主机(主机1和主机2)和一个多接口SSD。
该两个主机都包含一个与所述多接口SSD连接的接口,通过该接口实现与该多接口SSD的连接;当所述主机成功运行SSD的驱动后,所述主机1和主机2都可独立的访问多接口SSD;在具体实施时可以将主机1设置为主用设备,将主机2设置为备用设备,并且主机1和主机2之间保持链路联系。主机1和主机2分别通过所述多接口SSD的通信接口1和通信接口2,与所述多接口SSD相连接。当系统正常时,仅使用主机1和所述多接口SSD通信,备用设备不访问所述SSD;当主机1发生故障时,备用的主机2开始访SSD。
在系统正常时,主机1通过多接口SSD的通信接口1向所述多接口SSD发送操作命令,接口控制单元1通过所述通信接口1接收所述操作命令。
当主机1出现故障时,由所述主机2通过多接口SSD的通信接口2向所述多接口SSD发送操作命令,接口控制单元2通过所述通信接口2接收所述操作命令。
具体的,该多接口SSD对多个接口控制单元接收到的操作命令的处理,可以参考实施例1、实施例2和实施例3中的描述,此处将不再赘述。
本发明实施例中,与多接口SSD相连接的不同主机之间设置了主备关系,当主用主机出现故障时,可以由备用主机继续执行相应的操作,从而提高了系统的可靠性。
本发明实施例还提供一种多接口SSD处理系统,可以将与多接口SSD通信的主机设置为多通信接口的主机,本发明实施例以将该主机设置为两个通信接口的主机为例,具体阐述该处理系统,如图8所示,该系统包括:
一个主机和一个多接口SSD;该主机包含一个多接口SSD的驱动和两个可与多接口SSD通信接口。所述主机的接口1和接口2分别与所述多接口SSD的通信接口1和通信接口2(图中未标出)连接,通过运行该多接口SSD的驱动,所述主机的每个接口均可独立的访问该多接口SSD,并且在该主机上显示两个独立的多接口SSD与该主机相连;在具体实施时可以将主机可以通过两个接口中的一个向所述多接口SSD发送操作命令,也可以通过两个接口同时向所述多接口SSD发送操作命令;当通过两个接口同时向所述多接口SSD发送操作命令时,在主机侧显示该主机可以同时访问两个多接口SSD,使得主机和多接口SSD的带宽得到扩展,可以使SSD的性能更好的发挥。
具体的,该多接口SSD对多个接口控制单元接收到的操作命令的处理,可以参考实施例1、实施例2和实施例3中的描述,此处将不再赘述。
本发明实施例中,在同一个主机上设置多个接口,将所述多个接口与多接口SSD的不同通信接口相连接,运行主机的多接口SSD驱动程序后,该主机的多个接口可以并发地向该多接口SSD发送操作命令,扩展了一台主机和SSD之间的接口带宽,不同的主机可以并发地直接访问该固态硬盘卡固态硬盘,提高了访问带宽,满足了各主机对SSD卡SSD的高性能、高带宽和大容量等特性的需求。
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在可读取的存储介质中,如计算机的软盘,硬盘或光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。

Claims (10)

  1. 一种多接口固态硬盘,其特征在于:
    包括多个接口控制单元、命令调度单元、flash控制单元以及flash芯片,每个接口控制单元分别对应于一个通信接口;
    所述接口控制单元,用于通过所述通信接口接收操作命令;
    所述命令调度单元,用于按照调度规则从多个所述接口控制单元中获取所述操作命令,将所述操作命令放入命令队列;
    所述命令调度单元还用于从所述命令队列中取出所述操作命令并发送给所述flash控制单元;
    所述flash控制单元,用于将接收到的所述操作命令转化为flash操作命令,通过所述flash操作命令对所述flash芯片进行操作。
  2. 根据权利要求1所述的多接口固态硬盘,其特征在于,所述命令调度单元,用于按照调度规则从多个所述接口控制单元中获取操作命令,包括:
    所述命令调度单元按照多个所述通信接口轮询的原则,或者根据多个所述通信接口编号按照较低编号优先或较高编号优先的原则获取所述操作命令。
  3. 根据权利要求1所述的多接口固态硬盘,其特征在于,所述命令调度单元还用于:
    在从所述命令队列中取出所述操作命令之后,判断所述操作命令是否由多条命令组成;
    若判定所述操作命令由多条命令组成,将所述操作命令划分为多条命令,并将所述多条命令发送给所述flash控制单元;
    若判定所述操作命令由一条命令组成,将所述一条命令发送给所述flash控制单元。
  4. 根据权利要求1所述的多接口固态硬盘,其特征在于,所述通信接口为增强外围设备互联PCIe接口。
  5. 一种多接口固态硬盘处理方法,其特征在于,包括:
    通过多个通信接口接收操作命令;
    按照调度规则获取从所述多个通信接口接收的所述操作命令,将所述操作命令放入命令队列;
    从所述命令队列中取出所述操作命令;
    将所述操作命令转化成flash操作命令,对所述固态硬盘中的flash芯片进行操作。
  6. 根据权利要求5所述的方法,其特征在于,按照调度规则获取从所述多个通信接口接收的所述操作命令包括:
    按照所述多个通信接口轮询的原则,或者根据多个所述通信接口编号按照较低编号优先或较高编号优先的原则获取所述操作命令。
  7. 根据权利要求5所述的方法,其特征在于,在从所述命令队列中取出所述操作命令之后,该方法还包括:
    判断所述操作命令是否由多条命令组成;
    若判定所述操作命令由多条命令组成,将所述操作命令划分为多条命令,并将所述多条命令转化成对应的多条flash操作命令,对所述固态硬盘中的flash芯片进行操作;
    若判定所述操作命令由一条命令组成,将所述一条命令转化成对应的一条flash操作命令,对所述固态硬盘中的flash芯片进行操作。
  8. 一种多接口固态硬盘处理系统,其特征在于,包括:至少一个主机和至少一个多接口固态硬盘;
    所述主机包括多接口固态硬盘驱动,通过运行所述驱动,实现所述主机和所述多接口固态硬盘的直接通信连接,所述主机用于向所述多接口固态硬盘发送操作命令;
    所述多接口固态硬盘包括多个接口控制单元、命令调度单元、flash控制单元以及flash芯片,每个接口控制单元分别对应于一个通信接口;所述接口控制单元,用于通过所述通信接口接收所述主机发送的操作命令;所述命令调度单元,用于按照调度规则从多个所述接口控制单元中获取所述操作命令,将所述操作命令放入命令队列;所述命令调度单元还用于从所述命令队列中取出所述操作命令并发送给所述flash控制单元;所述flash控制单元,用于将接收到的所述操作命令转化为flash操作命令,通过所述flash操作命令对所述flash芯片进行操作。
  9. 根据权利要求8所述的系统,其特征在于,当所述主机为两个主机,并且所述主机为至少连接多接口固态硬盘的一个通信接口的主机时,还包括:
    将所述一个主机设置为主用设备,将另一个主机设置为备用设备,并且主用设备和备用设备之间保持链路通信。
  10. 根据权利要求7-9中任一项所述的系统,其特征在于,所述通信接口为增强外设互联PCIe接口。
PCT/CN2011/074760 2010-05-27 2011-05-27 多接口固态硬盘及其处理方法和系统 WO2011147324A1 (zh)

Priority Applications (6)

Application Number Priority Date Filing Date Title
KR1020127013992A KR20120087980A (ko) 2010-05-27 2011-05-27 다중 인터페이스 솔리드 스테이트 디스크, 및 다중 인터페이스 솔리드 스테이트 디스크의 처리 방법 및 시스템
EP11786096A EP2492916A4 (en) 2010-05-27 2011-05-27 MULTI-INTERFACE ELECTRONIC HARD DRIVE (SSD), PROCESSING METHOD AND SYSTEM THEREOF
RU2012128534/08A RU2012128534A (ru) 2010-05-27 2011-05-27 Мультиинтерфейсный твердотельный диск, способ и система обработки мультиинтерфейсного твердотельного диска
MX2012005934A MX2012005934A (es) 2010-05-27 2011-05-27 Disco de estado solido (ssd) multi-interfaz, metodo de procesamiento y sistema del mismo.
BR112012014266A BR112012014266A2 (pt) 2010-05-27 2011-05-27 disco de estado sólico multi-interface, método de processamento e sistema do mesmo
US13/473,297 US20120233386A1 (en) 2010-05-27 2012-05-16 Multi-interface solid state disk, processing method and system of multi-interface solid state disk

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201010184698A CN101833989A (zh) 2010-05-27 2010-05-27 多接口固态硬盘及其处理方法和系统
CN201010184698.9 2010-05-27

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US13/473,297 Continuation US20120233386A1 (en) 2010-05-27 2012-05-16 Multi-interface solid state disk, processing method and system of multi-interface solid state disk

Publications (1)

Publication Number Publication Date
WO2011147324A1 true WO2011147324A1 (zh) 2011-12-01

Family

ID=42718030

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2011/074760 WO2011147324A1 (zh) 2010-05-27 2011-05-27 多接口固态硬盘及其处理方法和系统

Country Status (8)

Country Link
US (1) US20120233386A1 (zh)
EP (1) EP2492916A4 (zh)
KR (1) KR20120087980A (zh)
CN (1) CN101833989A (zh)
BR (1) BR112012014266A2 (zh)
MX (1) MX2012005934A (zh)
RU (1) RU2012128534A (zh)
WO (1) WO2011147324A1 (zh)

Families Citing this family (35)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8082384B2 (en) 2008-03-26 2011-12-20 Microsoft Corporation Booting an electronic device using flash memory and a limited function memory controller
CN101833989A (zh) * 2010-05-27 2010-09-15 华为技术有限公司 多接口固态硬盘及其处理方法和系统
WO2012140670A2 (en) * 2011-04-11 2012-10-18 Ineda Systems Pvt. Ltd Multi-host sata controller
WO2012143944A2 (en) * 2011-04-18 2012-10-26 Ineda Systems Pvt. Ltd Multi-host nand flash controller
CN102566943B (zh) * 2011-12-31 2015-03-11 记忆科技(深圳)有限公司 基于固态硬盘的通讯方法及固态硬盘
CN103150427A (zh) * 2013-02-19 2013-06-12 浪潮电子信息产业股份有限公司 一种基于ssd硬盘缓存加速与备份的raid设计方法
US8812744B1 (en) 2013-03-14 2014-08-19 Microsoft Corporation Assigning priorities to data for hybrid drives
US9626126B2 (en) 2013-04-24 2017-04-18 Microsoft Technology Licensing, Llc Power saving mode hybrid drive access management
US9946495B2 (en) 2013-04-25 2018-04-17 Microsoft Technology Licensing, Llc Dirty data management for hybrid drives
CN103809920B (zh) * 2014-02-13 2017-05-17 杭州电子科技大学 一种超大容量固态硬盘的实现方法
US9933980B2 (en) 2014-02-24 2018-04-03 Toshiba Memory Corporation NAND raid controller for connection between an SSD controller and multiple non-volatile storage units
US9632953B2 (en) * 2014-06-03 2017-04-25 Qualcomm Incorporated Providing input/output virtualization (IOV) by mapping transfer requests to shared transfer requests lists by IOV host controllers
US9690720B2 (en) 2014-06-03 2017-06-27 Qualcomm Incorporated Providing command trapping using a request filter circuit in an input/output virtualization (IOV) host controller (HC) (IOV-HC) of a flash-memory-based storage device
US9881680B2 (en) 2014-06-03 2018-01-30 Qualcomm Incorporated Multi-host power controller (MHPC) of a flash-memory-based storage device
US20160070665A1 (en) * 2014-09-08 2016-03-10 Htc Corporation Portable electronic device and user data access method therefor
KR102367982B1 (ko) 2015-06-22 2022-02-25 삼성전자주식회사 데이터 저장 장치와 이를 포함하는 데이터 처리 시스템
TWI612429B (zh) * 2016-04-12 2018-01-21 緯創資通股份有限公司 伺服器系統及其資料存取方法
US10909047B2 (en) * 2016-06-01 2021-02-02 Raymx Microelectronics Corp. Flash memory control device capable of detecting type of interface and method thereof
CN106681945A (zh) * 2016-11-24 2017-05-17 天津津航计算技术研究所 多协议接口的固态硬盘
CN106843747A (zh) * 2016-11-24 2017-06-13 天津津航计算技术研究所 双接口数据实时共享固态硬盘
JP6812900B2 (ja) * 2017-05-17 2021-01-13 富士通株式会社 ストレージ装置、ストレージ制御装置、およびストレージ制御プログラム
KR102527925B1 (ko) 2017-11-29 2023-05-03 에스케이하이닉스 주식회사 메모리 시스템 및 그것의 동작 방법
CN109445686B (zh) * 2018-09-28 2020-11-17 方一信息科技(上海)有限公司 一种存储磁盘以及存取数据的方法
CN109976772A (zh) * 2019-03-29 2019-07-05 深圳忆联信息系统有限公司 Ssd自动开卡和安装系统及其方法
CN110888592B (zh) * 2019-05-15 2023-09-15 天津大学深圳研究院 基于延迟ssd系统智能并行资源利用的请求调度方法及系统
US11762798B2 (en) * 2019-06-25 2023-09-19 Micron Technology, Inc. Aggregated and virtualized solid state drives with multiple host interfaces
US11513923B2 (en) 2019-06-25 2022-11-29 Micron Technology, Inc. Dynamic fail-safe redundancy in aggregated and virtualized solid state drives
US11768613B2 (en) * 2019-06-25 2023-09-26 Micron Technology, Inc. Aggregation and virtualization of solid state drives
US10942881B2 (en) 2019-06-25 2021-03-09 Micron Technology, Inc. Parallel operations in aggregated and virtualized solid state drives
US11055249B2 (en) 2019-06-25 2021-07-06 Micron Technology, Inc. Access optimization in aggregated and virtualized solid state drives
US11573708B2 (en) 2019-06-25 2023-02-07 Micron Technology, Inc. Fail-safe redundancy in aggregated and virtualized solid state drives
US10942846B2 (en) 2019-06-25 2021-03-09 Micron Technology, Inc. Aggregated and virtualized solid state drives accessed via multiple logical address spaces
KR20210105201A (ko) 2020-02-18 2021-08-26 삼성전자주식회사 다중-호스트를 지원하도록 구성된 스토리지 장치 및 그것의 동작 방법
CN111897491A (zh) * 2020-07-15 2020-11-06 上海实业交通电器有限公司 一种nor flash操作处理方法、终端、计算机设备及存储介质
CN112114744A (zh) * 2020-08-10 2020-12-22 西安交通大学 一种多通道全互联架构的ssd固态盘及其控制方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6795327B2 (en) * 2001-11-23 2004-09-21 Netac Technology Co., Ltd. Semiconductor storage method and device supporting multi-interface
CN1558305A (zh) * 2004-01-19 2004-12-29 中国科学院计算技术研究所 一种总线式通用串行总线复用器
CN101833989A (zh) * 2010-05-27 2010-09-15 华为技术有限公司 多接口固态硬盘及其处理方法和系统

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030065861A1 (en) * 2001-09-28 2003-04-03 Clark Clyde S. Dual system masters
US7870334B2 (en) * 2003-11-12 2011-01-11 International Business Machines Corporation Distributed task queues in a multiple-port storage system
US7685374B2 (en) * 2007-07-26 2010-03-23 Siliconsystems, Inc. Multi-interface and multi-bus structured solid-state storage subsystem
US20090100174A1 (en) * 2007-09-07 2009-04-16 Sushma Annareddy Method and system for automatic polling of multiple device types
CN101398745B (zh) * 2007-09-29 2011-12-21 群联电子股份有限公司 并行数据存取架构的固态盘存储系统与固态盘控制器
CN101149664A (zh) * 2007-10-26 2008-03-26 华为技术有限公司 固态硬盘及处理其管理数据的方法
US20090150894A1 (en) * 2007-12-10 2009-06-11 Ming Huang Nonvolatile memory (NVM) based solid-state disk (SSD) system for scaling and quality of service (QoS) by parallelizing command execution
US8140724B1 (en) * 2008-08-22 2012-03-20 Marvell International Ltd. SATA pass through port
US8756369B2 (en) * 2008-09-26 2014-06-17 Netapp, Inc. Priority command queues for low latency solid state drives
CN101373628B (zh) * 2008-10-14 2011-12-28 宋涛 固态硬盘

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6795327B2 (en) * 2001-11-23 2004-09-21 Netac Technology Co., Ltd. Semiconductor storage method and device supporting multi-interface
CN1558305A (zh) * 2004-01-19 2004-12-29 中国科学院计算技术研究所 一种总线式通用串行总线复用器
CN101833989A (zh) * 2010-05-27 2010-09-15 华为技术有限公司 多接口固态硬盘及其处理方法和系统

Also Published As

Publication number Publication date
CN101833989A (zh) 2010-09-15
EP2492916A1 (en) 2012-08-29
BR112012014266A2 (pt) 2017-04-04
KR20120087980A (ko) 2012-08-07
MX2012005934A (es) 2012-06-25
US20120233386A1 (en) 2012-09-13
EP2492916A4 (en) 2013-01-23
RU2012128534A (ru) 2014-01-20

Similar Documents

Publication Publication Date Title
WO2011147324A1 (zh) 多接口固态硬盘及其处理方法和系统
US10346156B2 (en) Single microcontroller based management of multiple compute nodes
TWI382315B (zh) 通用串列匯流排矩陣切換系統
CN100345130C (zh) 用于器件间通信的多通道接口
KR20190040886A (ko) 브리지 장치를 이용한 스토리지 인접 연산 제공 시스템 및 방법
US10860511B1 (en) Integrated network-attachable controller that interconnects a solid-state drive with a remote server computer
KR20180050728A (ko) 멀티-노드 네트워크에서의 입력/출력 신호 브릿징 및 가상화
CN102724035B (zh) 一种加密卡的加解密方法
WO2012099434A2 (en) Sas-based semiconductor storage device memory disk unit
CN103150279A (zh) 一种主机与基板管理控制器共享设备的方法
CN109992543A (zh) 一种基于zyzq-7000的pci-e数据高效传输方法
CN103257946A (zh) 一种紧耦合多控存储系统控制器之间的高速互联方法
CN114756493B (zh) 一种面向可扩展互连裸芯与对等设备的对等接口设计及通信方法
CN103220040A (zh) 一种内置式光口bypass的状态切换方法和系统
CN100452757C (zh) 报文转发方法和装置
WO2012138111A2 (en) Dynamic random access memory for a semiconductor storage device-based system
CN107066413B (zh) 一种用于处理多个总线设备数据的方法及其总线系统
EP1988470B1 (en) Network device and transmission method thereof
CN112347017A (zh) Lpc总线接口的ps/2键盘双机外挂系统和切换方法
CN110855581A (zh) 适用于vpx架构的40g和srio复用的国产交换刀片装置
WO2022114272A1 (ko) 적응형 트랜잭션 처리 방법 및 이를 위한 장치
CN115237830A (zh) 一种基于龙芯2k的vpx管理控制仲裁装置及方法
CN207039637U (zh) 一种基于大数据的信息采集、处理系统
CN1278204C (zh) 电源管理状态控制方法
WO2015070539A1 (zh) 一种基于dma的数据压缩芯片结构及其实现方法

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 11786096

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 4351/CHENP/2012

Country of ref document: IN

WWE Wipo information: entry into national phase

Ref document number: MX/A/2012/005934

Country of ref document: MX

Ref document number: 2011786096

Country of ref document: EP

ENP Entry into the national phase

Ref document number: 20127013992

Country of ref document: KR

Kind code of ref document: A

WWE Wipo information: entry into national phase

Ref document number: 2012548334

Country of ref document: JP

WWE Wipo information: entry into national phase

Ref document number: 2012128534

Country of ref document: RU

REG Reference to national code

Ref country code: BR

Ref legal event code: B01A

Ref document number: 112012014266

Country of ref document: BR

NENP Non-entry into the national phase

Ref country code: DE

ENP Entry into the national phase

Ref document number: 112012014266

Country of ref document: BR

Kind code of ref document: A2

Effective date: 20120613