Flyttalsprocessor söks
Ni vet hur det är...
Försök få en sk. programmerare att skriva ett program till ett embedded system som inte gjort annat än skrivit mjukvara för PC:n som klockas på 2GHz... Ett satans gnäll om att det går långsamt och att det är "omöjligt" att debuggga. De borde inte få något snabbare än en 8086:a på 8MHz så får de se hur lätt det är.
Försök få en sk. programmerare att skriva ett program till ett embedded system som inte gjort annat än skrivit mjukvara för PC:n som klockas på 2GHz... Ett satans gnäll om att det går långsamt och att det är "omöjligt" att debuggga. De borde inte få något snabbare än en 8086:a på 8MHz så får de se hur lätt det är.
Det fins säkert många grejor att titta över - tex behövs det verkligen köras med 'double' överallt, kan man köra med fixed point (efter lämplig skalning före och efter) använda bitskift för exp och log-funktioner etc. etc.
måste finnas högvis med optimerade libbar för den typen av arbete, speciellt om man är villig att frångå 'C' standard variabelstorlekar.
Sedan är det väldigt viktigt att titta över de valda algoritmerna och se om det fins bättre varianter av dessa med tanke på tillgänglig beräkningskapacitet och minnersymd - det är här dom stora förbättringarna kan göras..
Se bara skillnaden mellan FFT och DFT, skulle man fortfarande ha varit kvar på DFT så skulle DSP-världen inte ha kommit alls lika långt som idag
måste finnas högvis med optimerade libbar för den typen av arbete, speciellt om man är villig att frångå 'C' standard variabelstorlekar.
Sedan är det väldigt viktigt att titta över de valda algoritmerna och se om det fins bättre varianter av dessa med tanke på tillgänglig beräkningskapacitet och minnersymd - det är här dom stora förbättringarna kan göras..
Se bara skillnaden mellan FFT och DFT, skulle man fortfarande ha varit kvar på DFT så skulle DSP-världen inte ha kommit alls lika långt som idag
på tal om FPGA och MicroBlaze, LEON2 och LEON3 har full FPU stöd
http://www.gaisler.com/cms/index.php?op ... &Itemid=52
http://www.gaisler.com/cms/index.php?op ... &Itemid=53
sedan finns det flera FPU:er på opencores:
http://www.opencores.org/browse.cgi/by_category
Annars är det ganska lätt att bygga egna trig funktioner med CORDIC:
http://www.andraka.com/files/crdcsrvy.pdf
http://www.gaisler.com/cms/index.php?op ... &Itemid=52
http://www.gaisler.com/cms/index.php?op ... &Itemid=53
sedan finns det flera FPU:er på opencores:
http://www.opencores.org/browse.cgi/by_category
Annars är det ganska lätt att bygga egna trig funktioner med CORDIC:
http://www.andraka.com/files/crdcsrvy.pdf