09.03.2013 Views

Processor Local Bus Functional Model Toolkit User's Manual

Processor Local Bus Functional Model Toolkit User's Manual

Processor Local Bus Functional Model Toolkit User's Manual

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

5.2.6 Conversion Cycles with Different PLB Device Sizes<br />

The PLB master model can be configured to be a 32-bit, 64-bit, or 128-bit device. When the PLB<br />

master model receives a PLB_MnSSize with PLB_MnAddrAck which represents a slave that is<br />

smaller than the configured PLB master size (Mn_Msize(0:1)), the PLB master will automatically<br />

generate additional cycles to complete the original requested transaction. These additional cycles can<br />

be referred to as “conversion cycles.” For example, a 64-bit PLB master will always generate one<br />

additional cycle when a 32-bit slave responds to a single transfer (M_Size=”0000”) read or write<br />

cycle. For line transfers, the PLB master completes the request when the appropriate number of<br />

words have been transferred as determined by the transaction width (MSize/SSize) and the transfer<br />

size (M_Size). See PLB architecture specifications for details on different device widths.<br />

5.2.7 General Purpose and Branch <strong>Processor</strong> Registers<br />

The PLB master model contains 32 general purpose registers (R0-31), a 32-bit synchronization<br />

register (SR) and a 32-bit condition register (CR). These registers can be used by the programmer to<br />

implement algorithms or conditions which affect the way in which the PLB master executes<br />

commands.<br />

The condition register is updated during ‘compare’ instructions. It provides a mechanism for testing<br />

and branching. The bits of the Condition Register are grouped into eight 4-bit fields, named CR Field<br />

0 (CR0)..., CR Field 7 (CR7). Instructions are provided to perform logical operations on individual CR<br />

bits and to test individual CR bits. The bits of the CR “fields” are interpreted as follows:<br />

- bit 0: Negative (LT) The result is negative.<br />

- bit 1: Positive (GT) The result is positive.<br />

- bit 2: Zero (EQ) The result is zero.<br />

- bit 3: undefined<br />

The synchronization register latches the Synch_in input. It can subsequently be referenced or reset<br />

using an ALU or move instruction.<br />

5.2.8 ALU Instructions<br />

The following instructions are available for arithmetic operations: (a detailed description is provided in<br />

“PLB Master Commands” on page 30)<br />

– Add()<br />

– Sub()<br />

– And<br />

– Or<br />

– Shift_Left<br />

– Shift_Right<br />

– Compare()<br />

20 <strong>Processor</strong> <strong>Local</strong> <strong>Bus</strong> <strong>Functional</strong> <strong>Model</strong> <strong>Toolkit</strong> Version 4.9.2

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!