• 검색 결과가 없습니다.

4.1 마이크로 오퍼레이션(Micro Operation)

N/A
N/A
Protected

Academic year: 2021

Share "4.1 마이크로 오퍼레이션(Micro Operation)"

Copied!
6
0
0

로드 중.... (전체 텍스트 보기)

전체 글

(1)

143

4 명령실행과 제어

4.1 마이크로 오퍼레이션(Micro Operation)

(1) 마이크로 오퍼레이션(동작)

0609 0509

1) 명령을 수행하기 위해 CPU 내의 레지스터와 플래그의 상태 변환을 일으키는 작업 0308 0405

2) 레지스터에 저장된 데이터에 의해서 이루어지는 동작 0109 0209 0503

3) 마이크로 오퍼레이션을 순서적으로 일어나게 하는데 필요한 신호를 제어 신호라 함 9910 0010 0106 0109 0209 0303 0405 06059906 0010 0403 0409 0505 0603

4) 마이크로 오퍼레이션은 Clock 펄스에 기준을 두고 실행 0010 0609

5) 기억장치로부터 명령어를 인출하여 해독하고, 해독된 명령어를 실행하기 위해 제어 신호를 발생시키는 각 단계의 세부 동작을 말함 0705

※ 동기 디지털 시스템에 내장되어 있는 모든 레지스터의 타이밍은 마스트 클록 발생기에 의하여 제어됨 0106 0503

(2) 마이크로 사이클 타임(Micro Cycle Time)

9904 0007 0703

1) 마이크로 오퍼레이션 수행에 필요한 시간을 마이크로 사이클 타임이라 함 2) 마이크로 사이클 타임 부여 방식

① 동기 고정식(Synchronous Fixed)

• 마이크로 오퍼레이션 중에서 수행시간이 가장 긴 것을 정의한 방식

• 수행 시간이 가장 긴 마이크로 오퍼레이션의 사이클 타임을 클럭 주기로 정함

② 동기 가변식(Synchronous Variable) 0308 07050003 0503

• 마이크로 오퍼레이션에 따라서 수행시간을 다르게 하는 것

• 각 마이크로 오퍼레이션의 사이클 타임이 현저한 차이를 나타낼 때 사용

• 중앙처리장치의 시간을 효율적으로 이용할 수 있음

• 마이크로 오퍼레이션에 대하여 서로 다른 사이클을 정의 할 수 있음

③ 비동기식(Asynchronous)

• 모든 마이크로 오퍼레이션에 대하여 서로 다른 마이크로 사이클 타임을 정의하는 방식

• 제어기가 매우 복잡해지기 때문에 실제로는 거의 사용되지 않음

|오|답|쪽|지|

마이크로 오퍼레이션에 대한 정의 및 설명 오답

✗마이크로 오퍼레이션 중에 CPU 내부의 연산 레지스터, 인덱스 레지스터 는 프로그램으로 레지스터 의 내용을 변경할 수 없음

✗컴퓨터의 빠른 계산 동작

✗플립플롭 내에서 기억되는 동작

✗2진수 계산에 쓰이는 동작

|오|답|쪽|지|

동기 가변식 동작에 대한 설명 오답

✗모든 마이크로 오퍼레이션 의 수행 시간이 유사한 경우에 사용

✗수행 시간이 가장 긴 마이크로 오퍼레이션의 사이클 타임을 클럭 주기로 정함

|오|답|쪽|지|

마이크로 사이클에 대한 내용 오답

✗마이크로 오퍼레이션 중에서 수행시간의 차이가 큰 것을 약 30개로 구분해서 사용함

✗모든 마이크로 오퍼레이션들 의 수행 시간이 유사한 경우에 유리한 방식은 동기 가변식이다.

(2)

PART 2 | 전자계산기 구조

|기|출|문|제|

0010 0609

4. 다음 중 마이크로 오퍼레이션은 어디에 기준을 두고서 실행되나?

가. Flag 나. Clock 다. Memory 라. RAM

9904 0007 0703

5. 마이크로 사이클에 대한 내용 중 가장 관계가 적은 것은?

가. 마이크로 오퍼레이션 수행에 필요한 시간을 마이크로 사이클 타임이라 한다.

나. 마이크로 오퍼레이션 중에서 수행 시간이 가 장 긴 것을 정의한 방식이 동기 고정식이다.

