MIL-STD-1750A

MIL-STD-1750A nebo 1750A je formální popis instrukční sady 16bitového počítače ,  včetně povinných i volitelných součástí. Převzato jako americký vojenský standard MIL-STD-1750A (1980). Kromě základní sady instrukcí standard definuje další instrukce, jako je FPU (aritmetika s pohyblivou řádovou čárkou) a MMU .

Důležité je, že standard nedefinuje praktické detaily implementace procesorů 1750A . Z tohoto důvodu jsou procesory instrukční sady 1750A vyráběny velkým množstvím společností ve formě jednotlivých komponent, desek a systémových řešení, vytvořených pomocí různých technologií, často nejpokročilejších a nejexotičtějších v době jejich uvedení (např. například GaAs , ESL , křemík na safíru ). Obzvláště zajímavá je skutečnost, že systémy založené na 1750A často nabízejí vysokou úroveň ochrany proti radiaci a dalším nebezpečným prostředím, takže se dobře hodí pro vojenské, letecké a kosmické aplikace.

US Air Force definuje standard s cílem dosáhnout běžně přijímané počítačové architektury a tím snížit náklady na software a počítačové systémy pro všechny vojenské výpočetní potřeby. To zahrnuje vestavěná řešení , jako jsou systémy řízení letadel a raket , stejně jako jednodušší obecné vojenské výpočetní potřeby. Výhody tohoto konceptu nevidělo pouze americké letectvo a 1750A byl přijat mnoha dalšími organizacemi, jako je Evropská kosmická agentura , NASA , Israeli Aircraft Industries a mnoho akademických projektů. Příklady vojenských letadel používajících procesory instrukční sady 1750A zahrnují:

Plně vyhovující implementace pro vesmírný průmysl udělaly z 1750A jeden z mála typů počítačů, které lze použít v hlubokém vesmíru. Příklady kosmických lodí používajících 1750A:

Procesory založené na standardu MIL-STD-1750A jsou obvykle programovány v JOVIAL , vysokoúrovňovém programovacím jazyce popsaném ve standardu amerického ministerstva obrany a odnoži ALGOL . Staré verze kompilátoru GNU GCC podporovaly procesory 1750A, ale od verze 3.1 byla tato funkce zastaralá a odstraněna z následujících verzí.

Ve výchozím nastavení může procesor 1750A adresovat 2 x 16 16bitových slov paměti. Norma také definuje volitelný blok správy paměti, který umožňuje adresovat 220 16bitových slov paměti pomocí 512 registrů stránek virtuální paměti (v prostoru I/O), s oddělenými prostory pro instrukce a data a s přístupem do paměti řízeným klíčem.

Většina instrukcí je 16bitových, i když některé mají 16bitová rozšíření. Standardní počítač má 16 16bitových obecných registrů (0 až 15). Registry 1 až 15 lze použít jako indexové registry . Registry 12 až 15 lze použít jako základní registry. Kterýkoli ze 16 registrů může fungovat jako ukazatel zásobníku pro příkazy SJS (podprogram pro skok do zásobníku) a URS (podprogram pro uvolnění zásobníku), ale pro příkazy PSHM (vícenásobné stisknutí) a POPM (vícenásobné přepínání) je použit pouze 15. ukazatel zásobníku. Instrukční sada obsahuje 16bitové a 32bitové binární aritmetické instrukce a také 32bitové a 48bitové aritmetické instrukce s pohyblivou řádovou čárkou . I/O operace se obvykle provádějí prostřednictvím I/O instrukcí (XIO a VIO), které mají samostatný adresní prostor 2x16 16bitových slov a mohou mít vyhrazenou I/O sběrnici.

S vydáním poznámek k revizi 4 31. července 1996 byl MIL-STD-1750A prohlášen za neplatný pro nové vojenské projekty USA. Indická organizace pro výzkum vesmíru a čínský letecký průmysl však nadále používají 1750A v nových projektech.

Odkazy