본문으로 건너뛰기

"pe/architecture" 태그로 연결된 3개 게시물개의 게시물이 있습니다.

모든 태그 보기

Semahpore, 세마포어

· 약 3분

세마포어의 개념

  • 멀티 프로그래밍 환경에서 두 개의 원자적 함수로 공유 자원에 대한 접근을 제한하는 방법
  • 임계구역에 상호접근할 수 있는 기능을 수행하여 교착상태에 빠지지 않도록 함

세마포어 개념도, P연산, V연산

세마포어 개념도

세마포어 연산

구분P 연산, WaitV 연산, Signal
개념리소스에 접근하기 위해 다른 태스크가 끝나기까지 대기임계영역을 나오면서 다른 태스크가 접근하도록 변경
로직세마포어 S의 Count를 1 감소세마포어 S의 Count를 1 증가
슈도코드P(S) { while S <= 0; S--; }V(S) { S++; }
  • 세마포어에 접근시킬 스레드의 갯수에 따라 이진 세마포어, 계수형 세마포어 선택

세마포어의 유형

구분내용비고
이진 세마포어상호배제나 프로세스 동기화 목적으로 사용0 or 1
계수형 세마포어초기에 동시에 진입 가능한 프로세스 개수 정의 가능0,1,2,3...

세마포어 고려사항

  • 세마포어의 직접 제어로 인한 오류 가능성, 난해성을 보완하기 위해 프로그래밍 언어 수준에서 모니터 기법 사용.

Pollack's Rule, 폴락의 법칙

· 약 2분

폴락의 법칙 개념

  • 마이크로프로세서의 성능은 면적(트랜지스터 수)의 제곱근과 비례한다는 법칙
    • 성능은 면적의 제곱근에 비례 <-> 면적은 성능의 제곱에 비례

폴락의 법칙 관계도, 특징

폴락의 법칙 관계도

폴락의 법칙 특징

구분내용비고
복잡성 증가트랜지스터 수 증가, 설계 복잡도 증가LOC 측정
생산성 감소개발 기간 증가, 생산 비용 증가프로젝트 생산성 평가 지표
품질과 생산성오류 발생 가능성 증가, 생산 수율 감소프로세스 관리

폴락의 법칙으로 인한 프로세서 발전 동향

구분내용비고
멀티코어 프로세스분할, 병렬처리 프로세스 개발효율성 증가
에너지 효율성저전력 프로세서 개발모바일 프로세서
연산 가능한 메모리메모리에서 연산 처리PIM

TCAM, Ternary Content Addressable Memory

· 약 3분

TCAM 개념

  • 0, 1, X(Don't care) 세 가지 상태를 저장하는 메모리 셀로 구성되어, 데이터 검색과 비교를 내용 기반으로 병렬로 수행하는 메모리.
  • RAM은 주소기반으로 데이터 읽기/쓰기, TCAM은 내용 기반으로 데이터 검색
  • CAM은 0,1 exact matching, TCAM은 0,1,X wildcard matching

TCAM의 구성도, 구성요소 활용사례

TCAM의 구성도

TCAM의 구성요소

구분내용비고
Search Line검색어를 입력하는 라인각 비트는 0, 1, X 값
메모리 셀3진 데이터(0, 1, X) 상태 저장낮은 공간 효율
Match Line검색 결과를 출력하는 라인각 메모리 워드마다 하나씩 존재
Priority Encoder여러 Match Line 중 가장 높은 우선순위의 일치 결과를 선택사용자 설정 가능
  • TCAM의 구성요소는 3상태 저장, 고속 비교 및 우선순위 결정 기능을 통해 빠른 데이터 검색을 가능하게함.

TCAM 활용사례

구분내용비고
네트워크 라우터IP 주소 기반 패킷 분류 및 포워딩빠른 패킷 처리 속도
네트워크 방화벽패킷 필터링 규칙과 패킷 헤더 비교높은 보안성
데이터베이스데이터 검색 및 필터링복잡한 질의 처리 가능

TCAM 발전방향

  • 저전력 설계: TCAM은 높은 전력 소모 단점
  • 고집적화: 단위 면적 당 더 많은 메모리 셀 집적하여 용량 증대, 비용 절감