Awhile back we were trying to figure out how to make a voltage-variable delay line in LTspice. Turns out there is a way to use one signal to delay another: there's an undocumented function delay(x,y). Unlike the documented one, delay y can be a simulation variable, like so:
Version 4 SHEET 1 880 680 WIRE -96 112 -112 112 WIRE 96 112 80 112 WIRE 112 112 96 112 WIRE 304 112 288 112 WIRE 80 144 80 112 WIRE 288 144 288 112 WIRE -112 160 -112 112 WIRE -112 256 -112 240 WIRE 80 256 80 224 WIRE 288 256 288 224 FLAG 80 256 0 FLAG 288 256 0 FLAG 96 112 input FLAG 288 112 delayed FLAG -112 256 0 FLAG -112 112 delay SYMBOL voltage 80 128 R0 WINDOW 3 24 98 Left 2 WINDOW 123 0 0 Left 2 WINDOW 39 0 0 Left 2 SYMATTR InstName V1 SYMATTR Value SINE(0 1 0.5) SYMBOL bv 288 128 R0 SYMATTR InstName B1 SYMATTR Value V=delay(v(input),v(delay)) SYMBOL voltage -112 144 R0 WINDOW 3 -75 149 Left 2 WINDOW 123 0 0 Left 2 WINDOW 39 0 0 Left 2 SYMATTR InstName V2 SYMATTR Value PULSE(0 4 0.2 3 3 1) TEXT 208 312 Left 2 !.tran 5 TEXT 168 48 Left 2 ;This shows how to make a variable delay.
Cheers
Phil Hobbs