Jaki DSP?

May 15, 2006 17 Replies

Witam.



O Motoroli DSP mogê zapomnieæ. Mam wiêc pytanie - jaki DSP móg³bym u¿yæ który spe³ni³by wymagania:



- rozdzielczo¶æ 24 lub 32bity



- zewnêtrzna pamiêæ RAM na co najmniej 1M próbek (czyli 1Mx24 lub 1Mx32 bity) - najlepiej je¶li bêdzie to SIMM lub DIMM (SDRAM) z PCta



- program w wewnêtrznym flashu lub zewnêtrznym EPROMIE - chcê tam umie¶ci program ³aduj±cy w³a¶ciwy soft pobrany przez UART z PCta do zewnêtrznego RAMu. Potem procek przechodzi na pamiêæ programu w zewnêtrznym RAMie,



- szybko¶æ co najmniej 40MIPS



- UART do komunikacji z PC



- obudowa - jaka¶ sensowna, np LQFP-144 (nie BGA)



- no i mo¿e wspó³praca z zewnêtrznymi uk³adami 5V



- mo¿e byæ wewnêtrzny DAC stereo 16bit



No i musi byæ dostêpny w kraju (DSP Motoroli odpadaj±) - narazie przegl±dam:



- ADSP (analoga)



- TMS320 (ti) - gdzie mo¿na dostaæ ich procki na sztuki w kraju?



SJ



Pewnie Contrans tudziez probki z TI albo bezposrednio albo przez Contrans wlasnie, moze Elfa? Btw. wydaje mi sie ze TI troche osiadlo na laurach i mimo wszystko dostep do ich DSP jest trudniejszy niz do AD - jesli nie masz obiekcji to wlasnie AD bym sie interesowal...

Przychodzą mi na myśl cztery inne (nie idealne ale może warte rozważenia?):

- dsPIC (dużo za mało pamięci choć reszta byłaby zadawalająca)

- SoC na bazie Arm? (obsługa sdram/ddram, nawet do 200mipsów, dobrze poszukać to nawet z jednostką wektorową)

- FPGA (za ~150zł można mieć dość mocną kość jak Xilinx XC3S500E)

- rozwiązanie hybrydowe? (co DSP ma liczyć bo może uda się wszystko pociągnąć na kombinacji CPLD+µC?)

Pozdrawiam,

Radek

Chcê sobie porobiæ trochê syntezatorów MIDI (modu³ów brzmieniowych) z ró¿nymi metodami syntezy: FM, WaveTable, itp... Chcia³em zrobiæ sobie uniwersaln± jednostkê: DSP z podpiêtym 1MB RAM, portem UART i DAC stereo

16bit. Procek startuje z EPROMU, ³adujê mu do RAMu wybran± metodê syntezy, prze³±czam pamieæ CODE na RAM. Reszta RAMu jest na próbki, tablice, itp.

SJ

To AD... IMO jest chyba port jakiegos srodowiska za darmo - TI nie ma chyba nawet czegos takiego...

A co z napisaniem kodu dla tego wszystkiego? (czy już istnieje np. napisany prototyp w C czy dopiero ma być zrobiony?)

Jaka wydajność jest potrzebna? (jaka polifonia przy jakiej syntezie, jaka częstotliwość próbkowania, jakie/ile procesorów efektów?)

Pozdrawiam,

Radek

To ju¿ zabawa. Na próbê napisa³em sobie co¶ takiego:

formatting link
pod wina. (po uruchomieniu "WinFM.exe" za³aduj d¼wiêk przez "Load" a potem graj na klawiaturze kompa. W razie czego "AudioConfig.exe" umo¿liwia konfiguracjê karty d¼wiêkowej). To na szybko napisany testowy syntezator FM. Mo¿e emulowaæ np. Yamahe DX7 (i wy¿sze), tyle tylko ¿e robi to z du¿o wiêksz± jako¶cia. Tylko ¿e jeden PCet nie wyrobi mi siê z emulacj± wiêkszej liczby syntezatorów w czasie rzeczywistym.

