CHAPTER 11 시스템 버스 (SYSTEM BUS). 버스란 ? 2  버스  컴퓨터의 컴포넌트 사이에 정보를 전송하기 위해, 전기적 신호가 지나가는 라인들의 집합  Data bus  Address bus  Control bus  내부 버스와 외부 버스 (

Slides:



Advertisements
Similar presentations
Embedded System 2009 년 11 월 16 일 Embedded Computer1 ● Hardware 와 Software 가 조합되어 특정한 복적을 수행하는 시스템 ● 특정한 기능을 수행하도록 Micro Processor 와 I/O Device 를 내장하며,
Advertisements

1 08 시스템 구성도 고려사항 * 웹 서버 클러스터 구성  클러스터 구축은 ㈜ 클루닉스의 Encluster 로 구축 (KT 인증,IT 인증 획득, 실제 클러스터 구축 사이트 200 여곳 )  웹 서버 클러스터는 Dynamic, Static, Image.
2 3 t h K o r e a O p e r a t i n g S y s t e m S e m i n a r 8259A 를 아는가 ??? 2 3 t h K o r e a O p e r a t i n g S y s t e m S e m i n a r.
Big Data & Hadoop. 1. Data Type by Sectors Expected Value using Big Data.
전산팀 업무보고 ► 보고일 :2016 년 5 월 24 일 ( 화 ) 1. PC 세부사양서 구분세부사양수량 ( 대 ) PC 제조사 : 삼성, HP ( 조립 PC 제외 ) 운영체제 : Windows 7 Pro 64bit 이상 CPU : Intel i5 6 세대 3.2Ghz(
1)RACK 2)UPS 3)P D U 장치 4)Server Group 5)KVM Switch 7)UPS 를 위한 HUB 6) RACK Monitor.
Mother board Informations for Physics. Mother Board (Main Board) Mother Board (Main Board) Chipset Chipset Slot Slot CPU & CPU Pen CPU & CPU Pen Master.
Using Telephone and Cable Networks
컴퓨터와 인터넷.
컴퓨터 운영체제의 역사 손용범.
PC정비사 2급(필기) 제6강 기타 주변장치 예상문제.
                                  9장 컴퓨터 기반 데이터 수집의 기초.
