Pochopenie viacjadrových procesorov pre dotykové rozhrania

Pochopenie viacjadrových procesorov pre dotykové rozhrania
Image Source: pexely

Ako viacjadrové procesory zlepšujú zážitok z dotykovej obrazovky? Možno sa pýtate, keď sa váš dizajn spomalí. Rozhrania dotykovej obrazovky vyžadujú rýchle a predvídateľné odozvy, dobré využitie energie a plynulé spracovanie mnohých úloh naraz.

Viacjadrový procesor umiestňuje niekoľko nezávislých procesorových jednotiek na jeden čip. Toto nastavenie umožňuje súčasné spustenie úloh dotykovej obrazovky. Jedno jadro môžete použiť na vzorkovanie dotyku, druhé na rozpoznávanie gest a tretie na synchronizáciu obnovovania displeja. Táto viacjadrová konštrukcia znižuje oneskorenie.

Štúdie ukazujú, že celkové oneskorenie pod 100 milisekúnd sa zdá byť okamžité. Priemyselné HMI potrebujú oneskorenie 50 milisekúnd alebo menej. Rýchle kiosky potrebujú frekvenciu hlásenia súradníc aspoň 120 Hz. Oneskorenie niekoľko stoviek milisekúnd sa zdá byť pomalé.

Tento článok vysvetľuje viacjadrovú architektúru jednoduchými slovami. Uvidíte jasné výhody použitia dotykovej obrazovky a získate návod na výber správneho procesora. Táto voľba ovplyvní, ako dobre bude váš návrh fungovať.

Kľúčové poznatky

  • Viacjadrové procesory spracovávajú dotykové úlohy súčasne. To znižuje oneskorenie a vytvára pocit okamžitého zobrazenia na obrazovke.

  • Špeciálne jadrá len pre dotykové ovládanie a konflikty zdrojov obrazovky. Vďaka tomu je doba odozvy pod 50 milisekúnd.

  • Zdieľanie úloh medzi jadrami spotrebúva menej energie. Vďaka tomu batéria vydrží dlhšie bez spomalenia.

  • Operačné systémy v reálnom čase spracovávajú dotykové udalosti s vysokou prioritou. To zabezpečuje rýchle a predvídateľné reakcie.

  • Vyberte si viacjadrový procesor, ktorý vyhovuje vašim potrebám. Zvážte obmedzenia v reálnom čase, výdrž batérie a zahrievanie.

Viacjadrové procesory v dizajne dotykovej obrazovky

Viacjadrové procesory v dizajne dotykovej obrazovky
Image Source: unsplash

Definovanie viacjadrovej architektúry pre dotykové aplikácie

Viacjadrový procesor umiestňuje dve alebo viac nezávislých procesorových jednotiek na jeden čip. Každá jednotka, nazývaná jadro, dokáže spúšťať inštrukcie samostatne. To sa líši od jednojadrového procesora, ktorý vykonáva všetky úlohy jednu po druhej.

Viacjadrový procesor je CPU, ktorý má dve alebo viac nezávislých jadier na jednom čipe.

Pre aplikácie s dotykovou obrazovkou je toto nastavenie dôležité, pretože rôzne úlohy vyžadujú rôzne zdroje. Vzorkovanie dotyku, rozpoznávanie gest a vykresľovanie používateľského rozhrania si vyžadujú vlastnú pozornosť. Viacjadrový dizajn umožňuje prideliť tieto úlohy samostatným jadrám. Vyhnete sa spomaleniu, ku ktorému dochádza, keď jeden procesor spracováva všetko naraz.

Hlavnou myšlienkou je oddelenie úloh. Keď dáte jednému jadru spracovanie vstupu a druhému jadru zobrazenie aktualizácií, žiadna úloha nečaká na druhú. Toto rozdelenie zvyšuje efektivitu a znižuje viditeľné oneskorenie.

Paralelné spracovanie pre citlivosť dotyku

