Patent ID: 9507716
Filing Date: 2016-11-29
CPC Classification: G06F

Claim Text:
1. An interconnect for connecting devices in an integrated circuit, the interconnect comprising: coherency control circuitry capable of performing coherency control operations for transactions received by the interconnect from the devices, and determining transactions to be serviced by the devices based on the coherency control operations; and a snoop filter capable of identifying which devices have cached data for a target address of a transaction received by the interconnect, the snoop filter comprising at least one snoop filter entry for identifying which devices have cached data for a corresponding memory address; wherein in response to a transaction specifying a target address other than an address having a corresponding snoop filter entry in the snoop filter, the snoop filter is capable of allocating a new snoop filter entry for the target address; when one or more snoop filter entries which can be allocated for the target address are already allocated to another address, then the snoop filter is capable of selecting a victim snoop filter entry corresponding to a victim address, and issuing an invalidate transaction for invalidating the cached data for the victim address at one or more of the devices; and the coherency control circuitry is capable of performing the coherency control operations for the invalidate transaction issued by the snoop filter, to determine when the invalidate transaction can be serviced; wherein at least one of the coherency control circuitry and the snoop filter comprises a credit mechanism to consume a credit in response to a transaction other than an invalidate transaction progressing beyond a predetermined point, and to release a credit in response to an invalidate transaction being serviced or a determination that the transaction other than an invalidate transaction will not cause an invalidate transaction to be issued; and the coherency control circuitry is capable of preventing a transaction other than the invalidate transaction progressing beyond said predetermined point when a predetermined number of credits have been consumed and not yet released.