EP3382567B1 - Dispositifs de stockage multiples mis en uvre à l'aide d'un connecteur commun - Google Patents
Dispositifs de stockage multiples mis en uvre à l'aide d'un connecteur commun Download PDFInfo
- Publication number
- EP3382567B1 EP3382567B1 EP18154453.7A EP18154453A EP3382567B1 EP 3382567 B1 EP3382567 B1 EP 3382567B1 EP 18154453 A EP18154453 A EP 18154453A EP 3382567 B1 EP3382567 B1 EP 3382567B1
- Authority
- EP
- European Patent Office
- Prior art keywords
- interface protocol
- bus
- bus interface
- connector
- implementing
- 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.)
- Active
Links
- 239000000872 buffer Substances 0.000 claims description 22
- 238000000034 method Methods 0.000 claims description 11
- 238000004891 communication Methods 0.000 claims description 4
- 230000008878 coupling Effects 0.000 claims description 3
- 238000010168 coupling process Methods 0.000 claims description 3
- 238000005859 coupling reaction Methods 0.000 claims description 3
- 230000002093 peripheral effect Effects 0.000 claims description 3
- 230000008672 reprogramming Effects 0.000 claims 5
- 238000005516 engineering process Methods 0.000 claims 3
- 238000012549 training Methods 0.000 description 6
- 238000013461 design Methods 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Images
Classifications
-
- 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/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1668—Details of memory controller
-
- 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
- G06F13/4204—Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
- G06F13/4221—Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being an input/output bus, e.g. ISA bus, EISA bus, PCI bus, SCSI bus
-
- 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/382—Information transfer, e.g. on bus using universal interface adapter
- G06F13/385—Information transfer, e.g. on bus using universal interface adapter for adaptation of a particular data processing system to different peripheral devices
-
- 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
- G06F13/4204—Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
- G06F13/4234—Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a memory bus
-
- 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
- G06F13/4282—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
- G06F13/4291—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus using a clocked protocol
-
- 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/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/544—Buffers; Shared memory; Pipes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2213/00—Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F2213/0026—PCI express
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2213/00—Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F2213/0032—Serial ATA [SATA]
Definitions
- Embodiments described herein generally relate to computing devices, systems and methods including the use of storage implemented through a connector.
- a computational device may be coupled to one or more physical storage devices in which data may be stored.
- the computational device may communicate with a physical storage device over a bus such as a PCIe (Peripheral Component Interconnect Express bus, (see http://www.pcsig.com)), and a variety of interfaces to different type of storage devices, such as SATA (Serial ATA) drives (see http://www.sata-ip.org) and NVMe (Non-Volatile Memory Express) drives (see http://www.nvmexpress.org).
- SATA Serial ATA
- NVMe Non-Volatile Memory Express
- System designers have typically predetermined the allocation of storage and connections thereto at the time of board design.
- EP 2 559 225 is disclosing selecting functions to be enabled for connecting host device to the accessory device based on the received accessory device information.
- an input/output (IO) buffer may be used to allocate HSIO (high speed IO) for various usages such as, for example, USB (Universal Serial Bus), PCIe, and SATA.
- HSIO high speed IO
- a variety of storage connection specifications for coupling a storage device to a motherboard may be utilized, including a mix of SATA connectors, M.2 connectors, and U.2 connectors.
- SATA 3.0 Serial ATA Revision 3.0 Specification (released June 2009), operates at 6 Gb/s (Gigabits/second) or 600 MB/s (Megabytes/sec).
- NVMe over M.2 or U.2 (using PCIe 3.0 (PCI Express Base Specification Revision 3.0 (released Nov.
- the U.2 connector originally known as SFF-8639 (Enterprise SSD Form Factor Version 1.0 (released Dec. 20, 2011), comprises a connector that is mechanically identical to the SATA Express device plug, but provides four PCIe lanes through a different usage of available pins.
- the M.2 specification e.g., PCI Express M.2 Specification Revision 1.0 (released Nov. 1, 2013)
- PCI Express M.2 Specification Revision 1.0 released Nov. 1, 2013
- M.2 connector provides up to four PCIe lanes and one logical SATA 3.0 (6 Gbit/s) port, and exposes the PCIe and SATA lanes through the same connector so both PCIe and SATA storage devices may exist in form of M.2 modules.
- Fig. 1 illustrates a system in accordance with certain embodiments, including a computational device 10 that communicates with a storage device 26 coupled to the system through a cable 24 coupled to a connector 22.
- the computational device 10 may include a central processing unit (CPU) 12 and main memory 14. Communication between the CPU 12 and the storage device 26 and the connector may be carried out over a bus interface 16 coupled to the connector 22.
- the I/O buffer 20 may be used to allocate buffers, such as HSIO buffers, for various bus protocols such as USB, PCIe, and SATA.
- the computational device 10 further includes initialization logic (including, for example, firmware such as a basic input output system (BIOS)) 28 that initializes the hardware and devices connected to the bus 16 and in the system 10.
- initialization logic including, for example, firmware such as a basic input output system (BIOS)
- the initialization logic 28 may in certain embodiments be provided on an integrated circuit die, an application specific integrated circuit (ASIC), and/or a processor executing software stored in a non-volatile memory device.
- the initialization logic 28 may dynamically detect which type(s) of storage drive(s) are coupled to the cable 24 at the time of system boot.
- Figs. 2a and 2b illustrate a flow chart of operations for detecting the type of storage device(s) attached to a system at the time of system boot.
- the initialization logic 28 begins (at block 103) bus 16 initialization, which includes PCIe training of a first four lane HSIO group.
- a bus using the PCIe protocol may be a high speed I/O bus in which multiple lanes of the bus may combine their data transfer capability to send the read or write command from the host to the storage device.
- a bus using the SATA protocol may include use of a high-speed serial cable (e.g., cable 24) to send the read or write command from the host to the storage device.
- an interface capable of interfacing with buses using both SATA and PCIe protocols may be arranged to route the read or write commands from a computational device to a storage device via the high speed serial cable.
- the initialization logic 28 determines (at block 105) whether a PCIe device is detected.
- the initialization logic 28 turns off (at block 107) the PCIe clock 18 and reprograms (at block 109) the I/O buffer 20 as SATA on four ports (one for each of the lanes in the first four lanes 20a, 20b, 20c, 20d in an HSIO group).
- the initialization logic 28 detects (at block 111) whether any SATA drives 26 are present. If (at block 111) no SATA drives 26 are present, then the initialization logic 28 turns off (at block 115) the HSIO buffers 20 and then proceeds to configure (at block 117) the next four lane HSIO group for initialization.
- the initialization logic 28 finishes (at block 119) initializing the storage device(s) 26 as SATA. Once the device(s) 26 are initialized, the initialization logic 28 turns-off (at block 121) any unused HSIO buffers. Then, the initialization logic 28 proceeds (at block 117) to processing (at block 103) the next four lane HSIO group for training and initialization.
- the initialization logic 28 determines (at block 123) whether the detected PCIe device uses four lanes. It is possible in certain configurations that a non-storage PCIe device may be detected As a result, if a PCIe device is detected, the initialization logic 28 determines (at block 141) whether the detected PCIe device is an NVMe storage device. If not, then the initialization logic 28 completes (at block 145) initialization of the non-storage PCIe device, and proceeds (at block 117) to the next four lane HSIO group for training and initialization block 103. If (at block 141) there is a NVMe storage device detected as storage device 26, then the initialization logic 28 finishes (at block 145) initializing the detected NVMe storage device 26 connected to four lanes of the cable 24 as a PCIe device.
- the initialization logic 28 determines (at block 125) whether the device uses two lanes of the cable 24. If the device does not use two lanes, then the initialization logic 28 determines (at block 127) whether the device is a NVMe storage device. If the device is not an NVMe storage device, then the initialization logic 28 completes (at block 129) initialization of the non-storage PCIe device. Then the initialization logic 28 (at block 137) reprograms any remaining HSIO buffers as SATA.
- the initialization logic 28 (at block 131) completes initializing the NVMe storage device connected to one lane of the cable 24 as a PCIe device. Then, the initialization logic 28 (at block 137) reprograms any remaining HSIO buffers as SATA.
- the initialization logic 28 determines whether the device is an NVMe storage device. If the device is not an NVMe storage device, then the initialization logic 28 (at block 129) completes initialization of the non-storage PCIe device. Then the initialization logic 28 (at block 137) reprograms any remaining HSIO buffers as SATA. If the device uses two lanes and is a NVMe storage device, then the initialization logic 28 (at block 135) completes initializing the NVMe storage device connected to two lanes of the cable 24 as a PCIe device. Then, the initialization logic 28 (at block 137) reprograms any remaining HSIO buffers as SATA.
- the initialization logic 28 (at block 137) reprograms the remaining HSIO buffers as SATA, the initialization logic 28 (at block 139) determines whether at least one SATA drive is detected. If yes, then the initialization logic 28 (at block 119) completes initializing the device(s) as SATA. Once the device(s) are initialized, the initialization logic 28 (at block 121) turns off any unused HSIO buffers. Then, the initialization logic 28 (at block 117) moves on to the next four lane HSIO group for training and initialization (at block 103).
- the initialization logic 28 determines whether the device is an NVMe storage device. If the device using four lanes is an NVMe storage device, then the initialization logic 28 (at block 145) completes initializing the NVMe device connected to four lanes of the cable 24 as a PCIe device. Then, the initialization logic 28 (at block 117) moves on to the next four lane HSIO group for training and initialization (at block 103). If the device using four lanes is not an NVMe storage device, then the initialization logic 28 (at block 143) completes initializing the NVMe device connected to four lanes of the cable 24 as a PCIe device. Then, the initialization logic 28 (at block 117) moves on to the next four lane HSIO group for training and initialization (at block 103).
- Certain embodiments enable one to resolve storage connector limitations by dynamically detecting and configuring a plurality of computer storage architectures. This enables the system to determine which type of storage device is coupled to the system through a connector and cable during the system boot operation.
- One embodiment enables the use of SATA and/or NVMe drives coupled to a system through either U.2 or M.2 connectors and cables.
- the initialization logic tests for the presence of PCIe drives and if PCIe drives are detected, then the boot continues with the PCIe drive (NVMe drive) operational. If no PCIe drives are detected, then the PCIe clock for either a U.2 or M.2 connector is turned off, and the IO buffer is reprogramed to assume SATA protocols are used on all the HSIO lanes in the group of HSIO lanes being tested.
- any SATA drives (assuming a U.2 or M.2 connector and a U.2 or M.2 cable having a SATA connector at the drive end) are detected and if present, boot operations continue with the SATA drives initialized and made operational. If no PCIe drives and no SATA drives are detected, then the boot operation continues with no drives in the selected HSIO lanes.
- Certain embodiments also relate to a cable that may be used to couple SATA drives to a system having a U.2 or M.2 connector thereon.
- conventional systems may utilize, for example, four SATA connectors to couple four SATA drives thereto
- certain embodiments may utilize, for example, a single U.2 or M.2 connector to couple one, two, three, or four SATA drives to the system.
- the same U.2 or M.2 connector may be used to couple a NVMe drive to the system through a U.2 or M.2 cable having an NVMe connector at the drive end.
- Such embodiments permit a system integrator and/or end user to be able to dynamically choose which type of cable and hard drives to populate in a system, whereas other systems require predetermined cable and hard drive selection.
- Certain embodiments relating to systems utilizing SATA drives and NVMe drives are illustrated in Figs. 3-5 .
- Fig. 3 illustrates a system including a circuit board 208 such as a motherboard, on which one or more processors 212 and one or more memory regions 214 may be positioned.
- the board 208 also includes a board connector 222 for coupling one or more drives thereto.
- the board 208 may also include other features (not shown), such as board management hardware and routing, and other external input/output connections such as, for example, Ethernet connections, USB connections, and video connections.
- the connector 222 may, in certain embodiments, be selected from a U.2 connector and an M.2 connector.
- the connector 222 may utilize four lanes for data transfer.
- a cable 224 is coupled to the connector 222.
- the cable 224 includes a first end attached to the connector and a second end that includes four fingers 224a, 224b, 224c, and 224d each extending to a SATA drive connector 228 for attaching to a SATA drive 226.
- the first end of the cable 224 may be configured to mate with a U.2 connector or an M.2 connector, while the second end is configured to mate with one or more SATA drives.
- the SATA drives may utilize one HSIO lane for input/output, and the U.2 or M.2 connector may utilize four HSIO lanes.
- the cable 224 may include up to four SATA drives 226 coupled thereto.
- Fig. 4 illustrates a system including the same circuit board 208 as in Fig. 3 , with the same components thereon including the same board connector 222.
- the connector is a U.2 or an M.2 connector
- a single NVMe drive 227 may be coupled to the connector 222 through the cable 225, which includes a first end configured to mate with the U.2 or M.2 connector 222, and the other extending to an NVMe drive connector 229 (e.g., SFF-8639 connector) configured to mate with the NVMe drive 227.
- the NVMe drive 227 may utilize four HSIO lanes for input/output, and as a result, a single NVMe 227 drive is connected to the cable 225.
- FIG. 5 illustrates a system including the same circuit board 208 as in Figs. 3-4 , with the same components thereon including the same board connector 222.
- the first end of the cable 231 may be configured to mate with a U.2 connector or an M.2 connector, while the second end is configured to mate with a SATA drive 226 and a NVMe drive 227.
- the cable 231 includes a second end having two fingers 231a and 231b, with finger 231a including a NVMe drive connector 229 to couple to the NVME drive 227, and finger 231b including a SATA drive connector 228 to couple to the SATA drive 226.
- NVMe drive 227 is capable of utilizing four HSIO lanes, it will operate when utilizing less than four lanes. It may not have the same performance as when four HSIO lanes are used, but there may be other considerations that would motivate one to utilize one or more SATA drives together with a NVMe drive. While the embodiment illustrated in Fig, 5 shows one SATA drive 226 and one NVMe drive 227, embodiment may include additional fingers and drives.
- the initialization logic 28 operations described with respect to FIGs. 2a and 2b may be used to detect and configure the attachment of devices as shown with respect to FIGs. 3, 4, and 5 .
- the systems described above may comprise a personal computer, server, mobile device or embedded computer device.
- a silicon-on-chip (SOC) implementation at least some of the architecture may be implemented in an integrated circuit die.
- an embodiment means “one or more (but not all) embodiments of the present invention(s)" unless expressly specified otherwise.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Information Transfer Systems (AREA)
Claims (11)
- Procédé pour configurer des architectures de stockage informatique pendant une opération d'amorçage d'un système comprenant un bus et une horloge de bus en communication avec le bus, ce procédé comprenant, pour chacun d'une pluralité de groupes de couloirs d'un bus (16) dans le système (10) :la détection (105), par le système (10), de si un dispositif implémentant un premier protocole d'interface de bus est couplé ou pas au bus (16) par l'intermédiaire d'un connecteur (22) ;la programmation (107), par le système (10), de la désactivation de l'horloge du bus (18) en réponse à la détection qu'aucun dispositif implémentant le premier protocole d'interface de bus n'est couplé au bus (16) par l'intermédiaire du connecteur (22) ;la reprogrammation (109 ; 137), par le système (10), après la programmation de la désactivation de l'horloge du bus (18), d'une mémoire tampon Entrée/Sortie, IO (20), connectée au bus conformément à un deuxième protocole d'interface de bus afin de connecter à un dispositif (26) implémentant le deuxième protocole d'interface de bus ;la détection (111), par le système (10), après la reprogrammation de la mémoire tampon, de si un dispositif implémentant le deuxième protocole d'interface de bus est couplé ou pas au bus (16) par l'intermédiaire du connecteur (22) ; etl'initialisation, par le système (10), du dispositif (26) implémentant le deuxième protocole d'interface de bus en réponse à la détection que le dispositif implémentant le deuxième protocole d'interface de bus est couplé au bus (16) par l'intermédiaire du connecteur (22) ;la détermination de si le dispositif implémentant le premier protocole d'interface de bus est un dispositif de stockage implémentant un protocole d'interface de dispositif logique en réponse à la détection que le dispositif implémentant le premier protocole d'interface de bus est couplé au bus (16) dans le système par l'intermédiaire du connecteur ; etl'initialisation du dispositif de stockage en réponse à la détermination que le dispositif implémentant le premier protocole d'interface de bus implémente aussi un protocole d'interface de dispositif logique,après l'initialisation du dispositif de stockage en réponse à la détermination que le dispositif implémentant le premier protocole d'interface de bus implémente aussi un protocole d'interface de dispositif logique, la reprogrammation de toute mémoire tampon IO à grande vitesse, HSIO, inutilisée de la mémoire tampon pour faire en sorte que le connecteur implémente le deuxième protocole d'interface de bus,le premier protocole d'interface de bus consistant en un protocole d'interface de bus PCIe, Peripheral Component Interconnect Express, le deuxième protocole d'interface de bus consistant en un protocole d'interface de bus SATA, Serial Advanced Technology Attachment, et le protocole d'interface de dispositif logique consistant en un protocole d'interface de bus de dispositif logique NVMe, Non-Volatile Memory Express.
- Procédé selon la revendication 1, comprenant en outre l'initialisation (119 ; 129 ; 131 ; 135 ; 145) d'un dispositif (26) implémentant le premier protocole d'interface de bus afin de communiquer sur le bus (16) en réponse à la détection qu'un dispositif implémentant le premier protocole d'interface de bus est couplé au bus (16) dans le système par l'intermédiaire du connecteur (22).
- Procédé selon la revendication 1 ou 2, dans lequel le premier protocole d'interface de bus consiste en un protocole d'interface de bus PCIe, Peripheral Component Interconnect Express, et le deuxième protocole d'interface de bus consiste en un protocole d'interface de bus SATA, Serial Advanced Technology Attachment.
- Procédé selon l'une quelconque des revendications précédentes, dans lequel la détection de si un dispositif implémentant un premier protocole d'interface de bus est couplé ou pas au bus (16) dans le système par l'intermédiaire d'un connecteur comprend l'évaluation d'un groupe entrée/sortie à grande vitesse, HSIO, à quatre couloirs.
- Procédé selon l'une quelconque des revendications précédentes, dans lequel la reprogrammation de la mémoire tampon comprend la reprogrammation de la mémoire tampon sur quatre ports.
- Procédé selon l'une quelconque des revendications précédentes, comprenant en outre la désactivation de toute mémoire tampon non utilisée après l'initialisation du dispositif.
- Procédé selon l'une quelconque des revendications précédentes, dans lequel l'initialisation du dispositif de stockage implémentant le deuxième protocole d'interface de bus comprend l'initialisation d'une pluralité de pilotes SATA, Serial Advanced Technology Attachment.
- Logique d'initialisation comprenant des moyens configurés de façon à exécuter les étapes du procédé selon l'une quelconque des revendications 1 à 7.
- Système comprenant :un bus (16) ;une horloge de bus (18) en communication avec le bus (16) ;une mémoire tampon IO (20) en communication avec le bus (16) ;un dispositif de stockage (26) pour stocker des données ;un connecteur (22) configuré de façon à coupler le dispositif de stockage (26) au bus (16) ;une logique d'initialisation (28) selon la revendication 8.
- Système selon la revendication 9, comprenant en outre :un câble (24, 224) pour coupler le dispositif de stockage (26) à une carte (208), ce câble (24, 224) comprenant :une première extrémité configurée de façon à s'accoupler avec un connecteur de carte (22, 222) qui est compatible avec un premier protocole d'interface de bus et un deuxième protocole d'interface de bus ; etune deuxième extrémité comprenant un premier, un deuxième, un troisième et un quatrième connecteur (22, 228) et configurée de façon à s'accoupler avec un dispositif de stockage agencé de façon à implémenter le deuxième protocole d'interface de bus.
- Support lisible par machine comprenant des instructions lisibles par machine qui, lorsqu'elles sont exécutées par un appareil, font exécuter à cet appareil les étapes du procédé selon l'une quelconque des revendications 1 à 7.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/476,882 US10509759B2 (en) | 2017-03-31 | 2017-03-31 | Multiple storage devices implemented using a common connector |
Publications (2)
Publication Number | Publication Date |
---|---|
EP3382567A1 EP3382567A1 (fr) | 2018-10-03 |
EP3382567B1 true EP3382567B1 (fr) | 2021-08-11 |
Family
ID=61132183
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
EP18154453.7A Active EP3382567B1 (fr) | 2017-03-31 | 2018-01-31 | Dispositifs de stockage multiples mis en uvre à l'aide d'un connecteur commun |
Country Status (3)
Country | Link |
---|---|
US (1) | US10509759B2 (fr) |
EP (1) | EP3382567B1 (fr) |
CN (1) | CN108694139A (fr) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6854407B2 (ja) * | 2017-08-08 | 2021-04-07 | パナソニックIpマネジメント株式会社 | カード装置、ホスト装置および通信方法 |
US11226765B2 (en) * | 2017-11-22 | 2022-01-18 | Hewlett-Packard Development Company, L.P. | Serial AT attachment and non-volatile memory express device determination |
DE102019126690A1 (de) * | 2019-10-02 | 2021-04-08 | Phoenix Contact Gmbh & Co. Kg | Verfahren zur datenübertragung zwischen einem peripheriegerät und einer datenerfassungseinheit, peripheriegerät sowie datenerfassungseinheit |
US11509751B2 (en) * | 2020-12-23 | 2022-11-22 | Dell Products L.P. | Self-describing system using single-source/multi-destination cable |
Family Cites Families (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6185692B1 (en) * | 1998-05-12 | 2001-02-06 | International Business Machine Corporation | Data processing system and method for dynamically setting bus clock frequency in response to a number of loads |
US6697884B1 (en) * | 2000-01-03 | 2004-02-24 | Genesis Microchip, Inc. | Communication protocol for serial peripheral devices |
US6702620B2 (en) | 2001-09-05 | 2004-03-09 | Intel Corporation | Dual serial ATA connector |
US7155546B2 (en) * | 2003-12-18 | 2006-12-26 | Intel Corporation | Multiple physical interfaces in a slot of a storage enclosure to support different storage interconnect architectures |
US7069369B2 (en) | 2004-02-12 | 2006-06-27 | Super Talent Electronics, Inc. | Extended-Secure-Digital interface using a second protocol for faster transfers |
US7565457B2 (en) | 2006-06-30 | 2009-07-21 | Intel Corporation | Serial advanced technology attachment device presence detection and hot-plug in low power mode |
KR101854929B1 (ko) | 2010-04-14 | 2018-05-04 | 마이크로소프트 테크놀로지 라이센싱, 엘엘씨 | 시스템 레벨 통신을 위한 커넥터의 동적 구성 |
US8954597B2 (en) * | 2010-06-28 | 2015-02-10 | Hulu, LLC | Method and apparatus for synchronizing paused playback across platforms |
US8751714B2 (en) | 2010-09-24 | 2014-06-10 | Intel Corporation | Implementing quickpath interconnect protocol over a PCIe interface |
US8706944B2 (en) | 2010-12-22 | 2014-04-22 | Intel Corporation | Dual bus standard switching bus controller |
US8601198B2 (en) | 2011-06-30 | 2013-12-03 | Intel Corporation | Controllable transaction synchronization for merging peripheral devices |
US10360176B2 (en) * | 2012-01-17 | 2019-07-23 | Intel Corporation | Techniques for command validation for access to a storage device by a remote client |
US8782321B2 (en) | 2012-02-08 | 2014-07-15 | Intel Corporation | PCI express tunneling over a multi-protocol I/O interconnect |
JP5987445B2 (ja) * | 2012-04-20 | 2016-09-07 | 富士通株式会社 | 通信制御装置、方法、プログラムおよびシステム |
JP6362277B2 (ja) * | 2012-06-01 | 2018-07-25 | ブラックベリー リミテッドBlackBerry Limited | マルチフォーマットオーディオシステムにおけるロック保証のための確率的方法に基づく汎用同期エンジン |
US9280504B2 (en) | 2012-08-24 | 2016-03-08 | Intel Corporation | Methods and apparatus for sharing a network interface controller |
US9116694B2 (en) | 2012-09-26 | 2015-08-25 | Intel Corporation | Efficient low power exit sequence for peripheral devices |
US8745296B2 (en) | 2012-10-02 | 2014-06-03 | Intel Corporation | Serial storage protocol compatible frame conversion, at least in part being compatible with SATA and one packet being compatible with PCIe protocol |
US9311110B2 (en) | 2013-07-08 | 2016-04-12 | Intel Corporation | Techniques to initialize from a remotely accessible storage device |
US9552316B2 (en) | 2014-03-29 | 2017-01-24 | Intel Corporation | Techniques for adaptive interface support |
US9804989B2 (en) | 2014-07-25 | 2017-10-31 | Micron Technology, Inc. | Systems, devices, and methods for selective communication through an electrical connector |
US9710421B2 (en) | 2014-12-12 | 2017-07-18 | Intel Corporation | Peripheral component interconnect express (PCIe) card having multiple PCIe connectors |
US9710406B2 (en) | 2014-12-15 | 2017-07-18 | Intel Corporation | Data transmission using PCIe protocol via USB port |
WO2016122461A1 (fr) | 2015-01-27 | 2016-08-04 | Hewlett Packard Enterprise Development Lp | Support de module mémoire en ligne pour un module à facteur de forme m.2 |
US20160259754A1 (en) | 2015-03-02 | 2016-09-08 | Samsung Electronics Co., Ltd. | Hard disk drive form factor solid state drive multi-card adapter |
KR102429906B1 (ko) * | 2015-10-13 | 2022-08-05 | 삼성전자주식회사 | 스토리지 장치, 상기 스토리지 장치와 통신하는 호스트 및 상기 스토리지 장치를 포함하는 전자 장치 |
-
2017
- 2017-03-31 US US15/476,882 patent/US10509759B2/en active Active
-
2018
- 2018-01-31 EP EP18154453.7A patent/EP3382567B1/fr active Active
- 2018-02-28 CN CN201810166315.1A patent/CN108694139A/zh active Pending
Non-Patent Citations (1)
Title |
---|
None * |
Also Published As
Publication number | Publication date |
---|---|
EP3382567A1 (fr) | 2018-10-03 |
US20180285307A1 (en) | 2018-10-04 |
US10509759B2 (en) | 2019-12-17 |
CN108694139A (zh) | 2018-10-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20210279198A1 (en) | SYSTEM AND METHOD FOR SUPPORTING MULTI-MODE AND/OR MULTI-SPEED NON-VOLATILE MEMORY (NVM) EXPRESS (NVMe) OVER FABRICS (NVMe-oF) DEVICES | |
EP3382567B1 (fr) | Dispositifs de stockage multiples mis en uvre à l'aide d'un connecteur commun | |
US10452576B2 (en) | NVMe drive detection from a SAS/SATA connector | |
CN107423169B (zh) | 用于测试高速外围设备互连设备的方法和系统 | |
US8756360B1 (en) | PCI-E compatible chassis having multi-host capability | |
US20170068630A1 (en) | Runtime drive detection and configuration | |
US10162784B2 (en) | Adapter for transmitting signals | |
KR20050044247A (ko) | 피시아이 익스프레스 링크의 동적 재구성 방법 및 장치 | |
KR20040111472A (ko) | Ata/sata 통합 제어기 | |
US20090271557A1 (en) | Non-volatile memory storage device with high transmission rate | |
US20100023669A1 (en) | Host controller disposed in multi-function card reader | |
US11269803B1 (en) | Method and system for processor interposer to expansion devices | |
US20150186317A1 (en) | Method and apparatus for detecting the initiator/target orientation of a smart bridge | |
US20110072168A1 (en) | Data transfer system with different operating modes | |
CN113824741A (zh) | 一种iic设备的通信方法、装置、设备、系统及介质 | |
CN112988637A (zh) | 促进与i2c的向后兼容性的i3c集线器 | |
US8612662B2 (en) | Queue sharing and reconfiguration in PCI express links | |
KR100764743B1 (ko) | 리셋 제어 유닛을 구비한 메모리 카드 및 그것의 리셋 제어방법 | |
US10120828B2 (en) | Bridge for bus-powered peripheral device power management | |
EP3207459B1 (fr) | Accès à un canal auxiliaire au moyen de flux usb | |
KR101265233B1 (ko) | 초기 저장장치 생산 및 테스트용 호스트 버스 아답터 | |
US20150348651A1 (en) | Multiple access test architecture for memory storage devices | |
JP2009026165A (ja) | コントローラ、電子機器及び電子機器の制御方法 | |
Cheung et al. | I3C hub promoting backward compatibility with I 2 C | |
CN101661449A (zh) | 设置于多功能读卡器中的主控制器 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PUAI | Public reference made under article 153(3) epc to a published international application that has entered the european phase |
Free format text: ORIGINAL CODE: 0009012 |
|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: REQUEST FOR EXAMINATION WAS MADE |
|
17P | Request for examination filed |
Effective date: 20180131 |
|
AK | Designated contracting states |
Kind code of ref document: A1 Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR |
|
AX | Request for extension of the european patent |
Extension state: BA ME |
|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: EXAMINATION IS IN PROGRESS |
|
17Q | First examination report despatched |
Effective date: 20191015 |
|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: EXAMINATION IS IN PROGRESS |
|
GRAP | Despatch of communication of intention to grant a patent |
Free format text: ORIGINAL CODE: EPIDOSNIGR1 |
|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: GRANT OF PATENT IS INTENDED |
|
INTG | Intention to grant announced |
Effective date: 20210302 |
|
GRAS | Grant fee paid |
Free format text: ORIGINAL CODE: EPIDOSNIGR3 |
|
GRAA | (expected) grant |
Free format text: ORIGINAL CODE: 0009210 |
|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: THE PATENT HAS BEEN GRANTED |
|
AK | Designated contracting states |
Kind code of ref document: B1 Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR |
|
REG | Reference to a national code |
Ref country code: CH Ref legal event code: EP |
|
REG | Reference to a national code |
Ref country code: NL Ref legal event code: FP |
|
REG | Reference to a national code |
Ref country code: DE Ref legal event code: R096 Ref document number: 602018021446 Country of ref document: DE |
|
REG | Reference to a national code |
Ref country code: IE Ref legal event code: FG4D Ref country code: AT Ref legal event code: REF Ref document number: 1420089 Country of ref document: AT Kind code of ref document: T Effective date: 20210915 |
|
REG | Reference to a national code |
Ref country code: LT Ref legal event code: MG9D |
|
REG | Reference to a national code |
Ref country code: AT Ref legal event code: MK05 Ref document number: 1420089 Country of ref document: AT Kind code of ref document: T Effective date: 20210811 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: NO Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20211111 Ref country code: PT Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20211213 Ref country code: LT Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20210811 Ref country code: BG Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20211111 Ref country code: AT Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20210811 Ref country code: HR Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20210811 Ref country code: ES Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20210811 Ref country code: FI Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20210811 Ref country code: SE Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20210811 Ref country code: RS Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20210811 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: PL Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20210811 Ref country code: LV Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20210811 Ref country code: GR Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20211112 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: DK Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20210811 |
|
REG | Reference to a national code |
Ref country code: DE Ref legal event code: R097 Ref document number: 602018021446 Country of ref document: DE |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: SM Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20210811 Ref country code: SK Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20210811 Ref country code: RO Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20210811 Ref country code: EE Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20210811 Ref country code: CZ Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20210811 Ref country code: AL Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20210811 |
|
PLBE | No opposition filed within time limit |
Free format text: ORIGINAL CODE: 0009261 |
|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: NO OPPOSITION FILED WITHIN TIME LIMIT |
|
26N | No opposition filed |
Effective date: 20220512 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: IT Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20210811 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: SI Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20210811 Ref country code: MC Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20210811 |
|
REG | Reference to a national code |
Ref country code: CH Ref legal event code: PL |
|
REG | Reference to a national code |
Ref country code: BE Ref legal event code: MM Effective date: 20220131 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: LU Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20220131 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: FR Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20220131 Ref country code: BE Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20220131 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: LI Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20220131 Ref country code: CH Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20220131 |
|
REG | Reference to a national code |
Ref country code: DE Ref legal event code: R081 Ref document number: 602018021446 Country of ref document: DE Owner name: TAHOE RESEARCH, LTD., IE Free format text: FORMER OWNER: INTEL CORPORATION, SANTA CLARA, CA, US |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: IE Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20220131 |
|
PGFP | Annual fee paid to national office [announced via postgrant information from national office to epo] |
Ref country code: NL Payment date: 20230119 Year of fee payment: 6 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: HU Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT; INVALID AB INITIO Effective date: 20180131 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: MK Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20210811 Ref country code: CY Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20210811 |
|
PGFP | Annual fee paid to national office [announced via postgrant information from national office to epo] |
Ref country code: DE Payment date: 20240119 Year of fee payment: 7 Ref country code: GB Payment date: 20240119 Year of fee payment: 7 |