Ugrás a tartalomhoz

LEON

Ellenőrzött
A Wikipédiából, a szabad enciklopédiából
LEON
Gyártás1997–
TervezőSun Microsystems (jelenleg Oracle)


(utasításkészlet, eredeti tervek)
,
Európai Űrügynökség (ESA),

Gaisler Research (jelenleg Cobham Gaisler)
(processzor, származtatott tervek)
GyártóAtmel (jelenleg Microchip Technology)
Max CPU órajel150 – 1500 MHz[1][2]
ArchitektúraSPARC V8
Magok száma1
ElődERC32

A LEON (a spanyol león szóból, jelentése oroszlán) egy sugárzás elleni védelemmel ellátott 32 bites processzor mag és mikroprocesszor-sorozat, mely a Sun Microsystems által fejlesztett SPARC V8 utasításkészlet-architektúrát (ISA) valósítja meg. Eredetileg a European Space Research and Technology Centre (ESTEC) tervezte, mely az Európai Űrügynökség (ESA) része, majd a tervek rövid életút után a Gaisler Research céghez kerültek (a Sun nem volt érintett a processzor kialakításban). Leírása szintetizálható VHDL hardverleíró nyelven készült. A LEON processzornak kettős licencmodellje van: egy GNU Lesser General Public License (LGPL) és GNU General Public License (GPL) free and open-source software (FOSS) licenc, amely licencdíj nélkül használható, vagy egy védett termékbe történő integráláshoz megvásárolható védett licenc.[3][4] A mag VHDL generikus modulokkal konfigurálható, egylapkás rendszer (SOC) kialakításokban használják, mind kutatási, mind kereskedelmi célú rendszerekben.[5]

Az LEON projektet az Európai Űrügynökség (ESA) indította 1997 végén, az európai űrprojektekben felhasználható nagy teljesítményű processzor tanulmányozása és kifejlesztése céljából.[6] A projekt céljai között szerepelt egy olyan nyílt, hordozható és nem tulajdonosi processzorkialakítás létrehozása, amely képes megfelelni a teljesítményre, a szoftverkompatibilitásra és az alacsony rendszerköltségre vonatkozó jövőbeli követelményeknek. Egy másik cél az volt, hogy a gyártás egyszeri hibaeseményeket (single-event upset, SEU) tűrő félvezető folyamatban történjen. A helyes működés fenntartásához a hibaesemények fellépésével számolva széleskörű hibajelző és hibakezelő funkciókra van szükség. A cél az volt, hogy bármely regiszterben egy hibát szoftveres beavatkozás nélkül észleljen és eltűrjön a rendszer, valamint hogy a kombinációs logikában elnyomják az egyszeri átmeneti (single event transient, SET) analóg hibák hatásait.

A LEON család első tagja, a LEON1, egy VHDL hardverleíró nyelven készült kialakítás volt. A 0,25 μm-es technológiával legyártott LEONExpress tesztcsip a hibatűrési koncepció bizonyítására szolgált. A második, LEON2 VHDL-kialakítást az Atmel AT697 processzoros eszközében és különböző egylapkás rendszerekben használták. Ezt a két LEON megvalósítást az ESA fejlesztette ki. A harmadik, LEON3 tervezetet már a Gaisler Research (jelenleg a Cobham plc. része, korábban Aeroflex Gaisler) fejlesztette ki, és ugyanez jelentette be a negyedik generációs LEON, a LEON4 processzor megjelenését is.[7]

LEON processzor modellek és disztribúciók

[szerkesztés | forrásszöveg szerkesztése]

A LEON processzor programozható logikában, például egy FPGA-ban (field-programmable gate array) vagy alkalmazásspecifikus integrált áramkörben (ASIC) valósítható meg. Ez a szakasz és a következő alfejezetek a LEON processzorokra mint szoftveres jogvédett IP-magokra (soft IP core) összpontosítanak, és összefoglalják az egyes processzorváltozatok fő jellemzőit, valamint a processzor kiszerelésére/tokozására szolgáló infrastruktúrát, melyet LEON-disztribúciónak neveznek.

