'CPU'에 해당되는 글 1건


하드웨어의 구성


- 2와 3을 덧셈한다고 한다면 ?

1.하드에있는 실행파일을 메모리에 로드
2.레지스터에 덧셈/2/3 저장
3. 컨트롤유닛이 덧셈이라는 명령을 해석
4. 컨트롤 유닛이 ALU에게 덧셈을 명령
5. ALU는 레지스터에 저장된 2와 3을 덧셈함

'구성요소들'

CPU : 중앙처리장치, 연산담당

    -ALU :  cpu내부에 실제 연산을 담당하는 블록
    
    -컨트롤유닛 : 바이너리 코드를 해석하여 명령어(add,div...등)를 알고 ALU에게    
       그에  따른 일을 시키는 장치
    
    -레지스터 :  cpu연산할때 필요한 데이터가 저장되는곳 이게없다면 cpu가 연산도        중 들어온 데이터를 처리할수없음 또한 데이터 용도에따라 나뉘는게 일반적
    
    -버스 인터페이스 : 입출력 통신방식을 이해하고 그에따라 맞는 통신을 하기위한         장치 ,cpu뿐만아니라 I/O버스와 연결되는 디바이스들은 모두 인터페이스가 필요

메모리(램) : 프로그램이 실행될때 로드되는곳

입출력버스 :  데이터를 주고받기위해 사용되는 경로
    
메모리와 cpu사이에서의 버스
    데이터버스: 데이터값을 받아온다
    어드레스 버스: 데이터를 읽거나 쓸때 해당하는 물리주소를 전달한다.
    컨트롤 버스: cpu가 원하는 바를 메모리에 전달할때 사용
    ex) a와 b를 더해서 c에쓸때:
    데이터 버스 : Add(명령) , a(숫자) , b(숫자)
    어드레스 버스 : c의주소값
    컨트롤 버스 : write
    이런식일것같다.

-클럭신호란?

한번에 클럭신호가 주어지면 디바이스들은 연산을 한번 진행한다. 클럭속도가 너무빠를경우 데이터 손실이 일어난다.

 초당 10번 동작할수있는 A와 초당 5번 동작할수있는 B가있다고하자.
클럭속도를 초당 10으로 맞추면 A가 2번동작할때 B는 한번동작한다.
B가 A가처리한 데이터를 가지고 연산한다면 데이터손실이 일어날것이다.
(A는 두개보냈는데 B는 하나만연산함)
따라서 클럭속도를 느린 장치에 맞추는것이 일반적이다.

블로그 이미지

pringlee

하드코어보단 캐주얼!

,