Paralelné spracovanie znamená, že viacero jadier pracuje súčasne na rôznych úlohách. Predstavte si platformu s dvoma procesormi ARM vytvorenú pre meracie nástroje:

  • Jeden procesor (podriadený ARM) spracováva udalosti na obrazovke, dotykový/tlačidlový vstup a vykresľovanie používateľského rozhrania.

  • Druhý procesor (hlavný ARM) sa zameriava iba na základné úlohy merania.

  • Hlavný ARM vykonáva vysokorýchlostné vzorkovanie rýchlosťou 100 kS/s bez zastavenia.

  • Podriadený ARM spúšťa grafický displej samostatne, takže vykresľovanie kriviek zostáva plynulé.

Toto rozdelenie zastavuje boj o zdroje. V systéme s jedným ARM procesorom sa časy vzorkovania predlžujú a dáta sa strácajú, pretože procesor musí prepínať medzi úlohami. S viacjadrovými procesormi tento problém zmizne.

Výsledkom je nižšie oneskorenie odozvy systému. Dotyková obrazovka sa javí ako okamžitá, pretože displej nikdy nebojuje s meracími úlohami o výpočtový výkon. Toto nastavenie tiež podporuje viacero jadier pre rôzne úlohy, čo vám poskytuje flexibilitu návrhu.

Pre inžinierov to znamená, že si môžu vybrať procesory na základe svojich presných potrieb. Niektoré návrhy potrebujú dve jadrá; iné fungujú lepšie so štyrmi alebo viacerými. Viacjadrový prístup rastie s vašimi potrebami, či už konštruujete jednoduchý kiosk alebo zložité priemyselné HMI.

Zvýšenie rýchlosti je zrejmé pri porovnaní časov odozvy. Jednojadrový procesor musí dokončiť jednu úlohu predtým, ako začne s inou. Viacjadrový procesor robí obe úlohy naraz, čím sa výrazne skracuje viditeľné oneskorenie.

Kľúčové výhody viacjadrových procesorov

Zníženie vstupnej latencie prostredníctvom alokácie jadra

Keď pridelíte vyhradené jadrá špecifickým úlohám dotykovej obrazovky, odstránite úzke hrdlo, ktoré spôsobuje oneskorenie vstupu. Jednojadrový systém musí postupne spracovávať vzorkovanie dotyku, dekódovanie gest a aktualizácie displeja. Každé prepnutie úlohy pridáva niekoľko milisekúnd réžie. Pri viacjadrovom dizajne priradíte jedno jadro výhradne spracovaniu dotykového vstupu. Ďalšie jadro spracováva obnovovanie displeja. Tretie jadro spravuje operácie na pozadí, ako je sieťová komunikácia alebo zaznamenávanie údajov.

Tieto procesory kombinujú funkcie na jednom čipe. Znižujete počet vstavaných počítačov. Znižuje sa spotreba materiálu. Váš návrh sa ľahko škáluje naprieč produktovými úrovňami. Architektúra viacjadrového procesora tiež poskytuje izoláciu úloh. Spracovanie dotyku na vlastnom vyhradenom jadre nikdy nekonkuruje úlohám zobrazenia o výpočtový čas. Izolácia resetovania funguje rovnako. Ak jedno jadro zlyhá, ostatné jadrá pokračujú v prevádzke. Vaša dotyková obrazovka zostáva responzívna aj pri čiastočnom zlyhaní. Táto spoľahlivosť je dôležitá pre kritické aplikácie, ako sú automobilové informačno-zábavné systémy.

Alokácia jadier tiež zlepšuje predvídateľnosť latencie. Priority prerušení nastavíte na každom jadre. Dotykové udalosti s vysokou prioritou dostanú okamžitú pozornosť bez čakania na dokončenie snímky. Jadro pre vykresľovanie displeja pracuje stabilným tempom. Nikdy nekradne cykly zo vstupného jadra. Táto viacjadrová stratégia poskytuje konzistentný čas odozvy pod 50 milisekúnd, ktorý spĺňa požiadavky priemyselného HMI. Vaši používatelia nikdy nepocítia oneskorenie medzi dotykom a vizuálnou spätnou väzbou.

Energetická účinnosť dotykových obrazoviek mobilných telefónov

Rozloženie pracovného zaťaženia medzi viacero jadier vám umožňuje prevádzkovať každé jadro na nižšej frekvencii. Jednojadrový procesor by potreboval vysokú frekvenciu na spracovanie všetkých úloh. Táto vysoká frekvencia generuje viac tepla a rýchlejšie vybíja batériu. Výkon sa škáluje s druhou mocninou napätia. Nižšia frekvencia umožňuje nižšie napätie, čo výrazne znižuje spotrebu energie. Viacjadrový systém rozkladá rovnakú celkovú prácu medzi niekoľko jadier. Každé jadro beží s miernou rýchlosťou. Toto nastavenie výrazne znižuje celkovú spotrebu energie.

