Räcker en 7 MHz ARM för att avkoda mp3 ..?

PIC, AVR, Arduino, Raspberry Pi, Basic Stamp, PLC mm.
sodjan
EF Sponsor
Inlägg: 43251
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Re: Räcker en 7 MHz ARM för att avkoda mp3 ..?

Inlägg av sodjan »

> Så vitpappret är fel?

Fel och fel...
Vad är problemet egentligen?
Har du någon specifikt design att välja hårdvara till?
blueint
Inlägg: 23238
Blev medlem: 4 juli 2006, 19:26:11
Kontakt:

Re: Räcker en 7 MHz ARM för att avkoda mp3 ..?

Inlägg av blueint »

Funderar mest på hur saftig ARM man behöver för att kunna avdekoda mp3 i realtid.
(128k joint-stereo 44,1 kHz 16-bit)
sodjan
EF Sponsor
Inlägg: 43251
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Re: Räcker en 7 MHz ARM för att avkoda mp3 ..?

Inlägg av sodjan »

Jag vill påstå att det beror mycket på vad man vill göra mer med samma processor.
Sen får simuleringar och praktiska tester verifiera om teorierna håller.
När det gäller dokumentet så kan man i alla fall säga att det
sannolikt går lättare med den nya M4-arkitekturen, men det
säger ju ingenting om andra ARM arkitekturer.
arte
Inlägg: 317
Blev medlem: 13 januari 2006, 01:18:50

Re: Räcker en 7 MHz ARM för att avkoda mp3 ..?

Inlägg av arte »

Precis som sodjan säger så har M4 DSP instruktioner som underlättar vid mp3 decode, den har även en liten enklare FPU.
Vilken frekvens som behövs beror helt på CPU, en A57 klarar det säkert i 7 MHz men det är att överdriva ganska rejält.

Whitepaper som du hänvisade till verkar vara skrivet av Ittiam, de och ARM är bra kompisar.
Beställningsjobb eller inte så tror jag inte de bluffar.

http://caxapa.ru/thumbs/318831/Pg38-42_ ... rtex-M.pdf är ganksa intressant, där jämför de M3 och M4.

Där säger de att en M4 behöver 7-10 Mhz och en M3 15-18 MHz.
M0 har ingen MAC instruktion vad jag vet, så det är nog bra mycket slöare. Kanske 50MHz (ren gissning!).
blueint
Inlägg: 23238
Blev medlem: 4 juli 2006, 19:26:11
Kontakt:

Re: Räcker en 7 MHz ARM för att avkoda mp3 ..?

Inlägg av blueint »

Krävs det mao assembleroptimering för att klara sig på 7-10 MHz med M4 ?
Användarvisningsbild
jesse
Inlägg: 9240
Blev medlem: 10 september 2007, 12:03:55
Ort: Alingsås

Re: Räcker en 7 MHz ARM för att avkoda mp3 ..?

Inlägg av jesse »

blueint skrev:STM32F205RGT6 (ELFA 73-872-73) för 14,60 SEK ex.moms med 128 kB RAM + 1024 kB flash samt 120 MHz klockfrekvens verkar ju lämplig. LQFP-64
Tyckte det lät lite väl billigt. När jag kollade ELFA-länken så var det 130kr. Kanske du såg Euro-priset?
superx
Inlägg: 1127
Blev medlem: 19 juni 2012, 23:28:16
Ort: Linköping

Re: Räcker en 7 MHz ARM för att avkoda mp3 ..?

Inlägg av superx »

Nya STM32F301 ska tydligen kosta under 1 dollar. Det är rätt billigt för en M4:a med FPU.
Krävs det mao assembleroptimering för att klara sig på 7-10 MHz med M4 ?
Det gör det nog, men hade du verkligen tänkt koda MP3-avkodningen själv? Tror inte kompilatorerna är så bra på att använda DSP-instruktionerna när man skriver vanlig C-kod. Många av de operationerna är svåra att uttrycka i C, men man kan till viss del gå runt det med macron om sådana finns.
blueint
Inlägg: 23238
Blev medlem: 4 juli 2006, 19:26:11
Kontakt:

Re: Räcker en 7 MHz ARM för att avkoda mp3 ..?

Inlägg av blueint »

Det verkar finnas en del färdig kod. Dock är den väl oftast i ren C. Använder man en lite snabbare CPU så kan man ju klara även det. Då är det bra att veta var minimikravet ligger.
arte
Inlägg: 317
Blev medlem: 13 januari 2006, 01:18:50

