본문 바로가기

전체보기52

[컴퓨터구조] 캐시(Cache) cache : 자주 쓰이는 데이터를 저장하며, 매우 빠른 Access time 을 지원하는 컴퓨터 메모리이다. 기본적 캐시 구조 - direct mapped : cache와 main memory 간에 mapping 이 되어있는 것 , cache를 통해 main memory data를 가져와야 한다 ▶ 캐시에서의 위치 : main memory 주소 % 캐시 block의 개수 예시) main memory : 22번지 캐시 block : 8개 ☞ 캐시에서의 위치 : 6 (=22%8) ▶ 하지만 이 방법은 main memory의 여러 주소가 한 곳의 캐시에 들어가게 되는데, 캐시에서 그 값이 main memory 중 어디를 가르키는지 알려면 어떻게 해야할까? 답) 유효비트(valid bit)와 tag를 이용한다.. 2020. 11. 20.
[컴퓨터구조] 메모리 계층구조 기본 (Memory hierarchy general) 메모리가 왜 중요한가 ? 메모리는 컴퓨터 시스템 성능의 아주 큰 영향을 미친다. 대부분의 메모리 큰 메모리 작은 메모리 느리다, 싸다 ( Slow & Cheap ) 빠르다, 비싸다 ( Fast & Expensive) ☞ 하지만 우리는 용량도 크면서 싸고, 빠른 메모리를 원한다 !! ☞ 이를 위해, 메모리 계층구조(Memory hierarchy) 라는 것이 만들어짐 메모리 계층구조 - 계층구조는 메모리를 아래 단계에서 가져다 쓰면서 맨 위의 register가 용량이 magnetic tape인 것처럼 사용할 수 있다. - register에 cpu가 원하는 메모리가 없으면 cache에서 찾고 또 없으면 main memory에서 찾는다..(반복) 메모리 지역성 (locality) 시간적 지역성 (temporal.. 2020. 11. 20.
[OpenCV] Pedestrian detection (보행자 검출) OpenCv에서 보행자 검출은 Hog를 이용한다. - Hog : 각 픽셀에 대한 gradient 값을 히스토그램으로 계산한 것 (gradient : x,y 의 미분값) - 주어진 보행자 영상에서 영역을 분할하고 각각의 영역에 대해 HoG를 계산한 다음 HoG값을 이어 붙인다.(concatenation) - HoG가 보행자를 표현하기에 좋은 feature라면 보행자 concatenation 과 아닌 것의 차이가 있을 것이다. - Support Vector Machine(SVM)를 이용해 두개의 class를 구분하는 선 (classifier)을 생성 ☞ SVM을 이용해 training - 파란색원이 보행자, 비어있는 원이 보행자가 아닌 영상 표현 - margin이 클수록 좋다 ( margin : 가장 가까운.. 2020. 11. 18.
[OpenCV] Face detection (얼굴 검출) 컴퓨터가 물체를 어떻게 찾아낼까? training stage : 많은 사진을 모아 물체를 나타내는 특징을 찾아내기 ( 학습시킴 ) test stage : input image로 부터 특징을 추출해내기 Harr-like feaure -모든 사람은 얼굴이 다르게 생겼지만 그 패턴은 같음 (눈,코,입) - 사람의 얼굴 위에 흑백의 사각형을 겹쳐 놓은 다음 밝은 영역에 속한 픽셀 값들의 평균에서 어두운 영역에 속한 픽셀값들의 평균의 차이를 구한다. (어두운 영역에 속한 픽셀값의 평균 - 밝은 영역에 속한 픽셀값의 평균을 계산하고 임계값 이상인 것을 찾으면 된다) - feature의 크기와 모양, 위치는 다양할 수 있다. (검은색부분과 흰색부분의 크기는 같아야 함) Boosting : weak-learner 로 .. 2020. 11. 18.
[컴퓨터구조]Data hazard (forwarding) Data forwarding 복습 ! Data Hazard 일 때, data가 register 혹은 memory에 write 될 때 까지 기다리지 않고 EX 단 / MEM 단에서 계산되면 바로 가져와서 사용하는 것임! Data forwarding이 필요한 경우 Data dependency 가 생길 때 ex1) sub $2, $1, $3 add $12, $2, $5 ☞ Data hazard ! ( sub의 목적지 register 을 이용하기 때문) or $13, $6, $2 ☞ Data hazard ! ( sub의 목적지 register 을 이용하기 때문) add $14, $2, $2 ☞sub가 WB일 때, ID단인데 같은 자리에 있어도 write가 read보다 더 빠르기 때문에 hazard 발생 안함 s.. 2020. 11. 17.
[컴퓨터구조] Pipelining Hazard (파이프라인 해저드) Hazard : 특정한 이유로 다음 clock cycle에 다음 명령어가 실행되지 않는 상황 3가지의 Hazard 원인 1. Structural Hazard 2. Data Hazard 3. Control Hazard ☞ 모든 Hazard는 waiting으로 해결된다. (stall) 1. Structural Hazard (구조적 해저드) : 자원은 하나인데 여러 명령이 동시에 수행되려고 할 때 발생 예시) memory가 하나인데, 한 명령어는 instruction fetch를 위해서, 다른 명령어는 data fetch를 위해서 memory에 접근할 때 해저드 발생 사진 설명 : instruction1 에서는 data fetch를 위해, instruction4에서는 instruction fetch를 위해 C.. 2020. 11. 13.
반응형