Hagnaður:
- Geta til að flýta fyrir beinagrind, ökumanns- og ástandsvélaruppkasti örstýringar með gervigreind
- Geta til að endurskoða truflanir, tímasetningu, varðhund og lágstyrksrökfræði með AI stuðningi
- Geta til að sannreyna AI-myndaðan vélbúnaðarkóða með kyrrstöðugreiningu, prófun á vélbúnaði og öryggiskröfum
Innbyggt kerfi er rafeindabúnaður sem er byggður utan um örstýringu (lítil tölva sem hýsir örgjörva, minni og jaðartæki á einni flís) sem er hannað til að vinna ákveðna vinnu: hitastilli, mótald, skynjarahnút, mótordrif. Fastbúnaður er hugbúnaðurinn sem keyrir beint vélbúnað þessa tækis. Í þessari einingu muntu sjá hvernig á að nota gervigreind sem eldsneytisgjöf í vélbúnaðarþróun (skrifa ökumanns, ástandsvél, truflana- og tímasetningarrökfræði, lágorkustjórnun). AI er mjög öflugt í kóðun; En í innbyggða heiminum er kóði samtvinnuður vélbúnaði, rauntíma og oft öryggi. Þannig að hver lína sem gervigreind framleiðir verður að fara í gegnum kyrrstöðugreiningu, skráningar-/gagnablaðathugun og raunverulegar prófanir á vélbúnaði.
Hvar er sterkt, hvar er áhættusamt í AI vélbúnaði
Gervigreind er mjög sterk á „beinagrind“ og „deyja“ hluta vélbúnaðarins: uppbygging I2C/SPI ökumanns, umgjörð ástandsvélar (rökfræðin sem skilgreinir ástand og umbreytingar tækisins), útfærslu hringjabuffs, leiðbeiningaþjálfari, prófunarbeinagrind. Það getur lesið skráningartöfluna í flóknu gagnablaði og búið til upphafskóða. Getur útskýrt villu, túlkað þýðandaviðvörun.
Þar sem það er áhættusamt er kjarninn í innbyggða kerfinu:
- Skráðu heimilisföng og bitareiti: AI gæti munað rangt eftir skráarkorti flísar; Hvert heimilisfang og bita verður að vera staðfest úr gagnablaðinu.
- Tímasetning og rauntími: Hversu margar míkrósekúndur aðgerð tekur, hversu oft truflun kemur, fer eftir vélbúnaði; AI spáir, þú mælir.
- Samhliða: Ef breytum sem deilt er á milli ISR (Interrupt Service Routine) og aðallykkunnar eru ekki verndaðar með rokgjarnum og atómaðgangi, eiga sér stað hljóðlausar villur sem ekki er hægt að endurtaka.
- Auðlindatakmörk: Staflaflæði, minnisleki, tímamörk varðhunda þýðir hrun í innbyggðu.
Truflun, tímasetning og varðhundur
Truflun er þegar atburður á sér stað (gögn komu, tímamælir rann út), örgjörvinn yfirgefur aðalverkið og hoppar yfir í þjónusturútínu (ISR: Interrupt Service Routine). ISR eru viðkvæmustu kóðann í innbyggða kerfinu. Grunnreglur: ISR ætti að vera stutt (langt verk er skilið eftir í aðallykkju), það ætti að vera engar hindranir (bíða, prenta) í því, sameiginlegar breytur ættu að vera verndaðar.
Varðhundur er öryggisbúnaður sem endurræsir tækið sjálfkrafa ef hugbúnaðurinn hrynur; Fastbúnaðurinn „matar“ hana reglulega, ef ekki er kerfið endurstillt. Gervigreindin leggur drög að þessum mannvirkjum, en tímalengd varðhundsins, truflanaforgangsröðun og tímasetningaráætlun þarf að staðfesta gegn raunverulegu álagi á kerfið þitt.
Ábending: Þegar ISR er prentað til gervigreindar, gefðu henni beinlínis fyrirmæli um að "hafa ISR stuttan, engin blokkun, merkja sameiginlegar breytur með rokgjarnum og atómaðgangi, úthluta langa verkinu í aðallykkjuna með fána." Athugaðu síðan línu fyrir línu í kóðanum sem það framleiðir að þessum reglum sé raunverulega beitt.
Lítið afl og öryggi
Lítil orkustjórnun er mikilvæg í rafhlöðuknúnum tækjum: að setja örgjörvann í svefn, slökkva á jaðartækjum, vakna við atburði. AI skissar svefnstillingarbreytingar og vakningarrökfræði, en raunveruleg straumnotkun er aðeins þekkt með mælingum (straummælir á míkróamperastigi); AI sem segir „það dregur ~2 µA í þessum ham“ er ágiskun.
Frá öryggissjónarmiði eru innbyggð tæki í auknum mæli nettengd og vélbúnaðarveikleikar (flæði yfir buffer, óstaðfest inntak, veik dulritun, opið kembiviðmót) eru alvarleg áhætta. Gervigreind gæti minnt þig á örugga kóðunarreglur, en öryggi myndaðs kóða er staðfest með truflanir greiningarverkfærum, kóða endurskoðun og öryggisprófun þegar þörf krefur. Í mikilvægum öryggiskerfum (lækninga-, bíla-, iðnaðar) ætti gervigreind framleiðsla aldrei að koma í stað ferla sem krafist er af lögbærum verkfræðingasamþykki og viðeigandi öryggisstaðli (t.d. IEC 61508, ISO 26262).
þrjú smámál
Mál 1 - Óvarið sameiginleg breyta. Verkfræðingur biður um UART móttökukóða frá gervigreindinni. Kóðinn hækkar teljara í ISR og aðallykjan les þennan teljara; en teljarinn er ekki rokgjarn og multibyte lestur er ekki atóm. Tækið virkar oftast, en stundum mislesar það gagnatalninguna og ekki er hægt að endurtaka villuna. Static greining og kóða endurskoðun afla vantar rokgjarnt; Villan hverfur þegar teljarinn er varinn. Lexía: samhliða villur eru tíðar og skaðlegar í gervigreindarkóða; Nauðsynlegt er að lesa og sannreyna.
Mál 2 - Rangur skráarbiti. Nemi hleður upp ADC upphafskóðanum sem myndaður er af gervigreindinni; ADC les óvænt gildi. Þegar það er borið saman við gagnablaðið virðist sem gervigreindin hafi stillt stillingarbita á röngum stað (kort fyrir annað afbrigði af flögunni). Þegar bitinn hefur verið leiðréttur virkar ADC rétt. Lexía: Staðfestu hverja stafsetningu skrár gegn réttu afbrigði gagnablaðsins.
Tilfelli 3 - Rétt notkun. Verkfræðingur biður gervigreindina um beinagrind ríkisvéla fyrir flókna skynjarasamskiptareglu; lýsir ástandi, umbreytingum og tímamörkum. AI framleiðir hreint, læsilegt ramma. Verkfræðingurinn tekur þennan ramma, sannreynir hvern skráaaðgang með gagnablaðinu, mælir tímasetningar með sveiflusjá og prófar það í vélbúnaði. Þróun er lokið á nokkrum klukkustundum í stað nokkurra daga. Lexía: gervigreind flýtir fyrir beinagrindinni; Verkfræðingurinn framkvæmir sannprófunina.
Afritanleg hvetja sniðmát
DRIVER SKELETON TEMPLATE"Skrifaðu beinagrind [I2C/SPI/UART] rekla fyrir [flís/jaðartæki]: frumstilling, lestur, ritun, villumeðferðaraðgerðir. Skildu eftir skráarheimilisföng og bitareiti í PLACEHOLDER (t.d. REG_XXX) og athugaðu 'fylltu út og staðfestu þau úr gagnablaði'. Notaðu hverja athugasemd með aðgerðum í stað þess að loka fyrir hverja athugasemd.
ISR SECURITY Sniðmát"Skrifaðu drög að truflunarþjónusturútínu (ISR) fyrir eftirfarandi atburð: [atburður]. Reglur: Haltu ISR stuttum, ekki loka, merktu sameiginlegar breytur með vivolative and atatomic access, úthlutaðu langa verkinu í aðallykkjuna með fána. Í lok kóðans skaltu tilgreina hvar hver þessara reglna á við."
STATE VÉL Sniðmát"Skrifaðu beinagrind ástandsvélar fyrir eftirfarandi samskiptareglur/ferli: [lýstu ástandi, atburðum, umbreytingum og tímamörkum]. Tilgreindu inn-/útgönguaðgerðir og villu-/tímaútibú fyrir hvert ástand. Skildu eftir vélbúnaðarsértæk gildi (skrá, tímalengd) sem staðgengla og athugaðu að það þarf að staðfesta þau."
KÓÐA UMFERÐARsniðmát "Skoðaðu eftirfarandi fastbúnaðarkóða frá innbyggðu sjónarhorni og flagga áhættu: óvarin samnýtt breytu (rokug/atómvirkni), löng/lokandi aðgerð í ISR, hætta á yfirflæði stafla, bið án tíma, skrá villur, straumur varðhunds. Stingdu upp á hvernig ég ætti að prófa/staðfesta fyrir hverja uppgötvun. Kóði: [líma]."
Veik kvaðning / Sterk kvaðning
VEIK boð: "Skrifaðu mér UART bílstjóra."
STERK HRINGING: "Skrifaðu UART móttökustjóraramma sem byggir á truflunum fyrir [örstýring]. Notaðu hringja biðminni; hafðu ISR stuttan og skrifaðu bara í biðminni, vinnsla í aðallykkjunni. Gerðu samnýttar vísitölur rokgjarnar og atómaðar. Skildu skrárheimilisföng eftir í staðhaldara, merktu þau til að vera staðfest úr gagnablaðinu. Í lok kóðans, hvað þarf ég til að prófa, hvað ég þarf að nota til að prófa kóða, og tíma.
Veik hvetja framleiðir kóða sem er vélbúnaður og samhliða blindur; Öfluga hvetjan setur innfelldar reglur og hvetja til staðfestingarlistans.
Staðfestingarlög fyrir fastbúnað
lag
hvað grípur
Hlutverk gervigreindar
Athugun á gagnablaði
Rangt skrá/biti
Býr til staðgengil og stýrinótu
Statísk greining (linter)
óstöðug, tegund, mörk villur
Reglulisti og skýring
Viðvaranir um þýðanda
Óbein umbreyting, ónotað gildi
Viðvörun athugasemd
Prófanir í vélbúnaði
Tímasetning, raunveruleg hegðun
Tillaga um prófunaratburðarás
Sveiflusjá/greiningartæki
Merkja og samskiptareglur nákvæmni
Mælipunktur og væntanleg bylgja
Varúð: Bara vegna þess að vélbúnaðar "samþykkir" og "virkar oftast" þýðir það ekki að það sé rétt. Samtímis- og tímaskekkjur eiga sér aðeins stað við ákveðnar aðstæður; Þess vegna eru truflanir og raunverulegar prófanir á vélbúnaði ómissandi.
Algeng mistök
- Ekki vernda sameiginlegar breytur. Gögn milli ISR og aðallykkju verða að vera rokgjörn og atóm.
- Staðfestir ekki skrá heimilisfang/bita með gagnablaði. AI gæti kortlagt rangt afbrigði.
- Að halda ISR lengi eða loka innan þess. Kerfið getur ekki brugðist við, truflanir eru misstar.
- Gerum ráð fyrir tímasetningu án þess að mæla. Raunverulegur tími fer eftir vélbúnaði; staðfest með sveiflusjá.
- Skilur eftir öryggis-/öryggis mikilvægan kóða fyrir gervigreindarsamþykki. Hæfur verkfræðingur og viðeigandi staðlað ferli eru nauðsynleg.
Í stuttu máli
Í þessari einingu notaðir þú gervigreind sem öflugan eldsneytisgjöf til að búa til vélbúnaðarbeinagrind, ökumann, ástandsvél og ISR skissu. En í innbyggða heiminum er kóði samtvinnuður vélbúnaði, rauntíma og öryggi: skráar-/bitagildi eru staðfest úr gagnablaðinu, samhliða er staðfest úr kyrrstöðugreiningu, tímasetning er staðfest úr sveiflusjánni, hegðun er staðfest úr raunverulegum prófunum í vélbúnaði. AI skilar beinagrindinni á nokkrum mínútum; Verkfræðingurinn sannreynir að fastbúnaðurinn virki rétt, örugglega og á réttum tíma. Í kerfum sem eru mikilvæg fyrir öryggi kemur gervigreind framleiðsla ekki í stað ferla viðkomandi öryggisstaðals og samþykkis lögbærra verkfræðinga.
Umsóknarverkefni
Veldu jaðartæki (t.d. I2C skynjara). Með „ökumannsbeinagrind“ sniðmátinu skaltu biðja gervigreindina um beinagrind ökumanns sem skilur eftir skrár í staðgengla. Búðu síðan til ISR skissu fyrir gagnatilbúna truflun frá þessum skynjara með "ISR security" sniðmátinu. Að lokum, skannaðu kóðann sem hann framleiðir með „Code review“ sniðmátinu fyrir innbyggða áhættu og skrifaðu að minnsta kosti þrjú sannprófunar-/prófunarskref.
gátlisti
- [ ] Ég staðfesti hvert skrá heimilisfang og bita úr réttu afbrigði gagnablaðsins.
- [ ] Ég gerði sameiginlegu breyturnar á milli ISR og aðallykkju rokgjarnra og atóma.
- [ ] Ég hélt ISR stuttum, setti ekki blokkun, afhenti langa verkið í aðallykkjuna.
- [ ] Ég ætlaði að prófa tímasetningu og raunverulega hegðun í vélbúnaði og með sveiflusjá.
- [ ] Ég skannaði kóðann með kyrrstöðugreiningu og þýðandaviðvörunum.
- [ ] Ég skildi eftir samþykki þar til bærs verkfræðings og viðeigandi staðlaða hluta þá hluta sem eru mikilvægir fyrir öryggi.