Design and analysis of embedded SIMD coprocessor architectures for image and video applications = 효율적인 영상처리를 위한 내장형 SIMD 코프로세서 구조 설계 및 분석
저자
발행사항
Seoul : Graduate School, Yonsei University, 2006
학위논문사항
학위논문(박사)-- Graduate School, Yonsei University : Dept. of Computer Science 2006.8
발행연도
2006
작성언어
영어
주제어
발행국(도시)
서울
형태사항
105장 : 삽도 ; 26 cm
일반주기명
지도교수: Shin-Dug Kim
소장기관
오늘날 VLSI(Very Large-Scale Integration) 기술의 빠른 발전과 멀티미디어 내장형 시스템 시장 규모 및 다양성의 증가는 디지털 통합 시스템(Digital Integrated Systems)의 발달을 크게 가속시키는 결과를 가져왔다. 이에 따라 최근의 칩 디자인에 있어서는 다수의 복잡한 기능들과 메모리, 연산회로들을 하나의 칩에 통합하기 위한 시스템 온 칩(SoC) 기술이 발생하였고, 이를 통하여 다수의 서로 다른 응용을 위한 코어들이 하나의 시스템에 통합 내장하는 것이 가능하게 되었다. 멀티미디어 내장형 시스템들은 대부분 많은 신호 및 영상처리 알고리즘을 포함하는 실시간 응용을 목적으로 하고 있으며, 이에 따라 연산 프로세서는 처리결과를 예측 가능한 주어진 시간 내에 생성할 수 있어야 하므로, 이러한 하드웨어들은 각각의 목적이 되는 응용 특성을 세심히 고려하여 설계 되어야 한다.본 학위논문의 목표는 고성능의 다양한 차세대 멀티미디어 응용 시스템을 위한 SIMD(Single Instruction, Multiple Data streams) 기반의 가속기 구조를 설계하고 운용하는데 있다. 고속의 영상처리 응용에서 요구되는 연산의 공통적 특징은 연속적인 스트림(Stream) 데이터의 입출력과 그에 따른 연산이 실시간에 이루어져야 하므로 많은 연산 능력을 요구하게 된다. 그러나 이러한 연산은 몇 단계의 루프에서 대부분의 단순한 연산이 반복 되며, 이때 필요한 데이터는 블록 및 프레임 단위로 공급되어 루프 내부의 연산은 상호 독립적인 데이터간에 행해지게 된다. 이는 데이터 단위의 병렬성(Data Level Parallelism)을 적용 가능하게 하며, SIMD 스타일의 벡터 연산 모델을 이용하여 가장 적은 비용으로 높은 성능을 가져올 수 있는 병렬 가속 시스템을 설계 가능하게 한다. 이전까지의 특정 응용에 대한 칩 개발은 해당 응용의 로직을 하드웨어로 직접 설계하는 ASIC 형태로 이루어져 왔다. 이러한 설계방식에 의한 프로세서는 성능을 포함하여 생산비용, 전력소모, 크기 모든 면에 있어서 가장 높은 효율을 보이게 된다. 하지만, 최근 들어 다양한 응용의 통합 및 개발시간/비용의 극심한 증가에 따라 한계점을 보이며, 프로그래밍 제약, 성능 및 기능적 측면에서 확장이 불가능한 단점을 기지고 있다. 따라서 범용적 가속기의 설계가 필요한 상황이며, SIMD Array를 이용한 가속기의 구조는 최적의 선택이 될 수 있다. 이러한 SIMD Array를 이용하여 효율적인 가속 시스템을 구현하기 위해서는 해당 미디어 응용군에 적용 가능한 최적화된 알고리즘, 이를 효율적으로 반영한 고성능 하드웨어 가속기 구조 및 설계 환경에 대한 연구가 필요하다.제3장에서 제시된 첫 SIMD Array는 콘트롤 유닛(control unit)과 이차원 배열구조의 처리소자(two dimensional array of processing units)들로 구성된 모듈로서 범용성(general purpose)의 메인 프로세서와 단일칩에 결합되어 있는 SIMD 코프로세서(co-processor) 구조이다. SIMD 모듈은 동일한 연산이 다수의 데이터 스트림(streamed data)들에서 연속적으로 처리되는 관계로 외부로부터 원활한 데이터의 공급이 중요한 사항이다. 이를 위하여 512-byte의 적은 용량의 이중 버퍼시스템이 제안되었다, 제안된 이중 버퍼시스템은 SIMD모듈의 연산과 메모리접근(memory access)을 효율적으로 감춤(hiding)으로써 전체적인 연산시간을 빠르게 한다. 이에 관한 성능향상 확인을 위해 공간적 영상압축 기술인 이산여현변환(DCT, discrete cosine transform)을 제안된 이차원 배열의 처리소자(2-dimensional PU array)의 독립적인 행/열 버스(row/column bus)와 대각선방향의 병렬적 브로드케스팅(diagonal based concurrent broadcasting)을 가능하게 하는 버스 인터페이스 유닛(bus interface unit)을 이용하여 효율적으로 적용하였으며, 이는 부여된 하드웨어 환경하에서 최적의 사이즈로 SIMD 모듈의 메모리 접근을 감추며 고속의 연산 성능을 효율적으로 가능하게 하는 결과를 가져왔다.제 4장에서 제시된 두번째 SIMD Array는 일차원 Array 가속기 구조로 N개의 동일한 처리소자(PU : processing unit)와 제어 유닛(CU: control unit), 네 개의 공통 버스(common bus), 링(ring), 전역메모리(GM: global mem-ory), 비선형함수 유닛(NFU: nonlinear functional unit)으로 구성 되어 있다. PU는 가속기의 기본 계산 단위로서 각각 지역메모리(LM, local memory)와 주소변환기(AM, address modifier)를 구비 하였으며 하나의 가속기 내에 16개의 PU가 내장 되어있다. 구조적 특징으로는 버스기반 구조(bus based architecture)와 링기반 구조(ring based architecture)의 장점을 모두 활용 가능한 하이브리드 버스-링 구조(hybrid bus-ring architecture)를 제안하였다. 이를 통하여 메모리에 효율적으로 접근하였으며 링을 통해 PU간에 데이터를 전달함으로써 브로드케스팅 시간을 단축할 수 있다. 또한 각 응용에 특화된 명령어 셋(instruction set)을 정의하여 이를 통해 많은 종류의 이미지 프로세싱 알고리즘을 수행 할 수 있도록 하였다. LUT(look-up table)를 이용하여 비선형함수 유닛(NFU: non-linear function unit)을 설계함으로써 비선형함수 값을 계산하는 시간을 줄였다. 또한 가속기의 성능확대가 필요할 경우 두 개 이상의 제안된 가속기를 연결 가능하게 함으로 대단위의 병렬 프로세싱이 가능하게 하였다. 제안된 가속기의 구조는 Verilog HDL로 설계하여 시뮬레이션을 수행하였으며, FPGA 칩을 사용하여 구현하였다. 구현된 프로세서의 성능 검증을 위하여 인공신경망(artificial neural networks)의 오차 역전파 알고리즘과 이미지 필터링을 사용한 온라인 한글인식을 실험하였으며 확장성을 검증하기 위하여 퍼짐방정식(diffusion equation)을 이용한 유층(oil reservoir) 분석 시뮬레이션을 실행하였다.마지막으로 제5장에서 제시된 SIMD Array는 두 개의 일차원 Array가 병렬로 구성되는 가속기 구조로 일반적인 2차원 분리가능 변환(2D separable transform) 연산에 범용적으로 적용 가능한 구조이다. 즉, M×N 행렬 데이터를 분리 연산하는 X-Array와 Y-Array로 구성되어 각각 열우선, 행우선 연산이 가능하게 한다. 제안된 구조의 성능 검증을 위하여 위상기반(phase-base) 스테레오정합 알고리즘을 이용, 실시간으로 dense disparity map을 추출 가능한 고성능 병렬 프로세서(pipelined array processor) 구조를 설계하였다. 채택된 알고리즘은 Local Weighted Phase Correlation(LWPC) 스테레오정합 알고리즘으로서 기본적으로 잡음에 강하면서 불연속이 존재하는 부분에서 오정합의 발생을 줄여 줄 수 있는 장점이 있으며, 주요 연산은 이차원 컨벌루션(2D Convolution)으로서 분리가능 변환이다. Dense disparity map을 초당 30 프레임의 속도로 추출 가능하도록 해당 알고리즘의 효율적인 하드웨어 처리를 지원하기 위하여 제안된 고성능 병렬 프로세서(Pipelined Array Processor)는 각 기능 블록 처리를 위하여 다수의 processing element(PE)들이 SIMD 모드로 동작하게 되며, 전체적으로 각 스테이지는 파이프라인(pipeline) 형태로 진행되어 이미지 데이터 입력 후 Dense disparity map 생성까지 외부적인 컨트롤의 필요성을 배제함으로 병렬 처리 효과를 할 수 있도록 설계되었다. 제안된 하드웨어 구조는 Xilinx HDL을 이용하여 필요한 하드웨어 자원을 LUTs(Look Up Table), flip flop, slice, memory의 소모량으로 표현하였으며, 단일칩에 구현 가능성을 보여주었다.
더보기In parallel with a fast growing VLSI (Very Large Scale Integration) technology and a rapid increase in market volume and diversity for multimedia embedded systems, the architecture of digital integrated systems has evolved at a very fast pace. Thus, today's chips can integrate several complex functions, memories, and logic on the same die, called system-on-chip (SoC), in which multiple complex application-specific cores aiming at different tasks are embedded at the same system. The multimedia embedded systems are mostly targeted for real time applications based on many digital signal and image processing algorithms, making sure that the processor can produce results at predictable times. For this purpose, they are required to have a careful design stage considering all the aspects of the hardware to be tailored to designated applications.The focus of this thesis is to design hardware accelerator architectures for high performance multimedia embedded system requiring digital signal processing at real time rate on the form of a fixed function coprocessor. Typically, algorithms can be speed up by executing them in parallel on multiple processors in order accelerate compute intensive regular tasks, such that the proposed architectures are employing SIMD-based processor array with various mapping methodologies. Among many computational models, SIMD architectures are widely recognized as being most suit-able for image and video processing. These are data intensive/parallel applications characterized as regular control flow in streaming data with low computational com-plexity. As a result, a SIMD parallel processor designed for a particular application (application-specific processors) can often obtain high processor utilization and high throughput.The first presented coprocessor is employing basic mesh architecture with two enhanced features (an application specific double buffer and a bus interface unit), be-cause the most successful multiprocessor systems for digital signal and image proc-essing have either a mesh architecture or a pipelined computation model. The pro-posed architecture has advantage of providing very large speedup after the data has been loaded onto mesh while running the 2-D DCT (discrete cosine transform) algo-rithm. However, the architecture may have problem of providing high performance for digital signal and image processing applications because of the input/output prob-lem, synchronization difficulty as the number of processors increases, and the lack of flexibility in adapting to different applications.The second coprocessor architecture is employing 1-D array with distributed local memory to overcome the problems found in mesh. For this purpose, the archi-tecture is enhanced with several features to catch up the high throughput of mesh. The architecture is optimized to process morphological image filtering, artificial neural networks and diffusion equations effectively. The prototype chip is implemented with FPGA (Field-Programmable Gate Array). The total gate count is about 1 million with 530,432-bit embedded memory cells and it operates at 15MHz. The functionality and performance of the proposed processor is verified with character recognition applica-tion using neuro-image processing and the oil reservoir problem using diffusion equa-tions.Finally, this thesis proposes coprocessor architecture using pipelined double 1-D arrays for the purpose of exploiting advantages and overcoming drawbacks from preceding two architectures. The architecture is optimized for the case of 2-D separa-ble transforms computation by eliminating the need for transposition memory while preserving generality and high throughput. The functionality and performance of the proposed architecture is verified with dense disparity computation using a phase-based binocular stereo matching technique.
더보기분석정보
서지정보 내보내기(Export)
닫기소장기관 정보
닫기권호소장정보
닫기오류접수
닫기오류 접수 확인
닫기음성서비스 신청
닫기음성서비스 신청 확인
닫기이용약관
닫기학술연구정보서비스 이용약관 (2017년 1월 1일 ~ 현재 적용)
학술연구정보서비스(이하 RISS)는 정보주체의 자유와 권리 보호를 위해 「개인정보 보호법」 및 관계 법령이 정한 바를 준수하여, 적법하게 개인정보를 처리하고 안전하게 관리하고 있습니다. 이에 「개인정보 보호법」 제30조에 따라 정보주체에게 개인정보 처리에 관한 절차 및 기준을 안내하고, 이와 관련한 고충을 신속하고 원활하게 처리할 수 있도록 하기 위하여 다음과 같이 개인정보 처리방침을 수립·공개합니다.
주요 개인정보 처리 표시(라벨링)
목 차
3년
또는 회원탈퇴시까지5년
(「전자상거래 등에서의 소비자보호에 관한3년
(「전자상거래 등에서의 소비자보호에 관한2년
이상(개인정보보호위원회 : 개인정보의 안전성 확보조치 기준)개인정보파일의 명칭 | 운영근거 / 처리목적 | 개인정보파일에 기록되는 개인정보의 항목 | 보유기간 | |
---|---|---|---|---|
학술연구정보서비스 이용자 가입정보 파일 | 한국교육학술정보원법 | 필수 | ID, 비밀번호, 성명, 생년월일, 신분(직업구분), 이메일, 소속분야, 웹진메일 수신동의 여부 | 3년 또는 탈퇴시 |
선택 | 소속기관명, 소속도서관명, 학과/부서명, 학번/직원번호, 휴대전화, 주소 |
구분 | 담당자 | 연락처 |
---|---|---|
KERIS 개인정보 보호책임자 | 정보보호본부 김태우 | - 이메일 : lsy@keris.or.kr - 전화번호 : 053-714-0439 - 팩스번호 : 053-714-0195 |
KERIS 개인정보 보호담당자 | 개인정보보호부 이상엽 | |
RISS 개인정보 보호책임자 | 대학학술본부 장금연 | - 이메일 : giltizen@keris.or.kr - 전화번호 : 053-714-0149 - 팩스번호 : 053-714-0194 |
RISS 개인정보 보호담당자 | 학술진흥부 길원진 |
자동로그아웃 안내
닫기인증오류 안내
닫기귀하께서는 휴면계정 전환 후 1년동안 회원정보 수집 및 이용에 대한
재동의를 하지 않으신 관계로 개인정보가 삭제되었습니다.
(참조 : RISS 이용약관 및 개인정보처리방침)
신규회원으로 가입하여 이용 부탁 드리며, 추가 문의는 고객센터로 연락 바랍니다.
- 기존 아이디 재사용 불가
휴면계정 안내
RISS는 [표준개인정보 보호지침]에 따라 2년을 주기로 개인정보 수집·이용에 관하여 (재)동의를 받고 있으며, (재)동의를 하지 않을 경우, 휴면계정으로 전환됩니다.
(※ 휴면계정은 원문이용 및 복사/대출 서비스를 이용할 수 없습니다.)
휴면계정으로 전환된 후 1년간 회원정보 수집·이용에 대한 재동의를 하지 않을 경우, RISS에서 자동탈퇴 및 개인정보가 삭제처리 됩니다.
고객센터 1599-3122
ARS번호+1번(회원가입 및 정보수정)