SlideShare une entreprise Scribd logo
1  sur  31
Télécharger pour lire hors ligne
CODE Ch. 21
                 버스에 올라탑시다
                     chois79




13년 3월 18일 월요일
Introduction
                 •   프로세서가 컴퓨터를 구성하는 유일한 요소는 아니다.

                     •   RAM, 저장 장치등은 어떻게 연결하면 될까?


                 •   컴퓨터를 구성하는 모든 직접 회로는 회로 기판에 부착되어야 함
                     (Printed Circuit Board)
                     •   모든 IC가 하나의 회로기판에 집적되기도 함

                     •   컴퓨터를 구성하는 다양한 요소는 여러개의 기판에 나누어 두는것
                         이 효과적


                 •   버스는 이러한 기판간의 통신에 사용



13년 3월 18일 월요일
버스(Bus)
                 •   디지털 신호들의 집합으로, 컴퓨터를 구성하는 다양한 보드로 전력을 공급


                 •   주소신호

                     •   마이크로 프로세서에서 생성

                     •   RAM아니 다른 장치에 접근하기 위한 주소로 사용

                 •   데이터 출력신호

                     •   마이크로 프로세서에서 생성

                     •   RAM이나 다른 장치에 데이터를 기록할때 사용

                 •   데이터 입력 신호

                     •   다른 구성요소에 의하여 생성되며, 마이크로 프로세서가 읽어감

                 •   제어 신호

                     •   마이크로 프로세서가 컴퓨터를 동작시킬때 만들어 내는 제어 신호

                     •   ex) Clear, Write ...




13년 3월 18일 월요일
개인용 컴퓨터를 위한
                   Bus의 역사


13년 3월 18일 월요일
S-100
             초기 개인용 컴퓨터를 위한 버스
                 •   1975년, 최초의 개인용 컴퓨터인 MTS 알테어에 사용된 버스

                 •   8080칩을 위해 설계 되었으며, 주소 신호 16개, 데이터입력 신호 8개,
                     데이터 출력신호 8개, 인터럽터 신호 8개로 구성

                 •   한쪽 끝에 100핀 컨넥터를 끼울 수 있는 소켓이 달려 있음

                     •   S-100 버스를 채택한 컴퓨터는 보통 12개 정도의 소켓을 가진 마더
                         보드라 불리는 기판을 가지고 있음

                 •   8080 컴퓨터의 회로기판에는 인터럽트 처리를 위한 전용 칩인 인텔
                     80214 우선순위 기반의 인터런트 제어기(PIC) 가 포함되어 있음

                     •   PIC는 인터럽트 발생시 RST 명령을 프로세서로 전달하여, 프로세서
                         가 프로그램 카운터를 저장하고, 특정 번지로 분기할 수 있게 해 줌




13년 3월 18일 월요일
ISA
             (Industry Standard Architecture)
                 •   IBM에서 최초의 PC를 위하여 설계한 버스 규격

                 •   ISA 규격을 사용하는 확장 보드는 62핀 컨넥터를 사용

                     •   주소신호 20핀, 입/출력 8핀, 인터럽터 6핀, DMA 요청신호 3핀을 포함

                         •   DMA를 사용하는 경우에 마이크로프로세서의 도움 없이 메모리에 대한 읽
                             기와 쓰기를 직접 수행

                 •   S-100과의 차이점

                     •   S-100은 모든 구성요소가 확장보드를 통하여 부착되는 형태

                     •   IBM PC: 마이크로프로세서, 주요 지원 칩셋, RAM의 일부가 마더 보드에 위치

                 •   1984년, IBM은 16비트 마이크로프로세서인 80286을 채용한 PC-AT를 공개

                     •   ISA 버스를 확장하여 기존 컨넥터에 36핀을 추가

                         •   주소 신호 7핀, 데이터 입/출력 8핀, 인터럽터 5핀, DMA 요청신호 4핀




13년 3월 18일 월요일
ETC..
                 •   컴퓨터가 향상됨에 따라 데이터의 폭이나 주소 신호의 수가 늘
                     어나므로 버스는 확장되거나 다른 규격으로 대체되어야 함.

                 •   초기 버스들은 고속동작에 대해 고려하지 않았으므로, 정전기나
                     전파 간섭 문제가 발생할 수 있었음.

                 •   1987년 IBM은 마이크로 채널구조(MCA)를 공개

                     •   특허에 따른 라이선스 비용으로 산업계 표준이 되지 못함

                 •   1988년 IBM을 제외한 9개의 회사 협의체에서 32비트 EISA 버
                     스를 공개

                 •   최근 PC 호환 시스템의 경우 인털에서 설계한 PCI 버스를 사용



13년 3월 18일 월요일
좀 더 간단했던 1970년대
                중반으로 돌아
             컴퓨터 보드를 설계해 보자


13년 3월 18일 월요일
Memory
13년 3월 18일 월요일
1 Bit 저장을 위한
                                 Memory
                 •   주소 입력에 사용되는 비트의 수는 RAM에서 저장할 수 있는 값의 수

                     •   RAM에 저장될 수 있는 값의 수 = 2주소 입력의 수

                 •   1970년대 중반에 사용된 2012 메모리 칩




                     •   1024비트를 저장

                     •   읽기 접근 시간이 350나노초에서 1000나노초까지 존재하므로 용도에 따른 선택적 사용이 가
                         능

                     •   R/W신호: 1의 값을 가질때 읽기 동작이 수행

                         •   데이터를 기록할 경우 이 신호를 170 ~ 550 나노초 정도 0으로 만들어야 함

                     •   CS신호: 1의 값을 가지고 있을 때 칩은 선택되지 않은 상태이며, R/W 신호에 반응하지 않음




13년 3월 18일 월요일
1 Byte 저장을 위한
                              Memory
                 •   8비트 마이크로세서를 위한 메모리를 구성할때 1비트단위보다 8비트 단위로 구성

                 •   2012칩 8개를 연결해서 사용, 1024x8(1KB RAM)




                     •   S-100 기판에는 64개의 메모리 칩을 부착할 수 있음. (8KB)

                         •   여기서는 32개의 메모리칩을 사용 (4KB)

                     •   뱅크: 바이트 단위로 데이터를 저장하도록 메모리를 묶음

                         •   4KB: 8개의 칩을 하나의 뱅크로 총 4개의 뱅크로 구성됨




13년 3월 18일 월요일
메모리 주소 지정
                 •   4개의 뱅크를 가지는 4KB 크기의 메모리를 위한 16비트 메모리 주소 신호의 구성




                     •   보드 선택 신호: 어떤 메모리 보드로 주소가 공급될지를 결정

                 •   64KB 메모리 영역에서는 16개의 4K 영역으로 구성




                     •   4KB 메모리를 A000h ~ AFFFh로 사용할 경우 뱅크별 주소

                         •   1번째 뱅크: A000h ~ A3FFh

                         •   2번째 뱅크: A400h ~ A7FFh

                         •   3번째 뱅크: A800h ~ ABFFh

                         •   4번째 뱅크: AC00h ~ AFFFh




