TSM - A koncepció fontossága; Funkcionális biztonság; n SW járműipari termékek fejlesztése
Radu Ivănuș - a fejlett beágyazott technológiák üzletág vezetője, NTT DATA Románia
A történetünket azzal kezdem, hogy leírom Önnek, hogy mit jelent az "ECU", ezt a kifejezést általában az autóiparral összefüggésben használják. Az ECU elnevezés angolul származik: Electronic Control Unit, amely elektronikus berendezést jelöl, amely több elektronikus alkatrészt és legalább egy mikrokontrollert tartalmaz, amelyen szoftver fut, akár ASM-ben, akár C-ben írva. Más szóval, az ECU-k számítógépek a gépekben.
Ha az autókat eleinte az 1970-es évektől kezdve nem látták el ECU-kkal (elektronikus vezérlőegység), akkor alapfelszereltséggé váltak. Az első ECU-t 1968-ban vezették be a piacra, a motor üzemanyag-rendszerének szentelték, és a Bosch gyártotta a Volkswagen autók számára.
A mai gépek több száz ECU-t és milliónyi kódsort tartalmaznak, elérve a számítási teljesítményt és az összetettséget. Az általuk működtetett és irányított modern gépek bővülésével a biztonsági funkciók iránti igény "Funkcionális biztonság" lett, szintén elkerülhetetlen.
Az ECU-k az évek során sokat fejlődtek, manapság hozzájuk kötődnek, a mikrovezérlőkkel és mikroprocesszorokkal együtt. Azok számára, akik kíváncsiak az ECU évekbeli alakulásának összefoglalására, a következő adatokat mutatjuk be:
Az első számítógép, amelyet a VW dobott piacra (1968)
1969 - A Ford bemutatja az első számítógéppel támogatott csúszásgátló rendszert.
1971 - A General Motors bemutatja első számítógéppel vezérelt sebességváltóját.
1976 - A General Motors és a Motorola felszerelésre kerültek járműveikben történő használatra.
1978 - A Cadillac bemutat egy számítógéppel vezérelt fedélzeti számítógépet, amelyet Motorola mikrovezérlő hajt.
1981 - Az összes General Motors jármű motorja rendelkezik a Motorola 6802 alapú kibocsátás-szabályozással.
1983 - Az egyedi Intel 8061 mikrokontroller chipeket kezdik használni a Ford járművekben
1986 - A Carnegie Mellon Egyetem "Navlab 1" -je lesz az első önjáró, önálló autó.
1986 - A Chrysler bemutatja a Harris Semiconductor által biztosított chipekkel ellátott multiplex kábelkommunikációs modulokat.
1987 - Az első mikrokontrollerek integrált CAN chipkészlettel készültek az Intel és a Philips Semiconductor részéről.
1991 - A Ford és a Motorola partnerséget kötnek a PTEC meghajtó és sebességváltó mikrovezérlők tervezésében és gyártásában.
2000 - Ford Microelectronics Inc. (IMF) az Intel Corp. tulajdonába kerül.
2014 - Bemutatták és forgalomba hozták az első önvezető járművet, a Navia-t.