다. 마이크로 오퍼레이션에 따라서 수행 시간을 다르게 하는 것을 동기 가변식이라 한다.

라. 마이크로 오퍼레이션 중에서 수행시간의 차이 가 큰 것을 약 30개로 구분해서 사용한다.

0308 0705

6. 동기 가변식(Synchronous Variable) 동작에 대한 설명 중 옳지 않은 것은?

가. 각 마이크로 오퍼레이션의 사이클 타임이 현저한 차이를 나타낼 때 사용한다.

나. 모든 마이크로 오퍼레이션의 수행 시간이 유 사한 경우에 사용된다.

다. 중앙처리장치의 시간을 효율적으로 이용할 수 있다.

라. 마이크로 오퍼레이션에 대하여 서로 다른 사 이클을 정의 할 수 있다.

0609

1. 마이크로 오퍼레이션에 대한 설명 중 옳지 않은 것은?

가. 마이크로 오퍼레이션은 CPU 내의 레지스터 들과 연산장치에 의해서 이루어진다.

나. 프로그램에 의한 명령의 수행은 마이크로 오퍼레이션의 수행으로 이루어진다.

다. 마이크로 오퍼레이션 중에 CPU 내부의 연산 레지스터, 인덱스 레지스터는 프로그램으로 레지스터의 내용을 변경할 수 없다.

라. 마이크로 오퍼레이션이 실행될 때마다 CPU 내부의 상태는 변하게 된다.

0308 0405

2. 명령을 수행하기 위한 CPU의 상태 변환을 무엇이라 하는가?

가. fetch 나. program operation 다. micro operation 라. count operation

9910 0010 0106 0109 0209 0303 0405 0605

3. 마이크로 오퍼레이션을 순서적으로 발생 시키는데 필요한 것은?

가. 스위치 나. 레지스터

다. 누산기 라. 제어신호

(3)

145

4.2 메이저 스테이트

(1) 메이저 스테이트(메이저 상태, Major State)

0705

1) 중앙 처리 장치가 무엇을 하고 있는가를 나타내는 것으로서 기억 장치의 사이 클을 단위로 하여 해당 사이클 동안에 무엇을 위해 기억 장치를 접근하는가를 나타내 주는 것 0505

2) 메이저 스테이트의 변화 과정0103 0106 0209 0503 0505 0609 07039904 0005 0303 0305 0405 0409 0609 0703

3) 인출 단계(Fetch Cycle) 06030109

① 주기억장치의 지정 장소(Address)로부터 명령을 읽어서 중앙처리장치에 가지고 오는 단계 03030303 0403 0609

② 명령의 오퍼레이션(Operation)부를 명령 레지스터(Instruction Register)에 세트(Set)시켜 해독시킴

③ 다음에 실행할 명령의 기억장소(Address)를 세트(Set)시킴

④ 인스트럭션의 종류에 대한 판단이 이루어지는 상태 (명령을 읽어내는 스테이트) 0203

⑤ 인터럽트를 처리한 후 다음으로 전환해야 될 메이저 스테이트 9910 0106 0209 0405 0509

⑥ 페치(fetch)사이클에서 사용하는 것: Program counter, Memory Buffer Register, Memory Address Register

⑦ PC의 내용은 Fetch Cycle 동안에 1 증가됨 9908 0109

⑧ Fetch Cycle에서 일어나는 마이크로 오퍼레이션 0010 0203 0205 0209 0303 0505 0509 06099906 0103 0209 0509 0709

T1 : MAR ← PC PC에 있는 번지를 MAR에 전송

T2 : MBR ← M[MAR], PC ← PC+1

메모리에서 MAR이 지정하는 위치의 값을 MBR에 전송

다음에 실행할 명령의 위치를 지정하기 위해 PC 의 값을 1증가시킴

T3 : OPR ← MBR[OP], l ← MBR[I]

명령어의 Op-Code 부분을 명령 레지스터에 전송 명령어의 모드 비트를 플립플롭 I에 전송

T4 : F ← 1 또는 R ← 1

I가 0이면 F 플립플롭에 1을 전송하여 실행 사이 클로 변하고, I가 1이면 R 플립플롭에 1을 전송하 여 간접 사이클로 변함

|오|답|쪽|지|

