摘要:
An apparatus for performing indivisible memory operations on memory locations in remote memory means in multiple bus, multiple processor computer systems comprises a logic supervisor coupled to a bus bridge. The logic supervisor comprises a lock address register, a buffer address register, a command register, a first parameter register, a second parameter register, a first latch, a second latch, a comparator, and a controller. The controller is a state machine that observes instruction sequences intended to create an indivisible memory operation on a remote bus. When the logic supervisor detects an indivisible memory operation instruction sequence with a remote address, it gathers the data for the indivisible memory operation, inhibits the processor, and hands the data off to the bus bridge. When the logic supervisor receives a completion status from the bus bridge it places the returned value in memory and releases the processor. Should the logic supervisor detect an indivisible memory operation instruction sequence, but not a remote address, the logic supervisor does not participate in the indivisible memory operation.
摘要:
A method for utilizing concurrent context switching to support isochronous processes preferably comprises a main context that is configured to support system execution tasks, a first concurrent context that supports a first set of concurrent execution and loading procedures, and a second concurrent context that supports a second set of concurrent execution and loading procedures. A context control module preferably manages switching and loading procedures between the main context, the first concurrent context, and the second concurrent context. The context control module may perform successive concurrent context switching procedures by alternating between the first concurrent context and the second concurrent context to thereby sequentially support any desired number of isochronous processes.
摘要:
A system and method for multicasting control signals to selectively operate one memory device or groups of memory devices comprises a memory controller coupled to a plurality of memory devices by a command bus and a data bus. Each of the plurality of memory devices has a unique identification number. The system provides an addressing scheme in which an individual memory device or groups of memory device can be selected for operation by addressing the devices with a command packet. The memory controller broadcasts a command packet over the command bus to the plurality of memory devices. The packet includes an identification number. At each of the memory devices, selection logic is included to make the memory device operational if the identification number in the packet matches the identification number assigned to the memory device. The address in the packet is preferably encoded such that identification number has the same size regardless of whether a single memory device is being selected for operation or a group of memory devices are being selected for operation. The present invention also includes a method for selecting groups of memory devices for operation by multicasting a select address comprising the steps of: providing an memory identification number to each memory device, transmitting an memory device selection address, comparing the memory device selection address to the memory identification number, and asserting a signal to make the memory device operational if the memory device selection address and the memory identification number match.
摘要:
A method for implementing scheduling mechanisms with selectable resource modes comprises at least one resource characterization set that includes a plurality of resource characterizations that each have resource requirements for executing a requested process. The plurality of resource characterizations may include a most mode, a best mode, and a worst mode. An allocation manager may then select a resource mode, and compare the corresponding resource requirements for the requested process to the currently-available device resources. The allocation manager may then authorize or deny the requested process depending upon whether the currently-available resources are sufficient to adequately service the resource requirements of the requested process.
摘要:
A system and method for delivering data packets in an electronic interconnect comprises a talker device that transmits one or more data packets over a transmission path to a listener device through one or more bus bridges that each couple adjacent busses in the electronic interconnect. Each data packet includes a time stamp that indicates when the corresponding data packet is scheduled for presentation to the listener device. An initial bus bridge preferably creates a marker packet that is propagated through the transmission path to record delay information corresponding to delay elements such as the intervening bus bridges. A final bus bridge may then utilize the delay information from the marker packet to update the time stamps of the data packets to thereby incorporate the total propagation delay of the transmission path.
摘要:
A method and system for efficiently routing data packets in a computer interconnect includes a plurality of nodes forming a ringlet, generally including two connections between each pair of nodes configured to allow communication in either direction between each pair of nodes. One sequence of such connections forms a run moving,-for example left-to-right between a series of nodes. The other sequence of connections forms a right-to-left run. Selected nodes are configured to provide two cross-over paths, each from one run to the other, so the two runs are linked to form a circle or ringlet. One or more selected nodes provide an optional connection between the two runs, thus allowing a fast path or short cut to the opposing run. A fast path may include a uni- or bidirectional cross through path in an intermediate node. In one preferred embodiment, a single node can provide both cross-over paths, but can also support a cross-between path for each run, allowing a packet to continue on the same run, rather than the default path that crosses over to the opposite run. The method and system includes data information in a packet that can be used to decide whether to switch the packet through a fast path or to let it continue on the "normal" path. Routing decisions are based on a path field within each packet. This field is updated when taking a faster path (for example, a cross-through or cross-between path). The update techniques allow data packet path lengths to be reduced, while also providing a packet-aging capability. A scrubber is provided to manage packet aging and to remove packets that have not been removed from the ringlet but are no longer useful.
摘要:
A multi-processor computer system comprising a data storage device, a memory controller, and a plurality of processors. The data storage device has a plurality of memory lines, each memory line having a portion for alternatively storing data or, a set of GONE codes, a count value, and a processor identification code value. A memory controller coupled to the data storage alternatively stores and retrieves data or the GONE code, the count field value and the processor identification code value. At least one of the processors includes a cache memory and a cache memory controller. The cache memory controller compares a GONE code associated with the requested memory line with the contents of the requested memory line, and requests the contents of the requested memory line from a second of the processors in response to the comparison.