Patent ID: 9075764
Filing Date: 2015-07-07
Classification: G06F

Abstract:
1. A multiprocessor system, comprising: a main memory; multiple processing cores, which are configured to execute software that uses data stored in the main memory; a data streaming unit, which is connected between the processing cores and the main memory so as to serve the multiple processing cores and is configured to pre-fetch the data from the main memory for use by the multiple processing cores while arbitrating between simultaneous memory accesses that are performed on behalf of two or more of the processing cores; and a respective local memory associated with each processing core and configured to maintain, in a circular buffer, a respective list of addresses in the main memory from which the data for the processing core is to be pre-fetched, wherein the circular buffer comprises a read pointer indicating a first location in the local memory into which the data streaming unit is to write the data from the main memory, and a write pointer indicating a second location in the local memory from which the data streaming unit is to write the data to the main memory, and is configured so that when the read pointer reaches the write pointer, further fetching of the data is suspended until the write pointer has advanced.