Verzögerungen des Mehrtakt-MIPS

Benutzeravatar
igor.a
BASIC-Programmierer
BASIC-Programmierer
Beiträge: 143
Registriert: 28. Sep 2009 16:05

Verzögerungen des Mehrtakt-MIPS

Beitrag von igor.a »

Ich habe überlegt, wie sich die Verzögerungen für bestimmte Aufgaben in der Mehrtakt-Implementierung zusammensetzen und bin zu folgendem Ergebnis gekommen. Allerdings kann ich mir dadurch immer noch nicht erklären, wie die Zahlen in der Lösung zur Aufgabe 7.17 zustande kommen :(

Kann jemand das hier bestätigen oder widerlegen?

t(speicher auslesen) = t(pcq) + t(mux) + t(mem_read) + t(setup)

t(register auslesen) = t(pcq) + t(rf_read) + t(setup)

t(register schreiben) = t(pcq) + t(mux) + t(rf_setup)

t(alu-berechnung) = t(pcq) + 2*t(mux) + t(alu) + t(setup)

Thorti
BSc Spammer
BSc Spammer
Beiträge: 1047
Registriert: 1. Dez 2003 11:52
Wohnort: Frankfurt
Kontaktdaten:

Re: Verzögerungen des Mehrtakt-MIPS

Beitrag von Thorti »

igor.a hat geschrieben:t(alu-berechnung) = t(pcq) + 2*t(mux) + t(alu) + t(setup)
Warum hast du hier 2* t(mux)?
Assistent zur Vorlesung TGDI im WS 11/12

Benutzeravatar
igor.a
BASIC-Programmierer
BASIC-Programmierer
Beiträge: 143
Registriert: 28. Sep 2009 16:05

Re: Verzögerungen des Mehrtakt-MIPS

Beitrag von igor.a »

Ist das nicht kritische Pfad einer Alu-Berechnung? Die Daten kommen aus einem Register, gehen durch die Alu-Src Multiplexer, dann durch die ALU und anschließend durch den PCSrc Multiplexer zum PC-Register.

Thorti
BSc Spammer
BSc Spammer
Beiträge: 1047
Registriert: 1. Dez 2003 11:52
Wohnort: Frankfurt
Kontaktdaten:

Re: Verzögerungen des Mehrtakt-MIPS

Beitrag von Thorti »

Stimmt, da hinten ist ja noch ein MUX.
Dann sehe ich keinen Fehler in deinen Gleichungen.

Thorsten
Assistent zur Vorlesung TGDI im WS 11/12

Benutzeravatar
igor.a
BASIC-Programmierer
BASIC-Programmierer
Beiträge: 143
Registriert: 28. Sep 2009 16:05

Re: Verzögerungen des Mehrtakt-MIPS

Beitrag von igor.a »

Ok, danke :)

Benutzeravatar
omidpsh2
Windoof-User
Windoof-User
Beiträge: 32
Registriert: 26. Jan 2010 15:51

Re: Verzögerungen des Mehrtakt-MIPS

Beitrag von omidpsh2 »

igor.a hat geschrieben: Allerdings kann ich mir dadurch immer noch nicht erklären, wie die Zahlen in der Lösung zur Aufgabe 7.17 zustande kommen :(
ich auch nicht....
Ich kriege raus :

t(speicher auslesen) = t(pcq) + t(mux) + t(mem_read) + t(setup) = 325 ps

t(register auslesen) = t(pcq) + t(rf_read) + t(setup) = 200 ps

t(register schreiben) = t(pcq) + t(mux) + t(rf_setup) = 75 ps

t(alu-berechnung) = t(pcq) + 2*t(mux) + t(alu) + t(setup) = 300 ps
Das Buch hat geschrieben: Yes, Alyssa P. Hacker should switch to the slower but lower power register
file for her multicycle processor design. Twice the delay still does not make the
register file in the critical path (160 ps propagation delay for a read, and 140 +
25 = 165 ps
for a write). The critical path is still the memory access, so using
the reduced power register file does not affect the processor speed.
was ist da falsch, bzw. was verstehe ich nicht ?

danke, Omid
_____________________________________________________________________________

BITTE NICHT ÜBER TUCAN ANTWORTEN.

fscheepy
Endlosschleifenbastler
Endlosschleifenbastler
Beiträge: 153
Registriert: 14. Dez 2009 21:17

Re: Verzögerungen des Mehrtakt-MIPS

Beitrag von fscheepy »

hmm ja, zum register lesen müssten es
t(pcq) + 2*t(rf_read) + t(setup) = 350 ps
und zum register schreiben
t(pcq) + t(mux) + 2*t(rf_setup) = 95 ps
sein. somit wäre dann register lesen der kritische pfad und man sollte auf das halb so schnelle registerfeld verzichten

oder hab ich da was falsch verstanden? :D

jack_90
Mausschubser
Mausschubser
Beiträge: 75
Registriert: 29. Sep 2009 22:38
Wohnort: Darmstadt
Kontaktdaten:

Re: Verzögerungen des Mehrtakt-MIPS

Beitrag von jack_90 »

Der kritische Pfad vorher sollte 325ps sein
mit dem langsameren register file wird dann der Pfad durch eben jenes zum kritischen Pfad mit:
\(t_{readFromMem} = t_{pcq} + 2*t_{mem} + t_{setup} = 350ps\)
wenn ich mich nicht verrechnet habe.
Ich hab zwar auch keine Ahnung wie man auf die Zahlen aus dem Buch kommt, aber wenn der kritische Pfad länger wird sollte man nicht unbedingt das langsamere Register File verbauen.
EiSE Tutor WS 12/13

fscheepy
Endlosschleifenbastler
Endlosschleifenbastler
Beiträge: 153
Registriert: 14. Dez 2009 21:17

Re: Verzögerungen des Mehrtakt-MIPS

Beitrag von fscheepy »

jack_90 hat geschrieben:Der kritische Pfad vorher sollte 325ps sein
mit dem langsameren register file wird dann der Pfad durch eben jenes zum kritischen Pfad mit:
\(t_{readFromMem} = t_{pcq} + 2*t_{mem} + t_{setup} = 350ps\)
wenn ich mich nicht verrechnet habe.
Ich hab zwar auch keine Ahnung wie man auf die Zahlen aus dem Buch kommt, aber wenn der kritische Pfad länger wird sollte man nicht unbedingt das langsamere Register File verbauen.

meine rede :)

