Re: Audio "click" during knob rotation


jerry@tr2.com
 

On 2021-06-23 07:01, Julian N4JO wrote:
ency) are only really achieved when the inputs are
[...] In high hit-rate situations like encoder interfaces,
the increased overhead of interrupt handler architectures actually
reduces the performance,
I once was given a project with a TI DSP. I was given the hardware,
and created the firmware system from scratch. It needed to count Ethernet
packets. At first, I architected an interrupt driven system - one interrupt
per packet.

Then I realized that there really was no "main program" for the interrupt
to interrupt, and went to a polling loop instead.

The processor was underpowered for what it had to do, and I
pulled out all the stops to get it efficient. Things like
* Writing the whole thing in DSP assembler.
* structuring "If" statements so they usually failed. ( If the processor took a
jump, it would blow the instruction queue )
* Macros instead of subroutines
* Hand-unrolling small loops
* obsessing over the 64-instruction cache
* Pushing and popping ONLY registers that were actually used, for any
particular subroutine. This one was VERY labor intensive, and resulted
in lots of big comments at the tops of subroutines. But pushes & pops were expensive.

In the end, my processor kept up with a constant blast of minimum-length packets.

- Jerry KF6VB

Join QRPLabs@groups.io to automatically receive all group messages.