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).

  • Patent number: 7228386
    Abstract: A cache may be programmed to disable one or more entries from allocation for storing memory data (e.g. in response to a memory transaction which misses the cache). Furthermore, the cache may be programmed to select which entries of the cache are disabled from allocation. Since the disabled entries are not allocated to store memory data, the data stored in the entries at the time the cache is programmed to disable the entries may remain in the cache. In one specific implementation, the cache also provides for direct access to entries in response to direct access transactions.
    Type: Grant
    Filed: September 24, 2004
    Date of Patent: June 5, 2007
    Assignee: Broadcom Corporation
    Inventors: Joseph B. Rowlands, James B. Keller
  • Patent number: 7206879
    Abstract: An apparatus may include a first system and a second system. The first system includes a first plurality of interface circuits, and each of the first plurality of interface circuits is configured to couple to a separate interface. The second system includes a second plurality of interface circuits, and each of the second plurality of interface circuits is configured to couple to a separate interface. A first interface circuit of the first plurality of interface circuits and a second interface circuit of the second plurality of interface circuits are coupled to a first interface. Both the first interface circuit and the second interface circuit are configured to communicate packets, coherency commands, and noncoherent commands on the first interface.
    Type: Grant
    Filed: October 11, 2002
    Date of Patent: April 17, 2007
    Assignee: Broadcom Corporation
    Inventors: Barton J. Sano, Joseph B. Rowlands, Laurent R. Moll, Manu Gulati
  • Patent number: 7177986
    Abstract: A cache is configured to receive direct access transactions. Each direct access transaction explicitly specifies a cache storage entry to be accessed in response to the transaction. The cache may access the cache storage entry (bypassing the normal tag comparisons and hit determination used for memory transactions) and either read the data from the cache storage entry (for read transactions) or write data from the transaction to the cache storage entry (for write transactions). The direct access transactions may, for example, be used to perform testing of the cache memory. As another example, direct access transactions may be used to perform a reset of the cache (by writing known data to each cache entry). In embodiments employing error checking and correction (ECC) mechanisms, direct access write transactions could also be used to recover from uncorrectable ECC errors, by overwriting the failing data to eliminate the errant data.
    Type: Grant
    Filed: December 30, 2003
    Date of Patent: February 13, 2007
    Assignee: Broadcom Corporation
    Inventors: Joseph B. Rowlands, Michael P. Dickman
  • Patent number: 7171521
    Abstract: A shared memory system includes a plurality of processing nodes and a packetized input/output link. Each of the plurality of processing nodes includes a processing resource and memory. The packetized I/O link operably couples the plurality of processing nodes together. One of the plurality of processing nodes is operably coupled to: initiate coherent memory transactions such that another one of plurality of processing nodes has access to a home memory section of the memory of the one of the plurality of processing nodes; and facilitate transmission of a coherency transaction packet between the memory of the one of the plurality of processing nodes and the another one of the plurality of processing nodes over the packetized I/O link.
    Type: Grant
    Filed: July 15, 2005
    Date of Patent: January 30, 2007
    Assignee: Broadcom Corporation
    Inventors: Joseph B. Rowlands, Manu Gulati
  • Patent number: 7131020
    Abstract: A system for synchronizing configuration information in a plurality of data processing devices using a common system interconnect bus. The present invention provides a method and apparatus for enforcing automatic updates to the configuration registers in various agents in the data processing system. A node controller is operably connected to a system interconnect bus and a switch. A plurality of interface agents are connected to the switch, with each of the interface agents comprising a configuration space register, a configuration space shadow register and a control and status register (CSR). A token ring connected to the node controller is operable to transmit data from the node controller to a plurality of interface agents connected to the token ring, thereby providing a system for updating the various configuration registers in each of the agents.
    Type: Grant
    Filed: October 14, 2003
    Date of Patent: October 31, 2006
    Assignee: Broadcom Corporation
    Inventors: Laurent Moll, Joseph B. Rowlands
  • Patent number: 7114043
    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: Grant
    Filed: May 9, 2003
    Date of Patent: September 26, 2006
    Assignee: Broadcom Corporation
    Inventor: Joseph B. Rowlands
  • Patent number: 7093052
    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: November 17, 2003
    Date of Patent: August 15, 2006
    Assignee: Broadcom Corporation
    Inventors: James Y. Cho, Joseph B. Rowlands
  • Patent number: 7076582
    Abstract: A system includes a bus and a circuit for precharging the bus. The circuit may be coupled to receive a clock signal associated with the bus, and may be configured to precharge a bus during an interval of the period of the clock signal, the interval being between a first edge (rising or falling) and the subsequent edge (falling or rising). A second interval within the period and excluding the interval may be used to perform a bus transfer. In this manner, both precharging and transfer may be performed in the same clock cycle. Bandwidth of the bus may be improved since transfers may occur each clock cycle, rather than having a non-transfer clock cycle for precharging.
    Type: Grant
    Filed: September 24, 2004
    Date of Patent: July 11, 2006
    Assignee: Broadcom Corporation
    Inventors: James Y. Cho, Joseph B. Rowlands, Mark H. Pearce
  • Patent number: 7076586
    Abstract: A system may include two or more agents, one of which may be identified as a default agent. If none of the agents arbitrate for the bus, the default agent may be given a default grant of the bus. If the default agent has information to transfer on the bus, the default agent may take the default grant and my transfer the information without first arbitrating for the bus and winning the arbitration. In one embodiment, the default agent may arbitrate for the bus when it has information to transfer and no default grant is received. The default agent may be an equal participant in arbitration. A fair arbitration scheme may thus be implemented in arbitrations in which there is contention for the bus.
    Type: Grant
    Filed: October 6, 2000
    Date of Patent: July 11, 2006
    Assignee: Broadcom Corporation
    Inventors: Joseph B. Rowlands, Shailendra S. Desai
  • Patent number: 7028115
    Abstract: A system may include at least a first agent and a second agent, and the first agent may be coupled to receive a block signal generated by the second agent. The block signal is indicative of whether or not the second agent is capable of participating in transactions. The first agent initiates or inhibits initiation of a transaction for which the second agent is a participant responsive to the block signal. The system may include additional agents, each configured to generate independent block signals. Other implementations may share block signals among two or more agents. For example, a memory block signal indicative of memory transactions being blocked or not blocked and an input/output (I/O) block signal indicative of I/O transactions being blocked or not blocked may be employed. In yet another implementation, a first agent may provide separate block signals to other agents.
    Type: Grant
    Filed: October 6, 2000
    Date of Patent: April 11, 2006
    Assignee: Broadcom Corporation
    Inventors: Joseph B. Rowlands, Mark D. Hayter
  • Patent number: 7003631
    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: Grant
    Filed: October 11, 2002
    Date of Patent: February 21, 2006
    Assignee: Broadcom Corporation
    Inventor: Joseph B. Rowlands
  • Patent number: 7000076
    Abstract: A random number generator circuit includes a primary circuit configured to generate a value within a first range and a secondary circuit configured to generate a value within a second range. A detector circuit detects whether or not the value from the primary circuit is within the desired output range for the random number generator circuit, and selects either the value from the primary circuit or the value from the secondary circuit in response. The second range is the desired output range and the first range encompasses the second range. In one embodiment, the primary circuit has complex harmonics but may generate values outside the desired range. The secondary circuit may have less complex harmonics, but may generate values only within the desired range. In one implementation, the random number generator circuit is used to generate a replacement way for a cache.
    Type: Grant
    Filed: June 4, 2004
    Date of Patent: February 14, 2006
    Assignee: Broadcom Corporation
    Inventors: Joseph B. Rowlands, Chun H. Ning
  • Patent number: 6993631
    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: Grant
    Filed: October 11, 2002
    Date of Patent: January 31, 2006
    Assignee: Broadcom Corporation
    Inventor: Joseph B. Rowlands
  • Patent number: 6993632
    Abstract: A system may include two or more agents, at least some of which may cache data. In response to a read transaction, a caching agent may snoop its cached data and provide a response in a response phase of the transaction. Particularly, the response may include an exclusive indication used to represent both exclusive and modified states within that agent. In one embodiment, the agent responding exclusive may be responsible for providing the data for a read transaction, and may transmit an indication of which of the exclusive or modified state that agent had the data in concurrent with transmitting the data.
    Type: Grant
    Filed: June 1, 2004
    Date of Patent: January 31, 2006
    Assignee: Broadcom Corporation
    Inventors: David A. Kruckemyer, Joseph B. Rowlands
  • Patent number: 6988168
    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: Grant
    Filed: April 15, 2003
    Date of Patent: January 17, 2006
    Assignee: Broadcom Corporation
    Inventors: Joseph B. Rowlands, Rohini Krishna Kaza
  • Patent number: 6965973
    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: Grant
    Filed: October 11, 2002
    Date of Patent: November 15, 2005
    Assignee: Broadcom Corporation
    Inventors: Joseph B. Rowlands, James B. Keller
  • Patent number: 6961824
    Abstract: A cache is configured to receive direct access transactions. Each direct access transaction explicitly specifies a way of the cache. The cache may alter the state of its replacement policy in response to a direct access transaction explicitly specifying a particular way of the cache. The state may be altered such that a succeeding cache miss causes an eviction of the particular way. Thus, a direct access transaction may be used to provide a deterministic setting to the replacement policy, providing predictability to the entry selected to store a subsequent cache miss. In one embodiment, the replacement policy may be a pseudo-random replacement policy. In one embodiment, a direct access transaction also explicitly specifies a cache storage entry to be accessed in response to the transaction.
    Type: Grant
    Filed: June 4, 2004
    Date of Patent: November 1, 2005
    Assignee: Broadcom Corporation
    Inventors: Joseph B. Rowlands, Michael P. Dickman
  • Patent number: 6957290
    Abstract: A distributed arbitration scheme includes arbiters with each agent. The arbiters receive request signals indicating which agents are arbitrating for the bus. Additionally, the agent currently using the bus broadcasts an agent identifier assigned to that agent. The arbiters receive the agent identifier and use the agent identifier as an indication of the winner of the preceding arbitration. Accordingly, the arbiters determine if the corresponding agent wins the arbitration, but may not attempt to calculate which other agent wins the arbitration. In one embodiment, the arbiter maintains a priority state indicative of which of the other agents are higher priority than the corresponding agent and which of the other agents are lower priority. In one implementation, the bus may be a split transaction bus and thus each requesting agent may include an address arbiter and each responding agent may include a data arbiter.
    Type: Grant
    Filed: October 6, 2000
    Date of Patent: October 18, 2005
    Assignee: Broadcom Corporation
    Inventors: Joseph B. Rowlands, David L. Anderson, Shailendra S. Desai
  • Patent number: 6948035
    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: Grant
    Filed: April 15, 2003
    Date of Patent: September 20, 2005
    Assignee: Broadcom Corporation
    Inventors: Joseph B. Rowlands, Koray Oner
  • Patent number: 6944719
    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: Grant
    Filed: January 31, 2003
    Date of Patent: September 13, 2005
    Assignee: Broadcom Corp.
    Inventors: Joseph B. Rowlands, Manu Gulati