LEON | |
Gyártás | 1997– |
Tervező | Sun Microsystems (jelenleg Oracle)
(processzor, származtatott tervek) |
Gyártó | Atmel (jelenleg Microchip Technology) |
Max CPU órajel | 150 – 1500 MHz[1][2] |
Architektúra | SPARC V8 |
Magok száma | 1 |
Előd | ERC32 |
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, amely a Sun Microsystems által fejlesztett SPARC V8 utasításkészlet-architektúrát (ISA) valósítja meg. Eredetileg az European Space Research and Technology Centre (ESTEC) tervezte, amely 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). A leírása szintetizálható VHDL hardverleíró nyelven készült. A LEON processzornak kettős licenc modellje 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ó, és 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]
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, amelyet 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]
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, amely 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 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, amelyek 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 LEON3FT nem támogatja a szabványos LEON3 processzor következő funkcióit:
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:
Fejlesztés alatt áll.[19]
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.
Ld. jegyzetek
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.