Forums

ADSP 21262 - GPL toolchain

Started by giangiammy December 1, 2005
hi all,

I have googled some time to look for GPl development tool
of ADSP 21262, with no luck: any one have informations
about such tools?
Does exist something?

thanks
giammy
--
Gianluca Moro          http://groups.yahoo.com/group/embeddeditalia/
ISCRIVITI alla         Mailing List Italiana su LINUX EMBEDDED
giangiammy@yahoo.com   Visit http://ilpinguino.altervista.org/

"giangiammy" <giangiammy@gmail.com> wrote in 
news:1133437911.291174.304110@g43g2000cwa.googlegroups.com:

> hi all, > > I have googled some time to look for GPl development tool > of ADSP 21262, with no luck: any one have informations > about such tools? > Does exist something? > > thanks > giammy > -- > Gianluca Moro http://groups.yahoo.com/group/embeddeditalia/ > ISCRIVITI alla Mailing List Italiana su LINUX EMBEDDED > giangiammy@yahoo.com Visit http://ilpinguino.altervista.org/ > >
I don't believe there are any GPI tools for the ADSP-21262. There are a few alternatives to buying a full VDSP license. 1. You can use a kit license with either an ADI EZ-Kit or any of our dspstak DSP Engines with ICE. The kit license has a program size restriction and requires that you are connected to an EZ-Kit debugger. You can generate ldr (bootable code) files for whatever your final target is. One advantage is that you also have a low cost ICE for debug with this approach. 2. Beastrider was an assembler and linker for the ADSP-21262. It is more limited than the ADI tools but it is inexpensive. -- Al Clark Danville Signal Processing, Inc. -------------------------------------------------------------------- Purveyors of Fine DSP Hardware and other Cool Stuff Available at http://www.danvillesignal.com
giangiammy wrote:
> hi all, > > I have googled some time to look for GPl development tool > of ADSP 21262, with no luck: any one have informations > about such tools? > Does exist something?
http://www.kvaleberg.com/g21.html It says 21k, so your DSP should be supported.
giangiammy wrote:
> hi all, > > I have googled some time to look for GPl development tool > of ADSP 21262, with no luck: any one have informations > about such tools? > Does exist something? >
ADI used to provide a GPL tool chain, but switched to closed source in the late 90's. If memory serves, the last processor ADI supported with gcc was the 21062. The compiler was called g21k, so there's a term for you to feed to Google. The 21160 has a lot of features the 2106x family lacks (SIMD in particular, and the 2126x stuff looks a lot like the 2116x). It is a NON-trivial task to add 2116x support to g21k. I have the source tree hanging around on an old not-currently-installed-in-a-PC hard drive, so if you want it, send me an email. It might take me a couple of days to unearth it though. Maybe Al Clark knows something more up-to-date than me. -- Jim Thomas Principal Applications Engineer Bittware, Inc jthomas@bittware.com http://www.bittware.com (603) 226-0404 x536 Build a man a fire and he is warm for a day. Set a man on fire and he is warm for the rest of his life.
> if you want it, send me an email. It might take me a couple of days to > unearth it though.
thank you very much for the disponibility, but I found the g21k: the problem is exactly its missing support for SIMD :-( giammy
giangiammy wrote:

>>if you want it, send me an email. It might take me a couple of days to >>unearth it though. > > > thank you very much for the disponibility, but I found the g21k: the
^^^^^^^^^^^^^ WHAT !!?? http://dictionary.reference.com/search?q=disponibility No entry found for disponibility.
> problem > is exactly its missing support for SIMD :-( > > giammy >
sorry for my english, I adapted from italian
I just wanted thank Jim for offering his help
(and hope that this is grammatically correct :-)
bye
giammy

giangiammy wrote:
> > if you want it, send me an email. It might take me a couple of days to > > unearth it though. > > thank you very much for the disponibility, but I found the g21k: the > problem > is exactly its missing support for SIMD :-(
If it is only that, then that is not really a problem. The command to activate SIMD is "bit set mode1 PEYEN;" = 0x140200200000 and to disable SIMD you need "bit clr mode1 PEYEN" = 0x142200200000 Include the following macros into your code: #define ENABLE_SIMD INSTR1: px = 0x140200200000; pm(INSTR1+2) = px; nop; #define DISABLE_SIMD INSTR2: px = 0x142200200000; pm(INSTR2+2) = px; nop; Now whenever you want to enable or disable SIMD in your code, call the respective macro instead. Regards, Andor
Andreas S. wrote:
> giangiammy wrote: > > hi all, > > > > I have googled some time to look for GPl development tool > > of ADSP 21262, with no luck: any one have informations > > about such tools? > > Does exist something? > > http://www.kvaleberg.com/g21.html > > It says 21k, so your DSP should be supported.
It said so at a time when the only 21k DSPs were the 21060, -61 and -62. Not even the -65L is supported with that toolset, never mind the 211xx, 212xx and 213xx processors. Regards, Andor
I wrote:

> giangiammy wrote: > > > if you want it, send me an email. It might take me a couple of days to > > > unearth it though. > > > > thank you very much for the disponibility, but I found the g21k: the > > problem > > is exactly its missing support for SIMD :-( > > If it is only that, then that is not really a problem. The command to > activate SIMD is > > "bit set mode1 PEYEN;" = 0x140200200000 > > and to disable SIMD you need > > "bit clr mode1 PEYEN" = 0x142200200000 > > Include the following macros into your code: > > #define ENABLE_SIMD INSTR1: px = 0x140200200000; pm(INSTR1+2) = px; > nop; > #define DISABLE_SIMD INSTR2: px = 0x142200200000; pm(INSTR2+2) = px; > nop; > > Now whenever you want to enable or disable SIMD in your code, call the > respective macro instead.
I just thought of three things: First, the above construct doesn't work (the multiple use of INSTR1 and INSTR2 will generate errors), second enabling and disabling SIMD can be achieved much simpler (define PEYEN and you're done), and thirdly, adding SIMD support will be the least of your problems. The major problem is how you can fool the linker into generating a memory image of the 212xx instead of the 2106x. There might be a chance with the "nomemcheck" switch of the linker ... Regards, Andor