13년 3월 18일 월요일
주소지정 - 보드
                 •   4KB 메모리 보드의 경우 할당할 수 있는 주소가 변경될 가능성이 있음

                     •   변경 가능성은 딥 스위치를 이용함으로 해결




                 •   버스에서 오는 메모리 주소의 상위 4비트와 딥 스위치를 통하여 설정된 값을 비교




                     •   A13과 A15의 스위치를 닫을 경우, 이는 해당 메모리 보드의 A000h ~ AFFF까지의 메모리 영역에
                         배치한다는 의미




13년 3월 18일 월요일
주소지정 - 뱅크
                 •   보드 선택의 Equal 신호를 뱅크 선택의 입력으로 사용




                 •   16장에서 RAM에서 출력을 위해 선택기를 사용

                     •   여기서는 선택기를 사용할수 없음

                     •   일반적으로 TTL 호환 IC의 출력은 논리값 1을 표현하기 위해 2.2볼트 보다 높은 값을 사용, 0을 표현하기
                         위해 0.4 볼트보다 낮은 값을 사용

                     •   출력을 서로 연결할 경우 알수 없는 결과가 나오기 때문에 출력을 연결하지 않음

                 •   2012칩의 데이터 출력은 3상 출력을 가질 수 있음

                     •   아무일도 하지 않는 상태가 존재

                     •   CS 신호가 1인 경우 데이터 출력이 이 상태가 됨.

                 •   3상 출력을 초기 버스를 동작시키는데 필수적인 개념




13년 3월 18일 월요일
etc.
                 •   2012칩은 SRAM(Static Random Access Memory)라 알려져 있음

                     •   DRAM(Dynamic Random Access Memory)과의 차이점
                                                SRAM                DRAM

                                                                    1
                          1bit당 트랜지스터 수          4
                                                              (복잡한 주변회로 필요)

                          전원이 유지되는 동안                                 O
                                                 X
                            Refresh 동작                            (1초에 수백번)


                 •   오늘날의 컴퓨터는 대부분 보드에 메모리를 위한 소켓을 가지고 있음

                     •   SIMM(Single inline memory modules): 단면

                     •   DIMM(Dual inline memory modules): 양면



13년 3월 18일 월요일
Monitor
13년 3월 18일 월요일
영상 출력 장치
                 •   비디오 어댑터

                     •   영상 표시를 위한 신호를 제공하는 전자 장비

                     •   대부분의 경우 자체 기판을 구성하고 있어, 비디오 보드, 혹은 비디오 카드라 불림

                 •   영상 표시 장치의 구성

                     •   하나의 광선이 연속적으로 아주 빠르게 훑고 지나가면서 영상을 표시

                     •   왼쪽에서 시작해서 오른쪽으로 지나가며 오른쪽 끝에 도달하면 다음 줄의 왼쪽 끝
                         으로 이동

                     •   주사선: 왼쪽으로 돌아가는 수평 줄

                     •   수평귀선: 주사선이 주사를 마치고 다음 주사선의 앞 부분으로 되돌아가는 동작

                     •   수직귀선: 마지막 주사선의 끝에 도달하여, 왼쪽 맨 윗줄로 돌아가는 과정

                         •   미국 텔레지번 신호의 정의: 수직귀선은 1초에 60회




13년 3월 18일 월요일
영상 출력장치 -
                                텔레비전
                 •   비월 주사 방식을 사용

                     •   한장의 완전한 영상을 만들기 위해 2개의 필드 영상이 필요

                     •   각 필드 영상은 전체 화면이 가지고 있는 전체 주사선중 절반씩 가지고 있음

                     •   짝수필드(even field), 홀수필드(odd field)

                     •   수평 주사율: 수평 주사선이 그려지는 주파수를 의미, 15,750Hz

                         •   15,750Hz / 60Hz(수직귀선) = 262.4 (하나의 필드의 주사선의 수)

                         •   완전한 영상은 525줄의 주사선을 가짐

                     •   대역폭: 해당 신호의 변화에 대하여 텔레비전이 응답할수 있는 최대값

                 •   흑백 텔레비전

                     •   대역폭: 영상신호가 검정에서 백색, 다시 백색에서 검증올 변할 수 있는 속도

                         •   미국 텔레비전 방속 규격: 4.2MHz로 제한




13년 3월 18일 월요일
영상 출력장치와
                              컴퓨터의 연결
                 •   컴퓨터의 관점에서 영상은 사각 격자(픽셀)의 집합으로 보는것이 간단

                 •   영상의 대역폭은 수평 주사선에 존재할 수 있는 픽셀의 수를 제한

                     •   4.2MHz의 대역폭: 1초에 420만번씩 2 픽셀의 값을 설정

                     •   2 x 4,200,00 / 15,750 = 533( 수평 주사선당 픽셀수)

                     •   실제로는 1/3정도 영상이 끝에 걸리거나, 수평귀선 과정에 해당

                     •   따라서 실제로 수평 주사선이 가질수 있는 픽셀의 수는 320

                     •   수직 방향으로도 525 픽셀을 가질 수 없음

                         •   맨위와 맨아래가 사라지므로 적절한 픽셀수는 200

                 •   즉, 텔레비전을 사용하는 컴퓨터 시스템에서의 기본적인 비디오 어댑터의
                     해상도는 320 x 200



13년 3월 18일 월요일
문자 출력
                 •   각 문자에 8x8 격자 크기, 즉 64 픽셀을 할당

                     •   320x200 크기의 영상 표시 장치에 40문자를 25줄까지 표현

                 •   비디오 어댑터는 영상의 내용을 저장하기 위해 RAM을 필요

                     •   마이크로프로세서는 영상의 표시 내용을 변경하기 위하여 RAM에 데이터를 기록

                         •   이 RAM 영역을 마이크로 프로세서의 일반적인 메모리 영역으로 할당

                     •   비디오 어댑터를 위해 필요한 메모리양은?

                         •   40문자 25줄: 1000문자 => 1KB

                 •   비디오 어댑터는 모든 ASCII 문자에 대응하는 픽셀 형태를 만드는 문자 생성기를 가짐

                     •   일반적으로 ROM으로 구성

                     •   ROM에 ASCII문자에 해당하는 8x8 픽셀을 저장할 경우 64비트 출력 신호를 가짐

                     •   64bit 출력은 칩을 크게 만들기 때문에 10 비트 주소와 8 비트 출력을 가짐

                         •   7비트 특정 ASCII 문자, 3비트는 줄, 8비트는 픽셀 값

                 •   문자를 표현할 수 있는 비디오 어댑터는 커서를 나타낼수 있는 부분을 가짐

                     •   두개의 8비트 레지스터에 저장, 마이크로프로세스는 이 부분에 값을 기록 가능




13년 3월 18일 월요일
ETC
                 •   비디오 카드가 문자만 출력하는 것이 아닌 경우 이를 그래픽카드로 부름

                 •   그래픽카드는 훨씬 많은 메모리를 요구

                     •   320x200이고 픽셀당 1bit를 차지한다면 8000byte가 필요

                     •   만약 256색을 표현한다면, 64,000byte의 RAM이 필요

                     •   좀 더 많은 컬러를 표현하려면 픽셀당 3byte가 필요

                         •   192KB의 메모리가 필요

                         •   색상의 수 = 2픽셀에 사용된 비트의 수

                 •   1987년 IBM PS/2, 애플 매킨토시 II를 발표

                     •   640x480 해상도를 가졌으며, 이후로 PC의 표준 해상도가 됨

                 •   오늘날의 비디오 어댑터와 모니터는 다양한 해상도를 지원하는 비디오 출력모드를
                     가짐




