R4000 - R4000

Mikroprocesor Toshiba R4000
Výstřel MIPS R4000

R4000 je mikroprocesor vyvinutý MIPS Computer Systems , který implementuje MIPS III architektury sad instrukcí (ISA). Oficiálně oznámeno 1. října 1991, to byl jeden z prvních 64bitových mikroprocesorů a první implementace MIPS III. Na počátku 90. let, kdy se očekávalo, že mikroprocesory RISC nahradí mikroprocesory CISC, jako je Intel i486 , byl R4000 vybrán jako mikroprocesor Advanced Computing Environment (ACE), což je průmyslový standard, který měl definovat společnou platformu RISC. ACE nakonec selhal z mnoha důvodů , ale R4000 našel úspěch na trhu pracovních stanic a serverů.

Modely

R4000 má tři konfigurace: R4000PC, model základní úrovně bez podpory sekundární mezipaměti; R4000SC, model se sekundární mezipamětí, ale bez možnosti více procesorů; a R4000MC, model se sekundární mezipamětí a podporou koherenčních protokolů mezipaměti vyžadovaných systémy s více procesory.

Popis

R4000 je skalární superpipelinový mikroprocesor s osmistupňovým celočíselným potrubím. Během první fáze (IF) se vygeneruje virtuální adresa instrukce a vyrovnávací paměť překladu instrukcí (TLB) zahájí překlad adresy na fyzickou adresu. Ve druhé fázi (IS) je překlad dokončen a instrukce je načtena z interní mezipaměti instrukcí 8 KB. Mezipaměť instrukcí je přímo mapována a prakticky indexována, fyzicky označena . Má velikost řádku 16 nebo 32 bajtů. Architektonicky by ji bylo možné rozšířit na 32 kB.

Během třetí fáze (RF) se instrukce dekóduje a načte se soubor registru . MIPS III definuje dva soubory registrů, jeden pro celočíselnou jednotku a druhý pro plovoucí desetinnou čárku. Každý soubor registru je široký 64 bitů a obsahuje 32 záznamů. Soubor celočíselného registru má dva porty pro čtení a jeden port pro zápis, zatímco soubor registru s plovoucí desetinnou čárkou má dva porty pro čtení a dva porty pro zápis. Provádění začíná ve čtvrté fázi (EX) pro instrukce s celočíselným i s plovoucí desetinnou čárkou; a po dokončení v osmé fázi (WB) se zapíše zpět do souborů registru. Pokud je to možné, výsledky lze obejít.

Celé provedení

R4000 má aritmetickou logickou jednotku (ALU), posunovač, multiplikátor a rozdělovač a vyrovnávač zatížení pro provádění celočíselných pokynů. ALU se skládá ze 64bitového sčítače carry-select a logické jednotky a je pipeline. Řadicí páka je 32bitová hlavni . Provádí 64bitové posuny ve dvou cyklech a výsledkem je zastavení kanálu. Tento design byl zvolen pro záchranu oblasti matrice. Multiplikátor a dělič nejsou zřetězeny a mají významnou latenci: multiplikátory mají latenci 10 nebo 20 cyklů pro 32bitová nebo 64bitová celá čísla; vzhledem k tomu, že dělení má latenci 69 nebo 133 cyklů pro 32bitová nebo 64bitová celá čísla. Většina pokynů má latenci jednoho cyklu. Sčítač ALU se také používá pro výpočet virtuálních adres pro zátěže, obchody a pobočky.

Pokyny pro načítání a ukládání jsou prováděny celočíselným kanálem a přístup k datové mezipaměti 8 kB na čipu.

Realizace s plovoucí desetinnou čárkou

