abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 15:55 | Nová verze

    Byl vydán TrueNAS SCALE 24.04 “Dragonfish”. Přehled novinek této open source storage platformy postavené na Debianu v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    dnes 13:44 | IT novinky

    Oznámeny byly nové Raspberry Pi Compute Module 4S. Vedle původní 1 GB varianty jsou nově k dispozici také varianty s 2 GB, 4 GB a 8 GB paměti. Compute Modules 4S mají na rozdíl od Compute Module 4 tvar a velikost Compute Module 3+ a předchozích. Lze tak provést snadný upgrade.

    Ladislav Hagara | Komentářů: 0
    dnes 04:44 | Nová verze

    Po roce vývoje od vydání verze 1.24.0 byla vydána nová stabilní verze 1.26.0 webového serveru a reverzní proxy nginx (Wikipedie). Nová verze přináší řadu novinek. Podrobný přehled v souboru CHANGES-1.26.

    Ladislav Hagara | Komentářů: 0
    dnes 04:33 | Nová verze

    Byla vydána nová verze 6.2 živé linuxové distribuce Tails (The Amnesic Incognito Live System), jež klade důraz na ochranu soukromí uživatelů a anonymitu. Přehled změn v příslušném seznamu. Tor Browser byl povýšen na verzi 13.0.14.

    Ladislav Hagara | Komentářů: 0
    dnes 04:22 | Nová verze

    Byla vydána nová verze 30.0.0 frameworku pro vývoj multiplatformních desktopových aplikací pomocí JavaScriptu, HTML a CSS Electron (Wikipedie, GitHub). Chromium bylo aktualizováno na verzi 124.0.6367.49, V8 na verzi 12.4 a Node.js na verzi 20.11.1. Electron byl původně vyvíjen pro editor Atom pod názvem Atom Shell. Dnes je na Electronu postavena celá řada dalších aplikací.

    Ladislav Hagara | Komentářů: 0
    dnes 04:11 | Nová verze

    Byla vydána nová verze 9.0.0 otevřeného emulátoru procesorů a virtualizačního nástroje QEMU (Wikipedie). Přispělo 220 vývojářů. Provedeno bylo více než 2 700 commitů. Přehled úprav a nových vlastností v seznamu změn.

    Ladislav Hagara | Komentářů: 0
    včera 23:22 | IT novinky

    Evropský parlament dnes přijal směrnici týkající se tzv. práva spotřebitele na opravu. Poslanci ji podpořili 584 hlasy (3 bylo proti a 14 se zdrželo hlasování). Směrnice ujasňuje povinnosti výrobců opravovat zboží a motivovat spotřebitele k tomu, aby si výrobky nechávali opravit a prodloužili tak jejich životnost.

    Ladislav Hagara | Komentářů: 4
    včera 16:11 | Nová verze

    Bylo oznámeno (cs) vydání Fedora Linuxu 40. Přehled novinek ve Fedora Workstation 40 a Fedora KDE 40 na stránkách Fedora Magazinu. Současně byl oznámen notebook Slimbook Fedora 2.

    Ladislav Hagara | Komentářů: 18
    včera 13:44 | Upozornění

    ČTK (Česká tisková kancelář) upozorňuje (X), že na jejím zpravodajském webu České noviny byly dnes dopoledne neznámým útočníkem umístěny dva smyšlené texty, které nepocházejí z její produkce. Jde o text s titulkem „BIS zabránila pokusu o atentát na nově zvoleného slovenského prezidenta Petra Pelligriniho“ a o údajné mimořádné prohlášení ministra Lipavského k témuž. Tyto dezinformace byly útočníky zveřejněny i s příslušnými notifikacemi v mobilní aplikaci Českých novin. ČTK ve svém zpravodajském servisu žádnou informaci v tomto znění nevydala.

    Ladislav Hagara | Komentářů: 26
    včera 13:33 | Komunita

    Byla založena nadace Open Home Foundation zastřešující více než 240 projektů, standardů, ovladačů a knihoven (Home Assistant, ESPHome, Zigpy, Piper, Improv Wi-Fi, Wyoming, …) pro otevřenou chytrou domácnost s důrazem na soukromí, možnost výběru a udržitelnost.

    Ladislav Hagara | Komentářů: 0
    KDE Plasma 6
     (72%)
     (9%)
     (2%)
     (17%)
    Celkem 714 hlasů
     Komentářů: 4, poslední 6.4. 15:51
    Rozcestník

    ARM debugging - Black Magic Probe, orbuculum, ITM/ETM trace

    22.3.2020 03:51 | Přečteno: 2277× | programování | Výběrový blog

    Embedded debuggingem - ARM, MIPS, RISC-V - se už zaobírám celkem dost let. Zde je přehled některejch užitečných nástrojů - debuggery, dekódování periferií přes SVD definice, hádání proč nastal fault. A méně známým featurám jako ITM/ETM trace.

    Jako přehled, co všechno lze udělat u debugování ARM procesorů lze najít v tomto dlouhém dokumentu. Nutno podotknout, že vznikal mnoho let, tudíž některé nástroje mají již jiný UI design (třeba zmíněný Qt Creator), ale obecně všechno co tam je, stále platí.

    Hall of fame

    Asi nejlepší nejprve zmínit užitečné nástroje, které za to stojí, většina open source (free as in code and free as in beer) nebo za rozumnou cenu:

    Hall of meh

    Zde jsou většinou drahé komerční nástroje, které až tak dobře nefungují a znova bych za ně nezaplatil. Pro pochopení následujícího odstace: ETM trace je prostře schopnost zaznamenat všechny instrukce, které byly spuštěny na procesoru. Je to součást ARM CoreSight.

    Screenshoty

    Zde zkusím ilustrovat, na co je každý tool dobrý.

    ETM trace (zaznamenání všech instrukcí mezi dvouma breakpointma, Instruction trace vlevo uprostřed):

    SystemView ukazuje, že Systick interrupt, který byl manuálně upraven na víc než 50000 cyklů, může preemptnout USB interrupt (značeno jako ISR #93), který má nižší prioritu (nastává late arriving místo tail chaining):

    Black Magic Probe

    Vector catch exceptionů lze nastavit přes "monitor vector_catch nazev_exceptions". Na rozdíl od Ozone, vector catch tady ukazuje i stack trace (Ozone udělá breakpoint na Fault handleru, tady vidíme hardfault než se dostane k handleru):
    
     target extended-remote /dev/ttyBmpGdb
    Remote debugging using /dev/ttyBmpGdb
     monitor swdp_scan
    Target voltage: unknown
    Available Targets:
    No. Att Driver
     1      STM32F40x M3/M4
     attach 1
     start
    
    

    Dekódování periferií přes SVD definice

    CLion, Ozone, Ghidra mají přímo možnost nahrát definice registrů zo SVD definice a pak je zobrazovat.

    V GDB je na to potřeba skript: How to debug a hard fault on ARM

    Příklad dekódovaní části DMA registrů:

    GDB

    CLion

    ITM a ETM trace

    ITM je instruction trace macrocell a ETM je embedded trace macrocell. Velmi zjednodušeně, s ITM si můžete samplovat s určitou frekvencí, kde se kód nachází, nebo přes SWO pin vypisovat data, na ETM je typicky potřeba 4 TRACEDATA piny a 1 TRACECLK pin procesoru. ETM by mělo jít "přesměrovat" i přes SWO pin, ale nebude kompletní proti použití TRACE pinů.

    Pulseview/Sigrok má decoder pro ITM/ETM na NRZ SWO pin, ale ne pro všechny TRACE piny. Na to je orbulucum na Lattice HX8K desce (bohužel se mi to nepovedlo nikdy rozchodit).

    Nastavování ITM a ETM je strašný opruz pokud na to nemáte nástroj. Jeden example jak to dělat je například tady. Ale když se podíváte na ten configure-trace.openocd soubor, tak buď tomu nebudete rozumět, nebo budete muset luštit v manuálech.

    ITM trace je ta jednodušší a i relativně levné nástroje ji rozumí (např. STMicro nástroje). Naproti tomu ETM trace je fakt složitá a bez profesionálních nástrojů se moc daleko nedostanete. I to orbuculum zabralo spoustu času. Na ETM trace jsou asi 3 nejznámější nástroje, Segger JTrace, Lauterbach Trace32 a Keil uLink Pro. Každý stojí tak jednu ruku. Já mám zrovna JTrace a mám problém i s jejich referenční STM32F407 doskou. Zrovna mám pocit, že jsem dostal nějaký nový model s novými featurami, ale i novými bugmi (jiní kolegové říkají, že jejich starší JTrace funguje mnohem lépe).

           

    Hodnocení: 100 %

            špatnédobré        

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    Komentáře

    Vložit další komentář

    22.3.2020 10:49 Petr
    Rozbalit Rozbalit vše Re: ARM debugging - Black Magic Probe, orbuculum, ITM/ETM trace
    Opravdu to dnes někoho zajímá?
    22.3.2020 16:09 atalax | skóre: 2
    Rozbalit Rozbalit vše Re: ARM debugging - Black Magic Probe, orbuculum, ITM/ETM trace
    Nechápu. Jako že už mikrokontroléry nikdo v dnešní době neprogramuje?
    Jendа avatar 22.3.2020 18:39 Jendа | skóre: 78 | blog: Jenda | JO70FB
    Rozbalit Rozbalit vše Re: ARM debugging - Black Magic Probe, orbuculum, ITM/ETM trace
    Gréta avatar 23.3.2020 13:14 Gréta | skóre: 36 | blog: Grétin blogísek | 🇮🇱==❤️ , 🇵🇸==💩 , 🇪🇺==☭
    Rozbalit Rozbalit vše Re: ARM debugging - Black Magic Probe, orbuculum, ITM/ETM trace

    noa třeba to jakože fakt myslel tak že se debuggery nepoužívaj ale nevim :O :O :D :D

    23.3.2020 08:48 Michal Kubeček | skóre: 72 | Luštěnice
    Rozbalit Rozbalit vše Re: ARM debugging - Black Magic Probe, orbuculum, ITM/ETM trace
    Ale ano, najdou se kupodivu i lidé, kteří mají za to, že když už musejí sedět doma, věnovat se něčemu z oblasti IT bude pro jejich duševní zdraví prospěšnější než nonstop sledování ČT24 proložené hledáním informací o epidemii na webu.
    23.3.2020 11:53 _
    Rozbalit Rozbalit vše Re: ARM debugging - Black Magic Probe, orbuculum, ITM/ETM trace
    Ok, věnuj se nesmyslům, místo abys přispěl k řešení skutečných problémů
    Jendа avatar 23.3.2020 12:24 Jendа | skóre: 78 | blog: Jenda | JO70FB
    Rozbalit Rozbalit vše Re: ARM debugging - Black Magic Probe, orbuculum, ITM/ETM trace
    Nešlo by rovnou napsat nějaké body, jak může autor/Kubeček/já přispět? Osobně aktuálně také pokračuju ve vývoji hardware s epidemií nesouvisejícího…
    Fluttershy, yay! avatar 28.3.2020 23:55 Fluttershy, yay! | skóre: 92 | blog:
    Rozbalit Rozbalit vše Re: ARM debugging - Black Magic Probe, orbuculum, ITM/ETM trace
    Nějaký přehled potenciálně relevantních projektů: opensource.com: 7 open hardware projects working to solve COVID-19 a další přehled.
    🇵🇸Touch grass🇺🇦 ✊ no gods, no masters
    23.3.2020 13:05 Michal Kubeček | skóre: 72 | Luštěnice
    Rozbalit Rozbalit vše Re: ARM debugging - Black Magic Probe, orbuculum, ITM/ETM trace
    Problémy, jejichž řešení se věnuji, jsou pro mne dostatečně skutečné. Nemluvě o tom, že i když fyzicky také "sedím doma", logicky stále "jsem v práci", takže nepotřebuji hledat způsoby, jak "zabít nudu".
    5.4.2020 23:07 kralyk z abclinuxu | skóre: 29 | blog:
    Rozbalit Rozbalit vše Re: ARM debugging - Black Magic Probe, orbuculum, ITM/ETM trace
    Ok, věnuj se nesmyslům, místo abys přispěl k řešení skutečných problémů
    Ok, napiš co děláš (včetně pics or it didn't happen) a můžem se bavit, trolle...
    Josef Kufner avatar 23.3.2020 12:12 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: ARM debugging - Black Magic Probe, orbuculum, ITM/ETM trace
    Vypnout dnes televizi je pro zachování duševního zdraví docela důležité. Teď už se situace ustálila a jedny večerní zprávy denně bohatě stačí. Přecijen je potřeba dělat i něco užitečného a ne se jen klepat, kdy nás dostihne vir. Dobrým nápadem je navázat kontakt s ostatními tvořivými lidmi, třeba na FB je dost skupin, a nějak pomoci ostatním. Ale i udržení běžných věcí v chodu si zasluhuje pozornost.
    Hello world ! Segmentation fault (core dumped)
    Max avatar 22.3.2020 14:40 Max | skóre: 72 | blog: Max_Devaine
    Rozbalit Rozbalit vše Re: ARM debugging - Black Magic Probe, orbuculum, ITM/ETM trace
    Zajímavé, díky.
    Zdar Max
    Měl jsem sen ... :(
    24.3.2020 17:09 Pavel Píša | skóre: 18 | blog: logic
    Rozbalit Rozbalit vše Re: ARM debugging - Black Magic Probe, orbuculum, ITM/ETM trace
    Díky moc za hezký přehled a inspiraci.

    Co se týče doby, tak zajisté, pokud někdo dokáže zorganizovat projekt, který výrazným způsobem může pomoci se současnou situací, tak určitě má smysl zvažovat, jestli psát blog na jiné téma. Ovšem i tak je potřeba zvážit, jestli svými znalostmi v daném projektu mohu pomoci nebo spíš přispět k zmatkům a komplikacím s organizací.

    Naopak mělo a má smysl výzkum v oblasti biologie, medicíny a chemie podporovat i v době, kdy zrovna není v hledáčku zájmu tržně orientované části společnosti. Doporučuji článek Jan Konvalinky z Akademie Věd IOCB/UOCHB. S tatínkem a kolegou jsme nainvestovali velké množtví našeho umu a i sokromých peněz do projektů přístrojů, které i v této instituci pracují a zajistili a finacovali pro zpracování dat SW který je open-source CHROMuLAN, který nejdete, že používají po světě vědci i s přístroji jiných firem místo SW možná i za statisíce, který často s příchodem nových Windows je zcela nefunkční. Firma, které jsme projekty dali v licenci vyrábět, tak si na inovaci našeho hlavního projektu akorát nechala od Prahy dát dotaci 5 milionů a prohlásili, že vše vyvinuli nově a sami. Přečtěte si odpověď ředitele

    K čerpadlům využitým v AAA a podobné malému LCP5005 s výkresy PM. Naše čerpadlo je podobné, ale v principu jiné .Má jeden pohon , jiné vačky (viz přílohy). Ano koule s pístem je použita již z Mikrotechny a některé jednotlivé detaily k čerpadlu přizpůsobeny z PM .

    Všechno byl vývoj mého otce a náš, který jsme si od privatizovaných (na zboření a stavbu hotelu) Laboratorních Přístrojů Praha koupili abychom ho mohli nabídnout dále světu. Takže překlad odpovědi, jezdíme v v autu, které stálo na ulici, že je vaše, vás nemusí zajímat, je to naše práce, natřeli jsme puklice na žluto. Ještě ve skutečnosti ten pohon je ostuda, protože pořádné řízení neumějí. I přesto, že nám takto většinu projektů zničili a pokazili, tak nyní investujeme v PiKRONu do výroby desek, aby mohli další přístroje do IOCB dodat.

    Takže to je k přispívání získání znalosti potřebné pro řešení situací jako teď vznikla.

    Co se týče těch, co teď přímo aktivně pomoc přímo v řešení hlavního problému nemohou, tak především nejméně produktivní je sedět na zadku a peskovat ty, co neztratili zájem něco i nezávislého na koronaviru dělat.

    Kolega napsal blog o ARMech. Mimochodem, v těch sestavách, které možná po výběrovém řízení pro IOCB budou dodávané jsou Cortex-M3 a M4 (CPU deska). Takže třeba může návod inspirovat někoho, kdo jednou přispěje do elektroniky, která zrovna náhodou bude použitá v některém zařízení, které se bude třeba i při výzkumu vedoucímu k uzdravení nebo ochraně zdraví hodit.

    Sám v tuto chvíli nemohu ve firmě třeba nabídnout například robotickou technologii pro urychlení PCR nabídnout nemohu. Chtěl jsem otevřenou robotickou technologii do světa přinést, ale neměl jsem na PR a tak jsem jí přinesl do bývalé skupiny na FEL. Využitá byla akorát k tomu, aby "zvítězili" v robosoutěži i přes to, že se snažili udělat vše, aby to, co jsem dodal nejvíce pokazili a kolega mi zakazoval se s lidmi, kteří na tom tenkrát dělali, se bavit. I tak jsem věřil, že má smysl přes školu znalosti šířit. Nakonec potřeboval k tomu, aby vyrostl na vedoucího embedded vývoje jiné součásti se mě zbavit úplně a potvrdil mi, že nepravdivě využil fakta, k tomu abych mu nepřekážel a tak dál a vysvětlil mi, že jsem k ničemu a moje firma také a další bývalý šéf, že jsem nic nepřinesl. No nic, takže PCR, nebo pěkný systém pro manipulaci s vzorky, který jsme plánovali teď nemám a z jejich robotického vítěztví je možná několik řádek na simulaci v našem projektu, ale gro zůstávalo tajné, stejně jako informace, že motion control dostali od PiKRONu. Stejně tak jako návrh HW pro Porsche, HW pro předmět PSR (také tam zmínku o PiKRONu nenajdete) a mnoho dalšího.

    Takže se řídím tím, kde mohu v tuto chvíli nejvíc přispět, a právě nám zůstali všichni studenti odkázaní na distanční výuku. Opět, buď se můžeme ubezpečovat, že výuka přece v tuto chvíli nemá prioritu, nebo naopak ukázat, že nás ani tato překážka nezataví.a dokážeme i tak vychovat odborníky, kteří jednou budou schopní pro výzkum, lidstvo, cesty do vesmíru něco udělat. Na ČVUT se většina přiklonila k té druhé možnosti. Věříme, že má smysl do studentů investovat a něco je naučit a minimálně na FEL, kde jsem součástí dění vím, že mí kolegové vypouští krev, aby se podařilo zajistit techniku, webináře atd (jeden z pracovních dokumentů na našem výukovém Course Ware distant_teaching). Sám jsem se pokusil přispět alespoň nahráním přednášek, když je nemohu předvést studentům naživo. Protože nebyl nikdo, kdo by na zpracování měl čas, tak jsem se z vývoje ovladačů musel během jednoho týdne stát alespoň podprůměrným střihačem videa a když jsem to nějak po dvou týdnech vypětí zvládl, tak jsem se o informace podělil, aby třeba někdo další měl cestu jednodušší.

    Takže vyčítavé reakce na to, že někdo dělá neco, co si sám stále myslí, že má cenu mě nezajímají a chci podpořit ty, co mají zájem a podržet je před lidmi, kteří akorát umí brát ne jen radost z tvorby, ale i celá díla a projekty a dotáhnout je často do zkázy a zapomnění.

    Založit nové vláknoNahoru

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.