A LEON sorozat összes processzora a SPARC V8 csökkentett utasításkészletű (RISC) ISA-t használja. A LEON2(-FT) öt fokozatú, míg a későbbi változatok hét fokozatú futószalagot tartalmaznak. A LEON2 és a LEON2-FT egy grafikus konfigurációs eszközzel módosítható egylapkás rendszer kialakításként kerül forgalmazásra. Bár a LEON2(-FT) kialakítás bővíthető és más kialakításokban újrafelhasználható, a felépítése nem hangsúlyozza a terv egyes részeinek építőelemként való újrafelhasználását, és a tervezők számára nem engedi meg új IP-magok könnyű beépítését a kialakításba.

A szabványos LEON2(-FT) disztribúció a következő támogató magokat tartalmazza:[8]

A LEON3, LEON3FT és LEON4 magokat jellemzően a GRLIB IP-könyvtárral együtt használják. Míg a LEON2 disztribúciók egyetlen, több megcélzott technológián is használható dizájnt tartalmaznak, addig a GRLIB több sablon kialakítást tartalmaz, FPGA fejlesztőkártyákhoz és ASIC célokhoz egyaránt, és ezek a LEON2 disztribúcióhoz hasonló grafikus konfigurációs eszközzel módosíthatók. A LEON/GRLIB csomag a LEON2 disztribúciókhoz képest több magot tartalmaz, és tartalmazza a csipen lévő Advanced Microcontroller Bus Architecture (AMBA) busz plug and play (PnP) kiterjesztését is. A GRLIB csomagban elérhető IP magok közé tartoznak még:[9]

FPGA tervezési folyamat

[szerkesztés | forrásszöveg szerkesztése]

A LEON FPGA-n való felépítéséhez szükséges tervezési folyamat dokumentációja elérhető a gyártótól[10] és harmadik féltől származó forrásokból.[11]

A LEON2/LEON2-FT kifejezés gyakran a LEON2 egylapkás rendszer kialakításra utal, mely a LEON2 processzormagot jelenti a LEON2(-FT) disztribúcióban elérhető szabványos perifériakészlettel együtt. A LEON sorozat későbbi processzorai a kialakítások széles körében vannak alkalmazva, ezért nem kapcsolódnak olyan szorosan a szabványos perifériakészlethez. A LEON3 és LEON4 esetében a név jellemzően csak a processzormagra utal, míg a LEON/GRLIB a teljes egylapkás rendszer kialakításra vonatkozik.

A LEON2 processzormag jellemzői:

  • A GNU LGPL nagyfokú szabadságot biztosít a szabadon hozzáférhető forráskódba való beavatkozáshoz.
  • A konfigurálhatóság a projekt egyik alapvető jellemzője,[12] és a VHDL generikusok használatával valósul meg.[13]
  • Egy futószalagos sorrendi végrehajtású processzor minden alapvető funkcióját kínálja.
  • A projekt VHDL kódja meglehetősen nagy méretű (körülbelül 90 fájl, a teljes LEON2 disztribúcióhoz, beleértve a perifériás IP-magokat is).

LEON2-FT processzormag

[szerkesztés | forrásszöveg szerkesztése]

A LEON2-FT processzor a LEON2 processzor egyszeri hibaeseményre (SEU) hibatűrő (fault tolerant, FT) változata. A flip-flopokat háromszoros moduláris redundancia védi, és minden belső és külső memória EDAC vagy paritásbitek segítségével védett. Erre az Európai Űrügynökség által forgalmazott IP-re speciális licenckorlátozások vonatkoznak.[8] A processzort különböző műholdakban, az ESA 2015-ös Intermediate eXperimental Vehicle (IXV) kísérleti űrrepülőgépében[14] és a kínai Csang-o–4 holdszondában is használták.[15]

