라벨이 #컴퓨터구조인 게시물 표시

[전자계산기구조] 연관메모리

[전자계산기구조] 연관메모리 =연관 기억장치(Associative Memory) CPU가 찾고자하는 주기억장치 메모리가 캐시 메모리 어디에 있는지 빠르게 검색할 수 있게 사용하는 메모리 CAM(Content Addressable Memory)라고 부릅니다. 매핑 테이블을 사용합니다. 외부 인자와 내용을 비교하기 위한 병렬 판독 회로가 필요 하여 추가적인 비용을 요구합니다. 연관기억장치는 기억장치에서 자료를 찾을 때 주소에 의해 접근하지 않고, 기억된 내용의 일부를 이용하여 Access할 수 있는 기억장치 특징 주소에 의해서만 접근이 가능한 기억장치보다 정보 검색이 신속하다. 캐시 메모리나 가상 메모리 관리 기법에서 사용하는 Mapping Table에 사용된다. 외부의 인자와 내용을 비교하기 위한 병렬 판독 논리회로를 갖고 있기 때문에 하드웨어 비용이 증가한다. 출처 http://ehpub.co.kr/tag/%EC%97%B0%EA%B4%80-%EB%A9%94%EB%AA%A8%EB%A6%AC/ https://devkim93.tistory.com/entry/%EC%97%B0%EA%B4%80%EA%B8%B0%EC%96%B5%EC%9E%A5%EC%B9%98-%EB%B3%B5%EC%88%98-%EB%AA%A8%EB%93%88-%EA%B8%B0%EC%96%B5%EC%9E%A5%EC%B9%98

[컴퓨터구조] 캐시 메모리(CACHE)와 매핑 방법 & 일관성

이미지
[컴퓨터구조] 캐시 메모리(CACHE)와 매핑 방법 & 일관성 Cache Memory 빠른 CPU, 느린 Memory 프로그램을 CPU 혼자서 수행하는 것이 아니라 메모리도 같이 참여한다. 용량은 Cache < Main Memory < HDD 순이며 속도는 역순이다. CPU와 메인 메모리 사이에 캐시 메모리를 두어 CPU가 요청하는 것은 빠른 캐시 메모리에서 바로 전달을 해주면서 속도를 개선하였다. 그리고 HDD의 일부를 가상메모리로 사용해서 메모리의 부족한 용량을 확장시켜주며 가격은 메인 메모리 전체를 캐시로 바꾸는 것, 메인메모리의 용량을 키우는 것보다 저렴한 고객 맞춤 서비스가 완성되었다. 이러한 성능 개선의 비결은 참조의 지역성 이라는 성질 덕분에 발생했다. Mapping Function 주소가 다르잖아? CPU가 메모리 주소를 사용하여 메모리로 데이터를 받으려고 한다. 하지만 CPU가 쓰는 주소는 가상 메모리 주소로 메모리 입장에서는 외계어이다. 따라서 중간에 메모리 관리 장치(MMU)가 가운데에서 변역을 하여 메모리가 알아 먹을 수 있는 물리 주소로 변환해 준다. 그리고 캐시에 해당 주소에 대한 데이터가 있는지 확인을 하는데 캐시에 데이터를 저장하는 방식에 따라 물리주소를 다르게 해석할 수 있다. 직접 매핑(Direct Mapping) 우선 메인 메모리에서 캐시로 데이터를 저장할 때 참조의 지역성 때문에 한번 퍼낼 때 인접한 곳까지 한꺼번에 캐시 메모리에 저장하고 이 때 단위를 블록(Block)이라고 한다. 그리고 캐쉬는 메인 메모리의 몇번째 블록인지를 알려주는 태그(Tag) 도 함께 저장한다. 메모리 주소 중에 가장 뒷부분(붉은색)은 블럭의 크기 를 의미한다. 지금 블럭의 크기가 4이므로 뒤의 두자리를 사용하여 블럭의 크기를 표현하였다. 그리고 이 영역은 블럭에 몇 번째에 원하는 데이터가 있는지 보여주는 지표가 되어 준다. 만일 위의...

[컴퓨터네트워크] MAC주소 & 유니캐스트 & 브로드캐스트 & 멀티 캐스트 & 애니캐스트

