. : New eShop! - Mobilní verze - Pandatron.cz - Pandatron.sk - Diskuzní fórum - Zakázkový vývoj : .
 
Spojení Cortex-M3 obvodu a RTX real-time OS

Spojení Cortex-M3 obvodu a RTX real-time OS

Představení nabízených možností RTX real-time kernelu ve spojení s Cortex-M3 obvodem. Dále porovnání výkonu systému běžícího na Cortex-M3 a ARM7TDMI.

Většina procesorových embedded systémů, používaných v automatizaci, ale i řídících a zabezpečovacích systémech je typu real-time. To znamená, že systém musí být schopen zajistit reakci na vnější podněty v předem určených časových intervalech. Tato podmínka však tvoří hlavní překážku jak v návrhu řídícího software, tak i hardware, určeného pro tyto systémy. Díky vysokému výkonu a možnostem 32-bitových mikrokontrolérů je však většina real-time embedded systémů postavena na jediném čipu. To umožňuje výraznou redukci konečné ceny produktu, avšak přináší řadu problémů pro jejich vývojáře, kteří musí zajistit včasnou reakci na větší počet stále složitějších periférií.

Real-time softwarové vybavení je obyčejně strukturováno jako řada souběžně běžících úkolů vykonávaných spolu s řízením jejich priorit a real-time jádrem OS. Integrovaná infrastruktura, která poskytuje real-time jádro umožňuje vývojářům snadné definování a kontrolu celého systému. Hlavními požadavky na hardware je tak především vysoký výkon, umožňující správu většího množství úkolů realizovaných paralelně a především také nízká latence přerušení, umožňující naopak rychlou reakci na vnější události.


Obr. 1: Cortex-M3 blokové schéma

Mikrokontrolér založený na jádru ARM Cortex-M3 přináší mnohem vyšší výkon a nižší latenci interruptu, než mikrokontrolér založený na starším, přesto však stále velice populárním ARM7TDMI obvodu.

Cortex-M3 procesor implementuje 16/32-bitové Thumb-2 instrukční set. Ten C/C++ kompilátorům umožňuje produkovat menší a rychlejší kód právě díky použitím výchozí Thumb technologie. Jelikož je většina Thumb a Thumb-2 instrukcí vykonávána během jediného instrukčního taktu jádra procesoru, může Cortex-M3 zajistit rychlejší zpracování totožného programu v porovnáním s klasickou instrukční sadou. V procesorech ARM7TDMI je naopak k dispozici plná 32-bitová instrukční sada, zajišťující podobně rychlé zpracování jako Thumb-2, avšak s vyšším nárokem na programovou paměť a tedy i výkonnou logiku.

  ARM7TDMI Cortex-M3
Instrukční set Thumb®/ARM Thumb-2
Paměťový interface Jediný interface, data
read/write za 3 takty
Oddělený instrukční a datový interface, jednocyklový
read/write
Pipeline 3-stage 3-stage s branch speculation
Násobení 8-bit hardware multiplier,
výsledek do 5 cyklů
8/32-bit hardware multiplier,
výsledek v jediném cyklu
Dělení Jedině softwarové,
výsledek v 100s z
cyklu
Hardwarová dělička,
výsledek do 12 cyklů
Bitová manipulace Read – modify – write Single instruction
Tab. 1: Charakteristika ARM7TDMI a Cortex-M3

Dalším rozdílem procesorů Cortex-M3, odlišujících je od ARM7TDMI je integrace řadiče přerušení. Obvody tak sice disponují pouze jediným přerušovacím vektorem, zato však pevně integrovanou logikou zajišťující automatické uložení proměnných do zásobníku a tedy výrazně rychlejší obsloužení.


Obr. 2: Porovnání obsloužení přerušení

RTX je real-time kernel jak pro ARM7 a ARM9 rodinu, tak i pro obvody postavené na systému Cortex-M3. RTX umožňuje vytvoření real-time programového řešení, plánování údržby a načasování jednotlivých funkcí. Dále umožňuje efektivní rozvržení dostupných systémových prostředků, jako je jádro obvodu či dostupná paměť a hned několik způsobu vzájemné komunikace mezi jednotlivými úkoly. Mezi hlavní výhody RTX patří nízké pořizovací náklady, malá velikost kódu a nízká předvídatelná doba reakce na vnější podněty a přerušení.

