-
Notifications
You must be signed in to change notification settings - Fork 39
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
blackfin control rate #33
Comments
implemented in a basic way. |
reopening this. never had time to do a satisfactory implementation and reverted to direct-set from the spi rx isr (bad). still storing global copy of module parameter data, with dirty flag, which is burning resources but will probably be useful. aleph/dsp/module.h |
i'm referring to a broader change in the architecture wherein control changes would be processed at a fixed rate on the blackfin, slower than the audio rate, instead of directly from the SPI RX interrupt. our current strategy is to use the bfin_ready GPIO to hold off sending from the avr32 until bfin is not currently processing an audio frame, and assuming that this means it has time to process an SPI transaction before the next audio frame. seems to work pretty well... but i'm working on restructuring the whole mess to something like this:
a complementary step would be to maintain a similar buffer for control changes, push param changes / events in SPI ISR, and process them in main loop once per audio block. |
we should be able to drastically improve blackfin performance with a well-considered control rate implementation.
will also let us get away with more in the numerical-precision department when e.g. applying control-rate filters.
The text was updated successfully, but these errors were encountered: