This shows you the differences between two versions of the page.
soc:laboratoare:09-old [2025/05/20 20:22] andrei.batasev [Laboratorul 09 - Pipelining] |
soc:laboratoare:09-old [2025/05/20 20:48] (current) andrei.batasev [4. Exerciții] |
||
---|---|---|---|
Line 30: | Line 30: | ||
</note> | </note> | ||
- | Trebuie totuși să aplicăm o constrângere asupra stagiilor: fiecare stagiu trebuie să dureze la fel de mult timp. | + | Trebuie totuși să aplicăm o constrângere asupra stagiilor: fiecare stagiu trebuie să dureze la fel de mult timp. |
+ | <note warning> | ||
+ | De aceea nu putem aplica aceasta strategie unui procesor precum SOC-1, care contine stagii de lungime variabila | ||
+ | </note> | ||
==== 3. Hazarde ==== | ==== 3. Hazarde ==== | ||
Line 76: | Line 78: | ||
Vom implementa un procesor extrem de simplu, ce execută instrucțiuni în 5 stagii: IF, ID, EX, MEM și WB. | Vom implementa un procesor extrem de simplu, ce execută instrucțiuni în 5 stagii: IF, ID, EX, MEM și WB. | ||
<note> | <note> | ||
- | La acest laborator am studiat pipeline-urile de la procesoare de tip RISC. Deoarece SOC-1 este un procesor de tip CISC (instrucțiuni de mărime variabilă), vom folosi un alt tip de procesor simplificat. Dacă dorim să aplicăm paralelism la nivel de stagii la un procesor SOC-1, se pot aplica alte metode precum [[https://en.m.wikipedia.org/wiki/Cache_prefetching|instruction prefetching]] | + | La acest laborator am studiat pipeline-urile de la procesoare de tip RISC. Deoarece SOC-1 este un procesor de tip CISC (instrucțiuni de mărime variabilă), vom folosi un alt tip de procesor simplificat. |
</note> | </note> | ||
**Task 0** și **Task 1** presupun realizarea unui procesor ce va fi capabil să execute următoarele instrucțiuni din memoria de program: | **Task 0** și **Task 1** presupun realizarea unui procesor ce va fi capabil să execute următoarele instrucțiuni din memoria de program: |