13년 3월 18일 월요일
Keyboard
13년 3월 18일 월요일
키보드
                 •   키가 눌렸을 때 특정한 부호를 전달해 줄 수 있는 하드웨어 장치를 가지고 있어야 함

                     •   키에 대응하는 부호를 ASCII로 할 경우 실용적이지 못함

                 •   스캔코드

                     •   키보드 하드웨어에서 보내는 부호

                     •   간단한 컴퓨터 프로그램을 이용하여, 키보드에서 입력된 특정한 키 값에 해당하
                         는 ASCII 부호 값을 판단 가능

                 •   16개의 키를 가진 키보드를 가정

                     •   키보드를 눌렀을때 0000에서 1111 값을 지니는 부호 생성

                     •   오실레이터, 4비트 카운터, 2:4 디코더, 1:4 선택기로 구성


                 •


13년 3월 18일 월요일
키보드 하드웨어의 동작
                 •   4비트 카운터가 충분히 빠르게 값이 증가하여 입력된 키에 대하여 16개의 부
                     호를 모두 대입 시키는 작업을 수행

                     •   (2,2) 번째 키가 눌러졌을 경우, 카운터 출력이 0110이 되는 순간 선택기의
                         출력이 1의 값을 가짐




                 •   만일 키보드에 64개의 키가 있다면 6비트 스캔 코드가 필요




13년 3월 18일 월요일
마이크프로세서의 연계
                 •   키보드 인터페이스를 만들때는 인터럽트 신호가 유용

                     •   8080 프로세서는 수행중인 작업의 중간에 외부 장치
                         에서 끼어들 수 있도록 입력신호를 두고 있음


                 •   인터럽트가 발생할 경우 마이크로 프로세서는 메모리
                     에서 명령어를 읽어 오는 동작으로써 응답 코드를 보냄

                     •   RST 명령어 : 인터럽트를 처리할수 있는 프로그램이
                         저장되어 있는 특정한 영역으로 분기


13년 3월 18일 월요일
Storage
13년 3월 18일 월요일
천공카드
                 •   종이나 카드 보드에 구멍을 뚫는 방식


                 •   재사용이 쉽지 않음

                     •   한번 구멍을 뚫으면 메우는 것이 불가능


                 •   각 비트가 차지하는 공간이 너무 큼


                 •   이러한 이유로 자기 보존 장치가 널리 보급됨


13년 3월 18일 월요일
자기 보존 장치
                 •   1878년 미국 엔지니어인 오벌린 스미스에 의하여 이론이 설명됨

                 •   1898년 덴마크 발명가 발데마르 포울센에 의해 최초로 개발

                     •   전화를 받지 못하는 경우 전화 메시지를 녹음하기 위하여 발명

                     •   전자석과 음성에 따라 움직이는 철심의 특성을 이용하여 음성을 녹음

                         •   읽기, 쓰기에 사용되는 전자석의 자기 미디어의 형태에 관계 없이
                             “헤드”라는 이름으로 불림

                 •   1928년 오스트리아 발명가, 프리츠 플로이머가 종이에 쇳가루를 코팅한
                     형태의 종이테이프를 이용한 자기 녹음 장치에 대한 특허를 취득

                 •   이후 종이는 아세틸 셀룰로오스 기반의 좀 더 긴 소재로 교체

                     •   모든 녹음 매체중 가장 잘 알려진 매체



13년 3월 18일 월요일
테이프 및 디스크
                 •   테이프

                     •   녹음 매체를 플라스틱 케이스에 넣은 것

                     •   1950년 레밍턴 랜드사

                         •   최초의 디지털 컴퓨터에서 사용한 상용 테이프 기록 장비를 개발

                     •   테이프를 이용하는 경우 특정한 위치로 빠르게 이동하는 것이 불가능

                         •   빨리 감기나 빨리 되감기 이용

                 •   디스크

                     •   테이프보다 접근이 용이

                     •   디스크는 중심축을 기준으로 빠르게 회전하고, 바깥쪽에서 안쪽으로 이동할 수
                         있는 암에 하나 이상의 헤드가 붙어 있는 형태로 구성

                     •   디스크의 어떤 위치든 아주 빠르게 접근




13년 3월 18일 월요일
디스크 ETC.
                 •   플로피 디스크와 하드 디스크로 구분됨

                 •   플로피 디스크

                     •    보호케이스내에 한장의 코딩된 플라스틱 디스크가 들어가 있는 형태

                 •   하드 디스크

                     •    몇개의 금속 디스크가 드라이브 안에 내장되되어 있음

                     •    플로피 디스크보다 훨씬 빠르고 많은 데이터를 저장할 수 있음

                 •   트랙

                     •    디스크 내의 동심원 형태의 구역

                 •   섹터

                     •    케이크 조각을 내는 것과 같은 모양의 단위

                     •    섹터당 일정한 크기의 데이터가 저장 됨. 일반적으로 512, 요즘에는 4096

                 •   디스크는 전자적인 인터페이스와 마이크로프로세서 사이와의 연결을 위한 인터페이스를 자체적으로 가짐

                     •    SCSI, ESDI, IDE.. 모든 인터페이스는 DMA를 이용하여 직접 메모리에 접근




13년 3월 18일 월요일
저장장치 와
                            메모리의 차이
                 •   메모리는 휘발성이나 저장 장치는 휘발성이 없음

                 •   마이크로 프로세서에서 주소 신호를 출력할때 항상 메모리에 대하여
                     주소 지정이 이루어짐

                 •   저장 장치에 대해서는 주소지정이 이루이 지지 않음

                 •   마이크로프로세스가 접근하기 위해서는 디스크 저장장치에서 메모리
                     로 값을 가지고 와야 하기 때문에 추가적인 단계가 필요

                 •   일반적으로 메모리는 책상에 저장장치는 파일 캐비닛과 비교

                     •   실제로 데이터는 파일이라는 이름으로 저장

                 •   파일을 저장하고 꺼내는 것은 운영체제라 불리는 소프트웨어의 영역




13년 3월 18일 월요일

Contenu connexe

Tendances

Tendances (12)

RISC-V Introduction
RISC-V IntroductionRISC-V Introduction
RISC-V Introduction
 
System-on-Chip
System-on-ChipSystem-on-Chip
System-on-Chip
 
GUI for DRV fix in ICC2
GUI for DRV fix in ICC2GUI for DRV fix in ICC2
GUI for DRV fix in ICC2
 
Design and Implementation of an Advanced DMA Controller on AMBA-Based SoC
Design and Implementation of an Advanced DMA Controller on AMBA-Based SoCDesign and Implementation of an Advanced DMA Controller on AMBA-Based SoC
Design and Implementation of an Advanced DMA Controller on AMBA-Based SoC
 
Flip Chip technology
Flip Chip technologyFlip Chip technology
Flip Chip technology
 
Topograhical synthesis
Topograhical synthesis   Topograhical synthesis
Topograhical synthesis
 
Physical Design overview
Physical Design overviewPhysical Design overview
Physical Design overview
 
What is JTAG?
What is JTAG?What is JTAG?
What is JTAG?
 
Architecture du microprocesseur
Architecture du microprocesseurArchitecture du microprocesseur
Architecture du microprocesseur
 
