Digital signal processor and it's programming

Thread Starter

Parth786

Joined Jun 19, 2017
642
I had telephonic interview for embedded developer today. interviewer asked me some question on micro-controller and c programming. I answered some questions and could not answer some questions.I need your advice on my answer for DSP Processor.

Did I respond correctly to the following question.

Interviewer : What is DSP processor ? Where they use and how do you program ?

My reply : I have worked with 8051 and I have knowledge of ARM controller. I write c program for embedded project. I have never worked with DSP processor. But I have read it in course that DSP processor is type of processor that is design to perform digital signal operation. DSP processor use in Digital camera, mobile phone for image processing. I am not sure but we also programmed this in the same way as others do. we can program DSP processor in c language

Could it be better answer than this?
 

OBW0549

Joined Mar 2, 2015
3,566
Did I respond correctly to the following question. Interviewer : What is DSP processor ? Where they use and how do you program ?

My reply : I have worked with 8051 and I have knowledge of ARM controller. I write c program for embedded project. I have never worked with DSP processor. But I have read it in course that DSP processor is type of processor that is design to perform digital signal operation. DSP processor use in Digital camera, mobile phone for image processing. I am not sure but we also programmed this in the same way as others do. we can program DSP processor in c language
Your answer was "correct", so far as it went; however, I doubt it was comprehensive enough to satisfy the interviewer.

Digital signal processors are designed to execute digital signal processing algorithms by repeatedly performing simple mathematical operations on large arrays of data at extremely high speed. Mathematical operations are focussed on multiplication, addition and accumulation using large words of 32-, 40- and even 64-bits. Processor instructions typically are heavily pipelined and perform multiple operations on operands and manipulate the operand addresses simultaneously, all in a single instruction cycle. Special addressing modes, such as bit-reversed addressing (used in computing FFTs), are usually available.

Anything you can do on a DSP can also be done on a conventional microcontroller, although the microcontroller will be tens or even hundreds of times slower.

Could it be better answer than this?
Yes.
 

BobTPH

Joined Jun 5, 2013
3,810
Another note about programming. To take full advantage of the DSP hardware, you will probably need assembly language for at least the critical part of the DSP algorithm. A C compiler is unlikely to utilize it well.

Bob
 

Thread Starter

Parth786

Joined Jun 19, 2017
642
Anything you can do on a DSP can also be done on a conventional microcontroller, although the microcontroller will be tens or even hundreds of times slower..
So it's matter of speed. Digital Signal Processors use video, voice, audio, signals. We use a video camera for video recording , so we can use it in toll plaza. Like automated toll plaza system, We will monitor the car’s via video camera on real time.I think in this situation we will use DSP in place of conventional microcontroller, is it correct ?
 

OBW0549

Joined Mar 2, 2015
3,566
We will monitor the car’s via video camera on real time.I think in this situation we will use DSP in place of conventional microcontroller, is it correct ?
I've no idea. I could make a wild guess and say "yes", but my familiarity with digital signal processing is largely confined to its use in digital filtering. Perhaps someone else could comment.
 

MrChips

Joined Oct 2, 2009
24,432
There are two aspects of DSP that need further explanation.

Digital Signal Processing
Digital Signal Processor

Digital Signal Processing is the process of analyzing signals and information using digital techniques. The end goal is to produce useful results in the shortest computation time. As an example, radar requires emitting a known signal and extracting the echo which is usually diminished, dispersed, and buried in noise. Digital filter techniques are used to extract the signal buried in noise. An autonomous automobile (self-driven car) will use radar for many reasons.

An autonomous automobile will also employ image recognition in order to identify various objects such as traffic signs, road hazards, pedestrians, other traffic, etc. Digital signal processing is used extensively in order to analyze the surrounding scene in "real-time".

Digital Signal Processor refers to specialized hardware in order to implement digital signal processing techniques and algorithms. Digital signal processing involves a simple mathematical operation multiple times. The most common mathematical operation is multiplication and addition, i.e. Multiply and Add. At the heart of this operation is the MAC which stands for Multiply and ACcumulate. Many, if not all, DSP algorithms required multiplication of two arrays and the result is added to a previous result (accumulation). Hence DSP hardware would implement MAC of arrays at the core of its computational engine.

(You will notice that I intentionally omitted any reference to any programming language. DSP is not tied to any particular programming language or platform.)
 
Top