If you have a problem or need to report a bug please email : support@dsprobotics.com
There are 3 sections to this support area:
DOWNLOADS: access to product manuals, support files and drivers
HELP & INFORMATION: tutorials and example files for learning or finding pre-made modules for your projects
USER FORUMS: meet with other users and exchange ideas, you can also get help and assistance here
NEW REGISTRATIONS - please contact us if you wish to register on the forum
Users are reminded of the forum rules they sign up to which prohibits any activity that violates any laws including posting material covered by copyright
Zero Delay SVF and Allpass based filter.
17 posts
• Page 2 of 2 • 1, 2
Re: Zero Delay SVF and Allpass based filter.
Sorry I am traveling and have no FS with me, so I cannot really appreciate what you are doing. From your remarks I had the impression that you expected a transfer function with zero delay, hence my input. I may be on the wrong track, though. At any rate, SVF with zero delay feedback topology is a well understood thing: you have three output pins for lowpass, bandpass, and highpass, respectively. Combining these you can implement other filter types like allpass, notch, etc.
Of course you can combine allpass filters to obtain lowpass, highpass, and other filters, but that seems like an unnecessary detour when starting out with SVF where you already have these filter types to begin with.
I think I should wait and refrain from further posts until I return.
Of course you can combine allpass filters to obtain lowpass, highpass, and other filters, but that seems like an unnecessary detour when starting out with SVF where you already have these filter types to begin with.
I think I should wait and refrain from further posts until I return.
-
martinvicanek - Posts: 1328
- Joined: Sat Jun 22, 2013 8:28 pm
Re: Zero Delay SVF and Allpass based filter.
Yes, i think you are right !
In fact i did not really evaluate the cpu..
Just having some blurred hope that something could be faster to calculate the variable coefficient,
maybe with approximation.. Or maybe not, but to see if it's possible to do in another way.
Yet i think that some optimization could be made in my current design,
almost sure that it will always be more instruction than a classic ZDF...
For the coefficient, also they could be hopped, so does it really count ?
Also my interest to this is not so much the particular SVF, one reason is that after this part of the book "The Art Of VA Filter Design",i fail miserably to implement anything..
So i get the idea that allpass substitution would be more easy for some other filters, maybe even faster sometime ?
The SVF was a step , but now going further in research, i'm not sure how much the complexity and usability would be..
Also i read somewhere that one advantage of ZDF is the way it could handle non linearity.
But for allpass, i don't know how they would interact..
But maybe, (maybe?) allpass substitution could also have some interest, for some customization..
In fact i did not really evaluate the cpu..
Just having some blurred hope that something could be faster to calculate the variable coefficient,
maybe with approximation.. Or maybe not, but to see if it's possible to do in another way.
Yet i think that some optimization could be made in my current design,
almost sure that it will always be more instruction than a classic ZDF...
For the coefficient, also they could be hopped, so does it really count ?
Also my interest to this is not so much the particular SVF, one reason is that after this part of the book "The Art Of VA Filter Design",i fail miserably to implement anything..
So i get the idea that allpass substitution would be more easy for some other filters, maybe even faster sometime ?
The SVF was a step , but now going further in research, i'm not sure how much the complexity and usability would be..
Also i read somewhere that one advantage of ZDF is the way it could handle non linearity.
But for allpass, i don't know how they would interact..
But maybe, (maybe?) allpass substitution could also have some interest, for some customization..
- Tepeix
- Posts: 361
- Joined: Sat Oct 16, 2021 3:11 pm
Re: Zero Delay SVF and Allpass based filter.
Yep sorry, i must refrain to post so much experimental and immature think..
But if you want to look at it, this one would be a better choice.
I was making a lot of unnecessary calculation and complication when adding 2 feedback..
(The level of Bp Hp could be normalized, with the same operation as the feedback,
only subtracting or adding those to their outputs.)
But if you want to look at it, this one would be a better choice.
I was making a lot of unnecessary calculation and complication when adding 2 feedback..
(The level of Bp Hp could be normalized, with the same operation as the feedback,
only subtracting or adding those to their outputs.)
- Attachments
-
- Allpass SVFv7.fsm
- (267.38 KiB) Downloaded 1105 times
- Tepeix
- Posts: 361
- Joined: Sat Oct 16, 2021 3:11 pm
Re: Zero Delay SVF and Allpass based filter.
Exploring more, i find a way to optimize a little with other allpass..
But then the coefficient have change for q1 q2... And are difficult to find..
Yes, very, and even more for the SVF, it seams very difficult to use allpass substitution not ending
with more instruction than classic ZDF design. Maybe they are some rare exception..
But what is cool is at reasonable setting the allpass way seams to stay stable at fast modulation
or low frequency..
Now i find the Moog ZDF filter from Martin, Thanks a lot, with this i could understand how to implement
the famous book of Vadim Zavalishin after the SVF !!)
I would also try other allpass filter, working at a MoogAlp, even if probably slower..
But then the coefficient have change for q1 q2... And are difficult to find..
Yes, very, and even more for the SVF, it seams very difficult to use allpass substitution not ending
with more instruction than classic ZDF design. Maybe they are some rare exception..
But what is cool is at reasonable setting the allpass way seams to stay stable at fast modulation
or low frequency..
Now i find the Moog ZDF filter from Martin, Thanks a lot, with this i could understand how to implement
the famous book of Vadim Zavalishin after the SVF !!)
I would also try other allpass filter, working at a MoogAlp, even if probably slower..
- Tepeix
- Posts: 361
- Joined: Sat Oct 16, 2021 3:11 pm
Re: Zero Delay SVF and Allpass based filter.
Finally i could make some more optimization on the SVF, but it stay slower than a classic ZDF..
Main problem is to copy the nyquiest behavior with resonance..
Here i let the resonance increase on high like a bell..
It's possible to adjust but take more calculation..
This way q1 and q2 are done more easily.
A little advantage of this one is that you get 2 allpass as output.
But seams not really useful.
(I might be crazy.. Calculating so much think, inverting allpass and feedback in some many way, yet i know that this will not be faster that ZDF..)
(Also, this one have an inverted bandpass output)
Main problem is to copy the nyquiest behavior with resonance..
Here i let the resonance increase on high like a bell..
It's possible to adjust but take more calculation..
This way q1 and q2 are done more easily.
A little advantage of this one is that you get 2 allpass as output.
But seams not really useful.
(I might be crazy.. Calculating so much think, inverting allpass and feedback in some many way, yet i know that this will not be faster that ZDF..)
(Also, this one have an inverted bandpass output)
- Attachments
-
- Allpass SVFv8.fsm
- (177.71 KiB) Downloaded 1109 times
- Tepeix
- Posts: 361
- Joined: Sat Oct 16, 2021 3:11 pm
Re: Zero Delay SVF and Allpass based filter.
I find another allpass type that could help. Not specially for the SVF but for filter based on allpass..
With this one it's possible to modify some instruction and we get easily in+allpass or allpass-in.
This help to remove 2 instruction.
But for one or the other result the modification are different so we could not get the 2 result..
Also it will be more convenient to get in-allpass, but the result is just the inverse.
Seeing the image you would see how, the arrow that go back down could be attached latter.
With this one it's possible to modify some instruction and we get easily in+allpass or allpass-in.
This help to remove 2 instruction.
But for one or the other result the modification are different so we could not get the 2 result..
Also it will be more convenient to get in-allpass, but the result is just the inverse.
Seeing the image you would see how, the arrow that go back down could be attached latter.
- Attachments
-
- Allpass for difference.fsm
- (43.06 KiB) Downloaded 1084 times
-
- Alps.png (2.76 KiB) Viewed 22646 times
- Tepeix
- Posts: 361
- Joined: Sat Oct 16, 2021 3:11 pm
Re: Zero Delay SVF and Allpass based filter.
Here's the MoogAlp.
This time with only one output and one feedback the allpass technique is more optimized.
Once again the drawback is the bell curve of the resonance.
There's some need to adjust it. here i do it in a fastest way but letting the res increase on high..
An interesting behavior is that here the res do not become sharper at nyquiest.
Note the external dnorm.. That's a problem of allpass substitution, we need a dnorm for each allpass.
So i go for an external one, that is supposed to feed every module that need it..
(I think it's gonna works but i do not test it for large schematic..)
This time with only one output and one feedback the allpass technique is more optimized.
Once again the drawback is the bell curve of the resonance.
There's some need to adjust it. here i do it in a fastest way but letting the res increase on high..
An interesting behavior is that here the res do not become sharper at nyquiest.
Note the external dnorm.. That's a problem of allpass substitution, we need a dnorm for each allpass.
So i go for an external one, that is supposed to feed every module that need it..
(I think it's gonna works but i do not test it for large schematic..)
- Attachments
-
- MoogAlp.fsm
- (158.09 KiB) Downloaded 1095 times
- Tepeix
- Posts: 361
- Joined: Sat Oct 16, 2021 3:11 pm
17 posts
• Page 2 of 2 • 1, 2
Who is online
Users browsing this forum: No registered users and 80 guests