Riscv 20160507-patterson
Riscv 20160507-pattersonRiscv 20160507-patterson
Riscv 20160507-patterson
 
5. DFT.pptx
5. DFT.pptx5. DFT.pptx
5. DFT.pptx
 
SOC Processors Used in SOC
SOC Processors Used in SOCSOC Processors Used in SOC
SOC Processors Used in SOC
 

En vedette

Refactoring 메소드 호출의 단순화
Refactoring 메소드 호출의 단순화Refactoring 메소드 호출의 단순화
Refactoring 메소드 호출의 단순화HyeonSeok Choi
 
Code 11 논리 게이트
Code 11 논리 게이트Code 11 논리 게이트
Code 11 논리 게이트HyeonSeok Choi
 
MiningTheSocialWeb.Ch2.Microformat
MiningTheSocialWeb.Ch2.MicroformatMiningTheSocialWeb.Ch2.Microformat
MiningTheSocialWeb.Ch2.MicroformatHyeonSeok Choi
 
Mining the social web 6
Mining the social web 6Mining the social web 6
Mining the social web 6HyeonSeok Choi
 
SICP_2.5 일반화된 연산시스템
SICP_2.5 일반화된 연산시스템SICP_2.5 일반화된 연산시스템
SICP_2.5 일반화된 연산시스템HyeonSeok Choi
 
서버인프라를지탱하는기술3_2_3
서버인프라를지탱하는기술3_2_3서버인프라를지탱하는기술3_2_3
서버인프라를지탱하는기술3_2_3HyeonSeok Choi
 
프로그래머로 사는 법 Ch14
프로그래머로 사는 법 Ch14프로그래머로 사는 법 Ch14
프로그래머로 사는 법 Ch14HyeonSeok Choi
 
Domain driven design ch1
Domain driven design ch1Domain driven design ch1
Domain driven design ch1HyeonSeok Choi
 
자바 병렬 프로그래밍 ch9
자바 병렬 프로그래밍 ch9자바 병렬 프로그래밍 ch9
자바 병렬 프로그래밍 ch9HyeonSeok Choi
 
Domain driven design ch9
Domain driven design ch9Domain driven design ch9
Domain driven design ch9HyeonSeok Choi
 
자바 병렬 프로그래밍 1&2
자바 병렬 프로그래밍 1&2자바 병렬 프로그래밍 1&2
자바 병렬 프로그래밍 1&2HyeonSeok Choi
 
컴퓨터 프로그램 구조와 해석 3.5
컴퓨터 프로그램 구조와 해석 3.5컴퓨터 프로그램 구조와 해석 3.5
컴퓨터 프로그램 구조와 해석 3.5HyeonSeok Choi
 
실무로 배우는 시스템 성능 최적화 Ch7
실무로 배우는 시스템 성능 최적화 Ch7실무로 배우는 시스템 성능 최적화 Ch7
실무로 배우는 시스템 성능 최적화 Ch7HyeonSeok Choi
 
실무로 배우는 시스템 성능 최적화 Ch6
실무로 배우는 시스템 성능 최적화 Ch6실무로 배우는 시스템 성능 최적화 Ch6
실무로 배우는 시스템 성능 최적화 Ch6HyeonSeok Choi
 
서버인프라를지탱하는기술2_1-2
서버인프라를지탱하는기술2_1-2서버인프라를지탱하는기술2_1-2
서버인프라를지탱하는기술2_1-2HyeonSeok Choi
 
HTTP 완벽가이드 16장
HTTP 완벽가이드 16장HTTP 완벽가이드 16장
HTTP 완벽가이드 16장HyeonSeok Choi
 
Abstract factory petterns
Abstract factory petternsAbstract factory petterns
Abstract factory petternsHyeonSeok Choi
 

En vedette (20)

Refactoring 메소드 호출의 단순화
Refactoring 메소드 호출의 단순화Refactoring 메소드 호출의 단순화
Refactoring 메소드 호출의 단순화
 
Code 11 논리 게이트
Code 11 논리 게이트Code 11 논리 게이트
Code 11 논리 게이트
 
MiningTheSocialWeb.Ch2.Microformat
MiningTheSocialWeb.Ch2.MicroformatMiningTheSocialWeb.Ch2.Microformat
MiningTheSocialWeb.Ch2.Microformat
 
Code1_2
Code1_2Code1_2
Code1_2
 
Mining the social web 6
Mining the social web 6Mining the social web 6
Mining the social web 6
 
SICP_2.5 일반화된 연산시스템
SICP_2.5 일반화된 연산시스템SICP_2.5 일반화된 연산시스템
SICP_2.5 일반화된 연산시스템
 
서버인프라를지탱하는기술3_2_3
서버인프라를지탱하는기술3_2_3서버인프라를지탱하는기술3_2_3
서버인프라를지탱하는기술3_2_3
 
프로그래머로 사는 법 Ch14
프로그래머로 사는 법 Ch14프로그래머로 사는 법 Ch14
프로그래머로 사는 법 Ch14
 
Domain driven design ch1
Domain driven design ch1Domain driven design ch1
Domain driven design ch1
 
자바 병렬 프로그래밍 ch9
자바 병렬 프로그래밍 ch9자바 병렬 프로그래밍 ch9
자바 병렬 프로그래밍 ch9
 
Domain driven design ch9
Domain driven design ch9Domain driven design ch9
Domain driven design ch9
 
C++ api design 품질
C++ api design 품질C++ api design 품질
C++ api design 품질
 
자바 병렬 프로그래밍 1&2
자바 병렬 프로그래밍 1&2자바 병렬 프로그래밍 1&2
자바 병렬 프로그래밍 1&2
 
컴퓨터 프로그램 구조와 해석 3.5
컴퓨터 프로그램 구조와 해석 3.5컴퓨터 프로그램 구조와 해석 3.5
컴퓨터 프로그램 구조와 해석 3.5
 
HTTPS
HTTPSHTTPS
HTTPS
 
실무로 배우는 시스템 성능 최적화 Ch7
실무로 배우는 시스템 성능 최적화 Ch7실무로 배우는 시스템 성능 최적화 Ch7
실무로 배우는 시스템 성능 최적화 Ch7
 
실무로 배우는 시스템 성능 최적화 Ch6
실무로 배우는 시스템 성능 최적화 Ch6실무로 배우는 시스템 성능 최적화 Ch6
실무로 배우는 시스템 성능 최적화 Ch6
 
서버인프라를지탱하는기술2_1-2
서버인프라를지탱하는기술2_1-2서버인프라를지탱하는기술2_1-2
서버인프라를지탱하는기술2_1-2
 
HTTP 완벽가이드 16장
HTTP 완벽가이드 16장HTTP 완벽가이드 16장
HTTP 완벽가이드 16장
 
Abstract factory petterns
Abstract factory petternsAbstract factory petterns
Abstract factory petterns
 

Similaire à CODE Ch.21 버스에 올라 탑시다

백업을 위한 USB운영체제 완료세미나
백업을 위한 USB운영체제 완료세미나백업을 위한 USB운영체제 완료세미나
백업을 위한 USB운영체제 완료세미나Daniel Shin
 
강좌 01 ARM 프로세서 개요
강좌 01 ARM 프로세서 개요강좌 01 ARM 프로세서 개요
강좌 01 ARM 프로세서 개요chcbaram
 
