Resource allocation by virtual channel management and bus multiplexing
US-9471522-B2 · Oct 18, 2016 · US
US10007625B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-10007625-B2 |
| Application number | US-201514927055-A |
| Country | US |
| Kind code | B2 |
| Filing date | Oct 29, 2015 |
| Priority date | Dec 4, 2013 |
| Publication date | Jun 26, 2018 |
| Grant date | Jun 26, 2018 |
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.
According to embodiments of the invention, methods, computer system, and apparatus for virtual channel management and bus multiplexing are disclosed. The method may include establishing a virtual channel from a first device to a second device via a bus, the bus having a first bus capacity and a second bus capacity, the second bus capacity having greater capacity than the first bus capacity, determining whether a store command is issued for the first bus capacity, determining whether the first bus capacity is available, and allocating the second bus capacity and marking the second bus capacity as unavailable in response to the store command if the first bus capacity is unavailable.
Opening claim text (preview).
We claim: 1. A method of virtual channel management comprising: establishing a virtual channel from a first device to a second device via a bus, the bus having a first bus capacity and a second bus capacity, the second bus capacity being larger than the first bus capacity; determining whether a channel command is issued for the first bus capacity, wherein the first bus capacity includes a store buffer and a store state machine; determining whether the first bus capacity is available; and allocating the second bus capacity and marking the second bus capacity as unavailable in response to the channel command if the first bus capacity is unavailable, wherein the second bus capacity includes a store/fetch buffer and a store/fetch state machine. 2. The method of virtual channel management according to claim 1 , further comprising determining whether the second bus capacity is available and if so, marking the second bus capacity as available. 3. The method of virtual channel management according to claim 1 , wherein the bus is a small computer standard interface bus. 4. The method of virtual channel management according to claim 1 , wherein the ratio of the capacity of the second bus capacity to the first bus capacity is about four to one. 5. The method of virtual channel management according to claim 1 , further comprising controlling the flow of channel commands from the first device to the second device. 6. The method of virtual channel management according to claim 5 , wherein the flow is controlled by a process comprising: adding a credit to the virtual channel; and subtracting the credit if the channel command is issued on the virtual channel, wherein the credit allows commands to be issued on the virtual channel. 7. The method of virtual channel management according to claim 1 , wherein the channel command is a store command. 8. A method of virtual channel management comprising: establishing, by a central interconnect communicatively coupled to a physical bus, a virtual channel from a first device to a second device via the physical bus, the physical bus having a store/fetch resource, wherein the store/fetch resource includes a store/fetch buffer and a store/fetch state machine; determining whether a store command is issued on the virtual channel; allocating a store/fetch resource in response to the store command and marking the store/fetch resource as unavailable; and determining whether the store/fetch resource allocated is available and if so, marking the store/fetch resource as available. 9. The method of virtual channel management according to claim 8 , wherein the bus has a store resource and further comprising allocating the store resource and marking the store resource as unavailable in response to the store command, wherein the store resource includes a store buffer and a store state machine. 10. The method of virtual channel management according to claim 9 , wherein the store/fetch resource is allocated and marked as unavailable in response to the store command if the store resource is unavailable. 11. The method of virtual channel management according to claim 8 , wherein the bus has a plurality of store resources and one or more store/fetch resources and wherein the ratio of store resources to store/fetch resources is about four to one, wherein each of the plurality of store resources include a store buffer and a store state machine. 12. The method of virtual channel management according to claim 11 , wherein the resources are allocated in a ratio equal to the ratio of store resources to store/fetch resources. 13. The method of virtual channel management according to claim 12 , further comprising controlling the flow of commands from the first device to the second device. 14. A method of virtual channel management comprising: establishing, by a central interconnect communicatively coupled to a physical bus, a single virtual channel from a first device to a second device via the physical bus, the physical bus having a first bus capacity and a second bus capacity, wherein the first bus capacity includes at least one store command resource for sending store commands from a first device to a second device, and wherein the second bus capacity includes at least one store/fetch command resource for sending store/fetch commands from the first device to the second device, the second bus capacity being larger than the first bus capacity; receiving, from the first device and via the physical bus, a first command; determining that the first command is a first store command; determining whether the first bus capacity is available; and allocating the second bus capacity and marking the second bus capacity as unavailable in response to the channel command if the first bus capacity is unavailable.
Multiplexed DMA (G06F13/30 takes precedence) · CPC title
using switching circuits, e.g. switching matrix, connection or expansion network (G06F13/4009 takes precedence) · CPC title
using buffers · CPC title
with request queuing · CPC title
using multiple buses · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.