Data processing array interface having interface tiles with multiple direct memory access circuits
US-12164451-B2 · Dec 10, 2024 · US
US9436630B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-9436630-B2 |
| Application number | US-201314026062-A |
| Country | US |
| Kind code | B2 |
| Filing date | Sep 13, 2013 |
| Priority date | Jun 11, 2013 |
| Publication date | Sep 6, 2016 |
| Grant date | Sep 6, 2016 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
Systems described herein enable PCIe device components to be used with multiple PCIe topologies and with host systems of varying configurations. In some cases, a number of varying PHYs and PCIe cores are utilized to increase the number of applications and/or specifications that may be satisfied with a host interface design. Further, some systems described herein may include a number of synchronizers, clock multiplier units, and selectors to create a host interface that can be configured for a number of applications. Despite increasing the flexibility of the usage of systems disclosed herein, costs can be reduced by using the systems of the present disclosure for PCIe based devices.
Opening claim text (preview).
What is claimed is: 1. A storage device, comprising: a plurality of non-volatile solid state memory devices; a set of Peripheral Component Interconnect Express (PCIe) connectors configured to receive memory access commands from a host system; and a controller configured to receive and process memory access commands for accessing the plurality of non-volatile solid state memory devices, the controller comprising a host interface, the host interface comprising: a plurality of physical interfaces (PHYs), each PHY configured to communicate with a subset of PCIe connectors from the set of PCIe connectors, wherein at least one of the plurality of PHYs comprises a dual PCIe PHY, thereby enabling the host interface to be used with multiple PCIe topologies; and one or more PCIe cores configured to process signals passing through the plurality of PHYs. 2. The storage device of claim 1 , wherein each PHY comprises a clock multiplier unit configured to multiply a frequency of a clock signal received at the host interface while maintaining synchronicity with a provider system of the clock signal. 3. The storage device of claim 2 , wherein the host interface further comprises a synchronizer configured to synchronize a clock signal of each PHY. 4. The storage device of claim 3 , wherein the synchronizer is configured to synchronize the clock signal of each PHY by: selecting a PHY from the plurality of PHYs; synchronizing the clock signal of each PHY based at least partially on the clock multiplier unit of the selected PHY; and deactivating the clock multiplier unit of each remaining PHY from the plurality of PHYs. 5. The storage device of claim 1 , wherein the host interface further comprises a set of selectors, each selector associated with a corresponding PHY from the plurality of PHYs. 6. The storage device of claim 5 , wherein at least one selector from the set of selectors is configured to select a PCIe core from the one or more PCIe cores to receive a data/command signal from the corresponding PHY based at least partially on a selector signal provided to the selector. 7. The storage device of claim 6 , wherein the host interface further comprises a host processor, the host processor configured to provide the selector signal to the selector. 8. The storage device of claim 5 , wherein at least one selector from the set of selectors is associated with one PCIe core from the one or more PCIe cores, the at least one selector configured to maintain a degree of latency for a signal path associated with the at least one selector. 9. The storage device of claim 5 , wherein the host interface further comprises a latency unit associated with a first PHY from the plurality of PHYs, the latency unit configured to maintain a first signal latency between the first PHY and a first corresponding PCIe core from the one or more PCIe cores that matches a second signal latency, the second signal latency associated with a signal latency between a second PHY from the plurality of PHYs and a second corresponding PCIe core from the one or more PCIe cores. 10. The storage device of claim 1 , wherein the set of PCIe connectors comprise a set of differential input/output connectors. 11. The storage device of claim 1 , wherein each PCIe core from the one or more PCIe cores is associated with a separate root complex of a host system. 12. The storage device of claim 1 , wherein the controller is a solid state driver controller. 13. The storage device of claim 1 , wherein at least one PHY is not a dual PCIe PHY. 14. The storage device of claim 1 , wherein the controller further comprises a memory controller configured to communicate with the host interface and the plurality of non-volatile solid state memory devices. 15. A controller for a Peripheral Component Interconnect Express (PCIe) card, the controller comprising: a plurality of physical interfaces (PHYs), each PHY configured to communicate with a subset of PCIe connectors from a set of PCIe connectors, wherein at least one PHY supports a different number of PCIe connectors than at least one other PHY, thereby enabling the controller to be used with multiple PCIe card topologies; and one or more PCIe cores configured to communicate with the plurality of PHYs. 16. The controller of claim 15 , wherein each PHY comprises a clock multiplier unit configured to modify a clock signal received at the controller while maintaining synchronicity with a provider system of the clock signal. 17. The controller of claim 16 , further comprising a synchronizer configured to synchronize a clock signal of each PHY. 18. The controller of claim 17 , wherein the synchronizer is configured to synchronize the clock signal of each PHY by: selecting a PHY from the plurality of PHYs; synchronizing the clock signal of each PHY using the clock multiplier unit of the selected PHY; and deactivating the clock multiplier unit of each remaining PHY from the plurality of PHYs. 19. The controller of claim 15 , further comprising a set of selectors, each selector associated with a corresponding PHY from the plurality of PHYs. 20. The controller of claim 19 , wherein at least one selector from the set of selectors is configured to select a PCIe core from the one or more PCIe cores to receive a data/command signal from the corresponding PHY based at least partially on a selector signal provided to the selector. 21. The controller of claim 19 , wherein at least one selector from the set of selectors modifies a signal latency of a signal communicated between a PHY from the plurality of PHYs and a corresponding PCIe core from the one or more PCIe cores without enabling the selection of an alternative PCIe core from the one or more PCIe cores. 22. A controller comprising: a plurality of physical interfaces (PHYs), each PHY configured to communicate with a subset of serial interface connectors from a set of serial interface connectors, wherein at least one PHY supports a different number of serial interface connectors than at least one other PHY; and one or more processing cores configured to communicate with the plurality of PHYs. 23. The controller of claim 22 , wherein each PHY comprises a clock multiplier unit configured to modify a clock signal received at the controller while maintaining synchronicity with a provider system of the clock signal. 24. The controller of claim 23 , further comprising a synchronizer configured to synchronize a clock signal of each PHY. 25. The controller of claim 24 , wherein the synchronizer is configured to synchronize the clock signal of each PHY by: selecting a PHY from the plurality of PHYs; synchronizing the clock signal of each PHY using the clock multiplier unit of the selected PHY; and deactivating the clock multiplier unit of each remaining PHY from the plurality of PHYs. 26. The controller of claim 22 , further comprising a set of selectors, each selector associated with a corresponding PHY from the plurality of PHYs. 27. The controller of claim 26 , wherein at least one selector from the set of selectors is configured to select a processing core from the one or more processing cores to receive a data/command signal from the corresponding PHY based at least partially on a selector signal provided to the selector. 28. The controller of claim 26 , wherein at least one selector from the set of selectors modifies a signal lat
for adaptation of a particular data processing system to different peripheral devices · CPC title
using burst mode transfer, e.g. direct memory access {DMA}, cycle steal (G06F13/32 takes precedence) · CPC title
Configuration of memory controller to different memory types · CPC title
Synchronisation and timing concerns (synchronisation on a memory bus G06F13/4234) · CPC title
using bus width · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.