패치 사이클(Fetch Cycle)에 대한 설명 오답

✗실제로 명령을 이행함

|오|답|쪽|지|

메이저 상태(Major State)에 대한 설명 오답

✗execute state가 끝나면 항상 fetch state로 감

✗특정한 명령에 대해서는 indirect state가 필요

✗메이저 사이클은 fetch, indirect,

execute, interrupt 과정을 반드시 수행해야 함

(4)

PART 2 | 전자계산기 구조

4) 간접 단계(Indirect Cycle)

① 인스트럭션의 수행 시 유효 주소를 구하기 위한 메이저 상태 0308

② Fetch 단계에서 해석된 명령의 주소부가 간접주소인 경우 수행됨

③ 간접 단계(Indirect cycle) 동안에 기억장치로부터 오퍼랜드(데이터)의 번지 (Address)를 인출 9910 0503 0609 07059904 9910 0503

④ 특정한 인스트럭션에 대해서는 Indirect 상태가 필요 없음 5) 실행 단계(Execute Cycle)

① 실제로 명령을 이행하는 단계

② Execute 단계에서는 Interrupt 요청신호를 나타내는 플래그 레지스터의 상태 변화를 검사하여 Interrupt 단계로 변천할 것인지 Fetch 단계로 변천할 것인지 판단함

6) 인터럽트 단계(Interrupt Cycle)

① 하드웨어로 실현되는 서브루틴의 호출이라고 볼 수 있음 0003 0503

② 인터럽트 발생 시 복귀주소(PC)를 저장시키고, 제어 순서를 인터럽트 처리 프로그램의 첫 번째 명령으로 옮기는 단계 0103

③ Interrupt Cycle에서 일어나는 마이크로 오퍼레이션 0109 0305 0503 0007

1. MBR(AD) ← PC, PC ← 0 2. MAR ← PC, PC ← PC+1 3. M ← MBR, IEN ← 0 4. F ← 0, R ← 0

(2) 주요 명령의 마이크로 오퍼레이션

1) AND

① AC(누산기) 내용과 메모리 내용을 AND(논리곱) 연산하여 결과를 AC에 저장 하는 연산 명령

② 마이크로 오퍼레이션 MAR ← MBR MBR ← M(MAR) AC ← AC AND MBR

2) ADD

① AC와 메모리의 내용을 더하여 결과를 AC에 저장하는 연산 명령

② 마이크로 오퍼레이션 0106 03080505 MAR ← MBR(ADDR)

MBR ← M(MAR) AC ← AC + MBR

3) LDA(Load to AC)

① 메모리의 내용을 AC로 가져오는 명령

② 마이크로 오퍼레이션 0209 0409 0509 0605 07059908 0603

MAR ← MBR(AD)

MBR ← M(MAR), AC ← 0 AC ← AC + MBR

(5)

147

① AC의 내용을 메모리에 저장하는 명령

② 마이크로 오퍼레이션 0203 0308 MAR ← MBR(AD)

MBR ← AC M ← MBR

5) BUN(Branch UNconditionally)

① PC에 특정한 주소를 전송하여 실행명령의 위치를 변경하는 무조건 분기 명령

② 마이크로 오퍼레이션 0405 PC ← MBR(AD)

6) BSA(Branch and Save Return Address)

복귀주소를 저장하고 부 프로그램을 호출하는 명령 7) ISZ(Increment and Skip if Zero)

① 메모리의 값을 읽고 그 값을 1 증가시킨 후 음수에서 시작한 그 값이 0이면 현재 명령을 건너 띄고 다음 명령으로 이동

② 마이크로 오퍼레이션 0205

MAR ← MBR(AD) MBR ← M

MBR ← MBR + 1

M ← MBR, IF(MBR=0) THEN (PC←PC+1)

(6)

PART 2 | 전자계산기 구조

|기|출|문|제|

0209 0409 0509 0605 0705

7. 다음의 마이크로 오퍼레이션(micro-operation)은 무엇을 수행하는 것인가?

MAR ← MBR(AD) MBR ← M, ACC ← 0 ACC ← ACC + MBR

가. store ACC 나. load to ACC 다. AND to ACC 라. ADD to ACC

0010 0203 0505

8. 다음 일련의 마이크로 오퍼레이션은 어느 사이클 인가?

T1 : MAR <- PC