Chcia³em wiêc kupiæ za kilka z³otych stare i486DX2, do tego SIMMy, do³o¿yæ FLASH (na bootowanie), PLD (od¶wie¿anie DRAM, dekodowanie adresów, itp) , DAC 16bit stereo i jaki¶ UART. Porobiæ kilkana¶cie takich "p³ytek" i zapokowaæ soft syntezatorów. Tyle ¿e uk³ad siê do¶æ komplikuje. Procki intela s± zdrowo powalone sprzêtowo (na rodzinie MC68000 nie by³oby problemu :)).

Wiêc zdecydowa³em siê rzuciæ to na DSP. Motorola 563... wygl±da fajnie bo obs³uguje DRAM, ale o kilku/nastu sztukach w kraju mo¿na zapomnieæ.

Naj³atwiej dostaæ chyba ADSP analoga, ale nie wiem czy jaki¶ mi podejdzie. TMS (od ti) wygl±daj± ciekawie, ale na kilka/na¶cie sztuk w kraju te¿ nie ma co liczyæ.

Jeden procek ze swoim DRAM (wystarczy 1..4MB próbek 24/32 bitowych) zajmuje siê syntez±. Przekazuje "cyfrowo" (jakim¶ portem) wyj¶ciowy sygna³ audio do drugiego procka DSP od efektów (echo, reverb, equalizery, itp...). Ten drugi procek te¿ ma swój DRAM. Zakup modu³u DRAM 1..4MB (SIMM 72piny 50..60ns) to grosze.

Drugi procek rzuca dane do DACa 16bit stereo. Potem ju¿ sygna³ audio idzie do miksera.

Planowa³em start i486 z 8bit EPROM (flash), poprzez port UART ³adujê wybrany soft do RAMu i procek prze³±cza siê z programem na RAM. (oczywi¶cie x2 bo mam 2 procki).

Szybko¶æ syntezy to 44,1kHz (lub 48kHz), synteza stereo, polifionia 16, wielobrzmieniowo¶æ 1 (ka¿dy syntek do jeden instrument).

Na i486 uk³ad siê trochê komplikuje - trzeba dorobiæ mu porty we/we, UART, kontroler pamiêci (szyna intela jest powalona), itp.

Wiêc najpro¶ciej by³oby daæ DSP który ma wszystko w sobie. Tylko okazuje siê ¿e wcale proste to nie jest, bo wybór jest, ale nie ma gdzie tego dostaæ.

Pozdrawiam, S³awek

Nie warto... juz lepiej Pentium - 486 nie sprawdzilyby sie...

MC68K ma duzo zalet...

AD oferuje probki i co wazne przesyla je do Polski, poza tym AD stal sie nieformalnym standardem w Audio obok Mototroli - TI chyba jednak dalej zastosowania telekomunikacyjne...

AD chyba jednak jest latwiej osiagalny - skontaktuj sie z

formatting link

Czy kolega bawi³ siê DSP analoga? Jak wygl±da sprawa asemblera i programatora? Asembler za free?, a programator - jakis ³atwy do zrobienia ISP/JTAG?

S³awek

Witam,

jeśli ma być tanio to tylko Motorola a właściwie Freescale. Próbki układów za darmo na stronie www. Zewnętrzna pamięć na 1M próbek możliwa i najtaniej na 1Mx16 FPM/EDO DRAM lub cztery 256Kx16 fast SRAM (do kupienia w np. TME). Boot z mikrokontrolera po SPI(uzywam AT89C2051), ew. druga faza z serial DataFlash ATMELa o pojemnośći do 4Mbit.

Emulator łatwo zrobić samemu na LPT (dokumentacja dDSP56311EVM). Narzędzia programowe za darmo - w razie czego mogę wysłać CD z EVM-a.

Microchip trochę a słaby arytmetyce 24/32bit.