KGC 2014: 클라이언트 개발자를 위한 컴퓨터 네트워크 기초 배현직
KGC 2014: 클라이언트 개발자를 위한 컴퓨터 네트워크 기초 배현직KGC 2014: 클라이언트 개발자를 위한 컴퓨터 네트워크 기초 배현직
KGC 2014: 클라이언트 개발자를 위한 컴퓨터 네트워크 기초 배현직Hyunjik Bae
 
Ch22 운영체제
Ch22 운영체제Ch22 운영체제
Ch22 운영체제Kyungryul KIM
 
프로그래머가 알아야 하는 메모리 관리 기법
프로그래머가 알아야 하는 메모리 관리 기법프로그래머가 알아야 하는 메모리 관리 기법
프로그래머가 알아야 하는 메모리 관리 기법중선 곽
 
CUDA를 게임 프로젝트에 적용하기
CUDA를 게임 프로젝트에 적용하기CUDA를 게임 프로젝트에 적용하기
CUDA를 게임 프로젝트에 적용하기YEONG-CHEON YOU
 
Netmanias L2,L3 Training (5) L3 SW Architecture
Netmanias L2,L3 Training (5) L3 SW ArchitectureNetmanias L2,L3 Training (5) L3 SW Architecture
Netmanias L2,L3 Training (5) L3 SW ArchitectureChris Changmo Yoo
 

Similaire à CODE Ch.21 버스에 올라 탑시다 (10)

Main memory
Main memoryMain memory
Main memory
 
백업을 위한 USB운영체제 완료세미나
백업을 위한 USB운영체제 완료세미나백업을 위한 USB운영체제 완료세미나
백업을 위한 USB운영체제 완료세미나
 
강좌 01 ARM 프로세서 개요
강좌 01 ARM 프로세서 개요강좌 01 ARM 프로세서 개요
강좌 01 ARM 프로세서 개요
 
Mobile memory
Mobile memoryMobile memory
Mobile memory
 
KGC 2014: 클라이언트 개발자를 위한 컴퓨터 네트워크 기초 배현직
KGC 2014: 클라이언트 개발자를 위한 컴퓨터 네트워크 기초 배현직KGC 2014: 클라이언트 개발자를 위한 컴퓨터 네트워크 기초 배현직
KGC 2014: 클라이언트 개발자를 위한 컴퓨터 네트워크 기초 배현직
 
퀴즈요약
퀴즈요약퀴즈요약
퀴즈요약
 
Ch22 운영체제
Ch22 운영체제Ch22 운영체제
Ch22 운영체제
 
프로그래머가 알아야 하는 메모리 관리 기법
프로그래머가 알아야 하는 메모리 관리 기법프로그래머가 알아야 하는 메모리 관리 기법
프로그래머가 알아야 하는 메모리 관리 기법
 
CUDA를 게임 프로젝트에 적용하기
CUDA를 게임 프로젝트에 적용하기CUDA를 게임 프로젝트에 적용하기
CUDA를 게임 프로젝트에 적용하기
 
Netmanias L2,L3 Training (5) L3 SW Architecture
Netmanias L2,L3 Training (5) L3 SW ArchitectureNetmanias L2,L3 Training (5) L3 SW Architecture
Netmanias L2,L3 Training (5) L3 SW Architecture
 

Plus de HyeonSeok Choi

밑바닥부터시작하는딥러닝 Ch05
밑바닥부터시작하는딥러닝 Ch05밑바닥부터시작하는딥러닝 Ch05
밑바닥부터시작하는딥러닝 Ch05HyeonSeok Choi
 
밑바닥부터시작하는딥러닝 Ch2
밑바닥부터시작하는딥러닝 Ch2밑바닥부터시작하는딥러닝 Ch2
밑바닥부터시작하는딥러닝 Ch2HyeonSeok Choi
 
프로그래머를위한선형대수학1.2
프로그래머를위한선형대수학1.2프로그래머를위한선형대수학1.2
프로그래머를위한선형대수학1.2HyeonSeok Choi
 
알고리즘 중심의 머신러닝 가이드 Ch04
알고리즘 중심의 머신러닝 가이드 Ch04알고리즘 중심의 머신러닝 가이드 Ch04
알고리즘 중심의 머신러닝 가이드 Ch04HyeonSeok Choi
 
딥러닝 제대로시작하기 Ch04
딥러닝 제대로시작하기 Ch04딥러닝 제대로시작하기 Ch04
딥러닝 제대로시작하기 Ch04HyeonSeok Choi
 
밑바닥부터시작하는딥러닝 Ch05
밑바닥부터시작하는딥러닝 Ch05밑바닥부터시작하는딥러닝 Ch05
밑바닥부터시작하는딥러닝 Ch05HyeonSeok Choi
 
7가지 동시성 모델 - 데이터 병렬성
7가지 동시성 모델 - 데이터 병렬성7가지 동시성 모델 - 데이터 병렬성
7가지 동시성 모델 - 데이터 병렬성HyeonSeok Choi
 
7가지 동시성 모델 4장
7가지 동시성 모델 4장7가지 동시성 모델 4장
7가지 동시성 모델 4장HyeonSeok Choi
 
실무로 배우는 시스템 성능 최적화 Ch8
실무로 배우는 시스템 성능 최적화 Ch8실무로 배우는 시스템 성능 최적화 Ch8
실무로 배우는 시스템 성능 최적화 Ch8HyeonSeok Choi
 
Logstash, ElasticSearch, Kibana
Logstash, ElasticSearch, KibanaLogstash, ElasticSearch, Kibana
Logstash, ElasticSearch, KibanaHyeonSeok Choi
 
실무로배우는시스템성능최적화 Ch1
실무로배우는시스템성능최적화 Ch1실무로배우는시스템성능최적화 Ch1
실무로배우는시스템성능최적화 Ch1HyeonSeok Choi
 
HTTP 완벽가이드 21장
HTTP 완벽가이드 21장HTTP 완벽가이드 21장
HTTP 완벽가이드 21장HyeonSeok Choi
 
HTTP 완벽가이드 6장.
HTTP 완벽가이드 6장.HTTP 완벽가이드 6장.
HTTP 완벽가이드 6장.HyeonSeok Choi
 
HTTP 완벽가이드 1장.
HTTP 완벽가이드 1장.HTTP 완벽가이드 1장.
HTTP 완벽가이드 1장.HyeonSeok Choi
 

Plus de HyeonSeok Choi (20)

밑바닥부터시작하는딥러닝 Ch05
밑바닥부터시작하는딥러닝 Ch05밑바닥부터시작하는딥러닝 Ch05
밑바닥부터시작하는딥러닝 Ch05
 
밑바닥부터시작하는딥러닝 Ch2
밑바닥부터시작하는딥러닝 Ch2밑바닥부터시작하는딥러닝 Ch2
밑바닥부터시작하는딥러닝 Ch2
 
프로그래머를위한선형대수학1.2
프로그래머를위한선형대수학1.2프로그래머를위한선형대수학1.2
프로그래머를위한선형대수학1.2
 
알고리즘 중심의 머신러닝 가이드 Ch04
알고리즘 중심의 머신러닝 가이드 Ch04알고리즘 중심의 머신러닝 가이드 Ch04
알고리즘 중심의 머신러닝 가이드 Ch04
 
