SHARC vs ARM dev board, audio

Hello, I've been looking for a good entry point to programming embedded devices (as a sample project I want to build a digital guitar pedal for say... echo effects) and I already have experience in assembly language, operating systems, drivers, etc, but I'm new to the hardware side of things.

I almost thought I should buy a SHARC ez-kit, since a guitar pedal is a DSP application, but these run ~$300 and just today I read this post "Found: the perfect dev board"

formatting link

Which recommends this seemingly sweet board:

formatting link

Now this ARM based dev board looks pretty sweet, has the audio I/O jacks I need for a guitar pedal, and is only about $120, and I can't see any reason why not to go with this board instead. Can anyone else provide some insight on the matter?

Also, if I do buy the ARM board, do I need a usb/jtag connector to be able to program it from my computer?

Thanks.

Reply to
Muse
Loading thread data ...

formatting link

formatting link

In a recent thread I gave these links :

formatting link
?articleID=201807632

and

formatting link

This looks to have an impressive 'PC End' SW suite, as well as using capable, but still simple PCB Modules.

They seem to have both BlackFin (DSP, same vendor as SHARC), and ARM HW blocks.

This is still a 'new' project

-jg

Reply to
Jim Granville

formatting link

formatting link
?articleID=201807632

Hello Muse,

If you want an entry point into embedded programming a guitar effects pedal is going in at the deep end because that requires DSP (Digital Singal Processing) as well as all the other stuff.

The ARM is NOT a DSP. Some ARMs (9s etc) have very limited DSP functionality but nothing to touch a SHARC or Blackfin (or the TI family of DSPs).

The links from Jim are interesting but the cards are NO GOOD for your guitar pedal (wrong kind of ADCs on both)

The SHARC is very common in audio and I suspect is the most popular DSP for your kind of application.

So if you want to make a decent effects pedal with the least effort go for the SHARC - if you feel you can put the time and effort into it then try it on the ARM but you will struggle because the Olimex boards do not have audio type ADCs and DACs fitted.

Another route is the Analog Devices Blackfin which you might like because their are some open source tools (not common for DSPs) and even some 'open source' hardware. The Blackfin is a fixed point DSP so its harder to work with for high quality audio.

Good luck

Michael Kellett

formatting link

Reply to
MK

formatting link
?articleID=201807632

and even newer, silicon-wise, is this

formatting link

formatting link

probably the first single chip floating point DSC ?

150MHz, with a $495 f28335ezdsp development PCB.

-jg

Reply to
Jim Granville

formatting link
?articleID=201807632

This thing is nice. It is the plethora of built-in peripherals on F2812 DSCs that led me to choose to use it as a learning platform for 32-bit uC/DSPs. Now I'm about ready to build an important piece of lab instrumentation with this device. I tend not to like SBCs with someone else's chosen peripherals, when I'll likely want something slightly different in my final application. I'm also turned off my the usual reports of bugs in libraries and so forth. Makes me think that for relatively simple stuff (RS232, I2C, etc.) I'm better off writing my own. I can either spend my time writing and learning a whole lot, or pulling my hair trying to figure out how to get someone else's stuff to work.

So the TI eZdsp makes my happy since I just jumper it's headers to breadboards filled with whatever add-ons I need. But of course to do audio, one would have to build a board with decent ADC/DACs. Right now I'm mired in mostly fast bit-banging type applications, for which F2812 is super.

Right now, I have more use for an F2812-like fixed point DSC with more speed.

More power!!! That's all I want. I hope TI makes the C28xx family in at least 200, or better 225, more better 250, or even more MHz someday soon.

What would be even more cool, is an ADI DSC at 250-400MHz with the F2812-like EVMs and a SHARC-like assembly language.

--
Good day!

________________________________________
Christopher R. Carlen
Principal Laser&Electronics Technologist
Sandia National Laboratories CA USA
crcarleRemoveThis@BOGUSsandia.gov
NOTE, delete texts: "RemoveThis" and
"BOGUS" from email address to reply.
Reply to
Chris Carlen

