Transaction Generator for On-chip Interconnect Fabric

    公开(公告)号:US20220365896A1

    公开(公告)日:2022-11-17

    申请号:US17320169

    申请日:2021-05-13

    Applicant: Apple Inc.

    Abstract: In an embodiment, an SOC includes a global communication fabric that includes multiple independent networks having different communication and coherency protocols, and a plurality of input-output (I/O) clusters that includes different sets of local functional circuits. A given I/O cluster may be coupled to one or more of the independent networks and may include a particular set of local functional circuits, a local fabric coupled to the particular set of local functional circuits, and an interface circuit coupled to the local fabric and configured to bridge transactions between the particular set of local functional circuits and the global communication fabric. The interface circuit may include a programmable hardware transaction generator circuit configured to generate a set of test transactions that simulate interactions between the particular set of local functional circuits and a particular one of the one or more independent networks.

    Gateway Circuit for Routing Multiple Types of Non-System-Memory Transactions

    公开(公告)号:US20250097167A1

    公开(公告)日:2025-03-20

    申请号:US18404837

    申请日:2024-01-04

    Applicant: Apple Inc.

    Abstract: A computer system with a central, non-system memory (NSM) gateway circuit for routing non-DRAM transactions between agent circuits coupled to first and second networks of the computer system. The NSM gateway circuit may route, for example, a message for a non-DRAM transaction from a source agent circuit coupled to the first network but not the second network to a destination agent circuit coupled to the second network but not the first network, and vice-versa. The NSM gateway circuit can also route messages for non-DRAM transactions between source and destination agent circuits both located on the same network. Still further, the NSM gateway circuit can route broadcast (i.e., one-to-many) transactions as well as network element configuration requests. In some implementations, a computer system may have multiple NSM gateway circuits, each assigned to handle non-DRAM transactions from an assigned set of agent circuits.

    Scalable cache coherency protocol
    13.
    发明授权

    公开(公告)号:US11947457B2

    公开(公告)日:2024-04-02

    申请号:US18058105

    申请日:2022-11-22

    Applicant: Apple Inc.

    CPC classification number: G06F12/0815 G06F12/0831 G06F2212/1032

    Abstract: A scalable cache coherency protocol for system including a plurality of coherent agents coupled to one or more memory controllers is described. The memory controller may implement a precise directory for cache blocks from the memory to which the memory controller is coupled. Multiple requests to a cache block may be outstanding, and snoops and completions for requests may include an expected cache state at the receiving agent, as indicated by a directory in the memory controller when the request was processed, to allow the receiving agent to detect race conditions. In an embodiment, the cache states may include a primary shared and a secondary shared state. The primary shared state may apply to a coherent agent that bears responsibility for transmitting a copy of the cache block to a requesting agent. In an embodiment, at least two types of snoops may be supported: snoop forward and snoop back.

    Transaction generator for on-chip interconnect fabric

    公开(公告)号:US11669480B2

    公开(公告)日:2023-06-06

    申请号:US17320169

    申请日:2021-05-13

    Applicant: Apple Inc.

    Abstract: In an embodiment, an SOC includes a global communication fabric that includes multiple independent networks having different communication and coherency protocols, and a plurality of input-output (I/O) clusters that includes different sets of local functional circuits. A given I/O cluster may be coupled to one or more of the independent networks and may include a particular set of local functional circuits, a local fabric coupled to the particular set of local functional circuits, and an interface circuit coupled to the local fabric and configured to bridge transactions between the particular set of local functional circuits and the global communication fabric. The interface circuit may include a programmable hardware transaction generator circuit configured to generate a set of test transactions that simulate interactions between the particular set of local functional circuits and a particular one of the one or more independent networks.

    Scalable Cache Coherency Protocol
    15.
    发明公开

    公开(公告)号:US20230169003A1

    公开(公告)日:2023-06-01

    申请号:US18160575

    申请日:2023-01-27

    Applicant: Apple Inc.

    CPC classification number: G06F12/0815 G06F12/0831 G06F2212/1032

    Abstract: A scalable cache coherency protocol for system including a plurality of coherent agents coupled to one or more memory controllers is described. The memory controller may implement a precise directory for cache blocks from the memory to which the memory controller is coupled. Multiple requests to a cache block may be outstanding, and snoops and completions for requests may include an expected cache state at the receiving agent, as indicated by a directory in the memory controller when the request was processed, to allow the receiving agent to detect race conditions. In an embodiment, the cache states may include a primary shared and a secondary shared state. The primary shared state may apply to a coherent agent that bears responsibility for transmitting a copy of the cache block to a requesting agent. In an embodiment, at least two types of snoops may be supported: snoop forward and snoop back.

    Telemetry Push Aggregation
    16.
    发明申请

    公开(公告)号:US20220357784A1

    公开(公告)日:2022-11-10

    申请号:US17313837

    申请日:2021-05-06

    Applicant: Apple Inc.

    Abstract: Systems, apparatuses, and methods for implementing telemetry push aggregation techniques are described. A computing system includes one or more input/output (I/O) agents interposed between functional units and a communication fabric. A given I/O agent receives a set of aggregation rules from a power management unit. The I/O agent monitors traffic from the functional units, and the I/O agent generates telemetry data from the traffic data based on the set of aggregation rules. The telemetry data is used by the power management unit to make adjustments to one or more power settings.

    Centralized Non-System-Memory Gateway Circuit

    公开(公告)号:US20250094330A1

    公开(公告)日:2025-03-20

    申请号:US18404822

    申请日:2024-01-04

    Applicant: Apple Inc.

    Abstract: A computer system with a central, non-system memory (NSM) gateway circuit for routing non-DRAM transactions between agent circuits coupled to a plurality of networks of the computer system, which may include packet-switching capabilities. Such non-DRAM transactions may be routed via a virtual channel in some implementations. To facilitate handling of such transactions, the NSM gateway circuit may include dedicated routing storage (e.g., an input buffer for each source agent circuit on each of the plurality of networks and an output buffer for each destination agent circuit on each of the plurality of networks). The NSM gateway circuit may serve as a termination point for non-DRAM transactions within the computer system, allowing network credit for a message included in a non-DRAM transaction to be returned to a source agent circuit prior to delivery to one or more destination agent circuits.

    Telemetry push aggregation
    18.
    发明授权

    公开(公告)号:US12197265B2

    公开(公告)日:2025-01-14

    申请号:US18510525

    申请日:2023-11-15

    Applicant: Apple Inc.

    Abstract: Systems, apparatuses, and methods for implementing telemetry push aggregation techniques are described. A computing system includes one or more input/output (I/O) agents interposed between functional units and a communication fabric. A given I/O agent receives a set of aggregation rules from a power management unit. The I/O agent monitors traffic from the functional units, and the I/O agent generates telemetry data from the traffic data based on the set of aggregation rules. The telemetry data is used by the power management unit to make adjustments to one or more power settings.

    Scalable Cache Coherency Protocol
    19.
    发明公开

    公开(公告)号:US20240273024A1

    公开(公告)日:2024-08-15

    申请号:US18582333

    申请日:2024-02-20

    Applicant: Apple Inc.

    CPC classification number: G06F12/0815 G06F12/0831 G06F2212/1032

    Abstract: A scalable cache coherency protocol for system including a plurality of coherent agents coupled to one or more memory controllers is described. The memory controller may implement a precise directory for cache blocks from the memory to which the memory controller is coupled. Multiple requests to a cache block may be outstanding, and snoops and completions for requests may include an expected cache state at the receiving agent, as indicated by a directory in the memory controller when the request was processed, to allow the receiving agent to detect race conditions. In an embodiment, the cache states may include a primary shared and a secondary shared state. The primary shared state may apply to a coherent agent that bears responsibility for transmitting a copy of the cache block to a requesting agent. In an embodiment, at least two types of snoops may be supported: snoop forward and snoop back.

    Scalable cache coherency protocol
    20.
    发明授权

    公开(公告)号:US11868258B2

    公开(公告)日:2024-01-09

    申请号:US18160575

    申请日:2023-01-27

    Applicant: Apple Inc.

    CPC classification number: G06F12/0815 G06F12/0831 G06F2212/1032

    Abstract: A scalable cache coherency protocol for system including a plurality of coherent agents coupled to one or more memory controllers is described. The memory controller may implement a precise directory for cache blocks from the memory to which the memory controller is coupled. Multiple requests to a cache block may be outstanding, and snoops and completions for requests may include an expected cache state at the receiving agent, as indicated by a directory in the memory controller when the request was processed, to allow the receiving agent to detect race conditions. In an embodiment, the cache states may include a primary shared and a secondary shared state. The primary shared state may apply to a coherent agent that bears responsibility for transmitting a copy of the cache block to a requesting agent. In an embodiment, at least two types of snoops may be supported: snoop forward and snoop back.

Patent Agency Ranking