1

I have a DSP (Digital Signal Processor) with a very well defined application, (this explication will be simplified)

The DSP uses TDM (Time Division Multiplexer) frames to receive audio information, the audio information is processed (simple IIR (Infinite Impulse Response) filter) and then outputted thru TDM, mainly the application works on 2 interruptions:

Interruption 1: [4 TDM Frames received, SPORT buffer full]: when this interrupt is fired, the information is loaded to ping-pong buffer

Interruption 2: [Timer interrupt] When this interrupt is fired, the ping pong buffer information is passed thru the Filter and then loaded to the output TDM buffer so it gets transmitted by HW.

This application works great the timer is configured to run at 4 TDM frames each time so there is a delay between the data in and data out (processing) but there is no frames lost in the TDM stream.

The DSP is performing a endless loop (background worker) when there are no interruptions being used.

The DSP runs pretty cool but i want to make a temperature profile, so i need to increase the CPU usage, any idea on what can i put to my background worker to increase CPU usage and thus temperature?

4
  • 3
    Please define your alphabet soup. Forcing us to guess is fairly rude. Digital Signal Processor, Time Division Multiplexer, and Infinite Impulse Response are not exactly common abbreviations here. Commented Nov 7, 2017 at 21:06
  • It seems you already have a background worker keeping the CPU busy. This effectively means its running at 100%. There are other ways of increasing the temperature profile. It may depend on your processor, I/O accesses or memory fetches and memory interfaces. Please shed light on this if you want more details. Commented Jan 29, 2018 at 15:22
  • The most common way to heat up a processor is to have it perform complicated math without any breaks. I.e. no interrupts, just a range of functions to hit as much of the silicon as possible. Floating point and integer arithmetic combined in the appropriate mix to exercise those units in the DSP as much as possible. Doing a simple spin wait doesn't really hit all the functions of the device so you are limited on how hot you can make it. Commented Jun 6, 2018 at 16:00
  • Ask your EEs if there is anything like built-in linear voltage regulators or other things which you can use to heat up the SoC apart from the CPU.
    – jaskij
    Commented Aug 6, 2018 at 9:03

2 Answers 2

1

looks like this is a SHArC (i dunno what other DSP has "SPORT" s). i dunno which instructions heat up the processor more than others. but unless you're invoking the IDLE instruction, i don't see any instruction being hotter or cooler than others. i could be wrong. if i am wrong, the IIR filter uses the multiply and add operations every DSP instruction. the FIR also uses the modulo indexing operation. maybe doing that solid will warm up the SHArC core to the max. i dunno.

0

The easiest thing would be to double up the processing in interrupts 1 and 2.

Or even "N"-up it, for N a parameter, and then you do your temperature profile against N.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.