Name this DSP filter!

Status
Not open for further replies.

Tweedle_Dee

Newbie level 2
Joined
Aug 17, 2010
Messages
2
Helped
0
Reputation
0
Reaction score
0
Trophy points
1,281
Location
Oregon
Activity points
1,298
Hello,

I am trying to learn more about this piece of code I am using to prepare a signal for calculating settling time. As far a I can tell, it takes a curved square wave signal and "squares" it up so that the final settling value can be found and then the settling threshold calculated. I hope that makes sense. Specifically, I'd like to know what filter is being used so I can read more about it and manipulate it if needed. Hope this wasn't asking too much. Thanks for any help!

Here is the code (which is LTX Cadence):

running_average(ST_Clean_Waveform[site,i],ST_Waveform[site,i],32)
ST_Clean_Waveform[site,i] = ST_Clean_Waveform[site,i] / SeTm_Gain

--on_load code
x = 0.0
t = 0.0009
z = 0.0065

--Create an impulse
temp1 = 0.0
temp1[1] = 1.0

--Apply the time domain pole and zero
for j = 1 to 11999 do
y = ( 1.0 - z ) * temp1[j] -- zero
x = x + t * (temp1[j ] - x ) -- pole
temp1[ j ] = y + z * x
endfor

-- Scale fft for unity
temp1 = fft(temp1) * 6000.0

-- DC bin is half actual value
temp1 [ 2 ] = 0.0
temp1 [ 1 ] = temp1 [ 1 ] * 2.0
temp2 = fft(ST_Clean_Waveform [ site , i]) -- Measured waveform to frequency domain

--The vp_cmul procedure multiplies the complex vector element pairs of <array1> by the complex element pairs of <array2>
vp_cmul(temp1,1,temp2,1,temp3,1,6000) -- Apply correction
ST_Clean_Waveform [ site , i] = inverse_fft(temp3)
 

Status
Not open for further replies.

Similar threads

Cookies are required to use this site. You must accept them to continue using the site. Learn more…