A LEON3 a SPARC V8 architektúrának megfelelő 32 bites processzor szintetizálható VHDL modellje. A modell nagymértékben konfigurálható, és különösen alkalmas egylapkás rendszerek (system-on-a-chip, SoC) tervezésére. A teljes forráskód a GNU GPL licenc alatt érhető el, ami lehetővé teszi a bármilyen célú felhasználást licencdíj nélkül. A LEON3 saját licenc alatt is elérhető, ami lehetővé teszi a saját alkalmazásokban való felhasználást.

A két LEON2 processzormodell és a LEON3 között számos különbség van. A LEON3 SMP-támogatást és hétfokozatú futószalagot tartalmaz, míg a LEON2 nem támogatja az SMP-t és futószalagja öt fokozatú.

A LEON3FT a szabványos LEON3 SPARC V8 processzor hibatűrő változata. Kemény űrkörnyezetben való működésre tervezték, és olyan funkciókat tartalmaz, melyek az összes csipen lévő RAM-memóriában felismerik és kijavítják az egyszeri eseményből adódó hibákat (SEU).[16] A LEON3FT processzor támogatja a szabványos LEON3 processzor legtöbb funkcióját, és a következő funkciókkal lett bővítve:

  • a regiszterfájl SEU hibajavítása 32 bites szavanként legfeljebb 4 hibával,
  • a gyorsítótár-memória hibajavítása címkénként vagy 32 bites szavanként legfeljebb 4 hiba esetén,
  • autonóm és szoftveresen átlátszó hibakezelés,
  • a hiba felismerése vagy javítása nincs hatással az időzítésre.

A LEON3FT nem támogatja a szabványos LEON3 processzor következő funkcióit:

  • helyi átmeneti tár (scratchpad RAM, belső gyorsmemória, nincs, sem utasítás, sem adat számára),
  • gyorsítótár zárolás,
  • LRR (least recently replaced) gyorsítótár-helyettesítő algoritmus.

A LEON3FT magot a GRLIP IP könyvtár speciális FT verziójával együtt forgalmazzák. Csak netlista disztribúció lehetséges.

A kritikus űrtechnikai alkalmazásokhoz a LEON3FT-RTAX nevű FPGA implementáció javasolt.[17]

2010 januárjában megjelent a LEON processzor negyedik verziója.[7] Ez a változat a következő új jellemzőkkel rendelkezik:

  • statikus elágazás-előrejelzés hozzáadva a futószalaghoz,
  • opcionális 2. szintű gyorsítótár (L2),
  • 64 bites vagy 128 bites útvonal az AMBA AHB[18] interfészhez,
  • nagyobb teljesítmény lehetséges (a gyártó állítása szerint: 1,7 DMIPS/MHz, szemben a LEON3 1,4 DMIPS/MHz-ével),
  • sugárzástűrő.[1]

Fejlesztés alatt áll.[19]

Valós idejű operációsrendszer-támogatás

[szerkesztés | forrásszöveg szerkesztése]