Základní podoba real-time systému je navíc již předem integrována do Keilmicrocontroller development kitu (MDK). MDK tak obsahuje bezplatnou licenci RTX knihoven, díky čemuž jsou dostupné funce například pro TCP/IP, USB a CAN komunikační protokoly. Vše je navíc ihned připraveno k plnému použití.
Vytvoření nového úkolu se provádí pouhým přiháním slova __task u funkce jazyka C a všechny možnosti RTX systému mohou být nakonfigurovány jediným .c zdrojovým souborem.

Procesorové zařízení postavené na ARM Cortex-M3 obvodu je díky jeho přednostem přímo předurčeno pro použití v náročných real-time aplikacích, vyžadujících správu většího množství paralelních úkolů. Díky řadě výhod, ale i účinné optimalizaci tak real-time systém RTX běží na těchto obvodech až dvakrát rychleji, než na srovnatelných obvodech řady ARM7TDMI.

RTX velikost (bytů) ARM7TDMI Cortex-M3
Kód <4,5 k (Thumb) <4,0 k (Thumb-2)
RAM pro kernel 446 428
RAM pro Task TaskStackSize + 52 TaskStackSize + 52
RAM pro Mailbox MaxMessage * 4 + 16 MaxMessage * 4 + 16
RAM pro Semaphore 8 8
RAM pro Mutex 12 12
RAM pro User Timer 8 8
Tab. 2: Porovnání požadované kapacity paměti pro RTX

Tabulky č. 2 a 3 porovnávají běh RTX systému na ARM7TDMI obvodu typu LPC2138 běžícím na 60 MHz a Cortex-M3 obvodu typu STM32F103RB běžícím na 72 MHz.

RTX funkce ARM7TDMI Cortex-M3 Rozdíl
Initialize system, start task 46,2 22,1 2,1x
Create defined task 17,0 8,1 2,1x
Create defined task and switch task 19,1 9,3 2,1x
Delete task 9,3 4,8 1,9x
Task switch 6,6 3,9 1,7x
Set event 2,4 1,9 1,3x
Send message 4,5 2,5 1,8x
Context switch time <7 us <4 us 1,7x
Maximum interrupt latency 4,2 0,1 -
Tab. 3: Porovnání výkonu RTX

Z uvedených hodnot je patrný až 20 procentní rozdíl čistého výpočetního výkonu, přičemž na uvedený až dvojnásobný výkon je možné dojít rozdílným zpracováním instrukční sady a značným rozdílem zpracování přerušení.

Odkazy & Download:
RTX Real-Time Kernel
Microcontroller Development Kit

ARM Cortex-M3
ARM7TDMI







GooglePlus1 FaceBook Twitter del.icio.us DiGG Google StumbleUpon Google Buzz Email RSS PDF Tisk

Komentáře (6):

Zobrazit starší 30 dnů (6)...

host
6. Dne 01. 03. 2012 v 14:36 zaslal host
nolvadex aka tamoxifen citrate
Do not chew or effects of tamoxifen were.


Název příspěvku: Vaše jméno: host
                 
  Zakázat formátování [Zakáže kódování a nahrazování smajlíky.]
Připojit soubory
reklama:
WiFi moduly WizFi250-H
WiFi moduly WizFi250 přinášejí snadné a rychlé připojení libovolné aplikace do internetu, nebo vytvoření vlastního AP.
Skladem od 640 Kč

Informace uvedené v článcích jsou platné v době jejich vydání a samotné články jsou určeny pouze jako zdroj informací. Autor článku ani správce webu nenesou žádnou zodpovědnost za případné újmy na majetku a zdraví. Názvy společností a výrobků, loga a další multimediální materiál mohou být ochrannými známkami příslušných společností.
RSS kanály: | |
+420 723 846 377
info@pandatron.cz
Všechna práva vyhrazena | mobilní verze | © Copyright 2000 - 2016 ISSN 1803-6007