Ch 2. 하드웨어 환경.
11 시스템 버스 IT CookBook, 컴퓨터 구조와 원리 2.0.
네트워크 기술을 통한 현재와 미래 소개.
BUS 설명서 (PC BUS, SYSTEM BUS)
6장 마이크로프로세서 메모리 및 입출력장치 인터페이스.
13장. 시스템 버스 다루는 내용 시스템 버스의 개념 다중버스 계층 구조 버스 중재.
인공지능실험실 석사 2학기 이희재 TCP/IP Socket Programming… 제 11장 프로세스간 통신 인공지능실험실 석사 2학기 이희재
Data Communications 제 7 장 기기간의 접속규격.
(목) 초등 ICT 교육 방법론 2013년 봄학기 허 민 오
제7장 버스와 입출력.
연결리스트(linked list).
실험 8. 연산증폭기 특성 목적 연산증폭기의 개관, 특성 및 사용법 이해 입력저항, 개루프 이득, 출력저항, 슬루레이트 등
램( RAM ) 램의 개념 램 선택법 듀얼채널의 의미.
UNIT 06 JTAG Debugger 로봇 SW 교육원 조용수.
컴퓨터 구조.
UNIT 07 Memory Map 로봇 SW 교육원 조용수.
Lecture #9 제7장 시스템 버스, I/O 및 인터럽트.
11 장 LAN 기본 개념과 Ethernet LAN
10 장 데이터 링크 제어(Data Link Control)
DK-128 실습 EEPROM 제어 아이티즌 기술연구소
타이머카운터 사용법 휴먼네트웍스 기술연구소
4. LAN의 배선체계 (3장. LAN: Local Area Network)
마이크로컨트롤러, 마이크로컨트롤러 보드 마이크로컨트롤러 보드 = 마이크로컨트롤러 +  마이크로컨트롤러 마이크로컨트롤러 보드.
버스(BUS) 컴퓨터 내부의 고속도로가 바로 버스이다.
17장 X.25 패킷 교환망 17.1 X.25 계층 17.2 X.25와 관련된 기타 프로토콜 17.3 요약.
메인보드(main board) 대전직업전문학교 Carpe diem!!.
WOL(Wake-On Lan) 컴퓨터공학과 4학년 박기웅.
디지털회로설계 (15주차) 17. 시프트 레지스터와 카운터 18. 멀티바이브레이터 * RAM & ROM.
디 지 털 공 학 한국폴리텍V대학.
플랫폼의 개념 클럭, 버스, 대역폭의 의미 64비트 PC
UNIT 07 Memory Map 로봇 SW 교육원 조용수.
논리회로 설계 및 실험 5주차.
DK-128 실습 내부 EEPROM 제어 아이티즌 기술연구소 김태성 연구원
DK-128 실습 타이머카운터 사용법 아이티즌 기술연구소
6. 레지스터와 카운터.
13장 CTC and DMA Slide 1 (of 10).
ARM Development Suite v1.2
10 장 데이터 링크 제어(Data Link Control)
UNIT 25 SPI 로봇 SW 교육원 조용수.
10 장 데이터 링크 제어(Data Link Control)
ATmega128의 특징 아이티즌 기술연구소
네트워크 환경 구축과 이미지 전송 호스트/타겟 통신 직렬 통신을 이용한 이미지 전송 수퍼 데몬 BOOTP 환경 구축
Teaming pms.
모바일인터넷기초 전산정보학부 모바일인터넷과 권 춘 우
LAN의 구성요소 학습내용 서버 클라이언트 NIC(Network Interface Card) 전송매체
ATX Main Board.
DK-128 직렬통신 실습 아이티즌 기술연구소
AT MEGA 128 기초와 응용 I 기본적인 구조.
UNIT 25 SPI 로봇 SW 교육원 조용수.
컴퓨터구조 연습문제 발표 Chapter 3 - 컴퓨터의 기능 및 상호연결의 최상위 관점
논리회로 설계 및 실험 4주차.
시리얼 UART 정리 정보통신•컴퓨터 공학부 송명규
MIDP 네트워크 프로그래밍 ps lab 김윤경.
13장. 시스템 버스 다루는 내용 시스템 버스의 개념 다중버스 계층 구조 버스 중재.
버스와 메모리 전송 버스 시스템 레지스터와 레지스터들 사이의 정보 전송을 위한 경로
Progress Seminar 양승만.
ARP.
소리가 작으면 이어폰 사용 권장!.
Presentation transcript:

CHAPTER 11 시스템 버스 (SYSTEM BUS)

버스란 ? 2  버스  컴퓨터의 컴포넌트 사이에 정보를 전송하기 위해, 전기적 신호가 지나가는 라인들의 집합  Data bus  Address bus  Control bus  내부 버스와 외부 버스 ( 책과 위키피디어의 관점 다름 )  내부 버스 (internal bus) 메모리 버스, 시스템 버스, Front-side bus, 로칼 버스로 불림 컴퓨터의 내부 구성 요소들을 연결하는 버스 CPU, memory, 디스크, 모니터 등  외부 버스 (external bus) 컴퓨터에 외부 장치를 연결하기 위한 버스 확장 버스 (expansion bus), 프린터, 모뎀 등을 연결  병렬 버스와 직렬 버스  병렬 버스 : 여러 라인으로 동시에 여러 비트의 정보 전송 동기를 맞추어 작동하는 회로에서 사용 (synchronous circuits) 데이터 전송 속도가 증가할 수록, 주고 받는 두 요소 간에 클럭이 도달하는 시간이 달라서 생기는 clock skew(timing skew), 전 력 소모량 증가, 신호 간섭, 병렬 라인 사이의 혼선 (cross talk) 으로 고속화 하기 힘듬  직렬 버스 : 한번에 한 비트씩 clock skew, cross talk 가 근본적으로 없기 때문에, 고속 전송에 적합 USB, Serial ATA, FireWire 대부분의 최신 직렬 버스는 daisy chain 방식이나 hub 방식

