donkey7 napisał(a)
Kunai:
Trudność dekodowania instrukcji nie zależy od tego ile ich jest lub jak są skonstruowane, ale od tego czy da się sensownym kosztem zdekodować kilka instrukcji naraz. Instrukcje u Intela mogą mieć od 1 bajta do chyba kilkunastu, nie ma żadnych informacji jakie długie będą kolejne instrukcje, nie ma żadnych znaczników typu "to jest instrukcja" / "to jest kontynuacja instrukcji", więc najbardziej skomplikowanym modułem w prockach x86 jest chyba dekoder instrukcji.
Wystarczy, że instrukcje rozpisane są 'na drzewie', nie ma potrzeby jawnego rozdzielania ich. Co do dekodowania kilku naraz, nie wiem czy tak to działa, nigdy o tym nie czytałem.
Mam natomiast wrażenie, że trochę to jednak zależy od instrukcji. Tzn. jak wiadomo instrukcje tłumaczone są na mikroinstrukcje - takiego xor z pewnością łatwiej jest zdekodować, niż którąś z dziwacznych instrukcji SSE4... albo przyszłego AES-a. Może to po prostu copy-paste z jakiejś predefiniowanej tablicy szablonów, ale wydaje mi się, że potrzeba tu nieco więcej logiki ;)
Poza tym, gdyby instrukcji było mniej, dałoby się je zakodować na mniejszej liczbie bitów.