T2 : MBR <- M, PC <- PC+1 T3 : OPR <- MBR(OP), I <- MBR(I) 가. FETCH CYCLE

나. EXECUTE CYCLE 다. INDIRECT CYCLE 라. INTERRUPT CYCLE

9910 0503 0609

9. 간접 사이클 동안에는 어떤 동작이 수행되는가?

가. 기억 장치로부터 명령어의 주소를 인출한다.

나. 기억 장치로부터 데이터를 인출한다.

다. 기억 장치로부터 데이터의 주소를 인출한다.

라. 기억 장치로부터 명령어를 인출한다.

0003 0503

10. 메이저 스테이트 중 하드웨어로 실현되는 서브루틴의 호출이라고 볼 수 있는 것은?

가. FETCH 스테이트 나. INDIRECT 스테이트 다. EXECUTE 스테이트 라. INTERRUPT 스테이트

0109 0305 0503

11. 인터럽트 사이클을 위한 마이크로 연산이 아닌 것은?

가. MAR←PC, PC←PC+1 나. MBR(AD)←PC, PC←0 다. M←MAR, IEN←0 라. F←0, R←0

0106 0308

12. 다음의 마이크로 오퍼레이션과 관련 있는 것은?

MAR ← MBR(ADDR) MBR ← M(MAR) EAC ← AC + MBR

가. AND 나. ADD

다. JMP 라. BSA

0609

1. 컴퓨터의 메이저 상태에 대한 설명 중 옳지 않은 것은?

가. EXECUTE 상태가 끝나면 항상 FETCH 상태로만 간다.

나. memory reference인 간접 주소 인스트럭션을 수행하기 위해서는 fetch-indirect-execute

순서로 진행되어야 한다.

다. 특정한 인스트럭션에 대해서는 INDIRECT 상태가 필요 없다.

라. FETCH 상태에서는 기억 장치에서 인스트럭 션을 읽어 중앙연산처리 장치로 가져온다.

0106 0505

2. 전자계산기의 중앙처리장치(CPU)는 4가지 단계 를 반복적으로 거치면서 동작을 행한다. 4가지 단계에 속하지 않는 것은?

가. Fetch cycle 나. Branch cycle 다. Interrupt cycle 라. Execute cycle

0503

3. 메이저 상태(major state)에 대한 설명 중 옳은 것은?

가. execute state가 끝나면 항상 fetch state로 간다.

나. 특정한 명령에 대해서는 indirect state가 필요하다.

다. 메이저 사이클은 fetch, indirect, execute, interrupt 과정을 반드시 수행해야 한다.

라. indirect state는 데이터의 유효번지를 얻기 위해 기억장치에 접근하는 상태이다.

0603

4. 컴퓨터 시스템이 작동되면 먼저 프로그램 카운터 의 초기 주소 값이 결정되고 주소에 의하여 명령 어가 기억장치로부터 읽혀지는 것을 무엇이라 하는가?

가. 인출(fetch) 나. 실행(execute) 다. 간접(indirect) 라. 인터럽트(interrupt)

9910 0106 0209 0405

5. 한 명령의 execute cycle 중에 interrupt 요청을 받아 interrupt를 처리한 후 실행되는 사이클은?

가. fetch cycle 나. indirect cycle 다. execute cycle 라. direct cycle

0205 0209 0303 0509 0609

6. 어떤 명령이 수행되기 위해 가장 우선적으로 이루어져야 하는 마이크로 오퍼레이션은?

가. MBR → IR 나. PC → MAR 다. PC + 1 → PC 라. PC → MBR

참조

관련 문서

 레지스터 간접 주소지정 방식 (register-indirect addressing mode).  변위 주소지정 방식

공정 총점검을 효율적으로 수행하기 위해서는 오퍼레이터 개개인별로 현재의 SKILL 수준을 평가하고, 목표를. 설정하여, 해당 공정의 젂문화 및

*단어 사이의 공통성과

[r]

동결방지 조치를 취하여 등을 사용하여 적절한 우려가 있는 곳은 보온재 드레인 호스 설치시 동결.

[r]

[r]

특히 오토마타의 갖가지 독창적인 움직임을 표현하기 위해서는 캠, 크랭크, 기어와 같은 기계요소를 어떤 모양과 순서로 만드는지에 따라 다양한 오토마타를 완성할