R4000 má on-die IEEE 754-1985 -kompatibilní s plovoucí desetinnou čárkou jednotku (FPU), označovaný jako R4010. FPU je koprocesor označený CP1 (MIPS ISA definoval čtyři koprocesory označené CP0 až CP3). FPU může pracovat ve dvou režimech, 32 nebo 64 bitů, které jsou vybrány nastavením bitu, bitu FR, do stavového registru CPU. V 32bitovém režimu se 32 registrů s plovoucí desetinnou čárkou zvětší na 32 bitů, když se použije k uložení čísel s plovoucí desetinnou čárkou s jednou přesností. Při použití k uložení čísel s dvojitou přesností existuje 16 registrů s plovoucí desetinnou čárkou (registry jsou spárovány).

FPU může pracovat paralelně s ALU, pokud neexistuje závislost na datech nebo zdrojích, která způsobí její zablokování. Obsahuje tři podjednotky: sčítač, multiplikátor a dělič. Multiplikátor a dělič mohou provádět instrukci souběžně se sčítačem, ale sčítač používají ve svých závěrečných fázích provádění, čímž ukládají limity překrývajícímu se provádění. Za určitých podmínek tedy může provádět až tři instrukce najednou, jednu v každé jednotce. FPU je schopna vyřadit jednu instrukci za cyklus.

Sčítačka a multiplikátor jsou pipeline. Multiplikátor má čtyřstupňový potrubí multiplikátoru. Je taktován na dvojnásobek hodinové frekvence mikroprocesoru pro odpovídající výkon a využívá dynamickou logiku k dosažení vysoké taktovací frekvence. Divize má latenci 23 nebo 36 cyklů pro operace s jednoduchou nebo dvojitou přesností a druhá odmocnina má latenci 54 nebo 112 cyklů. Dělení a druhá odmocnina používají algoritmus SRT .

Správa paměti

Jednotka pro správu paměti (MMU) používá k překladu virtuálních adres vyrovnávací paměť překladu 48 vstupů . R4000 používá 64bitovou virtuální adresu, ale implementuje pouze 40 ze 64 bitů pro 1 TB virtuální paměti . Zbývající bity jsou zkontrolovány, aby bylo zajištěno, že obsahují nulu. R4000 používá 36bitovou fyzickou adresu , a je tedy schopen adresovat 64 GB fyzické paměti .

Sekundární mezipaměť

R4000 (pouze konfigurace SC a MC) podporuje externí sekundární mezipaměť s kapacitou 128 kB až 4 MB. Do mezipaměti se přistupuje prostřednictvím vyhrazené 128bitové datové sběrnice. Sekundární mezipaměť může být konfigurována buď jako jednotná mezipaměť, nebo jako rozdělená instrukční a datová mezipaměť. V druhé konfiguraci může mít každá mezipaměť kapacitu 128 kB až 2 MB. Sekundární mezipaměť je fyzicky indexována, fyzicky označena a má programovatelnou velikost řádku 128, 256, 512 nebo 1024 bajtů. Řadič mezipaměti je zapnut. Mezipaměť je vytvořena ze standardní statické paměti s náhodným přístupem (SRAM). Sběrnice dat a značek jsou chráněny ECC.

Systémová sběrnice

R4000 používá 64bitovou systémovou sběrnici zvanou SysAD bus. Sběrnice SysAD byla multiplexovaná sběrnice adres a dat, to znamená, že k přenosu dat a adres používala stejnou sadu vodičů. I když to snižuje šířku pásma, je to také levnější než poskytnutí samostatné adresové sběrnice, která vyžaduje více pinů a zvyšuje složitost systému. Sběrnice SysAD může být nakonfigurována tak, aby pracovala na polovině, třetině nebo čtvrtině vnitřní frekvence hodin. Sběrnice SysAD generuje svůj hodinový signál dělením pracovní frekvence.

Počet tranzistorů, rozměry matrice a podrobnosti procesu

