컴퓨터 구조 관련 질문입니다...(어디에 올릴지 모르겠음..)
글쓴이: supaflow / 작성시간: 수, 2006/10/11 - 5:29오후
컴퓨터 시스템 구조론 책에 있는 연습문제 내용입니다.
질문이 무엇을 말하는지는 알겠는데 어떻게 풀어내야 하는지 잘 모르겠네요.
도움 부탁 드립니다.
명령어 실행에 걸리는 시간에 대해서 설명도 부탁합니다.
--------------------------------------------------------------
어떤 마이크로프로세서가 지정된 기억 장소의 값에 1을 더해주는 increment memory direct
명령어를 가지고 있다. 그 명령어는 다섯 단계로 구성된다 : 연산 코드 인출(4 버스 사이클), 오퍼랜드 주소 인출 (3 사이클), 오퍼랜드 인출(3 사이클), 오퍼랜드에 1 더하기(3사이클), 그리고 오퍼랜드 저장(3 사이클).
a.) 만약 각 기억장치 읽기와 쓰기 동작 때마다 버스 대기 상태를 두 개씩 삽입해야 한다면, 그 명령어 실행에 걸리는 시간은 얼마나(몇 퍼센트) 증가할 것인가?
b.) increment 연산이 3사이클이 아니라 13사이클 걸린다고 가정할 경우에 위의 문제를 반복하라.
--------------------------------------------------------------
이런 문제 입니다. 도무지 감이 안오네요.
문제의 갈길을 바로 잡아 주시기 바랍니다..
Forums:
혹시 학교에서 배우는 것이라면...
딴지는 아니고요...
If 학교에서 배우는 것이라면,
교수님, 혹은 조교분께 여쭤보는 게 더 좋을 것 같다는...
else
KLDP의 똑똑하신 분들이 답변해주시길 기다리시면 되겠네요..
ps. 제가 가끔 훌륭하신 교수님과 조교분들을 나두고 삽질하던게 생각나서 적습니다. : )
토나오게...
정확하지 않을 수도 있지만..
기본적으로 16 사이클입니다만,
메모리 접근시 마다 2사이클이 더 필요하다는 이야기겠네요.
메모리 접근이 필요한 단계는 instruction fetch, operand addr fetch, operand fetch, operand write니까 모두 2x4=8을 더하면 되지 않을까요?
위 연산을 incop라고 이름 붙인다고 하고
예로,
0x000 incop; # instruction
0x004 0x100; # operand의 주소
0x100 0xaa; # operand
라고 하면
0x000 번지에서 instruction 읽어 오는데 4 + 2
0x004 번지에서 operand 주소 읽어 오는데 3 + 2
0x100 번지에서 읽는데 3+2
연산 하는데 3
0x100 번지에 0xab 를 저장하는데 3+2
이렇게 되겠네요.
책 본지 오래 되어서 맞는지 모르겠습니다만... 도움이 되셨기를...
정확하지 않을 수도 있지만..
기본적으로 16 사이클입니다만,
메모리 접근시 마다 2사이클이 더 필요하다는 이야기겠네요.
메모리 접근이 필요한 단계는 instruction fetch, operand addr fetch, operand fetch, operand write니까 모두 2x4=8을 더하면 되지 않을까요?
위 연산을 incop라고 이름 붙인다고 하고
예로,
0x000 incop; # instruction
0x004 0x100; # operand의 주소
0x100 0xaa; # operand
라고 하면
0x000 번지에서 instruction 읽어 오는데 4 + 2
0x004 번지에서 operand 주소 읽어 오는데 3 + 2
0x100 번지에서 읽는데 3+2
연산 하는데 3
0x100 번지에 0xab 를 저장하는데 3+2
이렇게 되겠네요.
하지만 대부분의 risc cpu처럼 명령어 내에 op가 포함된 경우라면 이야기가 다릅니다.
한번 instruction을 memory에서 가져오고 나면 이미 그 안에 op_addr이 들어 있기 때문입니다.
incop op_addr; 형식으로 32bit instruction 하나에 instruction과 op_addr이 포함 되어 있다고 할 경우,
incop fetch에 4+2
op_addr fetch에 3
op_addr에서 op fetch하는데 3+2
연산에 3
op에 결과 write하는데 3 +2
가 되겠네요.
책 본지 오래 되어서 맞는지 모르겠습니다만... 도움이 되셨기를...
안올라 가서 보충해 썼더니..
지우기는 안되나 보네요.
감사합니다..
도움 많이 되었습니다..
행복하세요..^^
==============================================
세상을 향한 외침
ogflow.tistory.com
=====
http://supaflow.tistory.com
댓글 달기