Predstavte si mobilné zariadenie. Jedno jadro spracováva dotykové gestá. Ďalšie jadro vykresľuje používateľské rozhranie. Tretie jadro sa stará o bezdrôtovú komunikáciu. Každé jadro beží na nižšej frekvencii, ako by potrebovala jednojadrová alternatíva. Celková energetická účinnosť sa zlepšuje, pretože každé jadro pracuje vo svojom najefektívnejšom rozsahu napätia. Výsledkom je dlhšia výdrž batérie bez obetovania používateľského zážitku.

Pri tejto architektúre klesá aj tvorba tepla. Jedno vysokofrekvenčné jadro vytvára na čipe koncentrované horúce miesto. Toto horúce miesto núti systém znížiť výkon alebo zapnúť aktívne chladenie. Viacjadrová konštrukcia rozkladá tepelnú záťaž na celý čip. Každé jadro generuje menej tepla. Môžete použiť pasívne chladenie a udržať zariadenie štíhle a tiché. To je dôležité pre mobilné aplikácie, kde sú kritickými obmedzeniami výdrž batérie, povrchová teplota a tvarový faktor.

Viacjadrový prístup tiež podporuje dynamické škálovanie napätia a frekvencie. Nepoužívané jadrá môžete úplne vypnúť. Keď je dotyková obrazovka nečinná, aktívne zostane iba jedno jadro s nízkou spotrebou energie. Ostatné sa vypnú, čím sa šetrí energia. Toto jemnozrnné riadenie prináša lepšiu účinnosť ako jednojadrový dizajn. Viacjadrový procesor vám poskytuje flexibilitu pri vyvažovaní výkonu a spotreby energie na požiadanie. Mnoho vstavaných aplikácií teraz používa viacjadrové procesory práve kvôli týmto výhodám. Dizajn procesora tiež znižuje celkové zaťaženie procesora počas špičkovej prevádzky.

Pre zariadenia napájané z batérie sa táto účinnosť premieta do dlhšej doby prevádzky. Smartfón s viacjadrovým procesorom vydrží celý deň. Priemyselný tablet s viacjadrovým dizajnom dokáže fungovať celú smenu bez dobíjania. Úspora energie znižuje požiadavky na chladenie, čo znižuje náklady na systém a predlžuje životnosť komponentov. Vďaka týmto výhodám je viacjadrová architektúra preferovanou voľbou pre moderné zariadenia s dotykovou obrazovkou.

Výkon viacjadrového vs. jednojadrového procesora

Spracovanie nepretržitých vstupných prúdov a prerušení

Jednojadrový procesor vykonáva úlohy dotykovej obrazovky jednu po druhej. Vzorkuje dotyk, potom načíta gesto a nakoniec nakreslí rámček. Každý krok čaká na predchádzajúci. Tento postup krok za krokom spôsobuje oneskorenia, keď vstupy neustále prichádzajú. Používateľ potiahne posuvník a obrazovka zaostáva za prstom. Procesor nestíha, pretože musí neustále prepínať medzi úlohami.

Viacjadrový procesor spúšťa tie isté úlohy súčasne. Jedno jadro vzorkuje dotykový ovládač stabilnou rýchlosťou. Ďalšie jadro číta vzor gesta. Tretie jadro vykresľuje nový rámec. Vstup nikdy nečaká na dokončenie vykresľovania. Táto paralelná metóda odstraňuje blok, ktorý spôsobuje viditeľné oneskorenie. Získate stabilný čas odozvy, aj keď je systém zaneprázdnený.

Viacjadrový dizajn však prináša svoje vlastné problémy, nazývané problémy s mcp. Koherencia vyrovnávacej pamäte znamená, že všetky jadrá musia vidieť rovnaké dáta. Ak jedno jadro zmení bod dotyku, iné jadro musí túto zmenu okamžite vidieť. Komunikácia medzi jadrami pridáva ďalšiu prácu. Jadrá musia posielať správy prostredníctvom zdieľanej pamäte alebo špeciálnych kanálov. Dôležité je aj vyrovnávanie záťaže. Ak jedno jadro prevezme príliš veľa úloh, stane sa úzkym hrdlom. Musíte starostlivo rozdeliť prácu, aby boli všetky jadrá zaneprázdnené bez preťaženia ktoréhokoľvek z nich.