computer add on cards 를 위한 bus standard 의 진화 3 ISA MCA EISA VESA Local PCIPCI-express 이들은 모두 컴퓨터의 기본 요소, CPU, memory, I/O device 등을 연결하는 시스템 버스이며, 메인보 드에 장착될 카드를 위해 설계됨 , 486PC 1991 IBM XT/AT 8086, ~1996(?) 486PC 1993 Pentium PC 1987~1990 년대 중반 PS/ Pentium PC

ISA(Industry Standard Architecture) 버스  IBM PC/XT/AT 에 사용된 버스 체계 (AT bus 라고도 불림 )  CPU 의 신호 라인들을 직접 주변 장치들과 연결하기 위한 버스 체계  1981 년 개발된 버스 체계  CPU 클럭과 동기화 (4.77, 8 Mhz), 8~16 bit 데이터 전송  표준 확장 슬롯에 플러그인 (plug-in card) 또는 board 삽입  현재의 PC 의 주기판에서도 ISA 버스 슬롯 지원  상업용 / 군용으로 개발된 ISA 카드 지원을 위해 4 CPU (8088, 80286) Memory Interrupt controller DMA controller address(20bit~24bit), data(8~16 비트 ), control lines 확장 슬롯 IBM XT/AT 컴퓨터에 사용된 버스 ISA 버스

EISA (Extended Industry Standard Architecture) 버스  규격  16 비트의 ISA 버스를 32 비트로 확장한 버스 규격  IBM 의 트레이트 마크인 ISA 의 권리를 침해하지 않기 위 해 EISA 로 이름 붙임  32 비트 데이터버스, 32 비트 주소선  8.33Mhz 의 클럭 32 비트 버스 체계이므로 8.33*4 = 약 33MB/sec, 실제 20MB/sec 멀티프로세서 가능, 버스 마스트링 가능, 주로 SCSI 어댑터나 네트워크 어댑터  누가, 언제  1988 년, IBM PC/AT 호환기종을 만드는 gang of nine 으로 불리는 9 개의 회사 컨소시엄에서 개발 AST Research, Compaq computer( 주도 ), Epson, HP, NEC, Olivetti, Tandy, WYSE, Zenith  IBM 에서는 ISA 버스를 확장한 MCA(micro channel architecture) 버스를 가진 새로운 PC 인 PS2 개발  왜 ?  CPU 에 10, 12, 16MHz 의 고속 클럭에 ISA 버스에 연결된 느린 장치들이 부적합, 불안정 결국 장치를 연결하는 버스의 클럭을 CPU 클럭과 분리 을 장착한 386 PC 와 함께 gang of nine( 컴팩이 주도 ) 이 EISA 버스 체계 개발 을 장착한 PC 에서 처음으로 EISA 버스 선보임 5

VESA (Video Electronics Standards Association) local bus  규격  VLB, VL bus, 112 개의 신호 체계  CPU 의 클럭 주파수 (33MHz) 그대로 활용  32 bit  memory-mapped I/O 와 DMA ISA - port-mapped I/O, I/O 포트의 주소로 입출력 장치를 인식하고 통신  언제  1992 년도  왜  1990 년대 초반, ISA 버스의 I/O bandwidth 문제로 PC 의 그래픽의 병목현상 발생 (GUI 발 달 )  여러 회사들이 자체 로칼 버스를 메인보드에 구현. 그래픽 카드가 직접 메인 메모리 접 근, 추후 VLB 표준으로 발전  VLB 의 목적은 고성능 그래픽을 위한 로칼 버스 하드 디스크 등 mass storage 도 덩달아 급성장  문제  80486CPU 의 메모리 설계에 종속. Pentium CPU 에서는 거의 사용할 수 없게 됨 6

7

