Test av digitala filter med PIC32MX320

PIC, AVR, Arduino, Raspberry Pi, Basic Stamp, PLC mm.
Användarvisningsbild
YD1150
Inlägg: 1974
Blev medlem: 29 oktober 2010, 22:41:10

Test av digitala filter med PIC32MX320

Inlägg av YD1150 »

Har testat digitala (FIR) filter på en PIC32MX320F064 (tror jag den heter :wink: )

Hur som helst så är det stor skillnad i hastighet
mellan MPLAB:s 60 dagars utvärderingsversion av C-kompilatorn och
vad man får "efter 60 dagar", dvs den enklaste och långsammaste
versionen.

Upptäckte det "den hårda vägen", fick inget (kanonbra) resultat med gratis-
versionen så jag installerade MPLAB och medföljande C-kompilator på
en annan dator.

Vips! Så gick det köra FIR-filter med 201 "tappar" eller "ordningens" filter
med 18kHz samplingsfrekvens.

A/D är den inbyggda i PIC32 på 10-bit och MCP4821 (12-bit) som D/A.
För tal-kvalité så duger den utmärkt.

För beräkning av koefficienterna till FIR filter kan man t.ex. använda
http://www.dsptutor.freeuk.com/remez/Re ... esign.html

OBS! Gör om koefficienterna till heltal (fixpunkt), flyttal kräver
mer "processor-hästkrafter" än vad PIC32 har.

Själva filteralgoritmen fungerar bäst och snabbast med pekare.
Ger en bra övning i pekararitmetik, och en del :evil: svordomar :evil: också :D
när det inte fungerar som det ska.
Lätt att glömma en liten * när man ska hålla på med pekare :D

Sen får man nya bruskällor p.g.a. att man inte har oändligt antal
siffror man räknar med utan någonstans måste man "trunkera"
så man får filterkoefficienter med t.ex. 26-bitars noggrannhet.

Filtret nedan gick bra att köra på en PIC32 med 18kHz samplingsfrekvens.
Dämpning >60dB i stoppbandet, ripple 1dB i passbandet.
SSB filtret_.png
Du har inte behörighet att öppna de filer som bifogats till detta inlägg.
Användarvisningsbild
TomasL
EF Sponsor
Inlägg: 47002
Blev medlem: 23 september 2006, 23:54:55
Ort: Borås
Kontakt:

Re: Test av digitala filter med PIC32MX320

Inlägg av TomasL »

Hur som helst så är det stor skillnad i hastighet
mellan MPLAB:s 60 dagars utvärderingsversion av C-kompilatorn och
vad man får "efter 60 dagar", dvs den enklaste och långsammaste
versionen.
Öh "långsamma" det är exakt samma kompilator, med viss optimering avslagen (efter 60 dagar).
Samtidigt är det så att om man använder optimeringarna kan man inte debugga koden.
Användarvisningsbild
YD1150
Inlägg: 1974
Blev medlem: 29 oktober 2010, 22:41:10

Re: Test av digitala filter med PIC32MX320

Inlägg av YD1150 »

Tänkte mest på att skillnaden mellan inga optimeringar
och optimeringen för snabbaste exekvering av programmet är stor.
sodjan
EF Sponsor
Inlägg: 43251
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Re: Test av digitala filter med PIC32MX320

Inlägg av sodjan »

Hur stort är "stor" ?
arte
Inlägg: 317
Blev medlem: 13 januari 2006, 01:18:50

Re: Test av digitala filter med PIC32MX320

Inlägg av arte »

Eftersom PIC32 är MIPS baserad så kanske du kan använda GCC eller LLVM, iså fall borde det inte finnas någon större vits med att använda MPLABs kompilator.

Vet inte hur prestanda är mot MPLABs kompilator men tror att GCC eller LLVM är säkert mycket bättre än MPLABs kompilator utan optimering.
Användarvisningsbild
YD1150
Inlägg: 1974
Blev medlem: 29 oktober 2010, 22:41:10

