Tsev > Exhibition > Ntsiab lus

Microcontroller Interrupt latency

Mar 08, 2019

Hauv qhov sib txawv ntawm cov computers-general, microcontrollers siv nyob hauv lub tshuab nruab ntiav feem ntau nrhiav kev los cuam tshuam kev cuam tshuam cov kev pab cuam ntawm cov kev qhia ua latency. Tej teeb meem muaj xws li txo cov latency, thiab ua rau nws xav paub ntau tshaj qhov tseeb (los txhawb kev tswj ntawm lub sijhawm).


Thaum ib lub tshuab hluav taws xob ua rau kev cuam tshuam, thaum lub ntsiab lus hloov qhov kev sib tw tau sib tw (cov npe) yuav tsum tau txais kev cawmdim ua ntej lub software uas yuav los cuam tshuam cov kev cuam tshuam yuav khiav. Lawv yuav tsum tau txum tim rov qab los tom qab ntawd qhov kev cuam tshuam rau kev sib txuas. Yog tias muaj ntau cov npe ntawv sau npe, qhov txuag thiab rov ua haujlwm yuav siv sij hawm ntau ntxiv, ua qhov latency. Txoj kev los txo cov ntsiab lus / rov qab latency muaj xws li muaj ob peb lub npe sau rau hauv lawv qhov chaw ua haujlwm hauv nruab nrab (tsis yeem vim nws qeeb feem ntau tsis ua haujlwm tsis zoo), los yog tsawg kawg muaj qhov kho vajtse tsis txuag lawv (qhov no tsis yog qhov software ces xav tau kom them rov qab los ntawm txuag tus so "manually"). Lwm cov txheej txheem yuav tsum siv cov vuas silicon ntawm "duab ntxoov ntxoo rau npe": Ib los yog ntau dua duplicate registers siv los ntawm kev cuam tshuam cov software, kab tias yuav txhawb nqa ib pawg.


Lwm yam cuam tshuam rau kev cuam tshuam kev cuam tshuam latency muaj xws li:


Cov voj voos xav tau los ua kom tiav CPU cov dej num tam sim no. Yuav kom txo cov nqi no, cov microcontrollers yuav muaj cov dej luv (feem ntau peb cov lus qhia los yog tsawg dua), me me sau cov buffers, thiab xyuas kom cov lus qhia ntev ntxiv los yog rov qab pib dua. RISC tsim cov qauv lus qhia meej tias feem ntau cov lus qhia yuav siv tib lub voj voog, pab kom tsis txhob muaj qhov kev xav txuas ntxiv / rov qab pib dua.

Qhov ntev ntawm txhua qhov tseemceeb uas yuav tsum tau cuam tshuam. Nkag mus rau ib qho tseem ceeb ntawm kev tswj hwm kev sib txuas lus. Thaum twg ib tus qauv ntaub ntawv yuav tsum raug nkag los ntawm kev cuam tshuam cov neeg ua haujlwm, qhov tseem ceeb yuav tsum thaiv kom cuam tshuam. Li cas los xij, kev cuam tshuam ntawm latency yog nce siab tiam sis ntev ntev uas cuam tshuam tau. Thaum muaj cov nraub qaum sab nrawm ntawm qhov latency, cov neeg tsim khoom feem ntau xav tau cov cuab yeej los ntsuas kev cuam tshuam cov latencies thiab khiav hauv cov cheeb tsam tseem ceeb ua rau kev poob qis.

Ib qho txheej txheem uas tsuas yog siv tag nrho cov kev cuam tshuam rau lub sij hawm tseem ceeb. Qhov no yog ib qho yooj yim rau kev siv, tab sis qee lub sij hawm nyhav heev tau ntev ntev.

Ib qho txheej txheem ntau tsuas yog kev cuam tshuam cov kev sib tshuam uas tej zaum yuav ua rau nkag mus rau cov qauv ntaub ntawv no. Qhov no feem ntau yog raws li kev cuam tshuam cov tseem ceeb, uas yuav tsis sib haum zoo rau cov txheej txheem cov ntaub ntawv. Raws li, cov txheej txheem no yog siv feem ntau hauv cov kev txwv tsis nruj heev.

Cov txheej txheem yuav muaj kev txhawb nqa kho rau qee feem tseem ceeb. Piv txwv xws li txhawb atomic nkag mus los ntawm cov khoom los yog bytes hauv ib lo lus, los yog lwm yam atomic primitives zoo li LDREX / STREX kom nkag tau yooj yim hauv ARMv6 architecture.

Hloov ua zes. Ib co microcontrollers cia feem ntau kev cuam tshuam cov kev cuam tshuam cov qis feem tseem ceeb. Qhov no tso cai rau software tswj latency los ntawm kev siv sij hawm tseem ceeb dua kev cuam tshuam (thiab yog li qis thiab ntau tshaj qhov tseeb tshaj plaws uas tsis muaj tseeb) ntau tshaj qhov tseem ceeb.

Ntsuas npaum li cas. Thaum tshuam muaj tshwm sim rov qab-rau-rov qab, microcontrollers yuav tseg tsis tau ib qho ntsiab lus teb tseg / tig rov qab los ntawm ib daim ntawv hu ua Tsov tus Tsav Tail.

Txo kawg microcontrollers yuav txhawb cov kev cuam tshuam tsawg tshaj plaws ntawm cov kab khiav qis tshaj cov laus dua.