发明名称 Memory access consolidation for SIMD processing elements using transaction identifiers
摘要 A data processing apparatus includes a plurality of processing elements arranged in a single instruction multiple data array. The apparatus includes an instruction controller operable to receive instructions from a plurality of instructions streams, and to transfer instructions from those instructions streams to the processing elements in the array, such that the data processing apparatus is operable to process a plurality of processing threads substantially in parallel with one another. A data transfer controller is provided which is operable to control transfer of data between the internal memory units associated with the processing elements, and memory external to the array.
申请公布号 US8762691(B2) 申请公布日期 2014.06.24
申请号 US200711772067 申请日期 2007.06.29
申请人 Rambus Inc. 发明人 Stuttard Dave;Williams Dave;O'Dea Eamon;Faulds Gordon;Rhoades John;Cameron Ken;Atkin Phil;Winser Paul;David Russell;McConnell Ray;Day Tim;Greer Trey
分类号 G06F9/312;G06F13/16;G06F12/00;G06F15/80 主分类号 G06F9/312
代理机构 The Neudeck Law Firm, LLC 代理人 The Neudeck Law Firm, LLC
主权项 1. A data processing apparatus comprising: a single instruction multiple data (SIMD) array of processing elements, each of which includes an internal memory unit, the processing elements being divided into a plurality of processing blocks, wherein the processing blocks are operable to process respective groups of data items; an array controller operable to receive instructions from a plurality of instruction streams, and to transfer instructions from said instruction streams to the processing elements in the array, such that the data processing apparatus is operable to process a plurality of processing threads in parallel with one another; and a channel controller operable to control transfer of data between the internal memory units associated with the processing elements, and memory external to the array, wherein the channel controller is operable to control access to the memory external to the array using external memory location information supplied by each of the processing elements in the array, the supplied external memory location information associated with an external memory location, the supplied external memory location information from a selected processing element in the array being transmitted to each of a plurality of non-selected processing elements, wherein each of the plurality of non-selected processing elements also requiring access to the external memory location registers a transaction identifier associated with a memory access to the external memory location and wherein the channel controller is operable to optimize data transfer operations to remove multiple accesses to the external memory location when a plurality of processing elements requires access to the external memory location by using corresponding transaction identifiers and wherein using corresponding transaction identifiers comprises at least one of the plurality of non-selected processing elements comparing a registered transaction identifier with incoming transaction identifiers for recovering data.
地址 Sunnyvale CA US