16비트 PC 아키텍처

처음으로 8086 노트를 읽었어요.
구성 개요
논리적 구성상 이렇다.

물리적으로 특정 버스 데이터 버스는 같은 신호선으로 매우 작은 구간에서 목적에 따라 전환된다.
  • 아돌레스 버스
  • 두 주소 데이터가 통과하는 버스.
  • 1MB의 스토리지 공간에서 한 바이트 또는 한 글자의 20비트 주소를 선택할 수 있습니다
  • .
  • 입출력 포트를 선택할 수 있는 16비트 주소(최대 65536 포트)
  • 데이터 버스
  • 두 데이터를 읽고 쓰기 위한 버스입니다.
  • 스토리지 읽기 또는 쓰기 데이터
  • 입출력 포트의 데이터를 읽거나 쓰기
  • 하나의 주소가 한 바이트의 설정에 대응하는 경우 사용 가능한 메모리는 최대 1MB(2^20 = 10848576바이트)
    처리 음수
    가장 높은 자리에 서면 진다.
  • 바이트 FF가 커지면 0100에서 넘침
  • 넘치는 곳을 무시하면 FF에 1을 더해 00
  • FF는 00 이하로 여겨지는 ==음수-1
  • 마찬가지로 FE는 -2FD는 -3도 성립할 수 있겠지
  • 거꾸로 계산하면 00~7F 128개와 80~FF 128개가 편하다
  • 후자는 항상 시작 비트(MSB)에 서 있기 때문이다.
  • 그럼 마이너스를 처리할 때 이 판단 시스템으로 실현하세요
  • CPU의 기본 동작
    noitman형이라면 기본적인 동작은 3단계에서 진행되며 이 순서는 계속된다.
  • 명령 읽기
  • 주소 버스에 주소 신호 등을 출력하고 메모리에 데이터를 출력할 것을 요청
  • 스토리지에서 버스로 데이터를 출력하므로 데이터 버스를 통해 가져오기
  • 명령의 해독
  • 비트 모드(조작 코드)에 할당된 명령
  • 컴퓨팅
  • 연산 결과 기반 프로그램 실행 제어
  • 연산 결과 데이터의 전송
  • 및 외부 데이터 입력 출력
  • 기타
  • 명령 실행
  • 주소 신호 등을 주소 버스에 출력하고 준비하기 요청
  • 신호를 메모리나 I/O(레지스터의 내용)로 출력
  • 판독 또는 실행 중 버스가 비어 있으면 명령을 실행하여 읽습니다.
    이 설치는 파이프라고 불린다.
    명령을 실행할 때 CPU와 구성 요소 사이의 시계가 동기화됩니다.
    시계는 수정 발진기에서 발생하는 일정한 주기의 펄스를 가리킨다.
    구조가 간단하고 번갈아'전압이 높은 상태','전압이 낮은 상태'를 만들어 낸다.
    구성 요소가 높은 상태일 때 상태가 바뀌고 낮은 상태일 때 다음 상태로 옮길 준비를 합니다.
    8MHz 동작의 CPU라면 상태의 변화(1개의 순환)가 1/8000초로 돌아갑니다.
    명령에 필요한 시계 수에 따라 다르다.
    CPU 및 메모리
    16비트 CPU에는 20개의 특정 버스에 대한 16개의 데이터 버스가 있습니다.
    주소를 지정하여 16비트 = 2 byte 를 읽거나 쓸 수 있습니다.
    8비트의 도정등만 할 수도 있다.
    이 주소 지정에서 불빛을 읽을 수 있는 단위는'word'로 정의됩니다.
    따라서 글자는 CPU의 종류에 따라 달라진다.
    그나저나 8비트 CPU는 8개의 특정 버스만 있고 메모리 용량은 최대 256KB이다.
    데이터 버스도 8개밖에 없는데 간단하게 비교하면 16비트는 8비트의 2배 데이터를 교환할 수 있기 때문에 동작이 빠르다.
    ROM 및 RAM
    ROM과 RAM은 CPU가 보기에 모두 같은 주소 버스 데이터 버스를 통해 연결된 메모리일 뿐 프로그램 실행에 있어서는 차이가 없다.하지만 ROM은 빛을 발하지 못한다.
    그나저나 ROM은 Read Only Memory, RAM은 Random Access Memory의 줄임말로 ROM도 무작위로 접근할 수 있다.
    실제 8086 CPU에서는 ROM과 RAM이 스토리지 공간에 혼합됩니다.
    일반적으로 ROM에는 BIOS가 포함되며 처리 시스템에 따라 BASIC 해석기가 포함됩니다.
    8086 CPU가 전원을 켜거나 재설정할 때 읽기 시작하는 스토리지 주소는 FFF0 이후이므로 ROM이 할당됩니다.
    또 인터럽트 탐지기는 0~3FF에 분배되지만 읽기와 쓰기가 가능한 램이 분배된다.
    일반적으로 높은 주소 영역을 ROM으로 설정하고 낮은 쪽을 RAM으로 설정하는 처리 시스템이 비교적 많으며 MS-DOS도 이 처리 시스템의 제작을 가정한 것이다.
    8086의 소프트웨어가 풍부해지면서 메모리 카드가 1M의 상한선에 있으면 메모리 은행 전환 기술을 발명했다.
    이것은 벡터표와 ROM 이외의 주소 공간을 그룹 공간으로 지정하고 프로그래밍 가능한 스위치를 통해 데이터 버스의 연결 목적지를 전환시켜 제한을 초과한다.
    프로그래밍 가능한 스위치는 비 방글라데시 공간에 약간의 구역을 남긴다.
    이렇게 함으로써 논리적으로 처리할 수 있는 공간을 늘렸다.CPU에서 볼 수 없는 은행도'배후 은행'으로 불리는 것 같다.
    I/O
    8086 입출력 주소 버스는 16비트 버스이므로 최대 65536 포트를 사용할 수 있습니다.
    이용 버스는 특설버스 20개 중 하위 16개다.
    메모리 주소인지 입출력 주소인지 신호가 주소와 함께 출력되는지 구분하기 때문에 이 신호를 바탕으로 하드웨어로 신호의 목적지를 전환한다.
    CPU에 따라 이 방식이 아닌 입출력 포트에 주소 범위를 고정적으로 할당하여 구분하는 경우가 있습니다.68k 시리즈의 경우 이 방법을 채택했다.

    좋은 웹페이지 즐겨찾기