Documentation

TLM Component Test Bench Generation Options

Verbose Messaging

This option generates verbose messages during test bench execution. The default is not to generate these messages.

Run-Time Timing Mode

This mode allows you to specify which timing mode the generated test bench and TLM component uses. With timing mode selected, the target annotates TLM component transactions with delays, and the initiator module honors them. When a quantum keeper is not used (see Temporal Decoupling), the initiator module synchronizes immediately following the transaction execution. When a quantum keeper is used, the initiator module uses temporal decoupling and does not synchronize to the annotated delays until the quantum is reached.

With timing mode not selected, the target does not annotate TLM component transaction with any delays. The initiator module and target only perform synchronization using zero-time wait calls.

Input and Output Buffer Triggering Modes

Input and output buffer triggering modes specify when data is moved from registers to buffers and back. In your TLM environment, these specifications are performed via a runtime configuration command. You can change them dynamically throughout simulation.

Input Buffer Triggering Mode

This option allows you to specify when data moves from the input register to the execution buffer.

The default is automatic mode. In this mode, the TLM component automatically moves input data sets from the input registers to the input buffer. If you instead choose manual mode, the initiator module must explicitly write a command to the command and status register to move the input data set from the register to the input buffer.

Manual mode enables an initiator module to reuse a complete or partial input data set for a subsequent execution of the algorithm, thereby saving simulation time by avoiding data TLM component transactions don't need. For example, if the target uses a full memory map and the initiator module detects that only one of the inputs is changing, the initiator module may execute TLM component transactions only for the changing input. The initiator module then writes a push command to execute the algorithm.

Output Buffer Triggering Mode

Specify when data is moved from the results buffer to the output register.

The default is automatic mode. In this mode, the TLM component automatically moves output data sets from the output buffer to the output registers. If you choose manual mode instead, the initiator module must explicitly write a command to the command and status register to move the output data set from the output buffer to the output registers.

Manual mode enables an initiator module to read only partial output data sets, saving simulation time by avoiding TLM component transactions that are not wanted. For example, if the target uses a full memory map and the initiator module is only interested in the data for one of the outputs, the initiator module can manually move the algorithm results to the register. The initiator module can then execute TLM component transactions only for the output of interest.

Was this topic helpful?