이신플러스의 달콤쌉싸름한 낙원

반응형

1. 10진수의 숫자를 2의 보수로 만들어서

계산하시오


2의 보수는 양수->음수가 된다.


계산 법은

 0을 1로 1을 0으로 ->  +1

두 숫자의 뺼샘계산은 그 후 더한 후 오버플로우는 버린다.


2.

opcode는 명령부분(어셈블리어의 첫부부분 5비트일수도 6비트일수도 있다)r형이냐 i형이냐에따라 다름


funct는 r형의 마지막 5비트부분


operand는 대상이 되는 어드레스(주소)


2(1)어셈블리어 변환

표를 참조하여 변환하면된다.


3.

comsel alu-bsel rf-cel rwe we pcsel

or     -         -         -     1     0     00

ldiu 01         10         00 1     0     00

bez -            -        -    0        0    01

addi    10    01    00    1        0    00

st    -        -        -        0       1    00

ld    -        -        01    1    0        00

add    00    00        00    1    0        00

ldi    01    01    00        1    0        00



4.서브루트화 하려면 JAL 명령을 이용하면된다.


5.256K워드의 주기억장치에대해 2K워드의 캣쉬를 설계한다. 블록사이즈는 16워드


즉, 블록사이즈는 2의 4승 캣쉬 크기는 2의 11승

N은 7 이고 M은 3이다.


전체 크기는 2의 18승 이기때문에

남은 부분은 8 즉 KEY는 8이 된다.

인덱스는 N의 숫자이므로 7이 된다.


2WAY의 경우 M은 1증가하고 N은 1감소한다.

즉 인덱스는 6이되고 KEY는 8

4WAY의 경우 M은 1증가하고 N은 1감소한다.

즉 인덱스는 5이되고 KEY는 8


6.DMA는 통상블록전송을 이용해서 많은 데이터를 전송한다.

이것은 어째서인가.

DMA(Direct Memory Access)は、この問題を解決するための方法です。まずI/Oから DMA要求を出します。CPUは受付可能であれば、DMAを許可し、バスの利用権を開 放します。I/OはCPUに代わってバスを使って、直接メモリとの間でデータを交換しま す。DMAは一度にデータを転送するブロック転送(バースト転送)に向いていて、大 規模なデータを高速に転送するのに使われます。終了後はバスを開放し、CPUに利 用権を返します。CPUのプログラムはDMAが掛かったことを知らないので、必要があ れば割り込みを掛けて知らせてやる必要があります

DMA(Direct Memory Access)는 이 문제를 해결하기 위한 방법입니다. 우선 I/O에서DMA요구를 냅니다. CPU 접수 가능하면 DMA 허용하고 버스 이용권을  습니다. I/O CPU대신 버스를 이용하, 직접 메모리와 사이에서 데이터 주고받습니다. DMA는 한번에 데이터를 전송하는 블록 전송(버스트 전송)에게 유리하며 대대규모의 데이터를 고속으로 전송하는데 쓰입니다. 끝나면 버스를 개방하고 CPU이용권을 갚겠습니다.CPU 프로그램은 DMA 걸린 것 모르므로 필요가 있레바 새치기를 걸어  할 필요가 있습니다



7.파이프라인 해저드를 3개 나열하고 원인을 간단히 설명하시오


구조 해저드, 자원이 경합해서 편향의 스테이지만 사용할수밖에없는 경우 발생

데이터해저드 데이터의 의존성에 의해 발생

컨트롤 해저드 분기명령이 원인으로 다음에 실행하는 명령의 확정이 되지 않는다.

반응형

공유하기

facebook twitter kakaoTalk kakaostory naver band
loading