摘要:
A method of carrying out a data fetch operation for a data-parallel processor such as a SIMD processor is described. The operation is specifically involving the use of a plurality of non-sequential data addresses. The method comprises constructing a linear address vector from the non-sequential addresses, and using the address vector in a block fetch command to a data store.
摘要:
Improvements Relating to Single Instruction Multiple Data (SIMD) Architectures A parallel processor for processing a plurality of different processing instruction streams in parallel is described. The processor comprises a plurality of data processing units; and a plurality of SIMD (Single Instruction Multiple Data) controllers, each connectable to a group of data processing units of the plurality of data processing units, and each SIMD controller arranged to handle an individual processing task with a subgroup of actively connected data processing units selected from the group of data processing units. The parallel processor is arranged to vary dynamically the size of the subgroup of data processing units to which each SIMD controller is actively connected under control of received processing instruction streams, thereby permitting each SIMD controller to be actively connected to a different number of processing units for different processing tasks.
摘要:
Improvements Relating to Single Instruction Multiple Data (SIMD) Architectures A parallel processor for processing a plurality of different processing instruction streams in parallel is described. The processor comprises a plurality of data processing units; and a plurality of SIMD (Single Instruction Multiple Data) controllers, each connectable to a group of data processing units of the plurality of data processing units, and each SIMD controller arranged to handle an individual processing task with a subgroup of actively connected data processing units selected from the group of data processing units. The parallel processor is arranged to vary dynamically the size of the subgroup of data processing units to which each SIMD controller is actively connected under control of received processing instruction streams, thereby permitting each SIMD controller to be actively connected to a different number of processing units for different processing tasks.
摘要:
A parallel processor is described which is operated in a SIMD manner. The processor comprises: a plurality of processing elements connected in a string and grouped into a plurality of processing units, wherein each processing unit comprises a plurality of processing elements which each have direct interconnections with all of the other processing elements within the respective processing unit, the interconnections enabling data transfer between any two elements within a unit to be effected in a single clock cycle.
摘要:
A method of generating a stream of non-contiguous memory addresses representing contiguous points in logical space is described. The method comprises: generating initializing parameters describing the contiguous points in the logical space; configuring a memory address engine with the initializing parameters; performing an algorithm in the memory address engine according to the initialising parameters to produce a plurality of non-contiguous memory addresses; and collating the non-contiguous memory addresses into the stream of memory addresses for output to a data memory. The present invention has particular application to SIMD processing techniques where there are a plurality of memory address engines.
摘要:
A processing apparatus for processing source code comprising a plurality of single line instructions to implement a desired processing function is described. The processing apparatus comprises:i) a string-based non-associative multiple—SIMD (Single Instruction Multiple Data) parallel processor arranged to process a plurality of different instruction streams in parallel, the processor including: a plurality of data processing elements connected sequentially in a string topology and organised to operate in a multiple—SIMD configuration, the data processing elements being arranged to be selectively and independently activated to take part in processing operations, and a plurality of SIMD controllers, each connectable to a group of selected data processing elements of the plurality of data processing elements for processing a specific instruction stream, each group being defined dynamically during run-time by a single line instruction provided in the source code, andii) a compiler for verifying and converting the plurality of the single line instructions into an executable set of commands for the parallel processor, wherein the processing apparatus is arranged to process each single line instruction which specifies an operation and an active group of selected data processing elements for each SIMD controller that is to take part in the operation.
摘要:
A system and method of broadcasting data to multiple targets across a system bus, such as the peripheral component interconnect (PCI) bus, that does not normally support broadcast transfers, in which one target responds to the bus transaction and the remaining targets listen in on the bus transaction to receive data from the system bus. The responding target stalls the bus transaction when any of the listening targets communicate to the responding target that they are temporarily unable to accept the data on the bus.
摘要:
An alternation network for use with a content addressable memory for implementing a divide and conquer algorithm is described. The alternation network comprises: a plurality of alternation modules connected in series together, each module comprising: a plurality of cascaded logic gates arranged to propagate a match parity signal via the gates along at least part of a matching result vector, the matching result vector being generated by execution of a matching instruction on the content addressable memory, and the logic gates being configured to change the parity of the match parity signal in accordance with the matching result vector; and a vector output arranged to output a parity level vector of the propagated match parity signal present at the each gate of the plurality of logic gates; a logic network for dividing the matching result vector into an odd match vector and an even match vector representing respectively odd and even numbered elements of the matching result vector, by use of the parity level vector, and means for writing a selected one of the odd and even match vectors to the content addressable memory.
摘要:
Process for preparing active polymer extrudate comprising polymer matrix and guest matter, the process comprising contacting a polymer substrate and guest matter with a plasticising fluid under dense phase, sub critical or supercritical plasticising conditions of elevated temperature and/or pressure to plasticise the polymer substrate and incorporate guest matter and extruding polymer substrate incorporating guest matter under dense phase, sub critical or supercritical conditions via an extrusion orifice into a collection zone or a mould with simultaneous or subsequent release of pressure, whereby extrudate is obtained comprising a solid admixture of polymer matrix and guest matter in form conferred by the orifice or the mould; a novel extrudate; composition thereof and apparatus for the preparation thereof, and use thereof in fibre processing techniques, medical applications such as in delivery of drugs and other agents such as imaging and diagnostic agents, tissue engineering, and as medical devices or aids such as delivery devices or aids for drugs, imaging and diagnostic agents, as tissue engineering devices or aids such as sutures, and the like; as an anti-microbial for example having bacteria-static or -cidal activity; as a natural or synthetic barrier capable of immobilising e.g. naturally occurring or artificially introduced poisons or toxins by e.g. absorption, interaction or reaction; in agrochemical or crop protection applications; in the processing of thermally labile fibres for use in dying, textiles, electronics etc below the polymer Tg, Tm or viscosity; in incorporation of dyes and other thermally labile materials into polymers that cannot be formed by traditional processes e.g. melt extrusion and the like; or in incorporation of surfactants into fibres to control polymer properties.
摘要:
An alternation network for use with a content addressable memory for implementing a divide and conquer algorithm is described. The alternation network comprises: a plurality of alternation modules connected in series together, each module comprising: a plurality of cascaded logic gates arranged to propagate a match parity signal via the gates along at least part of a matching result vector, the matching result vector being generated by execution of a matching instruction on the content addressable memory, and the logic gates being configured to change the parity of the match parity signal in accordance with the matching result vector; and a vector output arranged to output a parity level vector of the propagated match parity signal present at the each gate of the plurality of logic gates; a logic network for dividing the matching result vector into an odd match vector and an even match vector representing respectively odd and even numbered elements of the matching result vector, by use of the parity level vector, and means for writing a selected one of the odd and even match vectors to the content addressable memory.