Drabinka R-2R zamiast DAC , beznadzieja

May 06, 2006 69 Replies

Na Atari800 (6502@1.79MHz) dawało się odtwarzać spokojnie sample a co niektórzy wyciągają coś na wzór modów znanych z Amigi...

Z powiedzmy 20mipsami to już można zrobić wiele. Z tymi 5mipsami ze zwykłych 8 bitowych PICów też nie tak mało.

Nie wiem czy 11KHz jest realistyczne chociażby z powodu względnie małej pamięci w µC. Jednak odtwarzanie sampli, miksowanie audio czy nawet prosta interpolacja jak najbardziej tak.

Pozdrawiam,

Radek

Atari mialo mialo 4/5 bitowy przetwornik

...po co tyle - juz na Z80 spectrusiowym duzo dawalo sie zrobic

Spoko...da sie zrobic - mozna trzymac w zewentrzej pamieci i odczytywac.

Owszem.

12 bitow powiadasz ? 16 krotne nadprobkowanie na uC klasy AVR ? No ciekaw jestem, ciekaw ...

J.

"regulację głośności" dla każdego kanału POKEYa. :)

Niemniej... byłem w lekkim szoku po obejrzeniu po latach niektórych produkcji typu demo na Atari.

Planuje podłączyć PeCeta przez port szeregowy do PICa, trochę pamięci sram, trochę peryferiów, będzie ciekawe.

Pozdrawiam,

Radek

Mowisz ? To jednak nie DSP ..

J.

mowie - sa noty aplikacyjne i konkretne uklady chociazby DDS na AVR - uklad ksztaltowania szumow to operacje dodawania i przesuniec logicznych - nie ma potrzeby stosowania mnozenia z akumulacja. przy 20mipsach nie ma problemu z takim przetwarzaniem sygnalow... wazne by uwaznie docyklowac kod

to byl odawno..moglem.. ale dzieki temu rozwiazaniu AC/CA nie zajmowalo praktycznie CPu (kilka rozkazow ASM/probke) i moglem skupic sie na algorytmie

Hansena ? Tam raczej nie ma zaawansowanego przetwarzania.

Moge prosic o jakies linki ? Czy po prostu chcesz liniowa aproksymacje zrobic ?

J.

popatrz na to:

formatting link
mozna zrobic to w kodzie - wszystko to dodawanie/odejmowanie robione w jednym cyklu - dla kilku bitow jest dokladnie tak samo
formatting link

Ale to jest w zasadzie modulator PWM.

Przyznaje, mozna, ale to jest tylko trywialny filtr do oversamplingu.

eeee ... ktory w tym przypadku nic nie da !

P.S. Tych sigma-delta ogolnie biorac to tak nie do konca rozumiem.

Tez troche nie na temat.

J.

nie, to nie jest PWM - jesli juz to raczej PDM

Nie...

upsampler nie redukuje ilosci bitow na wyjsciu... tu nastepuje redukcja ilosci bitow...

Da, da, tylko ze dla jednego bitu potrzeba naprawde duzych wspoczynnikow przetwarzania...

formatting link

wlasnie bardzo na temat - jak majac np 8 bitow DAC poprawic jego rozdzielczosc do np 12 czy 16 bez dodawania hardware

Hm, co to jest PDM ?

Przyznaje ci trochje racji - Width to sie tu zmienia tak sobie :-) Ale idea pozostaje - efekt jest taki srednie wypelnienie przebiegu odpowiada wartosci kodowanej.

Przyznaje racje - to nawet nie jest trywialny filtr.

Ale my przeciez nie chcemy jednego bitu. Mamy 8 bitowe probki, mamy 8 bitowy DAC, chcemy z jednej probki zrobic 16, zeby lepiej brzmialo.

Tylko czym ty chcesz go nakarmic ? Mamy 8bitowe probki, 11ksps. co z tego ze bedziesz mial 12 bitowy przetwornik ?

Ok, zalozmy ze mamy 12-bitowe probki w pamieci. Glowy juz nie dam, ale cos mi sie wydaje ze proponujesz trywialny filtr, a trywialny zazwyczaj oznacza kiepski. IMO - tu trzeba cyfrowy filtr DP. A to juz zagadnienie klasy DSP.

J.

modulacja gestosci impulsow

podobnie - ale PWM jest liniowe. PDM tez a uklad ksztaltowania szumu nie...

a juz wiem o czym mowisz - nie no pewnie ze nie da - jak mamy 8 bitow na probke i 8 bitow DAC to nie ma sensu... ale jak mamy 16 bitow na probke zakodowane np w uLaw to juz da...

nie, mamy 8 bitowe probki i np 4 bitowy DAC, albo 12 bitowe probki (14 -16 np w uLaw albo aLaw lub czyms podobnym)

alez nie - mamy 8 bitowe probki i np 2 bity albo 4 bity DAC

bez klopotu jak mysle DS 2 rzedu pojdzie na zwyklym procesorku typu AVR...

D jak Duration ? Tym razem google znajduje az za duzo ..

A to tego jakos nie bardzo potrafie dostrzec.

Tylko czy bedzie dobre ? Tzn choc porownywalne z podejsciem typu fitr dolnoprzepustowy ?

J.

[...]

Density?

[...]

formatting link
PDM można określić jako 1 bitowy DAC.

To potrafi działać pod warunkiem, że jest przełączany bardzo szybko i działa! Wiele "wielobitowych" przetworników to w istocie PDM z ostrym oversamplingiem i odpowiednim filtrem na wyjściu.

(działało na 8086 a nawet Z80 - ma nie działać na PIC o AVR nie wspominając?!)

Co do potrzebnej wydajności do zadań typu DSP... dodawanie i shifitng to bardzo dużo bo w istocie da się z tych prostych operacji sklecić "multiply-accumulate".

Nawet przy 44100Hz (próbkowanie CD) z skalarnym 5mips cpu ma się ponad

100 cykli na próbkę.

To nie jest mało tym bardziej z 20mipsowymi AVR lub jeszcze lepiej z "DSPowanymi" dsPICami.

Pozdrawiam,

Radek

PDM w tym sensie jak PWM jest 1 bitowy DAC

Sa 1 bitowe PDM (wlascwie DS) ale sa i wielobitowe - np 5 bitowy DAC poprzedzony modulatorem/ukladem ksztaltowania szumu - juz przy nadprobkowaniu 32 - 64 mozna uzyskac dynamike ponad 170dB (teoretyczna rzecz jasna)

Pewnei ze bedzie dzialac - potrzeba tylk odobrze napisac kod bo kazda odchylka od rownomiernego wyprowadzania probek sie zemsci

no sie da... - z samego dodawania da sie sklecic MAC

Dokladnie

Jak mowie DSP to bardziej wyrafinowane algorytmy - DS 1 lub drugiego rzedu da sie zaimplementowac w prostym uC

Tylko ze sie tak wyraze - jesli dobre rezultaty daje np 50 tapowy FIR, to 100 cykli AVR musi dac gorsze rezultaty :-)

J.

Join the Discussion

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

Didn't find your answer?

Ask the community — no account required