Prípady použitia v reálnom svete: Automobilový priemysel a mobilné zariadenia

Informačné a zábavné systémy automobilov ukazujú hodnotu viacjadrového dizajnu. Moderné auto má veľa obrazoviek, signálov z kamier a vstupov zo senzorov. Jedno jadro spracováva dotykovú obrazovku. Ďalšie jadro spracováva dáta zo cúvacej kamery. Tretie jadro spravuje navigáciu a zvuk. Tieto úlohy bežia súčasne bez toho, aby si navzájom prekážali. Vodič získa okamžitú dotykovú odozvu, zatiaľ čo systém spracováva zložité dátové toky. Spoľahlivosť sa zvyšuje, pretože porucha jedného jadra nespôsobí zlyhanie celého systému.

Mobilné telefóny vyvažujú rýchlosť s výdržou batérie pomocou rovnakej metódy. Viacjadrový procesor dáva dotykovému spracovaniu vlastné jadro. Ostatné jadrá spracovávajú úlohy na pozadí alebo sa úplne vypínajú. Zvýšenie výkonu je zrejmé. Mobilné procesory poskytujú až o 172 % vyšší výkon CPU na watt . Grafický výkon sa zlepšuje až o 212 % na watt. Zvýšenie vizuálneho výkonu dosahuje 132 % na watt. Produktivita sa zlepšuje až o 127 % na watt. Prehrávanie HD videa sa stáva o 51 % energeticky úspornejším.

Metrika responzívnosti

Metrika účinnosti batérie

Až o 172 % vyšší výkon CPU na watt

Výdrž batérie v pokoji až 12 hodín

Až o 212 % lepší grafický výkon na watt

Až o 45 % dlhšia výdrž batérie v porovnaní s konkurenciou

Až o 132 % lepší vizuálny výkon na watt

Až o 25 % lepšia energetická účinnosť ako predchádzajúca generácia

Až o 127 % lepšia produktivita na watt

Výdrž batérie v nečinnosti až 11 hodín

Až o 51 % vyššia energetická účinnosť pri prehrávaní HD videa

Výdrž batérie v pokoji až 13 hodín

Tieto čísla ukazujú zvýšenie efektivity vďaka viacjadrovému dizajnu. Získate rýchlejšiu odozvu bez straty výdrže batérie. Procesor spúšťa každé jadro s nižšou rýchlosťou, čím sa znižuje spotreba energie. Táto energetická účinnosť predlžuje dobu používania zariadenia. Smartfón vydrží celý deň intenzívneho používania. Systém auta spoľahlivo funguje v náročných podmienkach. Viacjadrové procesory poskytujú rýchlosť a efektivitu, ktorej sa jednojadrové dizajny nemôžu porovnať. Vaše aplikácie profitujú z tohto vyváženého prístupu k výkonu a energii.

Úvahy o dizajne pre viacjadrové dotykové systémy

Úvahy o dizajne pre viacjadrové dotykové systémy
Image Source: unsplash

Stratégie alokácie jadra a rozdelenie úloh

Úlohy dotykovej obrazovky je potrebné medzi jadrá starostlivo rozdeliť. Dobrá viacjadrová stratégia vyhradí jedno jadro na spracovanie dotykového vstupu. Ďalšie jadro sa stará o vykresľovanie používateľského rozhrania. Tretie jadro spravuje operácie na pozadí, ako je sieťová komunikácia alebo zaznamenávanie údajov. Toto rozdelenie zabraňuje konfliktom zdrojov. Udržiava nízke doby odozvy. Váš návrh musí vyvážiť pracovné zaťaženie v celom systéme.