2017 - A Tesla "Semi" bemutatta első elektromos teherautó-modelljét, elektromos és félig autonóm.
2017-ben az Intel Corp felvásárolja a Mobileye-t, a fejlett látásalapú vezető-asszisztens rendszerek fejlesztőjét.
Az Audi bemutatja az első A8-as járművet, 3. szintű automatizálással, az "Audi AI forgalmi dugó pilóta".
Folyamatként a "funkcionális biztonság" az ECU szoftverfejlesztési ciklusának elengedhetetlen elemévé vált. Ezek az autóipari biztonsági rendszerek segítenek felismerni az elektromos és elektronikus hibákat, és meghatározzák a szoftveres és hardveres hibák által okozott kockázatok és károk mérséklésére szolgáló intézkedéseket, technikákat és módszereket.
A biztonsági szabályok hiányának vagy helytelen alkalmazásának súlyos következményei lehetnek: az utasok sérülése vagy akár életvesztés, ami pénzügyi és arculat/márka veszteségeket okoz az autógyártók számára.
Éppen ezért ma a modern autóknak meg kell felelniük az ISO 26262 szabvány által meghatározott "Közúti járművek - funkcionális biztonság" nemzetközi szabványoknak.
Az autóipari biztonsági integritási szint (ASIL) az ISO 26262 szabvány szerinti kockázati osztályozási rendszer. A szabványon belül négy meghatározott biztonsági szint létezik: az ASIL A, az ASIL B, az ASIL C és az ASIL D. Az ASIL D diktálja a legszigorúbb biztonsági szintet. a termék biztonsági követelményei, az ASIL A a legmegengedőbb. A minőségbiztosításként ("minőségileg kezelt") azonosított kockázatok nem jelentenek külön védelmi intézkedést.
Az ASIL szintek felosztása három szempont alapján történik: az előfordulás gyakorisága (F), az irányíthatóság (C) és a súlyossága (S) a HW vagy SW hibán, ahol Frekvencia = Expozíció * λ
Fentebb leírtuk a rendszerekre alkalmazott biztonsági szinteket, de amikor a maximális ASIL szint nem biztosítható közvetlenül a rendszerben, az ISO26262 szabvány lehetővé teszi az úgynevezett bomlást az alábbi képen látható módon. Minél magasabb a rendszer biztonsági besorolása, annál magasabbak a HW és SW megvalósítási költségei. Ha a bontást alkalmazzuk, ez segít abban, hogy a rendszert redundáns elemekre osszuk, alacsonyabb biztonsági szinttel, ami a rendszer követelményeinek való megfeleléshez vezet, anélkül, hogy túl sokat érintenénk a költségeket.
A következőkben ismertetem az SW-ben alkalmazott módszerek/példákat a rendszerhibák megfigyelésére és felderítésére.
Rendszerhibák észlelése, ellenőrzése és jelzése a következő nagy teljesítményű alkatrészeknél:
A. Mikrokontroller szintű hibák:
- Nyilvántartó bit zár (beragadt);
- Helytelen ugrási címek kiszámítása a RAM-ban (beragadt);
- ALU - A mikrovezérlő aritmetikai és logikai egysége (hibás kódsor, túl lassú vagy gyors végrehajtási idő);
- vektor/megszakítás rutin, rendszer megszakítás útválasztás.
A RAM (beleértve a CSA - Context Switch Area) és az adatsor (verem alul/túlcsordulás), ROM és EEPROM tesztelése és figyelése.
- A RAM-tesztek elvégezhetők a rendszer minden indításakor, és opcionálisan minden egyes visszaállítás után (rendszer- és projektfüggőek). Ciklikus vagy szükség szerint és a program futtatása közben, az összes RAM-on vagy csak bizonyos blokkokon. Ehhez néhány biztonsági módszert kell megvalósítani, mind SW-ben, mind HW-ban: redundáns értékű vagy kiegészítő komplex biztonsági változók vagy regiszterek védelme. HW hibajavító kódmemória (ECC) javító és észlelő mechanizmusainak aktiválása. Az alábbiakban bemutatunk egy általános példát az adatmemória biztonságának manipulálására szolgáló funkciókra.
- Memória védelem a HW bizonyos regisztereinek konfigurálásával - ez csak egyes mikrovezérlőkkel lehetséges.
- Használjon CRC vagy adatjelzőket alapértelmezett értékkel.
CRC-k alkalmazása bizonyos világosan meghatározott adatblokkokra;
B. Perifériák tesztelése és felügyelete: ADC (analóg átalakító), SPI, CAN és mások.
A mikrovezérlő ADC átalakítója a következő hibákra tesztelhető:
Referenciafeszültség hibák (erősítés faut/VA drift ref).
Az ilyen típusú hibák észleléséhez az analóg átalakító egyik bemenetét független állandó referenciafeszültséghez kell csatlakoztatni, átlagos értékkel a VGnd és VRref között (pl. VGnd esetén - 0V és VRef 3.3V -> Vref teszt - > 1,6 V);
Eltolási hibák (blokkolt bitek "1-nél vagy 0-nál ragadtak");
C. Monitoring és hibák észlelése a HW/ECU rendszerben:
- A fő tápvezetékek/ECU figyelése: 1,5 V, 3,3 V, 5 V és 12 V
D. Az SW végrehajtásának figyelemmel kísérése (PFM - Program Flow Monitor)
E. Operációs rendszer figyelése - "operációs rendszer feladatok":
A feladatok pontos végrehajtása időben (konfigurált ismétlődés);
például. Egy 2 milliszekundumos feladathoz, amelyet 10 milliszekundumos intervallumban akarunk figyelni, akkor ideális esetben a 2 milliszekundumos feladatnak öt végrehajtása várható; normál esetben kiszámíthatunk ± 1 feladat tűrését is, ami helyes végrehajtási intervallumot eredményez, amely [4-6] végrehajtás között lehet.
F. A külső őrző (WDT) figyelése és kommunikáció. Ez egy elektronikus chip, amely kommunikál az SPI-alapú mikrokontrollerrel. Feladata a mikrovezérlő helyes működésének figyelemmel kísérése a minőségbiztosítási játék (kérdés és válasz játék) alapján, és visszaállítás generálása, különben.
A minőségbiztosítási játék egy 15 kérdésből álló készlet véletlenszerű előállításán alapul (egy előre beállított algoritmus szerint), amelyeket az SPI vonalon előre meghatározott időközönként elküldnek a mikrovezérlőnek.
Minden kérdés egy fix, előre definiált válasznak felel meg, amelyet a WDT vár az SPI-n keresztül, a beállított időintervallumban.
A magas szintű biztonság eléréséhez a következő teszteket kell elvégeznünk:
szándékosan rossz válasz küldése és a WDT ellenőrzése, amely helyesen reagál, növelve a hibaszámlálót a hibanapló beolvasásához.
A rendszernek adott ASIL szintjét befolyásolja annak járműben való alkalmazhatósága: milyen típusú ECU és mit vezérel (pl. Felfüggesztés, sebességváltó, motor, ülések, információs és szórakoztató rendszer stb.).
Fontos megemlíteni néhány, az autóipari biztonsági zónához kapcsolódó kifejezést:
FTI (hibatűrő idő) - az az idő, amely eltelt attól a pillanattól kezdve, hogy egy hiba bekövetkezik, amíg a rendszer az úgynevezett biztonságos állapotba ("biztonságos állapotba" kerül).
FDT (Fault Detection Time) - a hiba időpontjától az SW által történő észlelésig eltelt idő.
FRT (Fault Reaction Time) - hiba esetén a maximálisan elfogadott reakcióidő, annak észlelésétől a rendszer biztonságos zónájáig.
Zárja le ezt a cikket az alábbiakban mutatva be egy példát a mágnesszelepek vagy villanymotorok ECU vezérlési architektúrájára, amely alkalmazható az automatikus sebességváltó, a vezérelt felfüggesztés vagy a kormányzás vezérlés területén. A piros pöttyökkel jelölt alkatrészek a rendszer biztonsági zónáit képviselik, amelyeket SW-vel kell ellenőrizni és ellenőrizni a kívánt ASIL szint elérése érdekében.