DVM - Design Verification Module

PulseLine() Test Objective

The PulseLine() test objective uses a pulse input source and configures the output as a resistive load. The input source is configured with the starting, pulse and final voltage values that are passed as arguments to the PulseLine() test objective function.

The PulseLine() test objective runs both a POP and transient simulation on the converter.

The test report  includes source, load, and frequency graphs as well as the following scalar values which are defined in the Measured Scalar Values section below:

In this Topic Hide

Syntax

The PulseLine() function has the following syntax with the arguments described in the table below:

PulseLine(REF, START_VOLTAGE, PULSE_VOLTAGE, FINAL_VOLTAGE)
PulseLine(REF, START_VOLTAGE, FINAL_VOLTAGE, FINAL_VOLTAGE, OPTIONAL_PARAMETER_STRING)  

Argument Range Description

REF

n/a

The actual reference designator of the DVM Source or the generic syntax of INPUT:n where n is an integer indicating a position in the list of managed DVM sources

START_VOLTAGE

 

The starting source voltage. The starting voltage can be a numeric value or a symbolic value, such as "Maximum."

PULSE_VOLTAGE

 

The pulse voltage. The pulse voltage can be a numeric value or a symbolic value, such as "Maximum."

FINAL_VOLTAGE

 

The final source voltage,.The final voltage can be a numeric value or a symbolic value, such as "Maximum."

OPTIONAL_PARAMETER_STRING

n/a

Parameter string with a combination of one or more timing parameters:

  • TIME_DELAY*
  • RISE_TIME*
  • PULSE_WIDTH*
  • FALL_TIME*
  • CYCLES_TO_RECOVER*

*    If more than one parameter is specified, join the parameter key-value pairs with a space, as shown in the example below. The order of the parameter names does not matter. This optional parameter string sets the time delay to 25us, and the rise time to 100us.  

Timing

DVM sets the timing parameters for the StepLoad() test objective based on values that you enter on the following two tabs in the DVM  Full Power Assist control symbol:

The time delay, rise time, pulse width, fall time, and simulation stop time are determined by these calculations:

\[ \text{TIME_DELAY} = \frac{\text{CYCLES_BEFORE_EVENT}}{\text{SWITCHING_FREQUENCY}} \]

\[ \text{RISE_TIME} =  \frac{ abs \left( \text{FINAL_VOLTAGE}-\text{START_VOLTAGE} \right)}{\text{SLEW_RATE}} \]

\[ \text{PULSE_WIDTH} = \frac{\text{PULSE_LINE_DURATION}}{\text{SWITCHING_FREQUENCY}} \]

\[ \text{FALL_TIME} =  \frac{ abs \left( \text{PULSE_VOLTAGE}-\text{FINAL_VOLTAGE} \right)}{\text{SLEW_RATE}} \]

 DVM then calculates the simulation stop time as follows:
\[ \text{STOP_TIME} = \text{TIME_DELAY} + \text{RISE_TIME} + \text{PULSE_WIDTH} + \text{FALL_TIME} +  \frac{\text{CYCLES_TO_RECOVER}}{\text{SWITCHING_FREQUENCY}}\]

Note: The switching frequency and cycles to recover parameters are not the actual measured values from a simulation; they are constant values taken from the DVM control symbol. Also, you can override time delay, rise time, and cycles to recover on a test-by-test basis by using the optional parameter string.

Annotation Value
X0 TIME_DELAY
X1 TIME_DELAY + RISE_TIME
X2 TIME_DELAY + RISE_TIME + PULSE_WIDTH
X3 TIME_DELAY + RISE_TIME + PULSE_WIDTH + FALL_TIME
Y0

START_VOLTAGE

Y1

PULSE_VOLTAGE

Y2

PULSE_VOLTAGE

Y3

FINAL_VOLTAGE

Source and Load Subcircuit Configuration

The PulseLine() test objective sets the source and load subcircuits to the following:

Source Load

Pulse Input Source

Resistive Load

Loads other than the output under test are set to the Resistive Load. All other sources are set to the DC Input Source.

Measured Scalar Values

The PulseLine() test objective measures the following scalar values:

Scalar Name

Description

sw_freq

A number which represents the converter switching frequency

vout{n}_recovery_time

The number {n} in the scalar name is an integer indicating a position in the list of managed DVM loads. The three possible return values are the following:

  • A number which represents the time the converter took to adjust the output voltage to within the regulation tolerance set in the Output tab of the Full Power Assist control symbol.
  • The value "never left regulation" is returned if the output under test never left the regulation window.
  • The value "left regulation and never recovered" is returned if the output under test leaves the regulation window and does not recover before the end of the simulation.

Measured Specification Values

In the following table, {load_name} is the name assigned to each load. The default value is LOAD. DVM forces each load name to be unique so that the scalar and specification values for each load are unique.

Scalar Name

PASS/FAIL Criteria

Min_V{load_name}

The minimum value of the output voltage during the simulation time is greater that the minimum specification value.

Max_V{load_name}

The maximum value of the output during the simulation time is less than the maximum specification value.

Max_V{load_name}_overshoot

The maximum value of the output during the simulation time is less than the maximum overshoot specification value.

Testplan Example

The PulseLine() test objective is not used in the built-in testplans. To setup a PulseLine() test objective, you can start with a built-in testplan, and change the StepLine() tests to PulseLine() tests. A copy of the built-in testplan is automatically copied to the working schematics directory when you run the testplan for the first time.

Shown below is a single PulseLine() test created by modifying the DC/DC (1-input/1-output) testplan. This test configures the line to pulse from the Minimum to Maximum symbolic values. Both values are defined on the Input tab of the Full Power Assist DVM control symbol. The timing of the pulse line event will be determined by the values on the Pulse Line tab of the Full Power Assist DVM control symbol. The load is set to 50% of the full load maximum value with a Load function.

*?@ Analysis Objective Source Load Label
Transient PulseLine(INPUT:1, Minimum, Maximum, Minimum)   Load(OUTPUT:1, 50%) Transient|Pulse Line|50% Load|Vin Minimum to Vin Maximum

Optional Parameter String

The following PulseLine() test objective uses the OPTIONAL_PARAMETER_STRING argument to set the output load to pulse between the Minimum to Maximum symbolic values and sets the pulse time delay to 25us, the rise time to 100us, the pulse duration to 1ms, and the fall time to 100us.

PulseLine(INPUT:1, Minimum, Maximum, Minimum, TIME_DELAY=25u RISE_TIME=100u PULSE_WIDTH=1m FALL_TIME=100u)

Test Report

You can view the complete test report in a new browser window here: PulseLine() Test Report. Below is an interactive link to the same test report.

© 2015 simplistechnologies.com | All Rights Reserved