Mikroprocesory - Skripta
Níže je uveden pouze náhled materiálu. Kliknutím na tlačítko 'Stáhnout soubor' stáhnete kompletní formátovaný materiál ve formátu PDF.
Paměť:
Data a
instrukce
CPU
Adresová sběrnice
Datová sběrnice
Datová s. PP
Datová s. PD
Řídicí sběrnice
Adresová s. PP
Paměť
Programu
(instr. a data)
CPU
Paměť
Dat
(pouze data)
Cache
instrukcí
Paměť
Dat
(pouze data)
Datová s. PD
CPU
Adresová s. PP
Datová s. PP
Paměť
Programu
(instrukce)
Řídicí s. PD
Řídicí s. PD
Řídicí s. PP
Řídicí s. PP
Adresová s. PD
Adresová s. PD
Mikroprocesory
27
Sledujeme-li výskyt instrukcí v programu (počítáme kolikrát je daná instrukce
v programu napsána), dostaneme statickou četnost výskytu instrukcí. Statická četnost
výskytu instrukcí však nic nevypovídá o tom, kolikrát procesor určitou instrukci použije během
provádění programu. To určuje dynamická četnost výskytu instrukcí. Rozdíl mezi statickou
a dynamickou četností výskytu instrukcí si objasníme na krátkém úseku programu:
LDX #10 ; do index registru X se uloží konstanta 10
LOOP:
DEX
; snížení obsahu registru X o 1
BNE LOOP
; skok na návěští LOOP, pokud nebylo X dekrementováno na 0
Každá instrukce (LDX, DEX i BNE) je v programu zapsána pouze jednou. Statická
četnost výskytu každé instrukce je tedy 1. Ovšem při provádění programu se instrukce LDX
provede pouze jednou, ale instrukce DEX a BNE se obě provedou 10 krát. Dynamická četnost
výskytu instrukce LDX je tedy 1, instrukce DEX je 10 a instrukce BNE je také 10.
Cykly jsou v reálných programech používány velmi často. Rovněž podprogramy jsou
volány opakovaně. Dospělo se k empirickému poznatku, že v programech je zřejmá tendence
používat znovu ty instrukce (a ta data), které již byly jednou nebo vícekrát použity. Velmi
zhruba platí, že procesor stráví 90% svého času prováděním pouze 10% ze všech instrukcí
programu.