4
5 단계의 파이프 라인을 시뮬레이션하려고합니다. 모든 명령어를 구조체에 저장했습니다. 이C++에서 파이프 라인의 5 단계를 시뮬레이트하는 방법은 무엇입니까?
이 예 (기본적으로 lixcal 분석의 단계로 수행) : 지금 p[i]
파이프 라인의 단계 중 하나이며 경우
ADD R1 R2 R3 // R1 = R2+ R3 ... struct pipe{ int pc, string instruction , int r1, int r2....}
(p[1]
이 pc=pc+1
수, I[i]
지침입니다에게, (I[1]
가 될 수있다 ADD R1 R2 R3
)
내가 뭘 원하는
at t=1 : p[1] = I[1]
at t=2 :p[2] = I[1], p[1] = I[2]
at t=3 :p[3] = I[1], p[2] = I[2], p[1] = I[3]
at t=4 :p[4] = I[1], p[3] = I[2], p[2] = I[3], p[1] = I[4]
입니다
... 그런 식으로갑니다 지금까지 C++을 사용하고 있습니다. 어떻게하면 C++에서이 사이클을 나타낼 수 있습니까?
, 당신은 작은 ARM 같은를 만들려고 가상 기기? – icktoofay
@icktoofay 예 정확히 – pokche
문제를 이해하지 못합니다. 질문에 알고리즘을 설명 했으므로 무엇이 필요합니까? – didierc