DSPRelated.com
Forums

Re: How to give floating point data to DSP using CC

Started by Keith Larson May 24, 2004
Hello bhaktavatsala

The floating point format is not an IEEE format and is described in the
users guide. This processor stores the bit values differently to
conserve register space and power as shown.

|<---- access as a 40b float(register) ---------------->|
|<---- access as a 32b float(memory)---->|
|<------ access as 32b long --------->|
+-----------------+-+
| 8b 2's comp Exp | 32b 2's compliment mantissa |
+-----------------+-+
|
Sign

Basically if you access data from memory, lets say data or coefficient
for an FIR, this data is most likely to be in 32b float format since it
is stored in a 32b memory. You may note here how odd it would be to
build and maintain a 40b (or greater) memory bus and that this would
consume extra silicon and therefor also power. However, when the MAC
operation occurs, you would like to keep as much precision as possible.
Since this occurs as a Rx+Rx operation, this is done with 40b float
precision, but unique to this processor, spanning only 1 register.

Format conversion functions, TMS_IEEE() and IEEE_TMS(), are found in
\DSK3\DSK3\COMMON\TMSFLOAT.CPP. If you want to look at some example code
that shows how to use these functions, REGVIEW.EXE (built from
REGVIEW.CPP) is a simple DOS Console type of application, so you dont
have to learn how to program windows. If you want to dive into Windows
programming, these functions are embedded in all of those programs as well.

Building applications

DOS Console Applications
------------------------
Built using Borland C++ ver 3.1. This is an older tool that only
compiles 16b DOS applications. The project files are found in
\DSK3\DSK3\BC31.PRJ. Note here that by being a DOS console appliation,
these applications dont have the ability to call the protected mode 32b
DLL support functions that access the PC printer port. These
applications work with DOS, Win31, Win95, Win98, WinMe and I am told
WinXP if you can figure out how to get the 'compatability mode' to work.
Another option, but I suppose WinXP has slammed this door shut by now,
is DIRECTIO (search for this on the web).

Windows Applications
--------------------
These applications will build using either Borland C++ 4.5, or MSVC ver
6.0. The project files are found in either \DSK3\DSK3\BC45.IDE, or in
\DSK3\DSK3\MSVC.WKS\DSK3DW. Note that for MSVC each of the component
applications is tree'd off of the main DK3DW workspace. Also, for the
applications to work with Windows NT derived OS's (WinNT, 2K and XP) you
need to build the windows applcations in 32 bit mode for either BC or MSVC.

Hope this helps
Keith Larson

DSP and Analog Consulting
http://home.comcast.net/~klarsondsp bhaktavatsala wrote:

> Dear all,
> I am giving input data through data file to TMS320vc33 DSP, and need to
> perform floating point operations on the received data.
>
> 1. What type of data does this processor accept ?
> 2. I tried to output, the input data file through DSP CC, and gave
>various formats of data through PC (data file), but the output was junk
>data. The aim of our program was to read the input data in float format
>and output the same thing.
>
> Can i get any sample programs for this particular processor.
> I am new to this processor, and help needed desperately.
>
> regards,
>
> Bhaktavatsala >=====
>"Give to the World the Best of You
> The Best in the World will come back to You"
>***************************************************************
>S.Bhaktavatsala
>*************************************************************** >
>
>__________________________________ >