Patents by Inventor Joseph B. Rowlands

Joseph B. Rowlands has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Publication number: 20040049620
    Abstract: A system includes two or more agents and a distributed arbitration scheme for the bus to which the agents are connected. Thus, an arbiter corresponding to each agent is provided. The arbiters are reset using a first reset signal, while the agents are reset using a separate reset signal or signals. The arbiters are concurrently released from reset when the first reset signal is deasserted, and may have a consistent reset state to provide for synchronization of the arbiters. The agents may be independently released from reset by the separate reset signals. Accordingly, the arbiters may be synchronized and may remain synchronized even if the corresponding agents are released from reset at different times, or are temporarily held in reset for any reason.
    Type: Application
    Filed: August 13, 2003
    Publication date: March 11, 2004
    Applicant: Broadcom Corporation
    Inventors: Joseph B. Rowlands, David L. Anderson, James Y. Cho
  • Publication number: 20040044806
    Abstract: A node comprises at least one agent and an input/output (I/O) circuit coupled to an interconnect within the node. The I/O circuit is configured to communicate on a global interconnect to which one or more other nodes are coupled during use. Addresses transmitted on the interconnect are in a first local address space of the node, and addresses transmitted on the global interconnect are in a global address space. The first local address space includes at least a first region used to address at least a first resource of the node. The node is programmable, during use, to relocate the first region within the first local address space, whereby a same numerical value in the first local address space and a second local address space corresponding to one of the other nodes coupled to the global interconnect refers to the first resource in the node during use.
    Type: Application
    Filed: May 15, 2003
    Publication date: March 4, 2004
    Inventors: Laurent R. Moll, James D. Kelly, Manu Gulati, Koray Oner, Joseph B. Rowlands
  • Patent number: 6697918
    Abstract: A cache is configured to select a cache block for eviction in response to detecting a cache miss. The cache transmits the address of the cache block as a write transaction on an interface to the cache, and the cache captures the address from the interface and reads the cache block from the cache memory in response to the address. The read may occur similar to other reads in the cache, detecting a hit in the cache (in the cache storage location from which the cache block is being evicted). The write transaction is initiated before the corresponding data is available for transfer, and the use of the bus bandwidth to initiate the transaction provides an open access time into the cache for reading the evicted cache block.
    Type: Grant
    Filed: July 18, 2001
    Date of Patent: February 24, 2004
    Assignee: Broadcom Corporation
    Inventor: Joseph B. Rowlands
  • Publication number: 20040034747
    Abstract: A packetized I/O link such as the HyperTransport protocol is adapted to transport memory coherency transactions over the link to support cache coherency in distributed shared memory systems. The I/O link protocol is adapted to include additional virtual channels that can carry command packets for coherency transactions over the link in a format that is acceptable to the I/O protocol. The coherency transactions support cache coherency between processing nodes interconnected by the link. Each processing node may include processing resources that themselves share memory, such as symmetrical multiprocessor configuration. In this case, coherency will have to be maintained both at the intranode level as well as the internode level. A remote line directory is maintained by each processing node so that it can track the state and location of all of the lines from its local memory that have been provided to other remote nodes.
    Type: Application
    Filed: January 31, 2003
    Publication date: February 19, 2004
    Inventors: Joseph B. Rowlands, Manu Gulati
  • Patent number: 6684296
    Abstract: A cache is coupled to receive an access which includes a cache allocate indication. If the access is a miss in the cache, the cache either allocates a cache block storage location to store the cache block addressed by the access or does not allocate a cache block storage location in response to the cache allocate indication. In one implementation, the cache is coupled to an interconnect with one or more agents. In such an implementation, the cache accesses may be performed in response to transactions on the interconnect, and the transactions include the cache allocate indication. Thus, the source of a cache access specifies whether or not to allocate a cache block storage location in response to a miss by the cache access. The source may use a variety of mechanisms for generating the cache allocate indication.
    Type: Grant
    Filed: March 21, 2003
    Date of Patent: January 27, 2004
    Assignee: Broadcom Corporation
    Inventors: Mark D. Hayter, Joseph B. Rowlands
  • Patent number: 6678767
    Abstract: An agent may be coupled to receive a clock signal associated with the bus, and may be configured to drive a signal responsive to a first edge (rising or falling) of the clock signal and to sample signals responsive to the second edge. The sampled signals may be evaluated to allow for the driving of a signal on the next occurring first edge of the clock signal. By using the first edge to drive signals and the second edge to sample signals, the amount of time dedicated for signal propagation may be one half clock cycle. Bandwidth and/or latency may be positively influenced. In some embodiments, protocols which may require multiple clock cycles on other buses may be completed in fewer clock cycles. For example, certain protocols which may require two clock cycles may be completed in one clock cycle. In one specific implementation, for example, arbitration may be completed in one clock cycle. Request signals may be driven responsive to the first edge of the clock signal and sampled responsive to the second edge.
    Type: Grant
    Filed: October 6, 2000
    Date of Patent: January 13, 2004
    Assignee: Broadcom Corp
    Inventors: James Y. Cho, Joseph B. Rowlands
  • Publication number: 20030233495
    Abstract: A node comprises one or more resources and a register programmable with an indication during use. The one or more resources are addressed with addresses within a local region of an address space. The indication identifies a second region of the address space that is aliased to the local region, and other nodes address the one or more resources using addresses in the second region.
    Type: Application
    Filed: May 15, 2003
    Publication date: December 18, 2003
    Applicant: Broadcom Corporation
    Inventors: Laurent R. Moll, Joseph B. Rowlands
  • Publication number: 20030229676
    Abstract: A node comprises a first agent, a second agent, and a third agent, all coupled to an interconnect. The first agent is configured to initiate a transaction on the interconnect to transfer a coherency block to the second agent. The third agent is configured to transmit the coherency block on the interconnect during a data portion of the transaction instead of the first agent responsive to a state of the coherency block in the third agent. In some embodiments, the first agent may be designated to store the node state of a remote cache block, and the second agent may be responsible for internode coherency within the node.
    Type: Application
    Filed: April 15, 2003
    Publication date: December 11, 2003
    Applicant: Broadcom Corporation
    Inventor: Joseph B. Rowlands
  • Publication number: 20030217233
    Abstract: A node is coupled to receive a coherency command and coupled to a memory, wherein the node includes a directory configured to track a state of a first number of coherency blocks less than a total number of the coherency blocks in the memory. The directory is configured to allocate a first entry to track the state of the first coherency block responsive to the coherency command. If the first entry is currently tracking the state of a second coherency block, the second node is configured to generate one or more coherency commands to invalidate the second coherency block in a plurality of nodes.
    Type: Application
    Filed: October 11, 2002
    Publication date: November 20, 2003
    Applicant: Broadcom Corp.
    Inventors: Joseph B. Rowlands, James B. Keller
  • Publication number: 20030217234
    Abstract: A system comprises a plurality of nodes, each node comprising one or more coherent agents coupled to an interconnect. Ownership of a coherency block accessed by a transaction on the interconnect is transferred responsive to transmission of the address on the interconnect. The system further includes a second interconnect to which the plurality of nodes are coupled, wherein ownership of a coherency block is transferred on the second interconnect responsive to a transmission of the data comprising the coherency block on the second interconnect. A first node of the plurality of nodes issues a coherency command on the second interconnect to fetch the coherency block in response to the transaction on the interconnect within the first node, whereby ownership transfers within the first node prior to ownership transferring from another one of the plurality of nodes to the first node.
    Type: Application
    Filed: October 11, 2002
    Publication date: November 20, 2003
    Applicant: Broadcom Corp.
    Inventor: Joseph B. Rowlands
  • Publication number: 20030217115
    Abstract: A node includes a processor coupled to an interconnect and a memory bridge coupled to the interconnect. The processor is configured to maintain a first indication of whether or not a modification of data at a first address has been detected by the processor after a most recent load-linked (LL) instruction was executed by the processor to the first address. The memory bridge is responsible for internode coherency within the node, and is configured to initiate a first transaction on the interconnect in response to receiving a probe command from another node. The processor is configured, during a time period in which the processor has a second transaction outstanding to the first address, to change the first indication to the first state responsive to the first transaction.
    Type: Application
    Filed: May 9, 2003
    Publication date: November 20, 2003
    Applicant: Broadcom Corporation
    Inventor: Joseph B. Rowlands
  • Publication number: 20030217236
    Abstract: A first node includes a first cache and a plurality of coherent agents. In response to a transaction to a coherency block by a first coherent agent of the plurality of coherent agents, the first node is configured to fetch the coherency block from another node. The other node is configured to record a state in which the coherency block is provided to the first node. The first cache is designated to store the state of the coherency block recorded by the first node.
    Type: Application
    Filed: October 11, 2002
    Publication date: November 20, 2003
    Applicant: Broadcom Corp.
    Inventor: Joseph B. Rowlands
  • Publication number: 20030217229
    Abstract: A cache comprises a memory including a plurality of entries and a circuit. Each entry of the plurality of entries is configured to store a cache block. The circuit is configured to select a first entry of the plurality of entries to store a first cache block. In one implementation, the first cache block corresponds to a first transaction initiated by a first agent, wherein the first entry is selected from a first subset of the plurality of entries indicated as selectable for the first agent. In another implementation, the circuit is configured to select the first entry of the plurality of entries in response to whether the first cache block is a remote cache block or a local cache block. In other implementations, the circuit may be configured to handle a combination of the above.
    Type: Application
    Filed: April 15, 2003
    Publication date: November 20, 2003
    Applicant: Broadcom Corporation
    Inventors: Joseph B. Rowlands, Rohini Krishna Kaza
  • Publication number: 20030217238
    Abstract: A node comprises an interconnect, circuitry coupled to the interconnect and configured to initiate a transaction on the interconnect, and a control circuit coupled to provide a response to the transaction on the interconnect. The transaction addresses a block, and the response is indicative of a state of the block in one or more other nodes. The control circuit is configured to cause the transaction to become globally visible to the one or more other nodes dependent on the state in the one or more nodes. Using one or more communication lines separate from lines used to initiate transactions, the control circuit is configured to transmit an indication of the transaction on the interconnect responsive to the transaction becoming globally visible. A transfer of data on the interconnect for the transaction is delayed, responsive to the response from the control circuit, until the indication is transmitted by the control circuit.
    Type: Application
    Filed: April 15, 2003
    Publication date: November 20, 2003
    Applicant: Broadcom Corporation
    Inventors: Joseph B. Rowlands, Koray Oner
  • Publication number: 20030217235
    Abstract: An apparatus comprises a first plurality of buffers configured to store operations belonging to a first virtual channel and a control circuit coupled to the first plurality of buffers. The first virtual channel includes first operations and second operations, wherein each of the first operations depend on at least one of the second operations during use. A first number of the first operations is less than or equal to a maximum. It is ambiguous, for a first received operation in the first virtual channel, whether the first received operation is one of the first operations or the second operations. A total number of the first plurality of buffers exceeds the maximum.
    Type: Application
    Filed: May 9, 2003
    Publication date: November 20, 2003
    Applicant: Broadcom Corporation
    Inventor: Joseph B. Rowlands
  • Publication number: 20030217216
    Abstract: A node comprises at least an interconnect, one or more coherent agents coupled to the interconnect, and a memory bridge coupled to the interconnect. The memory bridge is configured to maintain coherency on the interconnect on behalf of other nodes. In one embodiment, the interconnect does not permit retry of a transaction initiated thereon, and the memory bridge is configured to provide a response during a response phase of the transaction based on a state of a coherency block accessed by the transaction in the other nodes. In another embodiment, the node further comprises a plurality of interface circuits and a switch. Each of the plurality of interface circuits is configured to couple to an interface to receive coherency commands from other nodes. The switch is configured to selectively couple the plurality of interface circuits to the memory bridge to transmit the coherency commands to the memory bridge.
    Type: Application
    Filed: October 11, 2002
    Publication date: November 20, 2003
    Applicant: Broadcom Corp.
    Inventor: Joseph B. Rowlands
  • Patent number: 6640288
    Abstract: An agent, in response to a write to a shared block, is configured to initiate a read exclusive transaction on an interface on which the agent communicates. Additionally, the agent is configured to indicate, to a responding agent or agents on the interface, that a data transfer is not required from the responding agent or agents in response to the read exclusive transaction. In one embodiment, the agent indicates to the responding agents that a data transfer is not required in a response phase of the transaction. Specifically, the agent may respond in such a way that the agent indicates that it will provide the data (i.e. that the agent will provide the data to itself). For example, the agent may respond with an exclusive ownership indication. On the interface for such an embodiment, an exclusive ownership response may require that the agent having exclusive access respond with the data.
    Type: Grant
    Filed: April 8, 2003
    Date of Patent: October 28, 2003
    Assignee: Broadcom Corporation
    Inventors: Joseph B. Rowlands, Michael D. Carlson
  • Patent number: 6633938
    Abstract: A system includes two or more agents and a distributed arbitration scheme for the bus to which the agents are connected. Thus, an arbiter corresponding to each agent is provided. The arbiters are reset using a first reset signal, while the agents are reset using a separate reset signal or signals. The arbiters are concurrently released from reset when the first reset signal is deasserted, and may have a consistent reset state to provide for synchronization of the arbiters. The agents may be independently released from reset by the separate reset signals. Accordingly, the arbiters may be synchronized and may remain synchronized even if the corresponding agents are released from reset at different times, or are temporarily held in reset for any reason.
    Type: Grant
    Filed: October 6, 2000
    Date of Patent: October 14, 2003
    Assignee: Broadcom Corporation
    Inventors: Joseph B. Rowlands, David L. Anderson, James Y. Cho
  • Publication number: 20030191894
    Abstract: A cache is coupled to receive an access which includes a cache allocate indication. If the access is a miss in the cache, the cache either allocates a cache block storage location to store the cache block addressed by the access or does not allocate a cache block storage location in response to the cache allocate indication. In one implementation, the cache is coupled to an interconnect with one or more agents. In such an implementation, the cache accesses may be performed in response to transactions on the interconnect, and the transactions include the cache allocate indication. Thus, the source of a cache access specifies whether or not to allocate a cache block storage location in response to a miss by the cache access. The source may use a variety of mechanisms for generating the cache allocate indication.
    Type: Application
    Filed: March 21, 2003
    Publication date: October 9, 2003
    Applicant: Broadcom Corp
    Inventors: Mark D. Hayter, Joseph B. Rowlands
  • Publication number: 20030177316
    Abstract: An agent, in response to a write to a shared block, is configured to initiate a read exclusive transaction on an interface on which the agent communicates. Additionally, the agent is configured to indicate, to a responding agent or agents on the interface, that a data transfer is not required from the responding agent or agents in response to the read exclusive transaction. In one embodiment, the agent indicates to the responding agents that a data transfer is not required in a response phase of the transaction. Specifically, the agent may respond in such a way that the agent indicates that it will provide the data (i.e. that the agent will provide the data to itself). For example, the agent may respond with an exclusive ownership indication. On the interface for such an embodiment, an exclusive ownership response may require that the agent having exclusive access respond with the data.
    Type: Application
    Filed: April 8, 2003
    Publication date: September 18, 2003
    Applicant: Broadcom Corporation
    Inventors: Joseph B. Rowlands, Michael D. Carlson