EDA Interfaces

Guidelines for Creating Bus Transaction Input Files



To create the mastercommands.dat bus functional model simulation file, you must first create a bus transaction input file (input.dat) that describes the read, write, wrapping, and incremental burst options, as well as busy and idle transactions and periods of idleness that are initiated by the embedded processor core and directed to the PLD, and then use the exc_bus_translate utility to generate the mastercommands.dat file, which can then be used by the bus functional model to simulate bus transactions. The input.dat may contain only the following the bus transactions in the following high-level command syntax:

COMMAND ::=  WRITE ( START, SIZE, LENGTH, DATAVALUE, [ , DATAVALUE …] ); 	|
	     READ ( START, SIZE, LENGTH); 					|
	     READMATCH ( START, SIZE, LENGTH, DATAVALUE, [ , DATAVALUE …] ); 	|
	     INACTIVE ( CYCLES );
		 
READ ::= "read" | "read_i" | "read_w" 
READMATCH ::= ::= "readmatch" | "readmatch_i"  | "readmatch_w"
WRITE::= "write" | "write_i" | "write_w"
INACTIVE ::= "inactive"
START::= <integer>
SIZE::= "8" | "16" | "32"
LENGTH::= <integer>
DATAVALUE::= <integer>
IDLE::= "idle"
CYCLES::=<integer>
<integer>::= C style integer specified as unsigned decimal or hex.

The _i and _w suffixes denote a INCREMENTING BURST and WRAPPING BURST, respectively.

You may also include comments in the syntax. The following example shows an excerpt of a sample file that includes comments, preceded by two slashes (//):

read (1025, 8, 1);		// read byte at address 1025 
write (1024, 16, 1, 73);	// write the 16-bit value 73 into address 1024 
read (1025, 8, 3);		// read bytes at addresses 1025, 1026, 1027 
write (1024, 32, 3, 1 ,2, 3);	// write the values 1, 2, 3 into the words at
				// addresses 1024, 1028, 1032

When creating the Master Port High-Level Command File, use the following guidelines:


Back to Top

- PLDWorld -

 

Created by chm2web html help conversion utility.