Poprzedni temat «» Następny temat
Mikrokontrolery STM32
Autor Wiadomość
Aro 
Everything Is Possible



Wiek: 27
Dołączył: 30 Paź 2006
Posty: 641
Skąd: Świerczyniec | Wrocław
Wysłany: 2009-01-02, 13:37   

Właśnie zajrzałem do karty katalogowej najtańszego procka Cortex M3 za kilkanaście zł. I już rozumiem czemu na rynku nie ma XMEGA... Najwyższy czas zaopatrzyć się w tego ARMa:) A tak przy okazji wie ktoś z jaką maksymalną prędkością można przesyłać równolegle 8 bitowe dane między GPIO a RAMem? Da się wykorzystać do tego DMA?
 
 
     
radzio 



Wiek: 33
Dołączył: 07 Gru 2004
Posty: 532
Skąd: Sosnowiec
Wysłany: 2009-01-02, 14:27   

Teoretycznie powinno się dać zrealizować to jako transfer w trybie memory-to-memory. Co do maksymalnej prędkości zapisu do GPIO to wynosi ona 18MHz. Więc teoretycznie kopiując z pamięci z wykorzystaniem CPU (oczywiście trzeba to robić w asemblerze) powinno się dać osiągnąć połowę tego (wszystko zależy od odpowiedniej optymalizacji programu asemblerowego).
 
     
Aro 
Everything Is Possible



Wiek: 27
Dołączył: 30 Paź 2006
Posty: 641
Skąd: Świerczyniec | Wrocław
Wysłany: 2009-01-02, 15:23   

Memory-to-memory? Jest na to jedna instrukcja? Myślałem nad rozwiązaniem GPIO->rejestr, rejestr->RAM, czyli dwa cykle zegara a więc 18MHz, przy zegarze 36MHz. czy dobrze myślę?
 
 
     
radzio 



Wiek: 33
Dołączył: 07 Gru 2004
Posty: 532
Skąd: Sosnowiec
Wysłany: 2009-01-02, 18:27   

Aro napisał/a:
Memory-to-memory? Jest na to jedna instrukcja?

Nie, to taki tryb pracy układu DMA.
Aro napisał/a:
Myślałem nad rozwiązaniem GPIO->rejestr, rejestr->RAM, czyli dwa cykle zegara a więc 18MHz, przy zegarze 36MHz. czy dobrze myślę?

Nie do końca. Operacje load/store zjamują 2 cykle zegarowe, tak więc 18MHz można osiągnąć przy zegarze 72MHz. Dodatkowo należy pamiętać, że przy takiej częstotliwości pracy (oraz zakładając, że mówimy o STM32) dostęp do pamięci programu musi się odbywać z dwoma cyklami oczekiwania, więc fragment programu, od którego oczekujemy maksymalnej wydajności czasowej, należałoby umieścić w pamięci RAM.
 
     
Aro 
Everything Is Possible



Wiek: 27
Dołączył: 30 Paź 2006
Posty: 641
Skąd: Świerczyniec | Wrocław
Wysłany: 2009-01-02, 21:46   

Czyli nie ma tak różowo:(
A jeśli dałoby się wykorzystać ten kanał DMA, to da radę wyciągnąć 18MHz? Mam tu na myśli STM101... Cortex M3.
 
 
     
radzio 



Wiek: 33
Dołączył: 07 Gru 2004
Posty: 532
Skąd: Sosnowiec
Wysłany: 2009-01-02, 22:06   

Postaram się to sprawdzić w praktyce, dziś albo jutro.
 
     
Aro 
Everything Is Possible



Wiek: 27
Dołączył: 30 Paź 2006
Posty: 641
Skąd: Świerczyniec | Wrocław
Wysłany: 2009-01-02, 23:25   

O, wielkie dzięki:) Mimo wszystko jednak zamówię jakiś zestaw z tym prockiem.
 
 
     
radzio 



Wiek: 33
Dołączył: 07 Gru 2004
Posty: 532
Skąd: Sosnowiec
Wysłany: 2009-01-03, 20:03   

No więc jestem po pierwszych praktycznych testach. Nie wygląda to zbyt różowo - w przybliżeniu dane wychodzą na port z 1/10 częstotliwości pracy CPU. Lepiej raczej nie będzie, gdyż DMA w STM32 ma dostęp do 50% przepustowości magistrali.

STM32F101 mogą pracować maksymalnie na 36 MHz, więc w żaden sposób 18MHz z niego nie wyciągniesz.
 
     
Aro 
Everything Is Possible



Wiek: 27
Dołączył: 30 Paź 2006
Posty: 641
Skąd: Świerczyniec | Wrocław
Wysłany: 2009-01-03, 21:35   

No to zastosuję niewiele droższy STM32F103 i z użyciem rdzenia wyciągnę te "magiczne" 18MHz, przy 72MHz zegara.
 
 
     
gwozdex 



Wiek: 33
Dołączył: 24 Lut 2006
Posty: 836
Skąd: Czechowice-Dziedzice
Wysłany: 2009-01-04, 10:45   

Witam!
Zastanawiałem się dokładnie nad tym samym zestawem (STM32F103). Muszę jednak się dobrze zastanowić, ponieważ w zasadzie nastawiam się na jeden rodzaj aplikacji- sterowanie wektorowe silników. Jeśli przy okazji przyda mi się taki zestaw do czegoś innego to super ( a wiem, że tak będzie). Przeglądałem kilka not katalogowych i różnych instrukcji (Application Notes) i waham się jeszcze pomiędzy zestawami STM'u lub Microchipa.
 
 
     
Wyświetl posty z ostatnich:   
Odpowiedz do tematu
Nie możesz pisać nowych tematów
Nie możesz odpowiadać w tematach
Nie możesz zmieniać swoich postów
Nie możesz usuwać swoich postów
Nie możesz głosować w ankietach
Nie możesz załączać plików na tym forum
Możesz ściągać załączniki na tym forum
Dodaj temat do Ulubionych
Wersja do druku

Skocz do:  


Powered by phpBB modified by Przemo © 2003 phpBB Group
Strona wygenerowana w 0,04 sekundy. Zapytań do SQL: 10