딥러닝 제대로시작하기 Ch04
딥러닝 제대로시작하기 Ch04딥러닝 제대로시작하기 Ch04
딥러닝 제대로시작하기 Ch04
 
밑바닥부터시작하는딥러닝 Ch05
밑바닥부터시작하는딥러닝 Ch05밑바닥부터시작하는딥러닝 Ch05
밑바닥부터시작하는딥러닝 Ch05
 
함수적 사고 2장
함수적 사고 2장함수적 사고 2장
함수적 사고 2장
 
7가지 동시성 모델 - 데이터 병렬성
7가지 동시성 모델 - 데이터 병렬성7가지 동시성 모델 - 데이터 병렬성
7가지 동시성 모델 - 데이터 병렬성
 
7가지 동시성 모델 4장
7가지 동시성 모델 4장7가지 동시성 모델 4장
7가지 동시성 모델 4장
 
Bounded Context
Bounded ContextBounded Context
Bounded Context
 
DDD Repository
DDD RepositoryDDD Repository
DDD Repository
 
DDD Start Ch#3
DDD Start Ch#3DDD Start Ch#3
DDD Start Ch#3
 
실무로 배우는 시스템 성능 최적화 Ch8
실무로 배우는 시스템 성능 최적화 Ch8실무로 배우는 시스템 성능 최적화 Ch8
실무로 배우는 시스템 성능 최적화 Ch8
 
Logstash, ElasticSearch, Kibana
Logstash, ElasticSearch, KibanaLogstash, ElasticSearch, Kibana
Logstash, ElasticSearch, Kibana
 
실무로배우는시스템성능최적화 Ch1
실무로배우는시스템성능최적화 Ch1실무로배우는시스템성능최적화 Ch1
실무로배우는시스템성능최적화 Ch1
 
HTTP 완벽가이드 21장
HTTP 완벽가이드 21장HTTP 완벽가이드 21장
HTTP 완벽가이드 21장
 
HTTP 완벽가이드 6장.
HTTP 완벽가이드 6장.HTTP 완벽가이드 6장.
HTTP 완벽가이드 6장.
 
HTTP 완벽가이드 1장.
HTTP 완벽가이드 1장.HTTP 완벽가이드 1장.
HTTP 완벽가이드 1장.
 
Cluster - spark
Cluster - sparkCluster - spark
Cluster - spark
 
Pair RDD - Spark
Pair RDD - SparkPair RDD - Spark
Pair RDD - Spark
 