이미지
[컴퓨터네트워크] MAC주소 & 유니캐스트 & 브로드캐스트 & 멀티 캐스트 & 애니캐스트 네트워크 상에서 서로를 구분하기 위하여 Device마다 할당된 물리적 주소를 말합니다. 인터넷이 가능한 장비(PC, 휴대폰 등)들이 가지고 있는 물리적인 주소라고 생각하면 어렵지 않습니다. MAC주소는 12자리 숫자로 구성되어 있으며 숫자중 앞의 6자리(24bit)는 벤더(제품제조사)에 할당되며 나머지 6자리(24bit)는 각 벤더에서 제품에 할당합니다. 컴퓨터에 장착되 랜(LAN)카드를 구별하기 위해 만들어진 식별 번호입니다.(소프트웨어 대신 하드웨어에 연결되어 있기 때문에 실제 주소라고도 합니다.) 통신을 위해서는 MAC주소를 알아야 합니다. IP주소로 MAC주소를 알기 위해서는 IP주소를 MAC으로 바꾸는 ARP(Address Resolution Protocol)과정이 필요합니다. 네트워크 통신 방식에 따른 구분으로 유니캐스트 / 브로드캐스트 / 멀티캐스트를 알아보자 유니캐스트 출발지와 목적지가 정확해야 하는 일대일 통신입니다. MAC <=> MAC 받는입장에서 자신의 MAC과 비교하여 동일하지 않으면 해당 통신을 받지 않기 때문에 CPU 성능을 저하시키지 않습니다. 자신과 비교하여 동일하면 CPU로 해당프레임을 올려서 통신할 수 있습니다. 송신 노드 하나가 수신노드 하나에 데이터를 전송하는 일대일 방식 브로드캐스트 같은 네트워크에 있는 모든 장비들에게 보내는 통신입니다. 아파트 관리사무소 방송 같은 것으로 이해하면 쉬운데 듣고 싶은 방송만 듣는게 아니듯이, 해당 네트워크에 있는 PC들이 신호를 받고 싶던 말던 무조건 받게 됩니다. (자신의 MAC과 비교해서 동일하지 않으면 통신하지 않는 유니캐스트와 차이) 이렇게 무조건 받다보니 나에게 필요한정보인지 확인하는 과정에서 CPU를 사용하게 됩니다. 때문에 과도한 브로드캐스트는 네트워크 및 PC 성능을 떨어뜨릴 ...

[컴퓨터구조] RISC, CISC 차이

이미지
[컴퓨터구조] RISC, CISC 차이 중앙저치장치(CPU)는 두가지가 있음 -> RISC, CISC CISC의 단점을 보완하기 위해서 RISC가 나옴 컴퓨터 구조 컴퓨터에는 많은 부품들이 들어가는데 CPU, RAM, 저장공간, 파워 등이 들어갑니다. 이 중 컴퓨터 구조는 CPU의 구조에 대해 설명하는 것입니다. 컴퓨터 구조에는 인텔의 x86과 arm CPU가 대표적으로 있습니다. RISC (Reduced Instruction Set Computer, RISC) 복잡한 80% 명령어를 제거하여 사용빈도가 높은 명령어 위주로 20%의 명령어를 H/W화하여 처리속도를 향상시킨 프로세서 컴퓨터의 실행속도를 높이기 위해 복잡한 처리는 소프트웨어에게 맡기는 방법 을 채택하여, 명령세트를 축소한 컴퓨터 ex) ARM, 애플, SUN사의 SPARC 축소 명령 집합 컴퓨터 CPU에서 수행하는 모든 동작의 대부분이 몇 개의 명령어만으로 가능하다는 사실을 전제로 설계된 프로세서 명령어의 길이가 같아서 병렬처리가 가능 CISC에 비해 상대적으로 많은 범용 레지스터를 사용 -> 주기억장치에서 레지스터로 가져와서 처리 -> 빠름 고정된 길이의 명령어 -> 해석 속도 빠름 -> 병행 처리 가능 -> Pipleline가능 명령어가 모두 1WORD 길이로 짧음 -> 병렬 처리 가능 메모리 참조는 Load와 Store만으로 가능 하드와이어 제어 방식 RISC에 비하여 파이프라인과 슈퍼스칼라 구조를 구현하기가 더 적합하다. CISC CPU내의 ROM에 소프트웨어적으로 적재된 내부 명령어들을 하드웨어적으로 구성하여 제어기가 제기된 부분에 프로세서 레지스터 뱅크와 캐시를 둡니다. 이렇게 함으로써 CPU가 상대적으로 느린 메모리에 접근하는 횟수를 줄여주어 파이프라이닝 등 시스템 수행속도가 전체적으로 향상됩니다. CISC 연산에 처리되는 복잡한 명령어들을 수백 개 이상 탑재하고...