R4000 obsahuje 1,2 milionu tranzistorů. Byl navržen pro dvouvrstvý kovový komplementární proces kov-oxid-polovodič (CMOS) o velikosti 1,0 μm . Vzhledem k tomu, že společnost MIPS byla bezobslužná společnost, byla R4000 vyrobena partnery v jejich vlastních procesech, které měly minimální velikost funkcí 0,8 μm.

Hodiny

R4000 generuje různé hodinové signály z externího generovaného hodinového signálu. Pokud jde o pracovní frekvenci, R4000 vynásobí signál hlavních hodin dvěma pomocí fázově uzamčené smyčky (PLL) na kostce .

Obal

R4000PC je zabalen do 179kolíkové keramické mřížky (CPGA). Modely R4000SC a R4000MC jsou zabaleny do 447kolíkové keramické rozložené kolíkové mřížky (SPGA). Pin z R4000MC se liší od R4000SC, přičemž některé piny, které nejsou na R4000SC použity, se používají pro signály k implementaci koherence mezipaměti na R4000MC. Pin-out na R4000PC je podobný jako na PGA zabalené R4200 a R4600 mikroprocesory. Tato vlastnost umožňuje správně navrženému systému používat kterýkoli ze tří mikroprocesorů.

R4400

Příklad mikroprocesoru R4400MC vyrobeného společností Toshiba
NEC VR4400MC die shot

R4400 je dalším vývojovým stupněm R4000. Bylo oznámeno počátkem listopadu 1992. Vzorky mikroprocesoru byly do té doby odeslány vybraným zákazníkům, s obecnou dostupností v lednu 1993. R4400 pracuje na taktovacích frekvencích 100, 133, 150, 200 a 250 MHz. Jediným významným vylepšením oproti R4000 jsou větší primární mezipaměti, jejichž kapacita byla zdvojnásobena na 16 kB, z nichž každá má 8 KB. Obsahoval 2,3 milionu tranzistorů.

R4400 byl licencován společnostmi Integrated Device Technology (IDT), LSI Logic , NEC , Performance Semiconductor, Siemens AG a Toshiba . IDT, NEC, Siemens a Toshiba vyrobily a uvedly na trh mikroprocesor. Společnost LSI Logic použila R4400 ve vlastních produktech. Společnost Performance Semiconductor prodala své logické rozdělení společnosti Cypress Semiconductor, kde byly ukončeny produkty mikroprocesoru MIPS.

NEC prodával jejich verzi jako VR4400. První verze, část 150 MHz, byla oznámena v listopadu 1992. Brzy verze byly vyrobeny v procesu 0,6 μm. V polovině roku 1995 začala část vzorkování 250 MHz. Byl vyroben 0,35 μm čtyřvrstvým kovovým procesem. NEC také vyrobil MR4401, keramický vícečipový modul (MCM), který obsahoval VR4400SC s deseti 1 Mbit SRAM čipy, které implementovaly sekundární mezipaměť 1 MB. MCM byl pinově kompatibilní s R4x00PC. První verze, část 150 MHz, byla oznámena v roce 1994. V roce 1995 byla oznámena část 200 MHz.

Společnost Toshiba uvedla na trh jejich verzi jako TC86R4400. V polovině roku 1994 byla představena část 200 MHz obsahující 2,3 milionu tranzistorů a měřící 134 mm 2 vyrobená v procesu 0,3 μm. Cena R4400PC byla 1600 USD, R4400SC 1950 USD a R4400MC 2150 USD v množství 10 000 USD.

Uživatelé

R4400 používají:

Čipové sady

Mikroprocesory R4000 a R4400 byly propojeny se systémem pomocí vlastních ASIC nebo komerčně dostupných čipsetů. Prodejci systémů, jako je SGI, vyvinuli pro své systémy vlastní ASIC. Komerční čipové sady byly vyvinuty, vyrobeny a uvedeny na trh společnostmi, jako je Toshiba, s čipovou sadou Tiger Shark, která poskytovala sběrnici kompatibilní s i486 .

Poznámky

Reference