This function is a controlled oneshot with parameterizable values of low and high peak output, input trigger value level, delay, and output rise and fall times.
		The one-shot takes an input value. This value is used as the 
			independent variable in the piecewise linear curve described by the 
			coordinate points of the cntl_array and 
			pw_array pairs. From the curve, a 
			pulse width value is determined, and the oscillator will output a pulse of 
			that width, delayed by the delay value, and with specified rise and fall 
			times. The amplitude of the pulse is determined by the values assigned to the 
			out_low and out_high parameters.
		
		The output pulse is controlled by means of the clk input. When this input reaches the level assigned 
		to the clk_trig parameter, the pulse is triggered, on either the rising or falling edge of the clock, 
		in accordance with the setting of the pos_edge_trig parameter.
		
If the model parameter pos_edge_trig is TRUE (default), the one-shot is triggered by a rising clock edge at the value of clk_trig. If pos_edge_trig is FALSE, the one-shot will be triggered on the falling edge.
		The 
		retrig parameter 
		specifies whether or not the one-shot can be retriggered. By default, the oneshot cannot be retriggered. 
		Set the retrig parameter to TRUE in order to retrigger this oneshot. 
		
		Upon triggering, the output reaches its high value after time:
rise_delay + rise_time
and its initial value again after time:
		 PulseWidth + fall_delay + fall_time.
		
		
		The clr input to the device is used to reset the state of the function so that it is possible to retrigger. The clr signal must be higher than 
			clk_trig to achieve this.
		
		    Array sizes of 2 for both the 
			cntl_array and the pw_array 
		will yield a linear variation of the pulse width with respect to the 
		control input. Any sizes greater than 2 will yield a piecewise linear 
		transfer characteristic.
		
Parameters
| Parameter | Description | Default | Limits | 
|---|---|---|---|
| cntl_array | Control in array (at least 2 values separated by a space). | 0 | |
| pw_array | Pulse width array (at least 2 values separated by a space). | 1.0e-6 | min=0 | 
| clk_trig | Clock trigger value. | 0.5 | |
| pos_edge_trig | Positive (TRUE)/Negative (FALSE) edge trigger switch. | TRUE | |
| out_low | Output low value. | 0 | |
| out_high | Output high value. | 1 | |
| rise_time | Output rise time. | 1.0e-9 | |
| rise_delay | Output delay from trigger. | 1.0e-9 | |
| fall_delay | Output delay from pw. | 1.0e-9 | |
| fall_time | Output rise time. | 1.0e-9 | |
| retrig | Retrigger switch. | FALSE |