Virtualized caches
    22.
    发明授权

    公开(公告)号:US11442856B2

    公开(公告)日:2022-09-13

    申请号:US17103856

    申请日:2020-11-24

    Applicant: SiFive, Inc.

    Abstract: Systems and methods are disclosed for virtualized caches. For example, an integrated circuit (e.g., a processor) for executing instructions includes a virtually indexed physically tagged first-level (L1) cache configured to output to an outer memory system one or more bits of a virtual index of a cache access as one or more bits of a requestor identifier. For example, the L1 cache may be configured to operate as multiple logical L1 caches with a cache way of a size less than or equal to a virtual memory page size. For example, the integrated circuit may include an L2 cache of the outer memory system that is configured to receive the requestor identifier and implement a cache coherency protocol to disambiguate an L1 synonym occurring in multiple portions of the virtually indexed physically tagged L1 cache associated with different requestor identifier values.

    Point-to-point module connection interface for integrated circuit generation

    公开(公告)号:US11151301B2

    公开(公告)日:2021-10-19

    申请号:US16851966

    申请日:2020-04-17

    Applicant: SiFive, Inc.

    Abstract: Systems and methods are disclosed for generation and testing of integrated circuit designs with point-to-point connections between modules. These may allow for the rapid design and testing (e.g. silicon testing) of processors and SoCs. For example, type parameterization may be used to generate point-to-point connections in a flexible manner. For example, a point-to-point connection between the source module and the sink module that includes one or more named wires specified by bundle type may be automatically generated based on using the bundle type as a type parameterization input. For example, these system and methods may be used to rapidly connect a custom processor design, including one or more IP cores, to a standard input/output shell for a SoC design to facilitate rapid silicon testing of the custom processor design.

    DATA CACHE WITH HYBRID WRITEBACK AND WRITETHROUGH

    公开(公告)号:US20210286724A1

    公开(公告)日:2021-09-16

    申请号:US17332286

    申请日:2021-05-27

    Applicant: SiFive, Inc.

    Abstract: Described is a data cache implementing hybrid writebacks and writethroughs. A processing system includes a memory, a memory controller, and a processor. The processor includes a data cache including cache lines, a write buffer, and a store queue. The store queue writes data to a hit cache line and an allocated entry in the write buffer when the hit cache line is initially in at least a shared coherence state, resulting in the hit cache line being in a shared coherence state with data and the allocated entry being in a modified coherence state with data. The write buffer requests and the memory controller upgrades the hit cache line to a modified coherence state with data based on tracked coherence states. The write buffer retires the data upon upgrade. The data cache writebacks the data to memory for a defined event.

    Orderability of Operations
    27.
    发明公开

    公开(公告)号:US20240184721A1

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

    申请号:US18133022

    申请日:2023-04-11

    Applicant: SiFive, Inc.

    CPC classification number: G06F13/1626

    Abstract: A method for managing orders of operations between one or more clients and one or more servers is disclosed. The method includes partitioning addressable regions of logical servers on or within an interconnect link into multiple regions including a first orderable region, and providing logical client an ability to push ordering responsibility within the first orderable region to a server. Over the first orderable region, two request messages for access to memory-mapped sources including two respective operations are transmitted, and the two request messages originate from a same logical client. The ordering responsibility can include a first rule for order of operations between the two request messages.

    Transmitting a Response with a Request and State Information about the Request

    公开(公告)号:US20240184720A1

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

    申请号:US18341093

    申请日:2023-06-26

    Applicant: SiFive, Inc.

    CPC classification number: G06F13/1621 G06F12/084 G06F13/4234

    Abstract: First agent circuitry may receive from a second agent a first request and a first set of one or more bits. The first request may be part of a data operation. The first agent circuitry may transmit to the second agent a message including a first response to the first request, the first set of one or more bits, a second request, and a second set of one or more bits. The second set of one or more bits may be generated by the first agent circuitry to transmit state information about the second request. In some implementations, a set of one or more wires may be generated for transmission of the second set of one or more bits. The first agent circuitry may receive from the second agent a second response to the second request and the second set of one or more bits.

    Downgrading a Permission Associated with Data Stored in a Cache

    公开(公告)号:US20240184718A1

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

    申请号:US18132572

    申请日:2023-04-10

    Applicant: SiFive, Inc.

    CPC classification number: G06F12/1458 G06F2212/1052

    Abstract: Cache circuitry may be configured to receive a first message to downgrade a permission associated with data stored in a current level cache. For example, the current level cache could be a level two (L2) cache. The cache circuitry could receive the first message from a processor core having a level one (L1) cache. The cache circuitry may forward the first message to a higher level cache. For example, the higher level cache could be a level three (L3) cache. The cache circuitry may downgrade the permission associated with data stored in the current level cache based on receiving a second message from the higher level cache. The cache circuitry may forward the first message before receiving the second message and downgrading the permission. The second message may cause downgrade of the permission in multiple caches (e.g., the L1, L2, and L3 caches).

    Prefetching Cache Blocks Based on an Address for a Group and a Bit Field

    公开(公告)号:US20240184702A1

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

    申请号:US18182778

    申请日:2023-03-13

    Applicant: SiFive, Inc.

    CPC classification number: G06F12/0862 G06F2212/1024

    Abstract: Prefetch circuitry may be configured to transmit a message to prefetch one or more cache blocks of a group. The message may indicate an address for the group of cache blocks and a bit field that indicates the one or more cache blocks of the group to prefetch. In some implementations, the message may target a higher level cache to prefetch the one or more cache blocks, and the message may be transmitted to the higher level cache via a lower level cache. In some implementations, the message may target a higher level cache to prefetch the one or more cache blocks, the message may be transmitted to a lower level cache via a first command bus, and the lower level cache may forward the message to the higher level cache via a second command bus.

Patent Agency Ranking