Re: Test av digitala filter med PIC32MX320

Inlägg av YD1150 »

Ett filter jag provade var inte alls körbar med inställningen "inga optimeringar"

Tiden som det tog för att beräkna filtret för ett sample, var längre
än tiden mellan två interrupt (=sample).

Med bästa inställning för snabbhet, gav ca 60% ledig processortid.
Användarvisningsbild
TomasL
EF Sponsor
Inlägg: 47002
Blev medlem: 23 september 2006, 23:54:55
Ort: Borås
Kontakt:

Re: Test av digitala filter med PIC32MX320

Inlägg av TomasL »

uChips kompilator ÄR GCC, om jag inte minns helt fel, dock är uChips variant optimerad för just deras implementation av MIPS-kärnan, så den genererar effektivare kod än standard GCC.
blueint
Inlägg: 23238
Blev medlem: 4 juli 2006, 19:26:11
Kontakt:

Re: Test av digitala filter med PIC32MX320

Inlägg av blueint »

Och eftersom GCC är GPL så borde källkoden till detsamma finnas tillgänglig ;)

Vad är applikationen?, bild?
Användarvisningsbild
TomasL
EF Sponsor
Inlägg: 47002
Blev medlem: 23 september 2006, 23:54:55
Ort: Borås
Kontakt:

Re: Test av digitala filter med PIC32MX320

Inlägg av TomasL »

Ja till GCC, men inte för uChips modifikationer.
GCC finns under LGPL
Användarvisningsbild
stekern
Inlägg: 453
Blev medlem: 2 november 2008, 08:24:18
Ort: Esbo, Finland

Re: Test av digitala filter med PIC32MX320

Inlägg av stekern »

Jag börjar med att säga, jag har ingen aning om hur eller om microchips är baserat på GCC.
Men, om de gjort modifikationer i GCC måste de släppa källkoden till detta.
Det LGPL går ut på i runda ordalag är att man får använda sig av applikationen i fråga som ett bibliotek utan att släppa källkoden till det som använder biblioteket.
Gör du däremot ändringar i själva biblioteket är du tvungen att släppa källkoden till dessa ändringar.
Användarvisningsbild
TomasL
EF Sponsor
Inlägg: 47002
Blev medlem: 23 september 2006, 23:54:55
Ort: Borås
Kontakt:

Re: Test av digitala filter med PIC32MX320

Inlägg av TomasL »

Nej, de behöver inte släppa koden till sina ändringar, läs licensavtalet,
Den främsta skillnaden mot den mer kända GNU General Public License är att det är tillåtet att inkludera program licenserade under LGPL i ett nytt program, utan att det nya programmet omfattas av LGPL.

Detta gör att man till exempel i en kommersiell programvara med sluten källkod, kan dra nytta av ett externt bibliotek som är tillgängligt under LGPL, utan att bryta mot licensregler.
Användarvisningsbild
stekern
Inlägg: 453
Blev medlem: 2 november 2008, 08:24:18
Ort: Esbo, Finland

Re: Test av digitala filter med PIC32MX320

Inlägg av stekern »

Jag har läst det och det ändrar ingenting av det jag skrev i mitt föregående inlägg, läste du det?
Användarvisningsbild
TomasL
EF Sponsor
Inlägg: 47002
Blev medlem: 23 september 2006, 23:54:55
Ort: Borås
Kontakt:

Re: Test av digitala filter med PIC32MX320

Inlägg av TomasL »

Det är väl så att uChip har egna bibliotek till GCC, vilka de inte behöver uppge källkoden till.
Användarvisningsbild
stekern
Inlägg: 453
Blev medlem: 2 november 2008, 08:24:18
Ort: Esbo, Finland

Re: Test av digitala filter med PIC32MX320

Inlägg av stekern »

Jo, just så verkar de göra.
t.ex. här diskuteras det: http://www.embeddedrelated.com/usenet/e ... 2189-1.php
Skriv svar