PCI(Peripheral Component Interconnect) 버스 8  규격  PCI local bus(local computer bus) 컴퓨터에 하드웨어 장치들을 덧붙이는 버스  특정 CPU 에 종속적이지 않음  장치들은 CPU 버스에 직접 연결된 것처럼 동작  PCI 장치 구성 평면 장치 (planer device) : 메인 보드에 칩으로 장착 확장 카드 형식 : 확장 슬롯에 카드로 장작  주소버스와 데이터 버스는 신호를 공유 시분할 다중화  적은 신호선 32 비트 PCI : 62 개의 신호 체계 64 비트 PCI :  32 bit, 64 bit, 33.33MHz, 32 비트 PCI 경우 최대 133MB/s(33.33x32)  CPU  bridge  PCI bus  Bus mastering 지원 : CPU 와 독자적으로 작업 처리  누가, 왜  Intel, 1993 년  CPU 에 종속적이지 않은 버스 구조 필요. 고속 병렬 버스 필요  Bus mastering 지원 : CPU 와 독자적으로 작업 처리

PCI 버스와 PCI Bridge 9

PCI Express (Peripheral Component Interconnect Express)  규격  PCIe 로 표기  고속 직렬 버스 확장 버스 표준 병렬 라인의 timing skew 문제 해결 ( 라인들이 다른 PCB 판에 배치될 때 발생 ) 을 위해,  PCI, PCI-X, AGP 버스 표준 대체 PCI : shared parallel bus architecture PCI 호스트와 모든 장치들이 버스 공유 PCIe: point-to-point 연결 (topology) 방식 가장 최신 PCI Express 4.0  16GT/sec(Gigatransfers per second) GT 를 사용하는 이유 : 각 transfer 는 overhead bits 를 포함하기 때문 직렬 통신 시에 8 비트 전송을 위해 실제 10 비트 전송  누가, 왜  2004 년부터, Intel, Dell, HP, IBM  VLB 이후 고속 그래픽에 사용된 AGP 버스를 대체함 10

11 PCIe 버스에 노드의 연결. root complex 는 CPU 를 대신해 서 장치에 작업 요청을 내린다. CPUMem 독립된 직렬 (serial) 링크 bridge ( 하나의 PCI 장치 ) PCI bridge 는 연결된 PCI 장치들을 검색하고 PCI-to-PCI 사 이의 장치들을 연결 공유 버스 구조 point-to-point 연결 구조

버스의 폭과 대역폭  대역폭  단위 시간당 전송 가능한 데이터 양  bus clock cycle 에 의해 결정  예 ) 50ns  20 MHz, bus width = 64 bit Bandwidth = 8 byte / (50 × sec) = 160 [Mbytes/sec] 12

시스템 버스란 ? 13  정의  Computer system 의 구성 장치들을 연결하고 교환할 각종 정보들을 전송하는 공유 전송 매체

버스의 유형별 분류  전용 버스  오직 한 목적으로만 사용됨  다중화 버스  하나의 신호 혹은 버스를 여러 목적으로 사용  버스 선의 수를 줄이기 위한 목적 공간과 비용 절약 주로 시분할 다중화 (time multiplexing) 제어 회로 복잡, 성능 저하 가능성  사례 주소와 데이터 신호를 하나의 버스로 다중화 14

시스템 버스의 기능별 분류 15  Data bus  Address bus  Control bus

제어 버스의 신호 사례 16  Memory read/write  I/O read/write  Transfer acknowledge  Bus request/grant/busy  arbitration bus  Interrupt request/acknowledge  interrupt bus  Clock  Reset

System Bus (4) 17  기본 동작  Write operation Bus master 사용권 획득 Address bus 를 통해 address 전달 + data bus 에 data 전달 + control bus 에 write signal 전달  Read operation Bus master 사용권 획득 Address bus 를 통해 address 전달 + control bus 에 read signal 전달 Wait data transfer