Ciekawy jest TI 320F281X - ma wewnętrzny flash i 32 bitowa arytmetyke, ale koszt narzędzi ... Ciekawe są też 320C6713 i nowe 320C672X (są w obudowach LQFP) ale zbudowanie systemu jest drogie (konieczność niskonapięciowych zasilaczy impulsowych dla jądra), no i koszt emulatora ...

Osobiście najwyżej oceniam SHARC-a AnalogDevices ADSP21369 ale narzedzia drogie i dopiero próbki będą, ew. można starsze generacje.

Ukłony

Roman Rumian

SJ napisał(a):

Witam,

Radek napisał(a): (...)

ARM to też dobry pomysł - tanie narzedzia, mocny procesor i duzo b.ciekawego oprogramowania freeware.

Microchip odpada ze wzgledu na problem z duza zewnetrzna pamiecia RAM na opoznienia, a FPGA bez drogich, profesjonalnych narzedzi to meka.

Pozdrawiam

Roman Rumian

Nie znam wogle rodziny ARMów, mam wiêc pytanko, czy znajdzie siê jaki¶ maj±cy:

- swój flash na start, potem przej¶cie programu na zewnêtrzny fast SRAM,

- mo¿liwo¶æ ³atwego podpiêcia zewnêtrznej DRAM (SIMM 72pin), ewentulanie po prostu wyprowadzona szyna adresowa i danych, a obs³ug± DRAM (sygna³y RAS i CAS, od¶wie¿anie RBC, itp) zajmie siê ma³y PLD,

- wewnêtrzny USART (jeden asynchroniczny port do transmisji z PC),

- wystarcz± 2 timerki: jeden generuje czêstotliwo¶æ 44,1kHz, drugi timeout ramki transmisji

- no i jednostka 24/32bity (ewentualnie 16bitów)

Gdzie w kraju dosta³bym jakiego¶ ARMa "na start"? Z tego co siê zorientowa³em to chyba Philips jest najpopularniejszy. Czy z tym bêdzie taki sam problem jak z dostaniem DSP? :-)

S³awek

Witam,

SJ napisał(a): (...)

pisałem już i podtrzymuję, że z pojedynczymi sztukami DSP Freescale nie ma żadnego problemu - sam mam kilka próbek i mogę się podzielić.

Co do ARM-a to ciekawy jest podobno ATMEL. Ostatnio były szkolenia na ten temat jak również PXA270 Intela. Radzę się w tej sprawie zwrócić do przedstawicielstw w Warszawie lub dystrybutorów (np. JM). Zwykle, gdy prosze o próbki dostaję je bez problemu.

Freescale też ma swojego ARM-a, a nazywa się i.MXxx:

formatting link
Są ciekawi maniacy ARM-ów w kraju:
formatting link
i za granicą:
formatting link
Polecam też stronę wszystkich ARM-ów:

formatting link

Każdy ARM serii 9 powinien spełnić pańskie wymagania.

Ukłony

Roman Rumian

I chyba tego procka wybiore. Co¶ z DSP563xxx.

Wstêpnie chcia³em pod³±czyæ jaki¶ fast SRAM jako zewnêtrzna pamiêæ kodu/zmiennych i SIMM 72pin jako pamiêæ próbek/tablic. Ostatecznie jeszcze zobaczê co i jak. SIMMy ³atwiej montowaæ w prototyp, DIMMy maj± du¿o wiêcej wyprowadzeñ, ale za to SDRAM nie trzeba od¶wie¿aæ (maj± w³asne liczniki), ale za to trzeba je przy uruchomieniu inicjalizacowaæ.

Mo¿e ma szanowny kolega jaki¶ application note DSP motoroli z zewnêtrznym DRAMem?

Rozumiem ¿e DSP Motoroli nie maj± w³asnego flasha tylko soft startowy ³aduje siê z zewn±trz?

Poszukam.

Chêtnie. Oczywi¶cie zap³acê. Proszê o maila kontakt na pirv-a.

Pozdrawiam, S³awek