CODE Ch.21 버스에 올라 탑시다

  • 1. CODE Ch. 21 버스에 올라탑시다 chois79 13년 3월 18일 월요일
  • 2. Introduction • 프로세서가 컴퓨터를 구성하는 유일한 요소는 아니다. • RAM, 저장 장치등은 어떻게 연결하면 될까? • 컴퓨터를 구성하는 모든 직접 회로는 회로 기판에 부착되어야 함 (Printed Circuit Board) • 모든 IC가 하나의 회로기판에 집적되기도 함 • 컴퓨터를 구성하는 다양한 요소는 여러개의 기판에 나누어 두는것 이 효과적 • 버스는 이러한 기판간의 통신에 사용 13년 3월 18일 월요일
  • 3. 버스(Bus) • 디지털 신호들의 집합으로, 컴퓨터를 구성하는 다양한 보드로 전력을 공급 • 주소신호 • 마이크로 프로세서에서 생성 • RAM아니 다른 장치에 접근하기 위한 주소로 사용 • 데이터 출력신호 • 마이크로 프로세서에서 생성 • RAM이나 다른 장치에 데이터를 기록할때 사용 • 데이터 입력 신호 • 다른 구성요소에 의하여 생성되며, 마이크로 프로세서가 읽어감 • 제어 신호 • 마이크로 프로세서가 컴퓨터를 동작시킬때 만들어 내는 제어 신호 • ex) Clear, Write ... 13년 3월 18일 월요일
  • 4. 개인용 컴퓨터를 위한 Bus의 역사 13년 3월 18일 월요일
  • 5. S-100 초기 개인용 컴퓨터를 위한 버스 • 1975년, 최초의 개인용 컴퓨터인 MTS 알테어에 사용된 버스 • 8080칩을 위해 설계 되었으며, 주소 신호 16개, 데이터입력 신호 8개, 데이터 출력신호 8개, 인터럽터 신호 8개로 구성 • 한쪽 끝에 100핀 컨넥터를 끼울 수 있는 소켓이 달려 있음 • S-100 버스를 채택한 컴퓨터는 보통 12개 정도의 소켓을 가진 마더 보드라 불리는 기판을 가지고 있음 • 8080 컴퓨터의 회로기판에는 인터럽트 처리를 위한 전용 칩인 인텔 80214 우선순위 기반의 인터런트 제어기(PIC) 가 포함되어 있음 • PIC는 인터럽트 발생시 RST 명령을 프로세서로 전달하여, 프로세서 가 프로그램 카운터를 저장하고, 특정 번지로 분기할 수 있게 해 줌 13년 3월 18일 월요일
  • 6. ISA (Industry Standard Architecture) • IBM에서 최초의 PC를 위하여 설계한 버스 규격 • ISA 규격을 사용하는 확장 보드는 62핀 컨넥터를 사용 • 주소신호 20핀, 입/출력 8핀, 인터럽터 6핀, DMA 요청신호 3핀을 포함 • DMA를 사용하는 경우에 마이크로프로세서의 도움 없이 메모리에 대한 읽 기와 쓰기를 직접 수행 • S-100과의 차이점 • S-100은 모든 구성요소가 확장보드를 통하여 부착되는 형태 • IBM PC: 마이크로프로세서, 주요 지원 칩셋, RAM의 일부가 마더 보드에 위치 • 1984년, IBM은 16비트 마이크로프로세서인 80286을 채용한 PC-AT를 공개 • ISA 버스를 확장하여 기존 컨넥터에 36핀을 추가 • 주소 신호 7핀, 데이터 입/출력 8핀, 인터럽터 5핀, DMA 요청신호 4핀 13년 3월 18일 월요일
  • 7. ETC.. • 컴퓨터가 향상됨에 따라 데이터의 폭이나 주소 신호의 수가 늘 어나므로 버스는 확장되거나 다른 규격으로 대체되어야 함. • 초기 버스들은 고속동작에 대해 고려하지 않았으므로, 정전기나 전파 간섭 문제가 발생할 수 있었음. • 1987년 IBM은 마이크로 채널구조(MCA)를 공개 • 특허에 따른 라이선스 비용으로 산업계 표준이 되지 못함 • 1988년 IBM을 제외한 9개의 회사 협의체에서 32비트 EISA 버 스를 공개 • 최근 PC 호환 시스템의 경우 인털에서 설계한 PCI 버스를 사용 13년 3월 18일 월요일
  • 8. 좀 더 간단했던 1970년대 중반으로 돌아 컴퓨터 보드를 설계해 보자 13년 3월 18일 월요일
  • 10. 1 Bit 저장을 위한 Memory • 주소 입력에 사용되는 비트의 수는 RAM에서 저장할 수 있는 값의 수 • RAM에 저장될 수 있는 값의 수 = 2주소 입력의 수 • 1970년대 중반에 사용된 2012 메모리 칩 • 1024비트를 저장 • 읽기 접근 시간이 350나노초에서 1000나노초까지 존재하므로 용도에 따른 선택적 사용이 가 능 • R/W신호: 1의 값을 가질때 읽기 동작이 수행 • 데이터를 기록할 경우 이 신호를 170 ~ 550 나노초 정도 0으로 만들어야 함 • CS신호: 1의 값을 가지고 있을 때 칩은 선택되지 않은 상태이며, R/W 신호에 반응하지 않음 13년 3월 18일 월요일
  • 11. 1 Byte 저장을 위한 Memory • 8비트 마이크로세서를 위한 메모리를 구성할때 1비트단위보다 8비트 단위로 구성 • 2012칩 8개를 연결해서 사용, 1024x8(1KB RAM) • S-100 기판에는 64개의 메모리 칩을 부착할 수 있음. (8KB) • 여기서는 32개의 메모리칩을 사용 (4KB) • 뱅크: 바이트 단위로 데이터를 저장하도록 메모리를 묶음 • 4KB: 8개의 칩을 하나의 뱅크로 총 4개의 뱅크로 구성됨 13년 3월 18일 월요일
  • 12. 메모리 주소 지정 • 4개의 뱅크를 가지는 4KB 크기의 메모리를 위한 16비트 메모리 주소 신호의 구성 • 보드 선택 신호: 어떤 메모리 보드로 주소가 공급될지를 결정 • 64KB 메모리 영역에서는 16개의 4K 영역으로 구성 • 4KB 메모리를 A000h ~ AFFFh로 사용할 경우 뱅크별 주소 • 1번째 뱅크: A000h ~ A3FFh • 2번째 뱅크: A400h ~ A7FFh • 3번째 뱅크: A800h ~ ABFFh • 4번째 뱅크: AC00h ~ AFFFh 13년 3월 18일 월요일
  • 13. 주소지정 - 보드 • 4KB 메모리 보드의 경우 할당할 수 있는 주소가 변경될 가능성이 있음 • 변경 가능성은 딥 스위치를 이용함으로 해결 • 버스에서 오는 메모리 주소의 상위 4비트와 딥 스위치를 통하여 설정된 값을 비교 • A13과 A15의 스위치를 닫을 경우, 이는 해당 메모리 보드의 A000h ~ AFFF까지의 메모리 영역에 배치한다는 의미 13년 3월 18일 월요일
  • 14. 주소지정 - 뱅크 • 보드 선택의 Equal 신호를 뱅크 선택의 입력으로 사용 • 16장에서 RAM에서 출력을 위해 선택기를 사용 • 여기서는 선택기를 사용할수 없음 • 일반적으로 TTL 호환 IC의 출력은 논리값 1을 표현하기 위해 2.2볼트 보다 높은 값을 사용, 0을 표현하기 위해 0.4 볼트보다 낮은 값을 사용 • 출력을 서로 연결할 경우 알수 없는 결과가 나오기 때문에 출력을 연결하지 않음 • 2012칩의 데이터 출력은 3상 출력을 가질 수 있음 • 아무일도 하지 않는 상태가 존재 • CS 신호가 1인 경우 데이터 출력이 이 상태가 됨. • 3상 출력을 초기 버스를 동작시키는데 필수적인 개념 13년 3월 18일 월요일
  • 15. etc. • 2012칩은 SRAM(Static Random Access Memory)라 알려져 있음 • DRAM(Dynamic Random Access Memory)과의 차이점 SRAM DRAM 1 1bit당 트랜지스터 수 4 (복잡한 주변회로 필요) 전원이 유지되는 동안 O X Refresh 동작 (1초에 수백번) • 오늘날의 컴퓨터는 대부분 보드에 메모리를 위한 소켓을 가지고 있음 • SIMM(Single inline memory modules): 단면 • DIMM(Dual inline memory modules): 양면 13년 3월 18일 월요일
  • 17. 영상 출력 장치 • 비디오 어댑터 • 영상 표시를 위한 신호를 제공하는 전자 장비 • 대부분의 경우 자체 기판을 구성하고 있어, 비디오 보드, 혹은 비디오 카드라 불림 • 영상 표시 장치의 구성 • 하나의 광선이 연속적으로 아주 빠르게 훑고 지나가면서 영상을 표시 • 왼쪽에서 시작해서 오른쪽으로 지나가며 오른쪽 끝에 도달하면 다음 줄의 왼쪽 끝 으로 이동 • 주사선: 왼쪽으로 돌아가는 수평 줄 • 수평귀선: 주사선이 주사를 마치고 다음 주사선의 앞 부분으로 되돌아가는 동작 • 수직귀선: 마지막 주사선의 끝에 도달하여, 왼쪽 맨 윗줄로 돌아가는 과정 • 미국 텔레지번 신호의 정의: 수직귀선은 1초에 60회 13년 3월 18일 월요일
  • 18. 영상 출력장치 - 텔레비전 • 비월 주사 방식을 사용 • 한장의 완전한 영상을 만들기 위해 2개의 필드 영상이 필요 • 각 필드 영상은 전체 화면이 가지고 있는 전체 주사선중 절반씩 가지고 있음 • 짝수필드(even field), 홀수필드(odd field) • 수평 주사율: 수평 주사선이 그려지는 주파수를 의미, 15,750Hz • 15,750Hz / 60Hz(수직귀선) = 262.4 (하나의 필드의 주사선의 수) • 완전한 영상은 525줄의 주사선을 가짐 • 대역폭: 해당 신호의 변화에 대하여 텔레비전이 응답할수 있는 최대값 • 흑백 텔레비전 • 대역폭: 영상신호가 검정에서 백색, 다시 백색에서 검증올 변할 수 있는 속도 • 미국 텔레비전 방속 규격: 4.2MHz로 제한 13년 3월 18일 월요일
  • 19. 영상 출력장치와 컴퓨터의 연결 • 컴퓨터의 관점에서 영상은 사각 격자(픽셀)의 집합으로 보는것이 간단 • 영상의 대역폭은 수평 주사선에 존재할 수 있는 픽셀의 수를 제한 • 4.2MHz의 대역폭: 1초에 420만번씩 2 픽셀의 값을 설정 • 2 x 4,200,00 / 15,750 = 533( 수평 주사선당 픽셀수) • 실제로는 1/3정도 영상이 끝에 걸리거나, 수평귀선 과정에 해당 • 따라서 실제로 수평 주사선이 가질수 있는 픽셀의 수는 320 • 수직 방향으로도 525 픽셀을 가질 수 없음 • 맨위와 맨아래가 사라지므로 적절한 픽셀수는 200 • 즉, 텔레비전을 사용하는 컴퓨터 시스템에서의 기본적인 비디오 어댑터의 해상도는 320 x 200 13년 3월 18일 월요일
  • 20. 문자 출력 • 각 문자에 8x8 격자 크기, 즉 64 픽셀을 할당 • 320x200 크기의 영상 표시 장치에 40문자를 25줄까지 표현 • 비디오 어댑터는 영상의 내용을 저장하기 위해 RAM을 필요 • 마이크로프로세서는 영상의 표시 내용을 변경하기 위하여 RAM에 데이터를 기록 • 이 RAM 영역을 마이크로 프로세서의 일반적인 메모리 영역으로 할당 • 비디오 어댑터를 위해 필요한 메모리양은? • 40문자 25줄: 1000문자 => 1KB • 비디오 어댑터는 모든 ASCII 문자에 대응하는 픽셀 형태를 만드는 문자 생성기를 가짐 • 일반적으로 ROM으로 구성 • ROM에 ASCII문자에 해당하는 8x8 픽셀을 저장할 경우 64비트 출력 신호를 가짐 • 64bit 출력은 칩을 크게 만들기 때문에 10 비트 주소와 8 비트 출력을 가짐 • 7비트 특정 ASCII 문자, 3비트는 줄, 8비트는 픽셀 값 • 문자를 표현할 수 있는 비디오 어댑터는 커서를 나타낼수 있는 부분을 가짐 • 두개의 8비트 레지스터에 저장, 마이크로프로세스는 이 부분에 값을 기록 가능 13년 3월 18일 월요일
  • 21. ETC • 비디오 카드가 문자만 출력하는 것이 아닌 경우 이를 그래픽카드로 부름 • 그래픽카드는 훨씬 많은 메모리를 요구 • 320x200이고 픽셀당 1bit를 차지한다면 8000byte가 필요 • 만약 256색을 표현한다면, 64,000byte의 RAM이 필요 • 좀 더 많은 컬러를 표현하려면 픽셀당 3byte가 필요 • 192KB의 메모리가 필요 • 색상의 수 = 2픽셀에 사용된 비트의 수 • 1987년 IBM PS/2, 애플 매킨토시 II를 발표 • 640x480 해상도를 가졌으며, 이후로 PC의 표준 해상도가 됨 • 오늘날의 비디오 어댑터와 모니터는 다양한 해상도를 지원하는 비디오 출력모드를 가짐 13년 3월 18일 월요일
  • 23. 키보드 • 키가 눌렸을 때 특정한 부호를 전달해 줄 수 있는 하드웨어 장치를 가지고 있어야 함 • 키에 대응하는 부호를 ASCII로 할 경우 실용적이지 못함 • 스캔코드 • 키보드 하드웨어에서 보내는 부호 • 간단한 컴퓨터 프로그램을 이용하여, 키보드에서 입력된 특정한 키 값에 해당하 는 ASCII 부호 값을 판단 가능 • 16개의 키를 가진 키보드를 가정 • 키보드를 눌렀을때 0000에서 1111 값을 지니는 부호 생성 • 오실레이터, 4비트 카운터, 2:4 디코더, 1:4 선택기로 구성 • 13년 3월 18일 월요일
  • 24. 키보드 하드웨어의 동작 • 4비트 카운터가 충분히 빠르게 값이 증가하여 입력된 키에 대하여 16개의 부 호를 모두 대입 시키는 작업을 수행 • (2,2) 번째 키가 눌러졌을 경우, 카운터 출력이 0110이 되는 순간 선택기의 출력이 1의 값을 가짐 • 만일 키보드에 64개의 키가 있다면 6비트 스캔 코드가 필요 13년 3월 18일 월요일
  • 25. 마이크프로세서의 연계 • 키보드 인터페이스를 만들때는 인터럽트 신호가 유용 • 8080 프로세서는 수행중인 작업의 중간에 외부 장치 에서 끼어들 수 있도록 입력신호를 두고 있음 • 인터럽트가 발생할 경우 마이크로 프로세서는 메모리 에서 명령어를 읽어 오는 동작으로써 응답 코드를 보냄 • RST 명령어 : 인터럽트를 처리할수 있는 프로그램이 저장되어 있는 특정한 영역으로 분기 13년 3월 18일 월요일
  • 27. 천공카드 • 종이나 카드 보드에 구멍을 뚫는 방식 • 재사용이 쉽지 않음 • 한번 구멍을 뚫으면 메우는 것이 불가능 • 각 비트가 차지하는 공간이 너무 큼 • 이러한 이유로 자기 보존 장치가 널리 보급됨 13년 3월 18일 월요일
  • 28. 자기 보존 장치 • 1878년 미국 엔지니어인 오벌린 스미스에 의하여 이론이 설명됨 • 1898년 덴마크 발명가 발데마르 포울센에 의해 최초로 개발 • 전화를 받지 못하는 경우 전화 메시지를 녹음하기 위하여 발명 • 전자석과 음성에 따라 움직이는 철심의 특성을 이용하여 음성을 녹음 • 읽기, 쓰기에 사용되는 전자석의 자기 미디어의 형태에 관계 없이 “헤드”라는 이름으로 불림 • 1928년 오스트리아 발명가, 프리츠 플로이머가 종이에 쇳가루를 코팅한 형태의 종이테이프를 이용한 자기 녹음 장치에 대한 특허를 취득 • 이후 종이는 아세틸 셀룰로오스 기반의 좀 더 긴 소재로 교체 • 모든 녹음 매체중 가장 잘 알려진 매체 13년 3월 18일 월요일
  • 29. 테이프 및 디스크 • 테이프 • 녹음 매체를 플라스틱 케이스에 넣은 것 • 1950년 레밍턴 랜드사 • 최초의 디지털 컴퓨터에서 사용한 상용 테이프 기록 장비를 개발 • 테이프를 이용하는 경우 특정한 위치로 빠르게 이동하는 것이 불가능 • 빨리 감기나 빨리 되감기 이용 • 디스크 • 테이프보다 접근이 용이 • 디스크는 중심축을 기준으로 빠르게 회전하고, 바깥쪽에서 안쪽으로 이동할 수 있는 암에 하나 이상의 헤드가 붙어 있는 형태로 구성 • 디스크의 어떤 위치든 아주 빠르게 접근 13년 3월 18일 월요일
  • 30. 디스크 ETC. • 플로피 디스크와 하드 디스크로 구분됨 • 플로피 디스크 • 보호케이스내에 한장의 코딩된 플라스틱 디스크가 들어가 있는 형태 • 하드 디스크 • 몇개의 금속 디스크가 드라이브 안에 내장되되어 있음 • 플로피 디스크보다 훨씬 빠르고 많은 데이터를 저장할 수 있음 • 트랙 • 디스크 내의 동심원 형태의 구역 • 섹터 • 케이크 조각을 내는 것과 같은 모양의 단위 • 섹터당 일정한 크기의 데이터가 저장 됨. 일반적으로 512, 요즘에는 4096 • 디스크는 전자적인 인터페이스와 마이크로프로세서 사이와의 연결을 위한 인터페이스를 자체적으로 가짐 • SCSI, ESDI, IDE.. 모든 인터페이스는 DMA를 이용하여 직접 메모리에 접근 13년 3월 18일 월요일
  • 31. 저장장치 와 메모리의 차이 • 메모리는 휘발성이나 저장 장치는 휘발성이 없음 • 마이크로 프로세서에서 주소 신호를 출력할때 항상 메모리에 대하여 주소 지정이 이루어짐 • 저장 장치에 대해서는 주소지정이 이루이 지지 않음 • 마이크로프로세스가 접근하기 위해서는 디스크 저장장치에서 메모리 로 값을 가지고 와야 하기 때문에 추가적인 단계가 필요 • 일반적으로 메모리는 책상에 저장장치는 파일 캐비닛과 비교 • 실제로 데이터는 파일이라는 이름으로 저장 • 파일을 저장하고 꺼내는 것은 운영체제라 불리는 소프트웨어의 영역 13년 3월 18일 월요일