동기식 버스와 비동기식 버스  버스 타이밍에 의한 구분  두 요소간의 정보 전송을 위해  동기식 버스 (Synchronous bus)  시스템 버스의 공통 버스 클럭 (common bus clock) 사용  시스템 버스에 연결된 모든 하드웨어 요소들에 공통적 사용  장점 회로 구성 단순 일반적으로 고속 전송 가능  단점 가장 느린 연산 혹은 동작을 기준으로 버스 타이밍 설계되므로 어떤 경우에 불필요한 대기 시간 존재 공통 클럭을 발생시키는 소스에서 클럭이 도달하는 장치들의 거리가 다르기 때문에 장치들 사이에 clock skew 발생. -> 클럭을 일정 이상 고속화하지 못함.  사례 : Intel CPU  비동기식 버스 (Asynchronous bus)  공통 클럭 없음, hand shaking 방식  버스에 연결된 장치들의 속도가 모두 다른 경우에 적합 느린 장치 때문에 동기식 버스에서 발생하는 낭비되는 시간은 없음  주로 느린 장치에 이용  장점 공통 클럭이 없으므로 느린 장치에 대한 낭비 시간 없음  단점 회로 구성 복잡  사례 : Motorola MC 동기식 버스는 모든 사람들이 종 소리를 들으면서 작업하는 예. 다음 종이 울리기 전에 작업 완료 필요. 그러나 종이 울리는 간격이 짧아지면, 멀리 있는 사람은 종소리를 늦게 될 가 능성.

Synchronous Bus Timing 19  CPU 와 Memory 사례

Asynchronous Bus Timing 20

다중 버스 계층 구조 21  다중 버스 계층 구조의 목 적  시스템 버스에 연결되는 장 치의 동작 속도가 서로 다 름, 효율적인 연결이 되도 록 버스 구조 설계  단일 버스  하나의 버스를 모두 컴퓨터 구성 요소들 공유  한 번에 하나의 전송 밖에 할 수 없음. 동시에 여러 전 송 불가 버스 병목 발생 가능성 높음  버스의 속도를 증가하기 힘 듬. 느린 장치 때문  구성 비용 저렴

22 2-layer multiple bus

3-layer multiple-bus Hierarchy 23

24

버스 중재 (Bus Arbitration) 25  버스 마스터 (bus master)  버스에 연결되어 버스를 주도적으로 사용할 수 있는 하드웨어 구성 요소 initiate bus transaction  버스 제어, 주소와 제어 정보를 버스에 흘린다.  CPU, DMA Controller  버스 슬레이브 (bus slave)  버스 마스터와 데이터를 주고 받는 상대 구성 요소  메모리, 캐시 입출력 장치  버스에서의 데이터 입출력  버스 마스터가 버스에 원하는 신호를 전송하면 버스 슬레이브가 응답하여 데이터 입출 력 진행  Bus contention  버스 중재 (Bus arbitration)  왜 ? 하나의 버스에 버스 마스터가 2 개 이상인 경우, 서로 버스를 사용하려고 하는 경우 중재 필요 하나의 버스를 사용하려는 두 개 이상의 버스 마스터가 있는 경우 중재를 통해 하나의 버스 마스 터에게 버스 사용권 허락

중앙 집중식 버스 중재 26  버스 중재기 (Arbiter) 이용하는 방법 중앙 집중 병렬식, 고정 우선 순위 중재 중앙 집중 직렬 (Daisy chain) 중재        

분산식 버스 중재 27  버스 마스터가 버스 중재기를 독립적으로 소유한 형태  버스 마스터의 우선 순위와 연계됨 더 높은 우선 순위의 버스 마스터가 버스를 사용하지 않을 때만 버스 사용 신청 각능  동작 과정 각 버스 마스터는 BREQ 를 발생시킨다. BGNT 가 수신되면 버스 마스터는 BBUSY 신호를 발생시켜 버스 사용 중임을 알린다.

Bus Arbitration (10) 28  Decentralized serial arbitration DBGNT (daisy-chained bus grant signal)

폴링 29  하드웨어 폴링  버스 중재기가 버스 마스터가 검사 (polling)  n 개의 폴링선 -> 2 n 개의 코드로 2 n 개의 버스 마스터 지정 가능  방식 버스 마스터가 폴링 선을 이용하여 1 에서 2 n 까지 버스 필요한지 폴링 버스가 필요한 버스 마스터는 BREQ 신호 발생 버스 사용권이 허락되고 BBUSY 활성