SJ napisał(a):

Polecam DSP56362/6/7, choc te ostatnie dwa wymagaja osobnego stabilizatora 1,8V dla jadra. Jesli wystarczy 120 MIPS (ja na tym licze

8 kanałów audio z filtrami, wielopunktowym parametrycznym equalizerem itp.) to najprostszy jest DSPB56362.

SDRAM (Synchronous DRAM) odpada, a odświeżanie wykonuje automatycznie sam procesor.

formatting link

Tak, w środku jest tylko mały programik w ROM-ie mogący zabootować z wielu źródeł, w tym po SPI, ale tylko jako SLAVE, dlatego mikrokontroler. Jest jakaś nowa wersja któregoś DSP563XX robiąca to z serial EPROM w trybie MASTER.

(...)

To drobiazg - prosze podac adres do wysłania płytki, albo sciągnąć sobie:

formatting link
Pozdrowienia

Roman Rumian

To oczywi¶cie nie problem. Tylko czy te procki maj± I/O 5V compatible?

S±dzê ¿e 30MIPS nawet wystarczy.

I na tego stawiam. Przejrza³em pobierznie parametry podstawowe rodziny 563xx i wysz³o ¿e pasowa³yby: ..303, ..309, ..362, ..366, ...367

Wiêc jeden problem z g³owy - bêd± SIMMy 72pin.

¦ci±gn±³em, zaraz przejrzê.

To nie problem. Dorzucê ma³ego atmelka co¶ z rodziny 51 lub AVR.

Aaaa.. skoro mo¿na zassaæ, to dziêkujê bardzo za linka. Ju¿ ¶ci±gam.

Postaram siê dorwaæ ze 2 próbki ..362 z Motoroli. Jak siê sprawdzi, to mo¿e nawet wywalê te 2tys i ¶ci±gnê wiêksz± partiê przez EBV. Z tego co widze na stronie motoroli to ich cena przy 1000szt to oko³o $7,00.

Pytanko: jaki DAC 16bit stereo móg³bym zastosowaæ? Czy ten procek ma jakie¶ standardowe wyj¶cie szeregowe do DAC? Czy mogê równie¿ tym we/wy audio po³±czyæ dwa procki ze sob±? Planujê na jednej p³ycie daæ dwa procki, ka¿dy ze swoj± pamiêci±: jeden do syntezy drugi do efektów.

Pozdrawiam S³awek

SJ napisał(a): (...)

tak, praktycznie wszystkie.

(...)

jest tego zapewne kilkadziesiąt typów od Analog Devices, Crystal Semi (Cirrus Logic), AKM, Wolfson Micro., Texas Instruments itd.

najłatwiej pewnie będzie uzyskac próbkę od AD

formatting link
potem TI i Crystal (przedstawicielstwo w Gliwicach - Memec). Również Wolfson wysyła próbki
formatting link
ę wybrać DAC z oscylatorem i sterowaniem (I2C lub SPI) poziomem wyjścia, wtedy będzie gotowy, synchroniczny zegar do napędzania DSP.

Tak, nazywa sie ESSI i to jest pełna kompatybilność z I2S i TDM. Ten procesor ma 6 linii danych, a każda przenosi próbki dwu kanałów audio, tak że jedna wystarczy do obsługi DAC-a, a resztę można wykorzystać do komunikacji, tyle że będzie to wtedy z szybkością bitową DAC-a (wspólny zegar bitowy i synchroniozacja ramek).

Czy mogę również tym we/wy audio

Tak, j.w.

Prosze sie pochwalić jak wyjdzie, ale radze zacząć od zrobienia emulatora na LPT i uruchomienia. Potem będzie "z górki". Emulator to właściwie tylko bufor '244 będący fragmentem schematu DSP56311EVM. Proszę poszukać notek ap. o JTAG-u.

Ukłony

Ropman Rumian

Join the Discussion

Have something to add? Share your thoughts — no account required.

Didn't find your answer?

Ask the community — no account required