Predstavte si typický systém s dotykovou obrazovkou. Dotykový ovládač odosiela dáta pevnou rýchlosťou. Vaše vstupné jadro číta tieto dáta v každom snímku. Spracováva nespracované dotykové body. Filtruje šum. Sleduje pohyb prsta. Renderovacie jadro berie výsledky a vykresľuje novú obrazovku. Jadro na pozadí sa stará o Wi-Fi, Bluetooth alebo ukladanie dát. Každé jadro má jasnú úlohu. Žiadne jadro nečaká na iné.

Zlá alokácia jadier vytvára problémy vo viacjadrových systémoch. Zdieľané hardvérové ​​zdroje spôsobujú interferenciu medzi jadrami. Medzi tieto zdroje patria pamäťové zbernice, vyrovnávacie pamäte a radiče pamäte. Keď dve jadrá pristupujú k rovnakému zdroju súčasne, jedno jadro musí čakať. Táto interferencia nespôsobuje malé oneskorenia. Rozširuje rozloženie času vykonávania. Získate nepredvídateľný vzorec s dlhým chvostom. Úlohy, ktoré by mali byť dokončené rýchlo, môžu trvať oveľa dlhšie. Softvérové ​​rozdelenie to nedokáže úplne vyriešiť. Väčšina HSR neumožňuje čisté rozdelenie. Sú alokované iba vtedy, keď k nim úloha pristupuje. Softvérový oddiel nemôžete obmedziť na jeho alokované HSR. Výsledkom je nedeterministické správanie. Kritické úlohy sa nemusia dokončiť v rámci prísnych časových obmedzení.

Nerovnomerné rozloženie pracovnej záťaže tiež negatívne ovplyvňuje výkon. Niektoré úlohy bežia veľmi rýchlo. Iné úlohy zaberajú značný čas. Rýchle úlohy trávia čas čakaním na dlhé úlohy. Výpočtové zdroje sú nečinné. Škálovanie výkonu trpí. Váš viacjadrový systém s dotykovou obrazovkou stráca odozvu. Musíte profilovať svoju aplikáciu. Potrebujete vedieť, ako dlho trvá každá úloha. Potom môžete úlohy priradiť jadrám vyváženým spôsobom.

Vaším cieľom je vyvážené pracovné zaťaženie. Každé jadro by malo mať jasnú úlohu. Žiadne jadro by nemalo čakať na iné. Táto rovnováha zlepšuje efektivitu a spoľahlivosť. Z tohto viacjadrového prístupu profituje mnoho aplikácií. Môžete si vybrať medzi 32-bitovou a 64-bitovou architektúrou. Viacjadrový procesor so štyrmi alebo viacerými procesorovými jednotkami funguje dobre pre káblovú aj bezdrôtovú komunikáciu.

Podpora operačných systémov a plánovanie v reálnom čase

Výber procesora ovplyvňuje výkon systému. Dôležitý je aj operačný systém. Univerzálne plánovače optimalizujú priepustnosť a spravodlivosť. Vytvárajú nepredvídateľné načasovanie dotykových udalostí na viacjadrovom procesore. Môže dôjsť k inverzii priorít plánovača. Vlákno dotykových udalostí sa oneskorí za úlohami na pozadí. Časy odozvy sa stanú premenlivými. Úloha s nízkou prioritou môže mať zámok. Dotykové vlákno s vysokou prioritou tento zámok potrebuje. Vlákno s vysokou prioritou sa zablokuje. Oneskorenie sa zväčšuje.

Potrebujete operačný systém s deterministickým plánovaním. Operačné systémy reálneho času tento problém riešia. RTOS používa preventívne plánovanie založené na prioritách . Obsluha dotykových udalostí s vysokou prioritou môže okamžite prerušiť prácu s nižšou prioritou. Udalosť sa spracuje v obmedzenom čase. Latencia prerušenia zostáva rýchla a predvídateľná. Univerzálny operačný systém môže mať neobmedzené oneskorenia pri spracovaní prerušení. Jadro RTOS zaručuje, že vaša obsluha dotykových udalostí sa spustí v pevne stanovenom časovom okne. Táto záruka pochádza z návrhu plánovača. Plánovač si vždy vyberie pripravenú úlohu s najvyššou prioritou. Vaša obsluha dotykových udalostí má najvyššiu prioritu. Nikdy nečaká na prácu na pozadí.

