DSPRelated.com
Forums

[Q] What are the features of SHARC architecture?

Started by skim19750511 April 28, 2004
Hello every members :)

What are the features of SHARC architecture comparing with the
Harvard architecture ?

SHARC architecture is a modified Harvard architecture ?



"skim19750511" wrote:
> Hello every members :)
>
> What are the features of SHARC architecture comparing with the
> Harvard architecture ?
>
> SHARC architecture is a modified Harvard architecture ?

Yes, SHARC is an acronym for super-harvard-architcture. I guess the
super refers to the instruction cache, which allows using the two
busses for simultaneous double data access.

Regards,
Andor



On Wed, 28 Apr 2004, andor_bariska wrote:

> "skim19750511" wrote:
> > Hello every members :)
> >
> > What are the features of SHARC architecture comparing with the
> > Harvard architecture ?
> >
> > SHARC architecture is a modified Harvard architecture ?
>
> Yes, SHARC is an acronym for super-harvard-architcture. I guess the
> super refers to the instruction cache, which allows using the two
> busses for simultaneous double data access.

Right, but you have to set things up so you get data from program memory
while the program is in cache. Great for filter loops.

The Mot chips have a triple bus, 2 data and 1 instruction. The dual
core SHARC's have 64 bit wide data buses so each core gets 32 at a time.
But it's single instruction, so it's great for real,imaginary computations
and stereo filters. But to take full advantage of it, your data buffers
must be split between program space and data space, and your loop has
to fit into cache (32 instructions).

Patience, persistence, truth,
Dr. mike



Mike Rosing wrote:
<snip>
>The Mot chips have a triple bus, 2 data and 1 instruction. The dual
>core SHARC's have 64 bit wide data buses so each core gets 32 at a time.
>But it's single instruction, so it's great for real,imaginary computations
>and stereo filters. But to take full advantage of it, your data buffers
>must be split between program space and data space, and your loop has
>to fit into cache (32 instructions).
>

I thought (based on my 21061 experience a long time ago) the cache was only used
when a Program read conflicted with a PM data read? So your loop can be longer
than 32 instructions, but if you have more than 32 reads from PM data, you'll
start getting cache misses.

Or am I out of date?

Thanks,
Martin --
Martin Thompson CEng MIEE
TRW Conekt
Stratford Road, Solihull, B90 4GW. UK
Tel: +44 (0)121-627-3569 -



Hello everybody,
 
  I have developed source code for FIR filter using Windowing technique for my SHARC processor (ADSP-21061). It's working fine.
 
In MATLAB i have developed one GUI (Graphical User Interface) in which i enter all the parameters (filter specifications) needed for the development of FIR filter and i got the filter coefficients. I'm able to place
these coefficients in the coefficient.dat source file of my SHARC processor.
 
Question: 1.   I want to implement the following task.
                If i create a RUN button in my GUI and when i click that button, it should down load the (.21k file) into the SHARC processor memory.
                2.   Is there any tool in MATLAB to get interfaced with ADSP-21061 processor?
 
 If any body have any idea of how to do this plz help me. Any suggestions regarding this will be greatly appreciated.
 
 
                                                                              regards,
                                                                             uday majeti.

Yahoo! India Matrimony: Find your partner online.


On Wed, 28 Apr 2004, Martin.J Thompson wrote:

> I thought (based on my 21061 experience a long time ago) the cache was
>only used when a Program read conflicted with a PM data read? So your
>loop can be longer than 32 instructions, but if you have more than 32
>reads from PM data, you'll start getting cache misses.
>
> Or am I out of date?

Nope, I think you are correct. Every loop I've written conflicts on
each instruction, and 32 has been way more than enough. But if only 1
in 10 instructions has a problem, you can have a much bigger loop.

Thanks for pointing that out!

Patience, persistence, truth,
Dr. mike



Hi!

Comments inlined.

JaaC

--- Uday Kumar Majeti <> wrote:
> Hello everybody,
>
> I have developed source code for FIR filter using
> Windowing technique for my SHARC processor
> (ADSP-21061). It's working fine.
>
> In MATLAB i have developed one GUI (Graphical User
> Interface) in which i enter all the parameters
> (filter specifications) needed for the development
> of FIR filter and i got the filter coefficients. I'm
> able to place
> these coefficients in the coefficient.dat source
> file of my SHARC processor.
>
> Question: 1. I want to implement the following
> task.
> If i create a RUN button in my GUI
> and when i click that button, it should down load
> the (.21k file) into the SHARC processor memory.
> 2. Is there any tool in MATLAB to
> get interfaced with ADSP-21061 processor?
>

I think there are some features since Matlab 6.1 which
let you communicate with external stuff via serial
(COM) ports. You could download the coefficients to a
buffer in memory, from where you update your filter.

> If any body have any idea of how to do this plz
> help me. Any suggestions regarding this will be
> greatly appreciated. >
> regards,
>
> uday majeti.
>
> Yahoo! India Matrimony: Find your partner online.


=====

Jaime Andr Aranguren Cardona

__________________________________