-
Path: news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed.pionier.net.pl!pwr.wroc.pl!new
s.wcss.wroc.pl!not-for-mail
From: a...@m...uni.wroc.pl
Newsgroups: pl.misc.elektronika
Subject: Re: Biblioteka CMSIS DSP Keil ARM
Date: Thu, 14 Dec 2017 16:13:18 +0000 (UTC)
Organization: Politechnika Wroclawska
Lines: 60
Message-ID: <p0u7uu$98k$1@z-news.wcss.wroc.pl>
References: <8...@g...com>
NNTP-Posting-Host: hera.math.uni.wroc.pl
X-Trace: z-news.wcss.wroc.pl 1513267998 9492 156.17.86.1 (14 Dec 2017 16:13:18 GMT)
X-Complaints-To: a...@n...pwr.wroc.pl
NNTP-Posting-Date: Thu, 14 Dec 2017 16:13:18 +0000 (UTC)
Cancel-Lock: sha1:ZIw3ImaMlFrKG5iP9BHjBe3fM9k=
User-Agent: tin/2.4.1-20161224 ("Daill") (UNIX) (Linux/4.12.3 (x86_64))
Xref: news-archive.icm.edu.pl pl.misc.elektronika:727268
[ ukryj nagłówki ]Marcin <m...@o...pl> wrote:
> Witam,
>
> Wlasnie przygladam sie FFT na Coetexa-M3 (stm32f103) i chce uzyc biblioteki
napisanej przez Arm i Keil DSP CMSIS.
>
> Bazujac na:
> https://github.com/ARM-software/CMSIS_5.git
> i dalej przykladzie: CMSIS_5\CMSIS\DSP\Examples\ARM\arm_fft_bin_example\
> wersja ewaluacyjan Keila generuje 8kB
>
> compiling system_ARMCM3.c...
> linking...
> Program Size: Code=8032 RO-data=12032 RW-data=8208 ZI-data=8296
> ".\ARMCM3_debug\arm_fft_bin_example.axf" - 0 Error(s), 0 Warning(s).
> Build Time Elapsed: 00:00:00
>
> Ten sam przyklad z biblioteka skompilowana pod arm-none-eabi gcc 7.2.0 zajmuje
85kB !!
>
> Invoking: Cross ARM GNU Print Size
> arm-none-eabi-size --format=berkeley "stm32f103_dsp_cmsis5.elf"
> text data bss dec hex filename
> 82524 76 1320 83920 147d0 stm32f103_dsp_cmsis5.elf
> Finished building: stm32f103_dsp_cmsis5.siz
>
>
> Czy ktos zana pood, dlaczego prosty przyklad:
>
> arm_rfft_fast_instance_f32 S;
> arm_cfft_radix4_instance_f32 cfft;
>
> static arm_rfft_instance_q15 Sq15;
>
> volatile static uint32_t result ;
> result = arm_rfft_init_q15(&Sq15, 128, 0, 1);
>
> for(int i=0; i < 128; i++){
> q15InData[i] = (q15_t)(sin3x[i] * 2048.0);
> }
>
> volatile static q15_t magnitude[128];
> arm_rfft_q15(&Sq15, (q15_t*)q15InData, (q15_t*)fft_results);
>
> arm_cmplx_mag_q15((q15_t*)fft_results, (q15_t*)magnitude, 128 );
>
>
> kompiluje sie do 10x wiekszego rozmiaru przy GCC ? Wiedzialem ze GCC jest mniej
zoptymalizowane, ale zeby 10x wiekszy kod generowac to juz przesada.
Laczenie. Jak sie patrzylem to GCC generowal bardzo dobry kod
(nie robilem porownan z Keilem, ale po prostu przy jakosci GCC
nie ma wiele miejsca na poprawe). Natomiast duzy program zwykle
bierze sie z dolaczania niepotrzebnych rzeczy. Trzeba zbadac
co jest laczone i dlaczego. Typowa pulapka to funkcja biblioteczna
ktora chce wypisac komunikat o bledzie i dolacza cala mase
potrzebnego do tego kodu. Czasami aby unikniec dolaczania
zbednego kodu trzeba robic dosc brutalne rzeczy w stylu
zdefiniowania wlasnej wersji wewnetrznej funkcji (ktora nic
nie robi w ten sposob unika zaleznosci).
--
Waldek Hebisch
Następne wpisy z tego wątku
Najnowsze wątki z tej grupy
- Fejk muzyczny czy nie fejk
- Raspberry Pi 3 Model B+
- Kuchenka elektryczna
- test
- Cewka elektrozaworu
- zapytanie o chip r5f21275nfp
- nie naprawiam więcej telewizorów
- Zrobił TV OLED z TV LCD
- Zasilacz USB na ścianę.
- Gniazdo + wtyk
- Aliexpress zaczął oszukiwać na bezczelnego.
- OpenPnP
- taka skrzynka do kablowki
- e-paper
- 60 mA dużo czy spoko?
Najnowsze wątki
- 2025-03-15 kraje nieprzyjazne samochodom
- 2025-03-15 parking Auchan
- 2025-03-15 Art. 19.1 ustawy o ochronie praw autorskich
- 2025-03-15 przegląd za mną
- 2025-03-15 Na co komu okna
- 2025-03-15 Mój elektryk
- 2025-03-15 Fejk muzyczny czy nie fejk
- 2025-03-15 China-Kraków => Senior PHP Symfony Developer <=
- 2025-03-15 Wrocław => Konsultant wdrożeniowy Comarch XL (Logistyka, WMS, Produk
- 2025-03-15 Błonie => Analityk Systemów Informatycznych (TMS SPEED) <=
- 2025-03-15 Warszawa => Senior Frontend Developer (React + React Native) <=
- 2025-03-15 Warszawa => Java Full Stack Developer (Angular2+ experience) <=
- 2025-03-15 Warszawa => Java Full Stack Developer (Angular2+) <=
- 2025-03-15 KOMU w RP3 pasuje "Rumuńska łatwość gmerania w wyborach" i dlaczego nie PO-Trzaskanym?
- 2025-03-15 China-Kraków => Key Account Manager IT <=