컨트롤러 및 설계 및 구현
중앙 처리 장치 CPU의 기능 및 구조
중앙 처리 장치의 기능 :
- 프로그램은 순서가 지정된 명령 모음이며 프로그램 작동 프로세스는 기본적으로
指从程序首地址开始,连续自动的处理指令序列,直到程序最后一条指令
- 저장된 프로그램의 관점에서 중앙 처리 장치의 기능은 다음과 같습니다.
实现连续自动的处理存储于主存储器的指令序列
- 프로그램의 명령어는 컴퓨터가 데이터를 전송 및 계산하거나 다음 명령어의 주소를 표시하는 데만 사용됩니다.
중앙 처리 장치의 작업
- 모든 명령어 처리는 명령어 가져 오기와 명령어 실행의 두 단계로 나눌 수 있습니다. 프로그램 동작은 명령어를 계속 가져 와서 끝까지 주기적으로 명령어를 실행하는 것입니다.
- 2 개의 작업 가져 오기 :
- 1. 현재 처리 할 명령 코드를 메인 메모리에서 CPU 레지스터로 가져옵니다.
- 2. 메모리에서 처리 할 다음 명령어의 위치를 순차적으로 형성
- 명령 실행의 세 가지 작업 :
- 1. 명령 기능 및 주소 지정 특성 분석 :
- 명령어는 바이너리를 사용하여 기능적 특성 및 피연산자 저장 위치의 형성 방법을 나타냅니다.
- 2. 제어 신호 시퀀스를 생성합니다.
- 컨트롤러는 명령 연산 코드 및 주소 코드 분석을 기반으로 제어 신호 시퀀스를 생성 및 전송하고,이 명령의 연산 코드를 분석하고, 명령의 기능적 특성을 식별하고, 주소 코드의 주소 지정 특성을 분석합니다. 소스 피연산자 및 대상 연산을 얻기위한 명령어 식별 물리적 위치
- 피연산자의 유효 주소는 주 메모리 저장 장치 주소, CPU 레지스터 번호, I / O 장치 포트 주소가 될 수 있습니다.
- 전송 대상의 유효 주소는 주 메모리 저장 장치의 주소 만 될 수 있습니다.
- 3. 기능 실행 및 명령어의 주소 지정 특성
- 1. 명령 기능 및 주소 지정 특성 분석 :
CPU의 다섯 가지 작업
- 명령 제어 :
CPU的首要任务。按程序规定的顺序处理指令,并自动从主存储器中取到CPU的寄存器中
- 작동 제어 : 메인 메모리에서 가져온 명령 코드에 따라 제어 신호 그룹이 생성되고 다른 제어 신호가 해당 구성 요소로 전송되어 명령의 기능 및 주소 지정 특성에 따라 작동하도록 제어합니다.
- 시간 제어 : 명령을 가져오고 실행하는 두 단계에는 엄격한 시간 요구 사항이 있습니다.
- 데이터 처리 : 데이터 및 테스트 프로그램 실행 상태에 대한 산술 및 논리 연산 수행
- 인터럽트 요청 처리 : 인터럽트 요청 처리를 제어하는 것은 CPU의 중요한 작업입니다.
중앙 처리 장치의 구조 모델
CPU 레지스터
- 일반적으로 사용되는 CPU 레지스터의 구성 :
- 일반 레지스터 GR : 일반적으로 원시 데이터 및 계산 결과를 저장하는 데 사용됩니다.
- 누산기 AC : 누산 레지스터. 일반적으로 ALU 작업의 결과 정보를 저장하는 데 사용됩니다.
- 명령 레지스터 IR : 현재 처리중인 코드를 일시적으로 저장하는 데 사용됩니다.
- 데이터 버퍼 레지스터 MDR : CPU와 현재 전송중인 메인 메모리 또는 IO 장치 간의 정보 교환을 일시적으로 저장하는 데 사용됩니다.
指令字或数据字
- 지시어 : 메인 스토리지에서 CPU에서 단방향 읽기
- 데이터 워드 : CPU가 주 메모리 또는 IO 장치에서 양방향으로 읽고 CPU가 주 메모리 또는 IO 장치에 씁니다.
- MDR의 두 가지 기능 :
- 경로 전송 : MDR을 통한 일대 다 또는 다 대일 경로 선택을위한 데이터 버퍼링
- 속도 보상 : CPU와 메인 메모리 또는 IO 디바이스는 정보 전송 속도 차이가 있습니다 .MDR을 통해 CPU와 메인 메모리 또는 IO 디바이스는 서로를 기다리지 않고 독립적으로 정보를 전송할 수 있습니다.
- 주소 버퍼 레지스터 MAR : CPU가 주 저장 장치 또는 IO 장치와 정보를 교환 할 때 현재 전송중인 명령어 또는 데이터 단어를 임시 저장하는 데 사용됩니다.
单元地址或端口地址
- 프로그램 상태 레지스터 PSWR : 현재 실행중인 프로그램의 상태 단어를 임시 저장
CPU의 주요 성능 지표
- 단어 길이 : 산술 단위가 동시에 처리 할 수있는 이진 데이터의 비트 수를 나타냅니다.
- 주요 주파수 : CPU 작동 주파수
- 온칩 캐시 용량 : CPU 속도 향상에 중요한 역할
- 주소 버스의 너비 : CPU 주소 핀 라인의 수는 CPU가 액세스 할 수있는 최대 물리적 주소 공간을 결정합니다.
- 데이터 버스의 너비 : CPU가 외부와 교환하는 이진 숫자의 비트 수를 결정하는 Cpu 데이터 핀의 라인 수.
컨트롤러의 기능과 구조
- 컨트롤러의 기능적 작업
- 명령 흐름 제어
- 명령 읽기 제어 : 메인 메모리에서 CPU 레지스터로 명령 코드 읽기
- 명령 주소 형성 : 주 메모리에 다음 명령의 주소를 자동으로 형성
- 명령 실행 제어
- 명령 기능 인식
- 주소 계산 형성
- 포인터 읽기 제어
- 데이터 읽기 제어
- 데이터 저장 제어
- 데이터 처리 제어
- 인터럽트 처리 제어
- 인터럽트 요청 선택
- 프로그램 일시 중지 제어
- 프로그램 전송 제어
1. 명령 읽기, 포인터 읽기, 데이터 읽기, 데이터 저장, 데이터 처리, 프로그램 일시 중지 및 프로그램 전송은 컨트롤러에 의해 제어
控制型任务
됩니다. 제어 작업은 제어 장치가 제어 신호 시퀀스를 생성하기 만하면됩니다 .2. 명령 주소 형성, 명령 기능 인식, 주소 계산 형성, 인터럽트 요청 선택은工作性任务
컨트롤러 자체에서 실행되는 컨트롤러입니다. - 명령 흐름 제어
컨트롤러의 구조
- 명령어 전처리 구성 요소
- 프로그램 카운터 PC
- 명령 디코더 ID : 별도의 운영 코드 및 주소 코드
- 주소 형성 논리
- 타이밍 신호 생성기 : 일반적으로 응답 방법은 시퀀스의 비동기 연결을 달성하기 위해 각 명령의 처리 시간을 지정하는 데 사용되므로 실행 시간을 지정하려면 타이밍 신호가 필요합니다.
- 제어 신호 시퀀스 생성기 : 다양한 기능 요구 사항을 충족하는 제어 신호 시퀀스 생성
- 인터럽트 제어 로직 : 비정상 조건에 대한 대기열 선택, 인터럽트 요청 신호 생성 및 제어 신호 시퀀스 생성기로 전송
제어 신호 시퀀스 생성기의 실현 방법
- 하드 스텝 라인 제어
- 마이크로 프로그램 컨트롤러
- 게이트 어레이 컨트롤러
명령 처리를위한 데이터 경로 마이크로 작업 및 마이크로 명령
명령 처리 흐름 및 상태 변경
- 명령 처리의 일반적인 흐름 :
- 명령어 가져 오기
- 지시 읽기
- 명령 주소 형성
- 지침 실행
- 명령 기능 인식
- 주소 계산 형성
- 포인터 읽기
- 데이터 읽기
- 기능 구현
- 데이터 보존
- 명령어 가져 오기
- 주소 계산이 이루어진 후 네 가지 판단이 이루어집니다.
- 1. 간접 주소 지정? 아니오, 두 번째 판단으로 전달, 그렇다면 포인터 읽기로 전달하고, 간접 주소가 끝날 때까지 1을 계속하여 피연산자 주소를 얻습니다.
- 2. 소스 피연산자에 외부 액세스가 필요합니까? (즉 메모리 또는 IO) 필요하지 않은 경우 3으로 이동하고 데이터를 읽으려면 3으로 이동하십시오.
- 3. RS 형이든 SS 형 전송 명령이든 가능하다면 4 번으로, 그렇지 않다면 4 번으로 기능 구현 후
- 4. 대상 피연산자에 외부 액세스가 필요합니까? 필요하지 않은 경우 명령 처리를 종료하고 필요한 경우 저장 데이터로 전송하고 명령 처리를 종료합니다.
확장 : 2 장의 명령어 형식 및 명령어 기능 분류
- 이진 연산의 경우 두 주소 (명령어의 주소 코드 필드에는 두 개의 주소 코드 OP + Ad1 + Ad2가 포함되고 Ad1은 결과 피연산자 주소와 다른 소스 피연산자의 주소이며 Ad2는 소스 피연산자 주소 임) 명령어, 소스 피연산자에 저장된 다양한 물리적 저장소 구성 요소에 따라 명령어 형식은 세 가지 유형으로 나눌 수 있습니다.
- SS 메모리 메모리 유형 : 2 개의 소스 피연산자는 주 메모리에서 가져오고 2 개의 주소 코드는 메모리의 저장 단위를 나타냅니다.
- RR 레지스터 레지스터 유형 : 2 개의 소스 피연산자는 일반 레지스터에서, 2 개의 주소 코드는 일반 레지스터의 번호를 나타냅니다.
- RS 레지스터 메모리 유형 : ...
명령 처리의 데이터 경로 및 마이크로 작업
- 주소 코딩 : 슬레이브 컨트롤러-> 메모리, IO
- 명령 코드 : 메모리-> 컨트롤러
- 데이터 인코딩 : 메모리, IO-> 산술 단위 또는 역방향
- 데이터 경로 : 기능 구성 요소간에 정보가 교환 될 때 정보 전달 경로가 정보 경로로 형성됩니다.
명령 읽기 : (주소 코딩, 명령 코딩)
- 주소 데이터 경로 :
PC-MAR-ABUS-M
- 명령 데이터 경로 :
M-DBUS-MDR-IR-ID-CU
포인터 읽기 : (주소 코딩, 포인터 코딩)
- 주소 데이터 경로 :
IR-MAR-ABUS-M
(첫 번째 간접 주소 지정) 또는MDR-MAR-ABUS-M
(다시 간접 주소 지정) - 포인터 데이터 경로 :
M-DBUS-MDR
또는M-DBUS-MDR-PC
(간접 주소 지정 전송 명령)
데이터 읽기 : (주소 코딩 및 데이터 코딩)
- 주소 데이터 경로 :
IR-MAR-ABUS-M
(직접 주소 지정, 상대 주소 지정, 인덱스 주소 지정) 또는MDR-MAR-ABUS-M
(간접 주소 지정) - 데이터 경로 :
M-DBUS-MDR-AC
(GR 범용 레지스터) 또는M-DBUS-MDR
(M에 소스 피연산자가있는 작동 명령어)
기능 구현
- 산술 명령은 산술 단위의 내부 전송을 실현합니다.
- 데이터 데이터 경로는 다음
AC(GR/IR(Ad))-ALUX-ALU-JPCL-AC(GR){RR指令}
중 하나AC(GR/IR(Ad))-ALUX-ALU-JPCL-MDR{RS指令}
또는MDR-ALUX-ALU-JPCL-AC(GR){SR指令}
또는입니다.MDR-ALUX-ALU-JPCL-MDR{SS指令}
- 데이터 데이터 경로는 다음
- RR 전송 유형 명령은 연산 장치 또는 컨트롤러의 내부 전송을 연산 장치로 실현합니다.
- 컨트롤러의 내부 전송을 실현하기위한 전송 지침
데이터 보존
- 주소 데이터 경로와 데이터 읽기 상태가 동일합니다.
- 데이터 데이터 경로 :
JPCL-MDR-DBUS-M
(대상 피연산자가 M 연산 명령에 있음) 또는AC(GR)-MDR-DBUS-M
(RS 전송 명령)
마이크로 명령 및 마이크로 작업과의 관계
마이크로 작동 개념 :
- 개념 : 명령 처리 흐름에서 CPU가 제어하거나 구현하는 분할 할 수없는 구성 요소 또는 장치 작업입니다.
- 마이크로 오퍼레이션은 컴포넌트 또는 디바이스의 동작입니다. 디바이스와 컴포넌트의 특성이 다르기 때문에 일부 컴포넌트 또는 디바이스는 제어 신호 시퀀서의 제어 신호를 구현해야합니다. 따라서 마이크로 오퍼레이션은 하드 마이크로로 구분됩니다. 작동 및 부드러운 마이크로 작동
- 하드 마이크로 작동 : 제어 신호 시퀀서의 기능과 관련이 없음
- 부드러운 마이크로 작동
- 운영 효율성에 따라 미세 작업도 전송과 처리로 나눌 수 있습니다.
- 이동성 : 데이터 경로 생성에 사용
- 가공성 : 규정 된 정보 처리 방법에 대한 조치
부드러운 마이크로 작동
-
제어 신호 시퀀서에 의해 생성 된 제어는 미세 작동을 실현합니다.
控制信号称为微命令
- 마이크로 명령은 제어 신호 시퀀스에서 가장 작은 단위입니다. 하나의 마이크로 명령은 하나 이상의 마이크로 명령에 해당합니다.
-
마이크로 작업 처리 :
- 하드 마이크로 작업 : ID 디코딩, 타이밍 신호 생성, 제어 신호 시퀀스 생성
- 소프트 및 마이크로 동작 : PC + △, ALU 동작 다양 (±, OR 등)
-
전 이적 마이크로 작업의 경우 :
- 하드 마이크로 작업 : 구성 요소 내 정보 전송, IR-> ID (내부 컨트롤러), ALU-> JPCL (산술 장치의 내부 전송)
- 부드럽고 미세한 작동 : 나머지, IR-> AC (계산기 및 컨트롤러)
-
제어 부분, 실행 부분
- 제어 구성 요소 : 컨트롤러
- 실행 구성 요소 : 산술 단위, 메모리, IO
-
제어 부분과 실행 부분은 제어 라인을 통해 정방향과 역방향의 두 가지 기능 관계를 실현합니다.
- 긍정적 인 동작 : 제어 구성 요소는 제어 라인을 통해 실행 구성 요소에 다양한 제어 신호, 즉 마이크로 명령을 전송하고, 실행 구성 요소는 마이크로 명령을 수신 한 후 미세 작업 인 동작을 생성합니다.
- 역효과 : 실행 부분은 제어 라인을 통해 제어 부분에 결과 상태를 보냅니다.
1 예
- 특정 CPU 구조가 6-10에 표시된 경우 SHR I 31 (오른쪽 이동, 간접 주소 지정, 주소) 명령에 필요한 제어 신호를 제공합니다.
- 이 명령어는 4 가지 상태 작업을 포함합니다 : 명령어 읽기, 포인터 읽기, 함수 구현 및 데이터 저장
- 명령을 읽는 데 필요한 제어 신호에는 전송 및 처리가 포함됩니다. 전송의
PCout、MARin、Read、MDRin、MDRout、IRin
경우 처리를위한 제어 신호에는 다음이 포함됩니다.PC+1
- 포인터를 읽는 데 필요한 제어 신호에는 전송 만 포함됩니다.
IR(Add)out、MARin、Read、MDRin
- 기능 구현에 필요한 제어 신호에는 처리, 즉
SHR
- 데이터를 저장하는 데 필요한 제어 신호에는 전송 된 데이터 만 포함됩니다.
MDRout、 MARin、 ACout、 MDRPin 、MDRout
시간 순서 신호 시스템 및 제어 실현
명령주기 및 시간 분할
-
명령주기 : CPU가 명령을 처리하는 데 필요한 총 시간
-
기계주기 (CPU주기, 상태주기) : 명령 흐름에서 상태 유지 시간 또는 두 상태 전환 사이의 시간 간격
명령주기는 종종 여러 기계 주기로 표시됩니다.
- 명령 처리 흐름에는 5 가지 상태가 포함됩니다.
- 1. 지침 읽기
- 2. 포인터 읽기
- 3. 데이터 읽기
- 4. 기능 구현
- 5. 데이터 저장
- 기계주기에는 5 가지 유형이 있습니다.
- 1. 가져 오기주기
- 2. 인터 디지털주기
- 3. 액세스주기
- 4. 구현주기 (실행주기)
- 5. 입금주기
1. 다양한 기계 사이클의 작업 작업은 해당 상태 작업에 의해 지정됩니다
2. 인터럽트 제어는 CPU의 작업 상태이기도합니다. 따라서 CPU의 관점에서 볼 때 5 개의 사이클 외에도 CPU는 6 가지 종류의 기계 사이클을
가지므로 CPU의 동작 속도는 메인 메모리보다 훨씬 빠르며 대부분의 명령 실행 사이클의 상태 동작은 하나의 액세스 사이클 내에서 완료 될 수 있습니다. , 액세스주기는 일반적으로 기계주기의 길이를 보정하는 데 사용됩니다.
- 명령어 사이클이 구성되는 최대 기계 사이클 수는 피연산자의 주소 지정 모드뿐만 아니라 간접 주소의 수 및 구현 사이클의 기계 사이클과도 관련이 있습니다.
비트 및 클록 사이클
- 머신 사이클의 기간은 여러 기간으로 나눌 필요가 있으며 각 기간은 마이크로 연산 또는 병렬 마이크로 연산 그룹을 수행합니다.
- 비트 : 마이크로 작업 또는 병렬 마이크로 작업 그룹을 수행하는 시간
클럭주기는 컴퓨터에서 가장 작은 시간 단위입니다.
마이크로 연산은 명령 처리 흐름에서 나눌 수없는 원자 연산이고 비트는 명령주기에서 나눌 수없는 원자 시간주기입니다. 비트는 여러 클럭을 사용합니다.
8086 CPU를 나타내는 사이클입니다 . 머신 사이클은 4 개의 기본 클록 사이클 T1-T4로 표시되며 대기 클록 사이클 TW는 T3-T4 사이에 삽입 될 수 있습니다.
명령어 사이클의 블록 다이어그램 표현 (4 가지 명령어 흐름)
단일 버스 모델 머신에 기반한 논리적 구조
- 단일 버스 모델 기계의 특징 :
- ALU / PC / GR 및 기타 구성 요소는 CPU 내부의 칩 버스를 통해 연결됩니다.
- 시스템 버스를 통해 CPU 외부의 CPU / M / IO 장치 및 기타 구성 요소를 연결합니다.
- 여러 구성 요소와 장치가 동시에 버스에서 데이터를 수신 할 수 있지만 한 번에 하나의 구성 요소 만 데이터를 버스로 보낼 수 있습니다.
- 32 개의 마이크로 명령이 있습니다.
- 21 개의 전송 마이크로 작업
- 11 개의 마이크로 작업 처리
컨트롤러 타이밍 제어 (CPU 제어)
- 타이밍 제어 개념 :
- 상태 연산 시퀀스를 실행하기 위해 명령어 사이클에서 사용되는 머신 사이클 수, 마이크로 연산 시퀀스를 실행하기 위해 머신 사이클에서 사용되는 비트 수, 실행하기 위해 하나 또는 그룹의 마이크로 연산에서 사용되는 클럭 사이클 수
- 시간 보정 제어 방법과 다른 기계주기 미세 동작 시퀀스 실행의 시퀀스 연결을 말합니다.
- 세 가지 방법
同步控制(集中控制中央控制)
- 개념 : 모든 마이크로 작업 및 상태 작업은 통합 타이밍 (고정 타이밍 제어)에 의해 제어됩니다.
- 세 가지 구현 계획
- 고정 길이 기계주기 : 다양한 기계주기에 포함 된 비트 수가 고정됩니다.
- 무한주기의 기계주기 연장
- 흩어진 비트 및 가변 기계 사이클
- 장단점 : 간단하고 제어하기 쉽지만 효율성이 낮음
异步控制:(分散控制局部控制)
- 개념 : 마이크로 작업 및 상태 작업은 균일 한 타이밍을 사용하지 않습니다.
- 방법 : 응답 모드를 통해 "종료 시작"신호를 통해 이전 작업의 종료 신호는 다음 작업 신호의 시작 신호입니다
- 장단점 : 상태 작업에 필요한만큼의 비트를 사용하고 마이크로 작업에 필요한만큼의 클럭을 사용합니다. 유휴 클럭과 유휴 비트의 낭비가 없습니다. 높은 작업 효율성, 빠른 명령 처리 속도, 복잡한 제어 구현하기 어렵다
联合控制
- CPU의 내부 마이크로 작동 및 상태 작동은 동기 제어를 채택하고 외부는 비동기를 사용합니다.
- 대부분의 명령의 기능적 작업은 동일한 기계주기에서 실행되도록 예약되어 있으며 너무 길거나 짧아서 결정하기에는 비동기 적입니다.
- 동기 기반의 비동기
예
-
마이크로 프로세서 CPU의 주 주파수가 8MHZ라고 가정 할 때 클럭 사이클은 몇 마이크로 초입니까? 각 머신주기에 4 개의 클럭주기가 포함 된 경우 CPU 처리 명령의 평균 속도는 0.8MIPS입니다. 물어보기:
- 1. 평균 명령주기 (마이크로 초)는 얼마입니까? 평균적으로 얼마나 많은 기계 사이클이 포함되어 있습니까?
- 2. 마이크로 프로세서 클럭 사이클이 0.4μs로 변경되면 MIPS에서 명령 처리의 평균 속도는 얼마입니까?
- 3. 평균 처리 명령 속도가 400,000 회 / 초가되어야한다면 마이크로 프로세서의 주 주파수는 얼마입니까?
-
答案
: -
클럭주기 = 1 / f = 1 / (8 * 10 ^ 6) = 0.125μs
-
1. 평균 명령주기 : 1 / (0.8 10 ^ 6) = 1.25μs 평균 기계주기 : 1.25 / (4 0.125) = 2.5
- 따라서 명령주기는 2.5 개의 기계주기를 가지며 기계주기는 4 개의 클럭주기를 갖습니다.
-
2. 평균 속도 : 1 / (2.5 4 0.4) = 0.25 strips / μs = 0.25 MIPS
-
3. 0.4 * 10 6 = 1 / (2.5 * 4 * T), T = 0.25 * 10 -6 (s), 주요 주파수는 1 / T = 4MHZ입니다
-
解析:
1. 주 주파수의 역수는 클럭주기
입니다. 2.
3.주기는 초당 초 수, 빈도는 초당 몇 번
4. 평균 명령 속도 : 1 초에 처리되는 명령 수, 평균 명령주기는 평균 명령 속도의 역수입니다. . MIPS는 s이고 마지막으로 마이크로 초로 변환 된 값은 * 10 ^ 6입니다
. 5. MIPS :百万条/s
---------- ie条/μs
Microinstruction 및 기본 형식
Microinstruction과 그 마이크로 사이클
- 마이크로 지침 :
- 개념 : 특정 시간 단위에 유효한 여러 마이크로 명령 모음을 나타냅니다.
- 일반적으로 마이크로 인스트럭션을 읽는 시간은 이전 마이크로 인스트럭션의 실행에 숨겨져 있습니다 .T4 비트에서는 마이크로 인스트럭션 작업과 다음 마이크로 인스트럭션이 병렬로 읽 힙니다.
마이크로 명령의 호환성 및 상호 배제
- 호환성 : 동시에 유효하도록 허용 된 마이크로 명령을 호환성이라고하며 마이크로 명령은 상호 배타적입니다.
마이크로 명령 (제어 신호)은 이진수이고 1은 유효하며 0은 유효하지 않습니다.
마이크로 명령의 기본 형식
- 마이크로 동작 제어 영역 + 시퀀스 제어 영역
- 마이크로 작업 제어 영역 :
- 마이크로 작업을 수행하기위한 마이크로 명령에 해당하는 제어 신호를 설명합니다.
- 시퀀스 제어 도메인 :
- 마이크로 명령어가 처리 된 후 다음 마이크로 명령어의 주소를 설명합니다.
- 시퀀스와 점프도 2 개의 필드로 나뉘 기 때문에
- 테스트 플래그 필드 및 마이크로 주소 필드
테스트가 설정되면 점프를 실현하기 위해 주어진 마이크로 주소를 변경해야합니다. 그렇지 않으면 주어진 마이크로 주소가 다음 마이크로 명령어의 주소입니다.
기계 명령 마이크로 프로그램과 마이크로 명령의 관계
- 명령어 프로그램 주소는 내부 메모리와 관련이 있습니다.
- Microinstruction 마이크로 프로그램은 주소 및 제어 메모리와 관련이 있습니다.
- 기계 명령어는 마이크로 프로그램에 해당하며이 마이크로 프로그램은 여러 마이크로 명령어 시퀀스로 구성됩니다.
- 기계 명령어는 여러 개의 마이크로 연산으로 나뉘고 여러 개의 마이크로 연산은 하나의 마이크로 명령어로 제어됩니다. 모든 마이크로 명령어를 함께 마이크로 프로그램이라고하는데, 이는 전체 머신 명령어에 해당합니다.
마이크로 명령의 코딩 방법
- 비트 직접 방법 : 1은 유효 함을 의미하고 0은 유효하지 않음, 디코딩없이 더 빠른 속도
- 균일 한 인코딩 방법 : 모든 이진수를 함께 인코딩하고 마지막으로 디코더를 통해 유효한 1-2 만 표시
- 세그먼트 코딩 방법 : 직접 코딩과 통합 코딩 결합
- 직접 분할
- 부분적 간접 : 지시 간의 제한 관계 강화
- 하이브리드 코딩 방법 : 비트 직접 + 세그먼트 직접
- 스킬 코딩 방법 (상수 필드 제어 방법) :
마이크로 명령어 형식의 유형
- 수평 마이크로 명령어 : 1 비트는 1에 해당하며 종종 비트 직접, 분할 및 혼합을 사용하여 병렬 작동을 용이하게합니다.
- 수직 마이크로 명령어 : 상호 배타적 인 통합 코딩 방법 사용
- 수직 유형에는 기계 지침과 같은 여러 분류가 있습니다.
-
전송 유형
- 마이크로 오퍼레이션 도메인 제어 형식 :
微操作码+原编址+目的编址+读写等附加信息
- 마이크로 오퍼레이션 도메인 제어 형식 :
-
운영
- 마이크로 오퍼레이션 도메인 제어 형식 :
微操作码+左输入编址+右输入编址+移位等附加信息
- 마이크로 오퍼레이션 도메인 제어 형식 :
-
시프트 유형
- 마이크로 오퍼레이션 도메인 제어 형식 :
微操作码+寄存器编址+移位次数+移位方式等附加信息
- 마이크로 오퍼레이션 도메인 제어 형식 :
-
전송 유형
- 마이크로 오퍼레이션 도메인 제어 형식 :
微操作码+转移目标微地址+测试条件等附加信息
- 마이크로 오퍼레이션 도메인 제어 형식 :
-
- 수직 유형에는 기계 지침과 같은 여러 분류가 있습니다.
수 평형과 수직 형의 비교
- 높은 병렬 작동 능력 및 고효율
- 레벨은 전송을 위해 동시에 여러 채널을 제어 할 수 있습니다.
- 짧은 수평 실행 시간과 긴 수직 시간
- 수직 디코딩
- 수평 마이크로 명령어는 길고 마이크로 프로그램은 짧고 수직은 반대입니다.
- 수평 사용자는 마스터하기가 더 어렵고 수직 사용자는 더 좋습니다.
마이크로 프로그램 설계의 기본 요구 사항
- 작은 용량의 제어 메모리
- 마이크로 명령의 빠른 실행
- 마이크로 명령 및 마이크로 프로그램은 수정하기 쉽고 유연합니다.