摘要:
A data processing system is provided with a bus having separate write channels W and read channels R via which bus transactions are made. Bus transaction buffers 34 are provided within the bus structure to buffer write requests, particularly so as to alleviate problems associated with relatively slow bus slaves. The bus transaction buffers 34 are responsive to the memory addresses associated with write requests and read requests which pass through them to identify those to the same memory address, or memory addresses within a predetermined range, so as to either ensure a strict correct ordering of those transactions, read to follow write, or to satisfy a read following a write with a buffered write data value and then flushing the read request such that it does not reach its final destination.
摘要:
The present invention provides an apparatus and method for synchronizing a first pipeline and a second pipeline of a processor arranged to execute a sequence of instructions. The processor is arranged to route an instruction in the sequence through either the first or the second pipeline dependent on predetermined criteria, each pipeline having a plurality of pipeline stages including a retirement stage. Counter logic is provided for maintaining a first counter relating to the first pipeline and a second counter relating to the second pipeline. For each instruction in the first pipeline a determination is made as to when that instruction reaches a point within the first pipeline where an exception status of that instruction is resolved, and the counter logic is arranged to increment the first counter responsive to such determination. The processor is arranged to generate an indication within the second pipeline each time an instruction is routed to the first pipeline, and the counter logic is further arranged to increment the second counter responsive to that indication. Synchronisation logic is then provided which is arranged, when an instruction is in the retirement stage of the second pipeline, to determine with reference to the values of the first and second counters whether that instruction can be retired. If so, the retirement stage is arranged to cause an update of a state of the data processing apparatus dependent on the result of execution of that instruction.
摘要:
A translation lookaside buffer mechanism is described incorporating a set associative translation lookaside buffer operating in parallel with a fully associative translation lookaside buffer. Lockdown entries are stored within the fully associative translation lookaside buffer and non-lockdown entries are stored within the set associative translation lookaside buffer. Victim selection for the fully associative translation lookaside buffer 18 is performed using a control register within a coprocessor which is set under operating system software control.
摘要:
A windowing display using deferred drawing commands operates by processing the drawing commands that write to a tile 22 of a frame buffer 30 to form one or more new pixel values are stored within a tile memory 40. Dirty pixel data indicative of which pixels within the tile memory are dirty pixels storing new pixel values and which pixels within the tile memory are clean pixels not storing new pixel values is also formed. In dependence upon the dirty pixel data, the new pixel value stored within the tile memory are written to the frame buffer memory. Pixels stored within the frame buffer memory corresponding to clean pixels within the tile memory remain unaltered as they are not written.
摘要:
The technology described provides a technique for synchronization between pipelines in a data processing apparatus. The data processing apparatus comprises a main processor operable to execute a sequence of instructions, the main processor comprising a first pipeline having a first plurality of pipeline stages, and a coprocessor operable to execute coprocessor instructions in said sequence of instructions. The coprocessor comprises a second pipeline having a second plurality of pipeline stages, and each coprocessor instruction is arranged to be routed through both the first pipeline and the second pipeline. Furthermore, at least one synchronizing queue is provided coupling a predetermined pipeline stage in one of the pipelines with a partner pipeline stage in the other of the pipelines, the predetermined pipeline stage being operable to cause a token to be placed in the synchronizing queue when processing a coprocessor instruction, and the partner pipeline stage being operable to process that coprocessor instruction upon receipt of the token from the synchronizing queue. By this approach, the first and second pipelines are synchronized between the predetermined pipeline stage and the partner pipeline stage, and hence ensures that the pipelines are correctly synchronized for crucial transfers of information without requiring that strict synchronization at all stages is necessary.
摘要:
The present invention provides a data processing apparatus and method for evaluating condition codes comprising a pipelined processor operable to execute a sequence of instructions, a set of condition codes being maintained by the processor, and the state of the condition codes being set by execution of condition code setting instructions in the sequence. The sequence of instructions further includes conditional instructions that are conditionally executed depending on the state of a number of those condition codes, with the pipelined processor comprising a plurality of pipeline stages including a predetermined pipeline stage at which the state of the condition codes are set by the condition code setting instructions. Condition code evaluation logic is associated with the predetermined pipeline stage and is operable, when one of the conditional instructions is in the predetermined pipeline stage, to evaluate the state of the number of the condition codes in order to generate a pass signal indicating whether the conditional instruction is to be executed. Additional condition code evaluation logic is associated with a preceding pipeline stage, and is operable, when one of the conditional instructions is in that preceding pipeline stage, to evaluate the state of the number of the condition codes in order to generate an additional pass signal. Condition code setting instruction determination logic is operable to determine whether there is a condition code setting instruction in either the predetermined pipeline stage or any pipeline stages between said preceding pipeline stage and the predetermined pipeline stage.
摘要:
The present invention provides a technique for operating an integrated circuit comprising a plurality of circuit elements, with a plurality of serial test scan chains, each being coupled to a different one of the circuit elements. A scan chain selector is responsive to a specified scan chain specifying value to select a corresponding one of the plurality of test scan chains. A scan chain controller is also provided which has a serial interface for receiving signals from outside of the integrated circuit, the scan chain controller comprising an instruction decoder for decoding scan chain controller instructions received from the serial interface. In accordance with the present invention, the decoder is responsive to a first scan chain controller instruction to specify a pre-determined scan chain specifying value and a second scan chain controller instruction for decoding by the decoder. The provision of such a first scan chain controller instruction enables the efficiency of the testing procedure to be improved.
摘要:
A data processing system comprising a first circuit block 6 and a second circuit block 8 linked via an asynchronous first-in-first-out buffer circuit 12 is provided with a burst marker that identifies the first word in a burst transfer or an empty stage. The second circuit block 8 uses the burst marker to identify the last data word in a burst as being that word which immediately precedes such a burst marker.
摘要:
A windowing display using deferred drawing commands operates by processing the drawing commands that write to a tile 22 of a frame buffer 30 to form one or more new pixel values are stored within a tile memory 40. Dirty pixel data indicative of which pixels within the tile memory are dirty pixels storing new pixel values and which pixels within the tile memory are clean pixels not storing new pixel values is also formed. In dependence upon the dirty pixel data, the new pixel value stored within the tile memory are written to the frame buffer memory. Pixels stored within the frame buffer memory corresponding to clean pixels within the tile memory remain unaltered as they are not written.
摘要:
The present invention provides an apparatus and method for facilitating debugging of sequences of processing instructions. The apparatus comprises a processing circuit for executing processing instructions, the processing circuit having multiple states of operation, with each state of operation being assigned a context identifier to identify the state of operation. Further, logic is provided for facilitating debugging of sequences of processing instructions executed by the processing circuit. The logic comprises control logic, responsive to control parameters, to perform predetermined actions to facilitate debugging, and triggering logic for generating the control parameters dependent on data received from the processing circuit indicative of the processing being performed by the processing circuit. The triggering logic comprises at least one context identifier comparator for comparing a context identifier provided within the data received from the processing circuit with a predetermined context identifier, and to generate a signal indicating whether that context identifier matches the predetermined context identifier. By this approach, the present invention enables a data processing apparatus to be provided with tracing mechanisms and/or debugging mechanisms which can reliably operate even in situations where the sequences of processing instructions from different states of operation occupy overlapping regions in the memory's address space.