1 / 105

Mit jelent az, hogy “ Beágyazott Rendszer ?”

Mit jelent az, hogy “ Beágyazott Rendszer ?”. “ Egy specializált számítógép rendszer, ami egy nagyobb rendszer vagy berendezés része .” Webopedia

avent
Download Presentation

Mit jelent az, hogy “ Beágyazott Rendszer ?”

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Mit jelent az, hogy “Beágyazott Rendszer?” “Egy specializált számítógép rendszer, ami egy nagyobb rendszer vagy berendezés része.” Webopedia “…egy beágyazott rendszer előre definiált feladatokat teljesít, általában speciális követelményeknek megfelelve. Mivel a rendszer egy speciális feladatra készült, ezért a tervezőmérnökök optimalizálták, csökkentve a méretét és a költségeket.” Wikipedia

  2. Példák beágyazott rendszerekre

  3. Az ipar legfontosabb tervezési kihívásai napjainkban • A HW mérnök problémája: A komplex megoldások kihívása • Ethernet, USB, video, audio, (iPod, cell phone) • A SW mérnök problémája: A szoftver méret exponenciális növekedése • Megközelítőleg a teljes fejlesztési költségek 50% a szoftverrel kapcsolatos • A legtöbb beágyazott rendszer fejlesztése a szoftver problémák miatt késik • A terméktervezési ciklus problémája: Az egyre bonyolultabb rendszerek kihívása.

  4. A tervezési ciklus Terv Test Rendszer Specifikáció Alkalmazási teszt Kalibrálásés FunkcionálisTeszt Tervezésés Szimuláció Prototípus Rendszer Teszt (HIL) Kódgenerálás

  5. Ipari vezérlések Mozgás vezérlés Komplex vezérlési alkalmazások Repülés vezérlés Precíziós gépi vezérlések Motor vezérlés

  6. Kulcsrakész rendszerek Moduláris redsz. COTS kártyák ODM kártyák Egyedi kártyák Standard Silicon ASIC ASSP Hogyan csökkenthetjük a beágyazott rendszerek tervezése során a komplexitást? Bevezetés költsége Gyártási volumen

  7. Hagyományos beágyazott rendszerek fejlesztési ideje Hardver tervezés: 2 hét Logikai és áramköri tervezés: 2 hét Hardver verifikáció: 2 hét Szoftver tervezés/kódolás: 2 hét Szoftver integráció: 2 hét Rendszer teszt/ellenőrzés: 2 hét ÖSSZESEN: 12 hét, $50,000 - $150,000

  8. Moduláris és készen kapható elemekből építhető beágyazott rendszerek Hardver tervezés: 0hét Logikai és áramköri tervezés: 0hét Hardver verifikáció: 0hét Szoftver tervezés/kódolás: 1hét Szoftver integráció: 1hét Rendszer teszt/ellenőrzés: 1hét ÖSSZESEN: 3hét, $17,000 + PC költség

  9. Általános HW rendszerarchitektúrák Analog I/O Analog I/O Sensor I/O Sensor I/O Processor FPGA Processor Bus I/O USB, Ethernet Bus I/O USB, Ethernet Digital I/O Digital I/O Processor Analog I/O Sensor I/O Bus I/O USB, Ethernet Digital I/O

  10. Általános beágyazott kommunikációs módszerek SPI I2C Serial

  11. 2. Előadás: Téma: A. Általános FPGA programozási technikák

  12. Tartalom • FPGA műveleti paletta • Egyszerű FPGA VI • Párhuzamosság és megosztott erőforrások • Egészaritmetikai kérdések

  13. FPGA műveleti paletta • FPGA specifikus funkciók • Programozási technikák • Eszköz I/O • Aritmetikai és logikai elemek • Tömbök és klaszterek • Időzítések • Matematikai és vezérlési funkciók • Szinkronizálás és FIFO elemek • Táblázatok

  14. Egyszerű FPGA VI • F=(A+B)CD

  15. LabVIEW technológia leképezése FPGA-ra A megadott logika leképezése FPGA: F =(A+B)CD F AB CD

  16. A fordítási folyamat és a szerver • A LV diagramok konvertálása átmeneti leíró fájlokra • A leíró fájlok elküldése a fordító szerverre • Lefordítja az adat fájlokat az FPGA-ra • Visszaadja az FPGA konfigurációs fájlt a LabVIEW-nak • A bitfolyamot egy VI tárolja • A LabVIEW környezet egy kliens • Tetszőlegesen kapcsolódhat a szerverhez és leválhat róla a fordítás után Compile Server

  17. Letöltés Windows OS • A RUN parancs kiadása után a fordítás végén automatikusan történik LabVIEW FPGA Module Target FPGA FPGA VI Download Bit File Embedded FPGA VI ( a bitfájl maga)

  18. Interaktív mód • Az FPGA-n futó VI egy Előlapi panelen keresztül érhető el • Nincs debug lehetőség • A VI az FPGA-n fut Windows OS LabVIEW FPGA Module FPGA VI (Front Panel) Target FPGA FPGA VI (működő) Kommunikáció

  19. Host PC interaktív mód • A Host PC VI Előlapja biztosítja FPGA VI kommunikációt • Megenged egyéb feldolgozást is a Host VI-ban Windows OS VI (Front Panel) Target FPGA FPGA VI (működő) Kommunikáció

  20. Windows Target mód Windows OS • Az FPGA VI a Windows rendszeren fut • Szoftver emuláció • Nincs hardver időzítés • Debuggolás lehetséges • A logika ellenőrzése fordítás előtt LabVIEW FPGA Module (targeted to Windows) FPGA VI

  21. Task 1 Task 1 Task 2 Task 2 Megosztott erőforrások Mielőtt egy taszk használhatna egy megosztott erőforrást, meg kell várnia, míg az eszköz felszabadul. Megosztott erőforrás Fut Vár A Task 2 akkor indulhat, ha a Task 1 befejezte az erőforrás használatát Megosztott erőforrás Vár Fut

  22. Megosztott erőforrások • Megosztott erőforrások: • Digitális kimenetek • Memória/FIFOs • Nem újra-beépülő VI-ok • Lokális változók

  23. Példa megosztott erőforrásokra

  24. VI-ok megosztása (nem újra-beépülő VI-ok) • Nem újra-beépülő (Alapértelmezett) • A VI megosztott • Egyetlen példányban épül be az FPGA eszközbe • Újra-beépülő VI • A diagram minden példánya külön logikai elemekre képződik le az FPGA-ban (több helyet igényel) • Beállítható az erőforrás tulajdonságokban az opciók között

  25. Egész aritmetika • Nincs lebegőpontos művelet • Sem szimpla, sem dupla pontosságban

  26. Egész aritmetika • Adatok skálázása • A lebegőpontos szorzást/osztást helyettesítsük skálázással • Leginkább 16 bites egészeknél használható, a számításoknál 32 bites szélességet használva • Műveletek • Szorzás egész értékű skálázó értékkel • Skálázás 2 hatványaival • Együttesen megoldható a szorzás törttel művelet

  27. Egész aritmetika • Változó értékű skálázáshoz a skálázó faktor kiszámítható és beállítható a Host VI-ban Például: Skálázó faktor: 11500Léptetés: -14 bit jobbraA művelet eredménye: 11500 / 16384 = 0.7019

  28. Egész aritmetika • A matematikai műveletek során előforduló túlcsordulások kezelésére és elkerülésére használjunk szaturációs műveleteket • Túlcsordulás esetén két lehetőség van -Szaturáció -Átfordulás

  29. 3. Előadás: Téma: • FPGA I/O konfigurálása • FPGA I/O paletta • I/O típusok

  30. Az FPGA I/O konfigurálása

  31. Az FPGA I/O kétféleképpen használható: Áthúzhatjuk a LabVIEW Project-ből Tegyünk egy üres I/O komponenst a blokk diagramba és konfiguráljuk Az FPGA I/O használata

  32. I/O típusok • Digitális vonalak – Boole változók írhatók/olvashatók a vonalakról • ADC és DAC – Magas szintű VI-ok, értékek írására és olvasására; NI R-Series hardver • Előre kiosztott IO lábak az FPGA-n (pl. Xilinx Spartan 3E kártyán) • Használjuk a példa projekteket mintaként

  33. Számláló készítése Digital I/O vonalakkal • A minimális használható pulzusszélességet a ciklus periódusideje szabja meg

  34. Bináris konverzió az Analog I/O vonalakkal • Az Analóg I/O használatakor a bináris értéket a nominális értékre jkell konvertálni a host VI-ban • A bináris konverziós tényező az aktuális kártyától függ • Spartan 3E; 14-bit ADC • NI Hardware; modulonként változó

  35. 3A Előadás: Téma: • Digitális I/O protokollok az FPGA I/O vonalakkal

  36. Általános digitális kommunikációs módszerek • Komponens/IC kommunikáció • Elektromos tervezés: SPI, I2C, JTAG, PS/2, … • Rendszer kommunikáció • Repülés: MIL-STD-1553, ARINC-429, … • Autóipar: CAN, MOST, KWP, 1939, … • Távközlés • Űrkutatás: PCM/Telemetria • Fogyasztói elektronika • Digitális audió: S/PDIF, I2S • Egyedi • Eszköz specifikus megvalósítás

  37. I2C kommunikáció

  38. SPI kommunikáció Pont-pont Master - Slave SPI kapcsolat Egy Master, több Slave SPI busz kapcsolat

  39. PWM mommunikáció • A PWM használható egyszerűbb szervo vezérléseknél Pulzus szélesség SzögMegjegyzés 0.6ms -45 fok minimum pulzus szélesség 1.5ms0 fok középállás 2.4 msc -45 fok maximum pulzus szélesség

  40. A LabVIEW FPGA használata digitális protokollok generálására Látogassunk el www.ni.comoldalra, ahol a LabVIEW FPGA-hoz különböző példamegoldások találhatók a PWM, I2C, SPI, és más protokollokhoz

  41. 4. előadás: Témák: • Időzítési funkciók • Ciklusvégrahajtás különböző időzítési funkciókkal • Párhuzamos ciklusvégrehajtás • Ciklusok szinkronizálása • Adatmegosztás

  42. Időzítési vezérlő függvények

  43. Időzítő függvények konfigurálása • Számolási egységek • Ütemek • μsec • msec • Belső számlálók mérete • 32 Bit • 16 Bit • 8 Bit

  44. Ciklusidőzítés • A szokásosan használt ciklus szerkezetben a ciklus időzítő az első hurok végrehajtás előtt inicializálja a hurok időzítését • Ha a kód végrehajtása egy esetben meghaladja a beállított időzítést, akkor a hurok időzítő ezt tolerálja és ettől függetlenül a továbbiakban is az eredetileg beállított hurok időzítést tartja.

  45. A ciklusidő beállítás és a várakozás értelmezése • A kódszerkezet teljesen azonos • A ciklus időzítő kód csak az első lefutáskor aktív • A várakozás a hurokvégrehajtás minden iterációjában aktív

  46. Ütemszámláló alkalmazási példa:Végrehajtási idő mérése 1. Módszer 2. Módszer

  47. Időzítés használata kiválasztott órajelciklushoz időzített ciklusokhoz • Több funkció végrehajtása egyetlen órajel alatt • A ciklus alapértelmezésben a fordításkor megadott órajel sebesség szerint hajtódik végre • Javítja a kódvégrehajtás sebességét és hatékonyságát • Minden kódrészletnek egyetlen órajelciklus alatt kell végrehajtódnia 50 MHz Clock = Spartan 3E HW 40 MHz Clock = NI HW 16MHz Clock = Logsys HW

  48. Többszörös órajel tartományok • A rendszerórajel alapján különböző sebességű órajeltartományok alakíthatók ki • Ennek megfelelően a különböző egy órajelciklus időzítésű hurkok működtethetők eltérő órajelekről • Támogatott I/O egységek: • R sorozatú digitális I/O-k • cRIO-9401 • Használható: • Órajelek generálására • Lokális sebesség optimalizálás

  49. 4.1 gyakorlat Téma: Időzítés és IO Tárgy: To create a VI that reads and writes to AI/O and sets a digital line high when threshold value is reached Solution: Found in Solutions folder

More Related