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.

3.2 Instantiating PLB Slave Designs Under Test<br />

When instantiating a PLB slave design under test, connect the PLB signals in the test bench to the<br />

new device and remove a PLB slave model instantiation. Ensure that the PLB slave address map has<br />

non-overlapping slave address space. The PLB slave model instantiation generics/parameters have<br />

a default slave address mapping as follows:<br />

Device 0 00000000-0003FFFF<br />

Device 1 00040000-0007FFFF<br />

Device 2 00080000-000BFFFF<br />

Device 3 000C0000-000FFFFF<br />

The PLB slave model has parameters for the address decode in the HDL file. These may be updated<br />

by the user to re-program the default slave address space for a single PLB slave instantiation. When<br />

multiple slave models are connected to a single PLB core, the user must ensure that the slave<br />

decode maps are mutually exclusive within a test bench. This can be accomplished through the BFL<br />

configure command, generic statements in the VHDL instantiations, or Verilog parameters in the<br />

model HDL files.<br />

3.3 Instantiating PLB Master Designs Under Test<br />

When instantiating a PLB master design under test, connect the master to the PLB master interface<br />

of the PLB core/arbiter. Each master will have an independent PLB interface as defined in the PLB<br />

architecture specification.<br />

Each toolkit model uses intercommunication signals called Synch_in(0 to 31) and Synch_out(0 to 31)<br />

to synchronize events in the test environment. The Synch_in(0 to 31) is the logical OR of all the<br />

Synch_out outputs of each instantiated models in the simulation environment which uses the<br />

intercommunication bus. When instantiating toolkit models which need to support the send/wait<br />

commands as described in “PLB <strong>Bus</strong> <strong>Functional</strong> Language” on page 29, ensure that the<br />

intercommunication logic within the test bench is updated to reflect the additional model<br />

instantiations.<br />

3.4 VHDL Signal Types<br />

The signal interface for the VHDL bus functional model wrappers and test bench are declared as<br />

IEEE std_logic and std_logic_vector signal types. If the bus functional models are integrated with a<br />

test bench environment which uses bit and bit_vector types, the wrappers may be eliminated so that<br />

type conversions do not have to be included in the model interfaces. When the wrappers are not<br />

used, please note that the I/O for each PLB toolkit model component contains primary inputs for<br />

configuration signals rather than the VHDL generic declarations which are in each wrapper.<br />

3.5 IEEE Packages<br />

The VHDL version of the PLB core RTL is translated from Verilog to VHDL with a source level<br />

language translator. The translated VHDL calls out some IEEE packages such as:<br />

10 <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!