jack_90
Mausschubser
Mausschubser
Beiträge: 75
Registriert: 29. Sep 2009 22:38
Wohnort: Darmstadt
Kontaktdaten:

Re: Verzögerungen des Mehrtakt-MIPS

Beitrag von jack_90 »

@fscheepy: wollte erst etwas anderes schreiben, mir ist dann jedoch aufgefallen, dass der Ansatz falsch war^^
EiSE Tutor WS 12/13

fscheepy
Endlosschleifenbastler
Endlosschleifenbastler
Beiträge: 153
Registriert: 14. Dez 2009 21:17

Re: Verzögerungen des Mehrtakt-MIPS

Beitrag von fscheepy »

jack_90 hat geschrieben:@fscheepy: wollte erst etwas anderes schreiben, mir ist dann jedoch aufgefallen, dass der Ansatz falsch war^^
:mrgreen:

deine antwort ist auch so nicht ganz richtig, da du in der formel t(mem) und t(readFromMem) schreibst (btw: wie mach ich das, dass das "mem" so tiefergestellt da steht?), aber wie du ja selbst schon gesagt hast, dreht es sich hier um das registerfeld
aber wir wollen hier mal nicht pingelig werden, da du ja sowieso den richtigen wert, t(RFread), eingesetzt hast :mrgreen:

Thorti
BSc Spammer
BSc Spammer
Beiträge: 1047
Registriert: 1. Dez 2003 11:52
Wohnort: Frankfurt
Kontaktdaten:

Re: Verzögerungen des Mehrtakt-MIPS

Beitrag von Thorti »

jack_90 hat geschrieben:Ich hab zwar auch keine Ahnung wie man auf die Zahlen aus dem Buch kommt, aber wenn der kritische Pfad länger wird sollte man nicht unbedingt das langsamere Register File verbauen.
Ich habe auch keine Ahnung wie sie auf die Zahlen kommen....
Ich habe jetzt nochmal im Komplettlösungsbuch nachgeschaut, dort ist eine andere Lösung drin :shock: - die mit eurer übereinstimmt.

Gruss
Thorsten
Assistent zur Vorlesung TGDI im WS 11/12

dstorck
Mausschubser
Mausschubser
Beiträge: 63
Registriert: 26. Mär 2009 07:58

Re: Verzögerungen des Mehrtakt-MIPS

Beitrag von dstorck »

fscheepy hat geschrieben:hmm ja, zum register lesen müssten es
t(pcq) + 2*t(rf_read) + t(setup) = 350 ps
und zum register schreiben
t(pcq) + t(mux) + 2*t(rf_setup) = 95 ps
sein. somit wäre dann register lesen der kritische pfad und man sollte auf das halb so schnelle registerfeld verzichten

oder hab ich da was falsch verstanden? :D
Wie kommst du denn jeweils auf 2*t(rf_read) und 2*t(rf_setup) ? Kritische Pfade zu analysieren ist nicht so mein Ding. Bei eurer Analyse fangt ihr auch immer nach den kleinen Registern an (Instr, ALUOut usw...) oder? Warum betrachtet man eigentlich nicht den kompletten Pfad von vorne? Wenn ich z.B. von einem Register lese hätte ich doch theoretisch auch den kritischen Pfad des Fetchs ?

Thorti
BSc Spammer
BSc Spammer
Beiträge: 1047
Registriert: 1. Dez 2003 11:52
Wohnort: Frankfurt
Kontaktdaten:

Re: Verzögerungen des Mehrtakt-MIPS

Beitrag von Thorti »

dstorck hat geschrieben:Wie kommst du denn jeweils auf 2*t(rf_read) und 2*t(rf_setup) ?
Das geht aus der Aufgabenstellung hervor. Das Register soll halb so schnell sein.
Kritische Pfade zu analysieren ist nicht so mein Ding. Bei eurer Analyse fangt ihr auch immer nach den kleinen Registern an (Instr, ALUOut usw...) oder? Warum betrachtet man eigentlich nicht den kompletten Pfad von vorne? Wenn ich z.B. von einem Register lese hätte ich doch theoretisch auch den kritischen Pfad des Fetchs ?
Nein, hier geht es doch die Mehrtaktimplementierung.

Gruss
Thorsten
Assistent zur Vorlesung TGDI im WS 11/12

Antworten

Zurück zu „Archiv“