TMS28xx is a kind of overgrown PIC. It is neither a DSP nor a 32-bitter.

If your goal is a very fast bit-banging, you might want to consider FPGA.

I've done several projects with TMS28xx and I am not so excited about it:

  1. This CPU is very power hungry.

  1. The internal ADC is crap.

  2. The CPU is 3.3V I/O whereas the most of the power components are 5V I/O.

  1. The CPU requires the dual power supply with sequencing.

  2. Many of the 28xx family members do not have the MsBSP port.

  1. There could be the intermittent states of the PWM outputs at the startup. Hardware buffers are required to block the outputs until the CPU will be fully initialized.

  2. If the code is executed from flash, the effective speed is about
70..80MHz. Not much, especially for the DSP tasks.

  1. Flash programming procedure is extremely slow.

  2. The internal architecture and the instruction set are miserable.

  1. There is only 128k of flash/32k RAM. Slow external bus, no cache.

You can use the benefits of the high clock rate only if the code is executed from the internal RAM. Flash wait states are limiting the performance.

If a grandma had the dick, she would be a grandpa.

Vladimir Vassilevsky DSP and Mixed Signal Design Consultant

formatting link

Reply to
Vladimir Vassilevsky

Oh dear, Vladimir,

You have had a bad time with the 'f2812. I used an 'f2808 and I was quite happy with it - true it does run a bit warm but I liked the on chip ADC which is pretty damn fast.

However I do agree that it's not the best dsp at actual dsp-ing !

I still think Muse should stick with the SHARC for his application.

Michael Kellett

formatting link

Reply to
MK

Isn't the ADI BlackFIN targeting that area ? A few years ago, ADI _did_ have some single chip FLASH DSPs, but I believe they did not like the scaling roadmap, and so switched to RAM based solutions.

Thus we now see BlackFIN much faster (600MHz) than any FLASH uC - most flash controllers are significantly constrained by their flash speeds.

It is rare to see any 32 but uC FLASH over 100Mhz, and often real memory bandwidth is quite a way below that, when wait states and cache effects are added.

DSCs seem to nudge that up to ~150MHz, but not showing much sign of further steps.

The new TI f28335 part, with FPU, seems one way to get higher 'mathpops', for a given flash speed.

No details showing yet on the Eval PCB

-jg

Reply to
Jim Granville

I don't think it's PIC-like. I started learning uC programming with that horrid thing. The F2812 has a straight address space, and multiple busses to allow it to do DSP thingys like load and store, plus incrementing pointers in one cycle. I don't know why you say it's not

32-bit. Read section 3.2.2 in the datasheet. Look at the CPU registers. The memory is addressed as 16-bits, and the external interface is 16 bits wide.

I don't know if the F2812 instruction set is very "orthogonal" (my brief flirtations with its assembly language suggests it's not very), but it's certainly nowhere near the PIC league of klunkers.

Yes, if needed. I use CPLDs now and am near to venturing into FPGAs.

It depends on what I'm doing. For the recent project, I need to count a QEP encoder, and output 16-32 bits with very low jitter every time there's a compare match. Matches may occur up to about 346kHz. The other thing it does is makes time-domain pulse sequences of arbitrary on and off times with 1us resolution, and with up to N transitions per sequence with NO jitter, also using compare match hardware. That is all fairly easy on the F2812. I've thought about building all that in a FPGA, but that would present problems with maintainability. Our computer programmer could understand what I'm doing with the DSP, but not in an FPGA.

Plus, the F2812 makes everything else a cinch like implementing a communications interface that is both machine and human understandable.

Not a low-power CPU for sure. I don't care for lab instruments.

Yeah. I would consider it useable as a 9.5 bit at it's rated speed. But that could still be useful for stuff. What do you expect though for an IC process that can yield a 150MHz CPU to be able to also produce a good ADC?

Most PLDs these days don't have 5V IO. Do ARMs or any other up-to-date

32-bit >100MHz CPUs talk 5V?

Don't know how it compares to other parts with different core/IO voltages.