Pomáha aj tienenie CPU. Viacjadrové jadro procesora vyhradíte výhradne na časovo kritické spracovanie dotyku. Izolujete ho od démonov jadra a prerušení spodných polovíc. Tým sa zabráni tomu, aby aktivita operačného systému na pozadí kradla cykly. Časovanie dotykových udalostí sa stáva deterministickým. Architektúra procesora, ktorú si vyberiete, musí tieto ciele podporovať. Mnohé moderné procesory vám umožňujú nastaviť afinitu CPU. Obslužný program dotyku pripnete na konkrétne jadro. Iné procesy nemôžu na tomto jadre bežať. Výsledkom je konzistentná odozva s nízkou latenciou.

Tieto aspekty sú dôležité pre aplikácie v reálnom svete. Váš automobilový informačno-zábavný systém potrebuje spoľahlivú odozvu na dotyk. Vaše mobilné zariadenie potrebuje konzistentný výkon. Venujte pozornosť problémom s viacjadrovým procesorom (mcp), ako je koherencia vyrovnávacej pamäte a komunikácia medzi jadrami. Dobre navrhnutý viacjadrový systém poskytuje očakávanú odozvu. Viacjadrové procesory vám poskytujú flexibilitu pri vyvážení všetkých týchto faktorov pre váš návrh.

Viacjadrové procesory transformujú dotykové obrazovky prostredníctvom inteligentnej správy zdrojov, nielen hrubej rýchlosti. Získate zníženú latenciu, nižšiu spotrebu energie a plynulejší multitasking v rámci vašich cieľov.

Moderné možnosti demonštrujú tento vývoj:

  • Procesory Intel Atom® x7000RE ponúkajú až štyri jadrá pre paralelné aplikácie na okraji siete.

  • Procesory Arm® majú šesť jadier, ktoré vyvažujú výkon s efektivitou pre riešenia HMI založené na systéme Linux®.

Pred výberom architektúry zhodnoťte svoje obmedzenia v reálnom čase, výdrž batérie a tepelné limity. Vaše špecifické požiadavky určujú, či je pre vás vhodnejšia viacjadrová alebo jednojadrová architektúra.

Nové technológie ako haptika a skladacie displeje si budú vyžadovať ešte väčšie paralelné spracovanie. Viacjadrový dizajn vás postaví pred tento pokrok a pripraví vás na dotykové obrazovky novej generácie.

Často kladené otázky

Ako viacjadrový dizajn znižuje latenciu dotykovej obrazovky?

Viacjadrový dizajn priraďuje dotykový vstup jednému jadru. Ďalšie jadro sa stará o vykresľovanie displeja. Váš procesor už neprepína medzi úlohami. Tieto úlohy bežia paralelne. Eliminujete tak úzke hrdlo spôsobené sekvenčnými úlohami. Celkové oneskorenie zostáva pod 50 milisekúnd.

Akú úlohu hrá alokácia jadier v energetickej účinnosti?

V viacjadrovom systéme rozložíte pracovné zaťaženie medzi jadrá. Každé jadro beží na nižšej frekvencii. Nižšia frekvencia znižuje napätie. Tento prístup predlžuje výdrž batérie bez obetovania výkonu.

Aké výzvy prináša viacjadrová architektúra?

Koherencia vyrovnávacej pamäte, komunikácia medzi jadrami a vyvažovanie záťaže môžu spôsobovať problémy. Jedno jadro musí vidieť zmeny vykonané iným jadrom. Bez starostlivého návrhu sa časy odozvy stávajú nepredvídateľnými.

Ako RTOS podporuje viacjadrové systémy s dotykovou obrazovkou?

Operačný systém v reálnom čase používa plánovanie založené na prioritách. Váš obslužný program dotyku má najvyššiu prioritu. Predchádza úlohám s nižšou prioritou. To zaručuje obmedzené časy odozvy pre každú udalosť dotyku.

Čo by ste mali zvážiť pri výbere viacjadrového procesora?

Zhodnoťte svoje obmedzenia v reálnom čase, výdrž batérie a tepelné limity. Viacjadrový procesor s vyhradenými jadrami pre dotykové spracovanie poskytuje najlepšiu odozvu. Mnoho moderných aplikácií používa viacjadrové procesory pre svoju efektivitu.

Pridať komentár

Vaša e-mailová adresa nebude zverejnená. Povinné polia sú označené hviezdičkou *.