Tomi Kinnunen <tkinnu@cs.joensuu.fi> wrote in
news:f7gh68$r93$1@news.cs.joensuu.fi:
> Dear DSP gurus,
>
> Thanks for so many replies! Lots of new information
> for me ...
>
> My primary goal is to learn and develop my skills in real-time DSP
> programming rather than learn audio algorithms using PC and
> soundcard (I have done that already). I hope to learn skills which
> would be useful if I decide to step one day into DSP industry.
> Whatever -- to get a new hobby if nothing else. :-)
>
> To be more precise, I wish to:
>
> (1) Learn some basic principles in programming chips,
> (not necessarily DSP), how does this stuff work,
> how is programming and debugging different from PCs, etc.
> (2) Use some tool(s) which are sufficiently easy to learn and
> don't get me too frustrated in the beginning. Something with good
> support material, books, tutorials, code examples, whatever that
> can help me to get started quickly. Something to have fun with!
> (3) Use some tool(s) which are possibly used in the "real world".
>
> Based on your feedback and the website, some evaluation board/kit
> from Analog Devices seems a good starting point. Any specific
> recommendations? What is the main difference between Blackfin and
> SHARC, for instance? Floating point arithmetics was mentioned with
> SHARC, this sounds good to me..
Sharc is a 32 bit fixed and floating point DSP. For many situations it
will be easier to program. Many audio applications require better math
precision that 16 bits. With a Blackfin, this means coding with double
precision which is more complicated. Floating point can also be very
handy. This is a single instruction in a SHARC.
OTOH, Blackfin is a very fast, low power DSP. If you want to run on
batteries, this would be a good choice.
If you go SHARC, I would go ADSP-21369. I don't have a strong preference
in Blackfin.
>
> .. And a few terrible newbie questions as well :-)
>
> 1) Are DSP chips usually programmed using high-level language,
> assembler,
> inline assembler?
DSPs are programmed in both C and assembly. The ADI assembly is very easy
to learn and look a bit "C-Like".
> 2) What is VisualDSP++ and does it have some relation to Visual C++?
VDSP is ADI's development software. It includes support for C & Assembly.
It has nothing in common with Visual C++
> 3) What is the difference between evaluation board and development
> board? 4) Does an evaluation board/development board run also in
> standalone mode,
> without computer?
I think they are the same. The EZ Kit runs standalone. It includes a
built in debugger that you will find very useful.
>
> Again, thanks a lot for your information and guiding me
> to right direction!
>
> Cheers,
> Tomi
>
>
>
>
>
>
>
>
> Tomi Kinnunen <tkinnu@cs.joensuu.fi> wrote:
>:
>: Dear DSP and audio gurus,
>:
>: I have a few years experience with DSP theory and practise,
>: mostly in Matlab and related to speech processing.
>: My original background is in computer science; I am familiar with
>: some "real" programming also :-) I've implemented some simple audio
>: effects like EQ, chorus/flanger, and compressor.
>:
>: I've been thinking to extend my DSP and programming know-how to some
>: hardware-oriented / embedded / realtime programming. I was thinking
>: maybe programming some audio effects to somekind of chip would
>: be good project to learn some hardware-oriented realtime
>: signal processing. What do you think?
>:
>: I am interested to purchase somekind of chip/board that I can
>: connect easily to a computer (e.g. via USB), where I can
>: program my own stuff. However, this device should be operating
>: totally without computer after it has been programmed -- e.g.,
>: to be used as a guitar or karaoke effect. What is this kind of
>: device called, does there exist one? :-) Please help me to get
>: started with some basic terminology so that I know what I need to
>: look for.
>:
>: Thank you !
>: Tomi Kinnunen
>
--
Al Clark
Danville Signal Processing, Inc.
--------------------------------------------------------------------
Purveyors of Fine DSP Hardware and other Cool Stuff
Available at http://www.danvillesignal.com
Reply by Tomi Kinnunen●July 16, 20072007-07-16
Dear DSP gurus,
Thanks for so many replies! Lots of new information
for me ...
My primary goal is to learn and develop my skills in real-time DSP
programming rather than learn audio algorithms using PC and
soundcard (I have done that already). I hope to learn skills which
would be useful if I decide to step one day into DSP industry.
Whatever -- to get a new hobby if nothing else. :-)
To be more precise, I wish to:
(1) Learn some basic principles in programming chips,
(not necessarily DSP), how does this stuff work,
how is programming and debugging different from PCs, etc.
(2) Use some tool(s) which are sufficiently easy to learn and
don't get me too frustrated in the beginning. Something with good
support material, books, tutorials, code examples, whatever that
can help me to get started quickly. Something to have fun with!
(3) Use some tool(s) which are possibly used in the "real world".
Based on your feedback and the website, some evaluation board/kit
from Analog Devices seems a good starting point. Any specific recommendations?
What is the main difference between Blackfin and SHARC, for instance? Floating
point arithmetics was mentioned with SHARC, this sounds good to me..
.. And a few terrible newbie questions as well :-)
1) Are DSP chips usually programmed using high-level language, assembler,
inline assembler?
2) What is VisualDSP++ and does it have some relation to Visual C++?
3) What is the difference between evaluation board and development board?
4) Does an evaluation board/development board run also in standalone mode,
without computer?
Again, thanks a lot for your information and guiding me
to right direction!
Cheers,
Tomi
Tomi Kinnunen <tkinnu@cs.joensuu.fi> wrote:
:
: Dear DSP and audio gurus,
:
: I have a few years experience with DSP theory and practise,
: mostly in Matlab and related to speech processing.
: My original background is in computer science; I am familiar with
: some "real" programming also :-) I've implemented some simple audio effects
: like EQ, chorus/flanger, and compressor.
:
: I've been thinking to extend my DSP and programming know-how to some
: hardware-oriented / embedded / realtime programming. I was thinking
: maybe programming some audio effects to somekind of chip would
: be good project to learn some hardware-oriented realtime
: signal processing. What do you think?
:
: I am interested to purchase somekind of chip/board that I can
: connect easily to a computer (e.g. via USB), where I can
: program my own stuff. However, this device should be operating
: totally without computer after it has been programmed -- e.g.,
: to be used as a guitar or karaoke effect. What is this kind of
: device called, does there exist one? :-) Please help me to get
: started with some basic terminology so that I know what I need to
: look for.
:
: Thank you !
: Tomi Kinnunen
--
Reply by robert bristow-johnson●July 13, 20072007-07-13
On Jul 12, 6:44 pm, Vladimir Vassilevsky <antispam_bo...@hotmail.com>
wrote:
> robert bristow-johnson wrote:
> > i see no reason why the DSP manufacturers (like TI, ADI) don't have
> > something that is completely self-contained, at least for assembly
> > language) that talks to the PC (via USB, whatever) and has C-callable
> > libraries for PC/DSP communications, for loading and launching DSP
> > code, and some diagnostics for stopping, breakpoints, and single-
> > stepping. you should be able to get all of this for $200 or $300.
>
> You pretty much described what is a modern DSP eval board offered by ADI
> or TI.
i realize that, but two issues: price and closely related was the
ability to do serious *program* debugging (as opposed to hardware)
with the cheap board. in the olden days, ADI's SHArC boards required
a very expensive emulator to attach to it to do breakpoints and single-
stepping. that functionality (along with register/memory examine and
modify and instruction disassembly) should be standard for the cheap
eval board.
> They also provide for several megabytes of flash memory, so the
> board can run as a standalone. Th=E5 typical price is at the order of $50=
0=2E
>
> > even if the manufacturer loses a little money on the EVM kits, it's
> > really just the cost of advertizing because the manufacturer with the
> > most accessable development resources is likely to be the manufacturer
> > that "wins" and the engineer who gets the EVM kit will be biased in
> > favor of that particular chip or family thereof.
>
> I don't need those kits, and I don't know how those kits can help me in
> the development of hw and sw. It is like playing in a sand box instead
> of doing the actual construction.
if there is sufficient memory on the eval board, you can have the
algorithm/DSP/software guys developing and testing algorithms for the
target device while the hardware guys are developing and testing the
hardware of the target device (unless there is some outboard ASIC that
is intrinsically used in the algs). the migration of the algs from
the eval board to the target would be, if you keep your ducks in line,
relatively painless.
r b-j
Reply by Steve Underwood●July 12, 20072007-07-12
robert bristow-johnson wrote:
> anyway, that gave me a yardstick to compare other dev systems to. i
> see no reason why the DSP manufacturers (like TI, ADI) don't have
> something that is completely self-contained, at least for assembly
> language) that talks to the PC (via USB, whatever) and has C-callable
> libraries for PC/DSP communications, for loading and launching DSP
> code, and some diagnostics for stopping, breakpoints, and single-
> stepping. you should be able to get all of this for $200 or $300.
> even if the manufacturer loses a little money on the EVM kits, it's
> really just the cost of advertizing because the manufacturer with the
> most accessable development resources is likely to be the manufacturer
> that "wins" and the engineer who gets the EVM kit will be biased in
> favor of that particular chip or family thereof.
EVMs are available for most major DSPs, but they cost about twice your
target price. The usual target is to sell them around break even. Makers
want them cheap and accessible, so lots of students get to play with
them. They don't want to price them too high. On the other hand, the
world's universities will absorb tens of thousands, so they don't want a
significant per unit loss, either.
I don't think companies who are going to buy significant quantities care
too much about EVMs these days. They care a lot about effective and cost
effective development tools, but not so much about EVMs. I think they
are more for colleges and training courses.
Steve
Reply by Vladimir Vassilevsky●July 12, 20072007-07-12
robert bristow-johnson wrote:
> i
> see no reason why the DSP manufacturers (like TI, ADI) don't have
> something that is completely self-contained, at least for assembly
> language) that talks to the PC (via USB, whatever) and has C-callable
> libraries for PC/DSP communications, for loading and launching DSP
> code, and some diagnostics for stopping, breakpoints, and single-
> stepping. you should be able to get all of this for $200 or $300.
Robert,
You pretty much described what is a modern DSP eval board offered by ADI =
or TI. They also provide for several megabytes of flash memory, so the=20
board can run as a standalone. Th=E5 typical price is at the order of $50=
0.
> even if the manufacturer loses a little money on the EVM kits, it's
> really just the cost of advertizing because the manufacturer with the=
> most accessable development resources is likely to be the manufacturer
> that "wins" and the engineer who gets the EVM kit will be biased in
> favor of that particular chip or family thereof.
I don't need those kits, and I don't know how those kits can help me in=20
the development of hw and sw. It is like playing in a sand box instead=20
of doing the actual construction. There are many different reasons to=20
prefer a chip, a family or a manufacturer. The availability of the eval=20
board would be the least valid reason for me.
Vladimir Vassilevsky
DSP and Mixed Signal Design Consultant
http://www.abvolt.com
Reply by robert bristow-johnson●July 12, 20072007-07-12
On Jul 12, 9:08 am, "Vladimir Vassilevsky"
<antispam_bo...@hotmail.com> wrote:
>
> The best thing for learning and programming the audio algorithms is a PC
> with a sound card.
and either a C compiler/IDE (like VC++) and/or MATLAB (or Octave).
but then you are processing sound files and not doing real-time
processing, unless you can efficiently hook up to the sound card and
deal with the latency crap from the PC.
> The standalone DSP is pretty much the same thing, PLUS
> messing up with the implementation issues like linker files, memory
> sections, low level i/o and assembly level optimization. You can enjoy the
> later with any embedded MCU, not necessarily a DSP. The real question is
> what goal are you trying to accomplish.
this is old stuff now, but some of the issues are timeless.
about a decade ago i (with a little help from two of the Turtle Beach
engineers that i got to know) reverse engineered the Turtle Beach
Multisound or Tahiti cards enough that i could, via the ISA bus, reset
the DSP56001 and load my own boot code into it. this boot code, after
initializing all of the hardware it needed to, took care of the sample
I/O and host communications (for coefficients/parameters), so the user
didn't have to. it also had an optional debugger (with a
disassembler) that you could use to even single step your code. the
sound card was $200 and everything else was free or stealable (like
the Mot assembler the PC C compiler).
sometime later, Mot came out with a little stand-alone EVM board for
$150.
anyway, that gave me a yardstick to compare other dev systems to. i
see no reason why the DSP manufacturers (like TI, ADI) don't have
something that is completely self-contained, at least for assembly
language) that talks to the PC (via USB, whatever) and has C-callable
libraries for PC/DSP communications, for loading and launching DSP
code, and some diagnostics for stopping, breakpoints, and single-
stepping. you should be able to get all of this for $200 or $300.
even if the manufacturer loses a little money on the EVM kits, it's
really just the cost of advertizing because the manufacturer with the
most accessable development resources is likely to be the manufacturer
that "wins" and the engineer who gets the EVM kit will be biased in
favor of that particular chip or family thereof.
r b-j
r b-j
Reply by Roman Rumian●July 12, 20072007-07-12
Vladimir Vassilevsky napisa�(a):
(...)
> The best thing for learning and programming the audio algorithms is a PC
> with a sound card. The standalone DSP is pretty much the same thing, PLUS
> messing up with the implementation issues like linker files, memory
> sections, low level i/o and assembly level optimization. You can enjoy the
> later with any embedded MCU, not necessarily a DSP. The real question is
> what goal are you trying to accomplish.
The goal is "(...)somekind of chip/board that I can
connect easily to a computer (e.g. via USB), where I can
program my own stuff. However, this device should be operating
totally without computer after it has been programmed -- e.g.,
to be used as a guitar or karaoke effect (...)"
So, you are right that maybe ARM, 32-bit AVR or dsPIC would be also
good, because of cheap(free ?) and good development tools (IDE,
debugger/emulator interfaces), but they have fixed-point architecture.
Regards
Roman Rumian
Reply by Vladimir Vassilevsky●July 12, 20072007-07-12
"Andor" <andor.bariska@gmail.com> wrote in message
news:1184246371.444002.224250@57g2000hsv.googlegroups.com...
>
> Don't forget that VisualDSP comes with a free RTOS (VDK) with built-in
> debugger support.
VDK is pathetic.
> However, for the problem at hand, either ForEver
> (tm) or WhileOne (c) should suffice as well.
Very true.
VLV
Reply by Andor●July 12, 20072007-07-12
On 12 Jul., 02:05, Al Clark <acl...@danvillesignal.com> wrote:
> "Michael K. O'Neill" <mikeathon2...@nospam.hotmail.com> wrote innews:Kp6li.8069$bz7.1241@newssvr22.news.prodigy.net:
>
>
>
>
>
>
>
> > "Jim Thomas" <jtho...@bittware.com> wrote in message
> >news:1399raltddmdf70@corp.supernews.com...
> >> Tomi Kinnunen wrote:
> >> > I am interested to purchase somekind of chip/board that I can
> >> > connect easily to a computer (e.g. via USB), where I can
> >> > program my own stuff. However, this device should be operating
> >> > totally without computer after it has been programmed -- e.g.,
> >> > to be used as a guitar or karaoke effect.
>
> >> An eval board from a DSP chip vendor is likely to do what you're
> >> asking.
> >> Check for appropriate audio interfaces before purchasing though.
>
> >> A better solution could be one of the offerings from Danville Signal
> >> Processinghttp://www.danvillesignal.com/- the principal there is Al
> >> Clark, a regular here on comp.dsp.
>
> >> Good luck, and have fun with this.
>
> >> --
> >> Jim Thomas Principal Applications Engineer Bittware, Inc
> >> jtho...@bittware.com http://www.bittware.com (603) 226-0404 x536
> >> Failure is always an option
>
> > The offerings from Danville seem a bit pricey for a hobbyist,
> > particularly when you consider that he also needs a development
> > environment, RTOS etc.
>
> I agree that an eval board from one of the DSP manufacturers may be a
> good choice. Analog Devices is the dominant player in audio (discounting
> telephony). I would go this route over TI or NXP. The major cost of any
> board purchase will be the time spent using it. I think you will get more
> benefit by developing skills with a popular family of devices.
>
> Eval boards typically include some dev tools. In the ADI case, this
> includes a Kit version of Visual DSP and a built-in debugger (ICE). We
> license the same debugger from ADI and also include a KIT license of
> Visual DSP with our dspstak 21369 with ICE boards.
Don't forget that VisualDSP comes with a free RTOS (VDK) with built-in
debugger support. However, for the problem at hand, either ForEver
(tm) or WhileOne (c) should suffice as well.
:-)
Regards
Andor
Reply by Vladimir Vassilevsky●July 12, 20072007-07-12
"Roman Rumian" <usun_torumian@agh.edu.pl> wrote in message
news:f74l45$a8r$1@news.agh.edu.pl...
a popular family of devices.
>
> I agree, that The SHARC evalutaion board is the best platform for Tomi.
>
>
> Why not TI C6713 ?
>
> Its not so perfect for audio (hardware architecture, easy of
> programming) like SHARC.
>
> Anyway, TI chips are cheapest, so may be interesting for big volume
> production, but this is not the case.
>
The best thing for learning and programming the audio algorithms is a PC
with a sound card. The standalone DSP is pretty much the same thing, PLUS
messing up with the implementation issues like linker files, memory
sections, low level i/o and assembly level optimization. You can enjoy the
later with any embedded MCU, not necessarily a DSP. The real question is
what goal are you trying to accomplish.
Vladimir Vassilevsky
DSP and Mixed Signal Consultant
www.abvolt.com