Is that a chip bug? Have you worked with any others like the 56k parts for power stage driving? How do they compare?

Yeah, that's why you have to put the fast code in fast RAM. It's not difficult. But I would agree that the fast RAM supply is a bit skimpy and unfortunately not contiguous.

Not that bad.

Sounds like you don't like the F2812.

Well one of them has to have a ____ for that to be true.

--
Good day!

________________________________________
Christopher R. Carlen
Principal Laser&Electronics Technologist
Sandia National Laboratories CA USA
crcarleRemoveThis@BOGUSsandia.gov
NOTE, delete texts: "RemoveThis" and
"BOGUS" from email address to reply.
Reply to
Chris Carlen

Yeah. Every time I look at Blackfin it seems so media-oriented. I don't recall seeing the kind of peripherals I'm after. I'll take another look this weekend if I'm bored and surfing the web. If it does have them, then the price to pay would be added complexity of needing bootloading from an external flash or other storage. That's one reason I was happy when the F2812 came out. I could focus on doing stuff right away on a 150MHz chip rather than a whole lot of groundwork just to get the thing running.

I guess that will be difficult. It would still be useful to me for instance to have a chip with a block of RAM that could run say to

300-400MHz, while the integrated flash was still stuck at 50-100MHz. So there is a way for TI to scale up the speed from the F2812 without worrying about the flash.

I have 4000 lines of user interface communication and command parsing related code that works just fine in the 50-75MHz range. Then I have a couple hundred lines of fast stuff that needs to go in RAM. Seems like an Ok arrangement.

I was happy to see that part, then realized that I haven't used a floating point operation in a long time. But it does have a bit more RAM, so I might end up using it just for that. It can't hurt though, to have those FPU instructions available in case.

--
Good day!

________________________________________
Christopher R. Carlen
Principal Laser&Electronics Technologist
Sandia National Laboratories CA USA
crcarleRemoveThis@BOGUSsandia.gov
NOTE, delete texts: "RemoveThis" and
"BOGUS" from email address to reply.
Reply to
Chris Carlen

BlackFin is a strange machine of the "everything else" class. It is too slow for the consumer video applications. The MMU is still born, so is the BlackFin concept of user/supervisor modes. The set of peripherals is created by mad savants. The core is a mix of 16bit and 32bit solutions. The errata of ~50 pages; some of the bugs are just wonderful. Slow external bus. No means to provide cache/DMA coherency. The speed of the bit banging is limited by the bus clock (133MHz max), there are also quite complicated bus arbitration and sequencing issues.

ADI used to have a line of the motor control flash DSPs based on the 21xx core. That line wasn't popular and they terminated it. I could not find any references about it at ADI web site: they remove all links to the parts that they don't want you to use. There is also BlackFin part with the internal flash (actually two separate dies in one package), but too expensive.

Why can't they make a flash with a bus width of 4096 or more bits? The whole sector could be read at once.

With BlackFin, the cache helps dramatically. For my applications, the cache efficiency is about 90%.

The emulation of the floating point by TMS28xx is quite efficient. FPU is mostly the sales point, however it could be handy on occasions.

Vladimir Vassilevsky DSP and Mixed Signal Consultant

formatting link

Reply to
Vladimir Vassilevsky

Are there any chips you DO like?

I just noticed the Infineon Tricore goes up to 150MHz. I wonder what the tools are like...

--
Good day!

________________________________________
Christopher R. Carlen
Principal Laser&Electronics Technologist
Sandia National Laboratories CA USA
crcarleRemoveThis@BOGUSsandia.gov
NOTE, delete texts: "RemoveThis" and
"BOGUS" from email address to reply.
Reply to
Chris Carlen

[...]

Of course not. What's so good about chips to like them?

All I can promise you it is a usual pile of bugs with many bells and whistles. Probably worse then usual because it is not mature yet. Most likely will never be mature because it will be phased out before that.

Vladimir Vassilevsky DSP and Mixed Signal Design Consultant

formatting link

Reply to
Vladimir Vassilevsky

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.