Re: Räcker en 7 MHz ARM för att avkoda mp3 ..?

Inlägg av arte »

blueint skrev:Det verkar finnas en del färdig kod. Dock är den väl oftast i ren C. Använder man en lite snabbare CPU så kan man ju klara även det. Då är det bra att veta var minimikravet ligger.
Som superx säger så behövs det en hel del assembler för att utnyttja DSP instruktionerna.
Jag skulle kollat MP3 decodning i ffmpeg och MAD. Båda någon typ av opensource.

libavcodec brukar ha en ren portabel C version och versioner optimerade för specifika platformar/CPUer.

Libavcodec ren C decoder
https://github.com/FFmpeg/FFmpeg/blob/m ... template.c

Libavcodec ARM assembler optimeringar (blandat video, audio ingen aning vad som är mp3 och m4):
https://github.com/FFmpeg/FFmpeg/tree/m ... vcodec/arm

LibMad verkar lite mindre och hanterbart:
http://www.underbit.com/products/mad/

Jag kollade lite snabbt men kunde inte se några M4 optimeringar. Du får väl krossa spargrisen och köpa från Ittiam :)
blueint
Inlägg: 23238
Blev medlem: 4 juli 2006, 19:26:11
Kontakt:

Re: Räcker en 7 MHz ARM för att avkoda mp3 ..?

Inlägg av blueint »

Hur många MHz kan tänkas behövas för en ren C version?
sodjan
EF Sponsor
Inlägg: 43251
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Re: Räcker en 7 MHz ARM för att avkoda mp3 ..?

Inlägg av sodjan »

Jag vet kanske inte så mycket, men hur fasen ska
man kunna svara på det bara genom att tänka? :-)
Användarvisningsbild
swesysmgr
Inlägg: 14951
Blev medlem: 28 mars 2009, 06:56:43
Ort: Göteborg

Re: Räcker en 7 MHz ARM för att avkoda mp3 ..?

Inlägg av swesysmgr »

blueint skrev:Hur många MHz kan tänkas behövas för en ren C version?
Vad är viktigast, att det är ARM och du skriver koden själv eller att den drar så lite effekt som möjligt?

https://www.elfa.se/elfa3~se_sv/elfa/in ... &toc=20966
I audio versionerna ingår licens på optimerade bibliotek för MP3 och AAC (och säkert annat också) från Atmel.

40 mA @ 3.3V, nej jag har aldrig använt den bara sett reklamen :)
arte
Inlägg: 317
Blev medlem: 13 januari 2006, 01:18:50

Re: Räcker en 7 MHz ARM för att avkoda mp3 ..?

Inlägg av arte »

sodjan skrev:Jag vet kanske inte så mycket, men hur fasen ska
man kunna svara på det bara genom att tänka? :-)
blueint skrev:Hur många MHz kan tänkas behövas för en ren C version?
1. Kompilera C only versionen med en arm kompilator till din valda arch.
2. Kör progammet i en ARM emulator och se hur många cykler det tar.
3. Lägg på liite marginal.

Eller ännu bättre köp ett billigt dev kit och testa :)
blueint
Inlägg: 23238
Blev medlem: 4 juli 2006, 19:26:11
Kontakt:

Re: Räcker en 7 MHz ARM för att avkoda mp3 ..?

Inlägg av blueint »

Tänkte att eftersom CPU och tillämpning är given så borde antal MHz som krävs gå att utröna. Angående emulator så har jag inte lagt märke till någon instruktions eller cykelräknare. Men det kanske är ordnat numera.
sodjan
EF Sponsor
Inlägg: 43251
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Re: Räcker en 7 MHz ARM för att avkoda mp3 ..?

Inlägg av sodjan »

> Tänkte att eftersom CPU och tillämpning är given...

CPU var/är väl inte given? D.v.s utöver "ARM".

> så borde antal MHz som krävs gå att utröna.

Ja, Ittiam har ju gjort en analys *viss* modell, ARM Cortex-M4.

Om man vill "skala" det till en enklare ARM arkitektur, så får man
väl studera hur de speciella DSP instruktionerna kan översättas till
en annan arkitektur. Sedan behöver man en "profile" på koden för
att beräkna hur stor andel vid run-time som dessa instrultioner
används och sedan går det att beräkna vad samma decoder "drar"
av en viss arkitektur.

Det verkar som att Ittiam alltså har decoders som de säljer
licenser till. Det är väl rimligt att anta att dessa är kraftigt
opimerade (till Cortes-M4 i detta fall).
Skriv svar