DSP in data
acquisition
Short introduction to DSP
processors and data acquisition
The Positron Brain from the Isaac
Asimov's SF novels - is still a SF, but there is a simple fact
coming out of this. We all are surrounded by a large number of
''devices'' whose ''behavior'' is pretty complicated and demands
''constant monitoring of the outside world and answering to its
impulses''. The stormy evolution of these ''electromechanical
creatures'' develops in front of our eyes. From ENIAC to CRAY,
from Spectrum to Pentium, automobiles that ''know'' if you
fastened the seatbelts or not, that outside is raining or not,
vacuum cleaners that ''know'' how dirty is your carpet. All of
them have their ''brain'' made of silicon chips, and all of them
speak a simple language. A language that uses two digits, 0 and
1. And although the limits between these species are not defined
so precisely, we can make a selection of those whose ''brains''
consist of a DSP processor. The fact that differs these species
from others and influenced their appearance in this evolution is
the simple need for data processing in real time. The DSP
processor architecture is practically optimized for this
purpose. Data processing in real time demands an instant answer.
In other means it demands reaction proportional to the speed of
signal arrival.
Every late reaction equals to
catastrophe and indicates the device is out of function (we
should compare this with the late reaction of a man who faces a
deadly snake, his slow muscle reaction to imposed danger -
instead of running away).
DSP (Digital Signal Processing)
or Digital Signal Processor (device that performs a digital
signal processing) on the first and honourable place hides the
word D-I-G-I-T-A-L. It just accents us that the language of
these devices is digital. The senses and sensors observe the
outside physical activities as a continual process. We must
invest additional effort to translate these signals to DSP-to a
language understandable only by it. This job of translation is
performed by A/D converters. Then the result of ''the
thinking'' of a DSP processor has to be transmitted to the
outside world in an analogue form (continual). This job is
performed by D/A converters. So A/D and D/A converters are a
liaison(connection) between the analog and digital world.
Necessary step in the process of data acquisition is translation
of the signal from the outside world into data understandable to
the processor. We should say it is a process in which a
continual time function transforms one-on-one into discrete
form. This is how we do it: in equal intervals of time, we
measure values of continuous function. This time interval is
named sampling period and its reciprocal value is sampling rate.
The instant value of the function is called sample. In order not
to loose any valuable information, it is absolutely necessary
for the sampling speed to be at least two times higher then the
highest speed of change of the function. If this speed is not
high enough, the results shall confuse us and we are shown a
wrong shape of the discrete function.
The instant value of the function
can take each value from an interval and should be presented
with a finite number of levels (2 on the power of N levels
corresponds to n bits). This process is called quantisation. The
number of bits used for representing the analog signal is called
the resolution of A/D converter. Higher resolution allows us to
devide the interval into higher number of levels. This way we
can detect smaller changes in signal.
Data acquisition demands two
prerogatives to be fulfiled, in order to transfer the signal
from outer world to processor, in order to preserve the reality
and validity of information: a good sample speed and a good
resolution.
Why do we need signal translation
from analog to digital form?
There are two reasons for using
digital signal processing: productivity and flexibility.
Although the best components for analog signal processing have
great precision and resolution, the values of the variables in
the real world may have a wide dynamic range. We must consider
the influences of accumulated errors of the analogue components
in the chain of analog calculations on our final result. Just
like the unpredictable noise and drift. The analog signal
processing is influenced badly by limited dynamic range and
signal-noise ratio of analog components. The analog systems are
programmed ''firmly'', by their wiring and every change in
function demands additional work on hardware. On the other side
the flexibility of digital systems is obvious - when we have to
change the function of any device, we only have to modify the
program that controls this device's work, while the hardware
changes are minimal. Digital systems are less sensitive to
noise.
What is the relation between the
DSP processor and computers?
We can not deny that a great
number of tasks performed by DSP processors can also be
performed by computers. But the division of work that exists
among them is justified and fare. Computers are ''better'' in
making decisions based on complicated and large numerical data
and their analysis, while DSP processors are ''better'' in
signal processing in real time. Computers are being programmed
more comfortably, in higher programming languages, while
programs written for DSP processor must be efficiently written,
in order to be performed faster. DSP processors can efficiently
perform the role of senses for computers as well as the role of
the central nervous system of independent devices that have to
make a great number of routined decisions in real time. (It
would be strange and economically unjustified to see a housewife
that uses a ''Pentium'' processor for controlling her washing
machine). The speed of calculating or signal processing does not
only depend upon the clock on which the processor works, or on
the time necessary for memory access but also it depends on the
algorithm we use, and processor's architecture. In DSP
architecture, everything is subordinated to speed and commands
are performed in as less clocks as possible (if possible in
one). In order to access the program and data in one clock,
Harvard architecture is used, in which the two memory spaces are
divided (which is evidently different from fon Noyman's where
data and the program are stored in the same memory mapped
place).
We can solve the slow flux of
data by a technique called pipelining. We break instructions
into more steps (whose use is justified if the same operation is
being used on a large group of data)
The External Aquisitioning System
TL 10250
We can say TL10250 is a fast
external data acquisition system and also development system for
TI (Texas Instruments) DSP family processors . Data acquisition
is performed using two independent A/D converters at the speed
of 10MHz and resolution of 12 bits. Their processing in real
time and controlling the whole device is done by TI320C50 family
DSP. It is possible to store128.000 samples to the internal
memory (expandable to 1.024.000). Standardly the device has a
serial or parallel port trough which is connected to the PC
computer. Powering up, the device is waiting for the program to
be performed. The device receives the program trough one
of these ports. Of course this characteristic gives the device a
role of a developing system because the program is not written
into EPROM (this option is available for those who would always
like to use the TL10250 in the same way, without changing the
program). The main role of this device is data acquisition but
if this was its only function, I guess this device should have
been assembled without the DSP processor. But this way, the
acquisited data can be processed in real time. The speed of
acquisition is high enough for imaging, so the device can be
used as a sense of viewing, and as a sense of hearing for the
computer it is attached to. It can be also used as a digital
oscilloscope to 5 MHz for the signals that don't repeat, and
even more for the signals that repeat.
In other words, to make this
device work it is not necessary to have a magical stick.
Software will instruct the device what to do.
author: Aleksandar
Maksimović,dipl.eng
Contact: The author is a
development engineer in “TanLab Electronics” company, from
Belgrade. For all the questions in connection with this article
please call (phone 011/494-869) or amaxim@eunet.yu
translated by: Simeon
Todoran
|