A LEON magot jelenleg a következő valós idejű operációs rendszerek támogatják: RTLinux, PikeOS, eCos, RTEMS, Nucleus, ThreadX, OpenComRTOS, VxWorks (a Gaisler Research portja), LynxOS (szintén a Gaisler Research portja), POK (egy BSD licenc alatt kiadott szabad ARINC653 implementáció)[20] és ORK+,[21] egy nyílt forráskódú valós idejű kernel a Ravenscar profilú,[22] nagy integráltságú valós idejű alkalmazásokhoz, és Embox[23] nyílt forráskódú konfigurálható valós idejű operációs rendszer, amely lehetővé teszi Linux szoftver Linux nélkül történő használatát.

  1. 1 2 "Quad-Core LEON4 Next-Generation Microprocessor Evaluation Board GR-CPCI-LEON4-N2X" (PDF). Aeroflex Gaisler AB.
  2. ↑ "LEON4 Processor". Cobham Gaisler Plc. Hozzáférés: 2021. január 12.. Eléri a 150 MHz-et FPGA-n és 1500 MHz-et 32 nm-es ASIC-en
  3. ↑ Clarke, Peter (2000. március 6.). "European Space Agency launches free SPARC-like core". EE Times.
  4. ↑ Clarke, Peter (2005. február 24.). "Free SPARC processor developer goes "commercial"". EE Times.
  5. ↑ "Successful Use of an Open Source Processor in a Commercial ASIC". Design & Reuse.
  6. ↑ Andersson, J.; Gaisler, J.; Weigand, R. (2010). Next Generation Multipurpose Microprocessor (PDF). DAta Systems In Aerospace 2010 (DASIA2010). Hozzáférés: 2020. március 17.
  7. 1 2 "Aeroflex Gaisler announces the next generation LEON processor" (Press release). Aeroflex Gaisler. 2010. január 27.
  8. 1 2 "LEON2-FT". European Space Agency.
  9. ↑ "GRLIB IP Library". Cobham Gaisler. Hozzáférés: 2020. március 17.
  10. ↑ "GRLIB IP Library User's Manual" (PDF). Cobham Gaisler. 2019. november.
  11. ↑ Buttelmann, Lutz. "How to setup LEON3 VHDL simulation with Modelsim" (PDF). 2016. március 4. dátummal az eredeti (PDF) címről archiválva.
  12. ↑ "System-On-Chip (SOC) Development". ESA Microelectronics. 2020. augusztus 3. dátummal az eredeti címről archiválva. Hozzáférés: 2021. július 1.
  13. ↑ "Leon3 processor". Gaisler Research. 2007. június 28. dátummal az eredeti címről archiválva.
  14. ↑ "LEON: the space chip that Europe built". SpaceDaily. 2013. január 10.
  15. ↑ "Chang'e-4 lander". European Space Agency (brit angol nyelven). Hozzáférés: 2019. július 18.
  16. ↑ A kozmikus sugárzás a félvezető memóriában bithibákat okoz, ez általában átmeneti hibaesemény.
  17. ↑ "LEON3FT-RTAX Fault-tolerant Processor". Cobham Gaisler. 2021. július 10. dátummal az eredeti címről archiválva. Hozzáférés: 2022. június 4.
  18. ↑ Az Advanced Microcontroller Bus Architecture (AMBA) egy szabadon elérhető, nyílt szabvány a System-on-Chip (SoC) funkcionális blokkok összekapcsolására és kezelésére.
  19. ↑ "LEON5". www.gaisler.com.
  20. ↑ "POK, a real-time kernel for secure embedded systems".
  21. ↑ "ORK+". STRAST group. 2022. április 7. dátummal az eredeti címről archiválva. Hozzáférés: 2022. június 4.
  22. ↑ A Ravenscar profil az Ada feladatmegoldási jellemzőinek egy részhalmaza, amelyet a biztonságkritikus, kemény valós idejű számításokhoz terveztek. Az Ada 95-ben külön technikai jelentésben határozták meg; jelenleg az Ada 2012 szabvány része. Nevét az angol Ravenscar faluról kapta, amely a 8. Nemzetközi Valós Idejű Ada Műhely (IRTAW 8) helyszíne volt.
  23. ↑ "Embox | Real-time operating system".

Ez a szócikk részben vagy egészben a LEON című angol Wikipédia-szócikk ezen változatának fordításán alapul. Az eredeti cikk szerkesztőit annak laptörténete sorolja fel. Ez a jelzés csupán a megfogalmazás eredetét és a szerzői jogokat jelzi, nem szolgál a cikkben szereplő információk forrásmegjelöléseként.

Ld. jegyzetek

További információk

[szerkesztés | forrásszöveg szerkesztése]

Kapcsolódó szócikkek

[szerkesztés | forrásszöveg szerkesztése]