[#23]
Re: Apollo Phoenix Core v2000 Vampire 600
@MasterM,
post #22
To nie jest emulacja, to jest implementacja architektury i modelu programowego M68000.
Z punktu widzenia programu jest nieistotne, jak sobie procesor radzi w środku z wykonywaniem instrukcji. Program ma się wykonać tak samo jak na każdej innej implementacji M68000 (pomijając cuda na kiju typu samomodyfikujący się kod, albo chowanie danych w najstarszym bajcie adresu, gdy cpu ma 24-bitową adresację).
A jak to sobie implementator rozwiąże to zależy tylko od niego. Może użyć mniej tranzystorów i wewnętrzenie rozbijać każdą instrukcje na mikroinstrukcje, wykonując ją wieloetapowo, co nie jest efektywne (ale to znowu pozwala na superskalarność). A może każdą instrukcję z-hardwire-ować, czyli całą jej logikę zrealizować w krzemie, aby osiągnąć maksymalną wydajność. Może użyć cache jedno lub wielopoziomowe, może użyć wielu potoków, aby zrównoleglić przetwarzanie, może sobie dorzucić logikę próbującą przewidywać skoki, itp. Taki 68000 z oryginalnym będzie miał wspólną tylko listę rozkazów i złącza elektryczne (ale może mieć ich więcej, bo np. pełną, 32-bit szynę danych i adresową)