• 제목/요약/키워드: multi-core CPU

검색결과 76건 처리시간 0.028초

효율적인 데이터 전송과 하드웨어 최적화를 위한 AMBA AXI4 BUS Interface 구현 (Implementation of the AMBA AXI4 Bus interface for effective data transaction and optimized hardware design)

  • 김현욱;김근준;조기쁨;강봉순
    • 융합신호처리학회논문지
    • /
    • 제15권2호
    • /
    • pp.70-75
    • /
    • 2014
  • 최근 디지털 기기의 다기능화, 휴대화 및 서비스 정보의 대용량화 등으로 인하여 고집적, 저전력, 고성능 SoC(System on Chip) 설계에 대한 요구가 점차 증가하고 있다. 시스템이 빠르게 발전함에 따라 요구되는 하드웨어 성능이 다양해지고 있으며 빠른 설계 확인을 위하여 FPGA(Field Programmabel Gate Array)를 채택하는 시스템이 증가되고 있는 추세이며 FPGA를 채택한 시스템에서는 FPGA와 제어하는 CPU인 ARM코어를 사용한 SoC 시스템이 늘어났다. 이러한 시스템에서 사용되는 AXI(Advanced eXtensible Interface) Bus는 여러 방법으로 이용되지만, 기존의 연구에서는 AXI Slave 구조로 설계가 되어 있다. Slave 구조에서는 CPU가 계속 데이터 전송에 관여하게 되어 자원을 다른 곳에 사용하지 못하는 문제와 AXI Bus가 사용되지 않는 시간이 길어서 전송효율이 떨어지는 문제가 있다. 본 논문에서는 이와 같은 문제를 해결하고자 AXI Master구조를 제안하고, Slave구조와 Master구조의 소모클럭과 합성결과를 비교한 결과, Master구조가 Slave구조에 비해 소모클럭은 51.99% 감소한 것을 확인하였으며, Slice는 31% 정도 감소하였다. 또한, 최대 동작주파수는 107.84MHz로써 약 140% 증가 되는 것을 확인하였다.

ARM 프로세서 기반의 리눅스를 위한 실시간 확장 커널 (RTiKA, Real-Time implant Kernel for ARMLinux) (Real-Time Kernel for Linux based on ARM Processor, RTiKA (Real-Time Implant Kernel For ARMLinux))

  • 이승율;이상길;이철훈
    • 한국콘텐츠학회논문지
    • /
    • 제17권10호
    • /
    • pp.587-597
    • /
    • 2017
  • 최근 하드웨어의 발전으로 모바일 환경에서 리눅스나 안드로이드 같은 범용 운영체제 환경에서 실시간성의 요구가 증가하고 있으나, 범용운영체제의 경우 실시간성을 제공하지 못하는 단점이 있다. 이를 해결하기 위해 리눅스에 부가적으로 설계된 RTiK(Real-Time implanted Kernel)을 통해 실시간성을 제공할 수 있으나, 기존 RTiK의 경우 x86 아키텍처만을 제공하는 단점이 있으며, 실시간성 지원을 위해서는 CPU 플랫폼에 종속되는 한계가 있다. 본 논문에서는 CPU 플랫폼 이식을 위해 ARM 아키텍쳐를 위한 실시간 확장커널인 RTiKA(Real-Time implant Kernel for ARMLinux)을 설계 및 구현한다. 실시간성 제공을 위해 독립적인 Local APIC Timer를 대체하는 MCT 타이머를 이용하였으며, 성능 검증 및 평가를 위해 생성된 실시간 태스크의 주기를 측정하였고, 1ms 단위의 주기를 바탕으로 여러 개의 실시간 태스크에 대한 동작을 보장할 수 있었다.

초고속 관측 데이터 수신 및 저장을 위한 기록 시스템 설계 및 성능 최적화 연구 (The Study on the Design and Optimization of Storage for the Recording of High Speed Astronomical Data)

  • 송민규;강용우;김효령
    • 한국전자통신학회논문지
    • /
    • 제12권1호
    • /
    • pp.75-84
    • /
    • 2017
  • 초고속 환경에서 대용량 데이터에 대한 안정적 기록 및 효율적인 데이터 접근의 필요성은 갈수록 높아지고 있다. 이와 관련된 기초과학의 한 분야로 방대한 천체 관측 데이터를 생산하는 VLBI(: Very Long Baseline Interferometer)가 있는데 고분해능, 고감도 관측 연구를 수행하기 위해서는 고성능의 데이터 저장 시스템이 요구된다. 하지만 시장에 출시된 대다수 클라우드 기반 스토리지는 일반 IT, 금융, 행정 서비스 지원을 위한 저용량, 복수 스트림의 비정형 데이터에 최적화되어 있기 때문에 빅 스트림 데이터 기록을 위한 최적의 대안이 될 수 없다. 본 논문에서는 이를 극복하기 위한 방안으로 데이터 입출력 처리에 있어 고성능, 동시성에 최적화된 데이터 저장 시스템을 설계하고자 한다. 이를 위해 멀티 코어 CPU 환경에서 libpcap, pf_ring 등의 API 호출을 통해 패킷 입출력 모듈을 구현하였고 외부로부터 유입되는 데이터를 효율적으로 처리할 수 있도록 소프트웨어 RAID(: Redundant Array of Inexpensive Disks) 기반의 확장성 있는 스토리지를 구축하였다.

원격 제어 기능을 포함한 교육용 모바일 로봇 시스템의 설계 및 구현 (A Design and Implementation of Educational Mobile Robot System including Remote Control Function)

  • 정중수;정광욱
    • 한국컴퓨터정보학회논문지
    • /
    • 제20권4호
    • /
    • pp.33-40
    • /
    • 2015
  • 본 논문에서는 원격 제어 기능을 갖는 교육용 로봇 시스템을 임베디드 환경에서 설계 및 구현하였다. 로봇 시스템의 기반이 되는 센싱 정보 처리와 소프트웨어 설계, 및 프로그래밍 실습 교육을 위한 템프릿 설계 기법을 제시하였다. 시스템의 개발 환경으로 CPU는 Cortex-M3 코어를 사용한 LPC1769 프로세서, 디버깅 환경은 LPCXPRESSO, 펌웨어 개발 언어는 C언어를, OS는 FreeRTOS를 사용하였다. 시스템 동작 과정은 무선 RF 통신을 이용하여 서버의 제어 명령을 수신하여, 교육용 로봇의 다양한 센서를 구동시킨다. 교육 과정으로는 로봇의 기본 동작 프로그램을 제공하여 실습생으로 하여금 컴파일 및 로딩이후 데모 동작을 우선 실행하도록 하였다. 이후 이의 데모 기능의 프로그래밍 기술을 교육하기 위해 단계별로 교육하도록 하였다. 로봇 동작과정에 대한 실습과 그에 대한 프로그래밍 기법이다. 또한 서버와 로봇간 통신 기법은 RF 통신환경에서 독자적인 프로토콜이 설계되었고, 로봇 센싱 데이터 처리과정을 분석하여 만족할 만한 성능 처리 결과를 제시하였다.

무기체계 교전 시뮬레이션을 위한 매트랩 기반 이산사건시뮬레이션 프레임워크의 개발 (The Development of a MATLAB-based Discrete Event Simulation Framework for the Engagement Simulations of the Weapon Systems)

  • 황근철;이민규;김정훈
    • 한국시뮬레이션학회논문지
    • /
    • 제21권2호
    • /
    • pp.31-39
    • /
    • 2012
  • 시뮬레이션 프레임워크는 시뮬레이션 응용 프로그램의 개발을 지원하는 기반 소프트웨어이다. 본 논문은 공학용 프로그래밍 언어로 광범위하게 사용되는 매트랩을 이용하여 개발된 이산사건시뮬레이션 프레임워크의 개발 과정을 기술하고 있다. 매트랩 객체지향프로그래밍을 토대로 새롭게 개발된 프레임워크는 매트랩 언어의 편리성과 이산사건시뮬레이션 형식론(DEVS: Discrete EVent System Specification Formalism)이 가지는 뛰어난 개발 방법론을 결합시킴으로써 무기체계 교전 시뮬레이션 프로그램 개발에서 요구되는 생산성, 유연성, 확장성을 제공한다. 더불어 매트랩의 병렬컴퓨팅 기술을 적용한 배치(Batch) 시뮬레이션 기능을 제공함으로써 몬테카를로 시뮬레이션 수행시 컴퓨터 환경에서 지원되는 CPU 코어의 수에 비례하여 응용 프로그램의 연산성능을 향상시킨다.

대용량 위성영상의 무감독 분류를 위한 K-means 군집화 알고리즘의 병렬처리 (Parallel Processing of K-means Clustering Algorithm for Unsupervised Classification of Large Satellite Imagery)

  • 한수희
    • 한국측량학회지
    • /
    • 제35권3호
    • /
    • pp.187-194
    • /
    • 2017
  • 본 연구는 대용량 위성영상의 신속한 무감독 분류를 위해 k-means 군집화 알고리즘을 병렬처리하는 방법을 소개한다. K-means 군집화 알고리즘은 대표적인 무감독분류 알고리즘으로서 주로 감독분류의 전처리 단계로 활용되지만 연산 집약적이고 사용자의 개입이 적어 병렬처리의 효과를 분명하게 나타낼 수 있다. 병렬처리 코드는 OpenMP 기반의 멀티쓰레딩을 이용하여 구현하였다. 실험은 1대의 PC에서 시행하였으며 이 PC의 CPU에는 8개의 멀티코어가 집적되어 있다. 실험 영상으로는 7개 밴드로 구성한 30m 해상도의 LANDSAT 8 OLI 영상과 8개 밴드로 구성한 10m 해상도의 Sentinel-2A 영상을 사용하였다. 각각 10개 군집을 사용하여 순차처리 및 병렬처리를 수행한 결과 병렬처리가 순차처리에 비해 6배 내외의 속도를 나타내었다. 순차처리와 병렬처리 결과의 일치성 평가를 위해 각 군집의 중심값과 분류된 화소의 수를 비교하고 분류 결과 영상간 차분을 수행하였고 결과로 모든 정보가 일치하였다. 본 연구는 병렬처리를 통해 대용량 위성영상의 처리 속도를 상당히 향상시킬 수 있음을 입증하고 있다는 점에서 의미가 있다고 판단된다. 아울러 OpenMP 기반의 멀티쓰레드를 이용하면 비교적 쉽게 병렬처리를 구현할 수 있지만 false sharing의 발생을 억제하도록 코드를 설계하는데 주의를 기울여야 함도 확인할 수 있었다.

멀티코어 환경에서 효율적인 트랜잭션 처리를 위한 메모리 관리 기반 하이브리드 트랜잭셔널 메모리 기법 (Memory Management based Hybrid Transactional Memory Scheme for Efficiently Processing Transactions in Multi-core Environment)

  • 장연우;강문환;장재우
    • 한국정보처리학회:학술대회논문집
    • /
    • 한국정보처리학회 2017년도 춘계학술발표대회
    • /
    • pp.795-798
    • /
    • 2017
  • 최근 멀티코어 프로세서가 개발됨에 따라 병렬 프로그래밍은 멀티코어를 효과적으로 활용하기 위한 기법으로 그 중요성이 높아지고 있다. 트랜잭셔널 메모리는 처리 방식에 따라 HTM, STM, HyTM으로 구분되며, 최근 HTM 및 STM 결합한 HyTM 이 활발히 연구되고 있다. 그러나 기존의 HyTM 는 HTM과 STM의 동시성 제어를 위해 블룸필터를 사용하는 반면, 블룸필터의 자체적인 긍정 오류를 해결하지 못한다. 아울러, 트랜잭션 처리를 위한 메모리 할당/해제를 기존의 락 메커니즘을 사용하여 관리한다. 따라서 멀티코어 환경에서 스레드 수가 증가할수록 트랜잭션 처리 효율이 떨어진다. 본 논문에서는 멀티코어 환경에서 효율적인 트랜잭션 처리를 위한 메모리 관리 기반 하이브리드 트랜잭셔널 메모리 기법을 제안한다. 제안하는 기법은 트랜잭션 처리에 최적화된 블룸필터를 제공함으로써, 병렬적으로 동시에 수행되는 서로 다른 환경의 트랜잭션에 대해 일관성 있는 처리를 지원한다. 아울러, CPU 캐시라인에 최적화된 메모리 기법을 통해, 메모리 할당량이 적은 트랜잭션은 로컬 캐시에 할당함으로써 트랜잭션의 빠른 처리를 지원한다.

국방정보시스템 성능향상을 위한 효율적인 GPU적용방안 연구 (The study on the Efficient methodology to apply the GPU for military information system improvement)

  • 고장혁;이동호
    • 디지털산업정보학회논문지
    • /
    • 제11권1호
    • /
    • pp.27-35
    • /
    • 2015
  • Increasing the number of GPU (Graphic Processor Unit) cores, the studies on High Performance Computing Platform using GPU have actively been made in recent. This trend has led to the development of GPGPU (General Purpose GPU) and CUDA (Compute Unified Device Architecture) Framework. In this paper, we explain the many benefits of the GPU based system, and propose the ICIDF(Identify Compute-Intensive Data set and Function) methodology to apply GPU technology to legacy military information system for performance improvement. To demonstrate the efficiency of this methodology, we applied this method to AES CPU based program obtained from the Internet web site. Simply changing the data structure made improved the performance of AES program. As a result, the performance of AES based GPU program is improved gradually up to 10 times. Depending on the developer's ability, additional performance improvement can be expected. The problem to be solved is heat issue, but this problem has been much improved by the development of the cooling technology.

완전한 파이프라인 방식의 비순차실행 수퍼스칼라 프로세서의 VHDL 설계 (VHDL Design for Out-of-Order Superscalar Processor of A Fully Pipelined Scheme)

  • 이종복
    • 한국인터넷방송통신학회논문지
    • /
    • 제21권1호
    • /
    • pp.99-105
    • /
    • 2021
  • 오늘날 멀티코어 프로세서, 시스템 반도체, 그래픽처리장치를 막론하고 그것을 구성하는 기본 단위 또는 필수적으로 투입되는 CPU의 기본단위는 수퍼스칼라 프로세서이다. 따라서, 고성능의 비순차실행 수퍼스칼라 프로세서가 채택되어야만 위에서 거론된 시스템의 성능을 극대화할 수 있다. 수퍼스칼라 프로세서는 완전한 파이프라인 방식으로 재배열버퍼와 예약스테이션을 이용하여 명령어를 동적 스케줄링 함으로써, 매 싸이클 당 복수 개의 명령어를 인출, 발행, 실행 및 기록한다. 본 논문에서는 예측실행 기능이 있는 완전한 파이프라인 방식의 비순차실행 수퍼스칼라 프로세서를 VHDL로 설계하고, GHDL로 검증하였다. 모의실험 결과, ARM 명령어로 구성된 프로그램에 대한 연산을 성공적으로 수행할 수 있었다.

CUDA 프레임워크 상에서 스카이라인 질의처리 알고리즘 최적화 (Optimizing Skyline Query Processing Algorithms on CUDA Framework)

  • 민준;한환수;이상원
    • 한국정보과학회논문지:데이타베이스
    • /
    • 제37권5호
    • /
    • pp.275-284
    • /
    • 2010
  • GPU는 대용량 데이터 처리를 위해 특화된 멀티 코어 기반의 스트림 프로세서로서 빠른 데이터 처리 속도 및 높은 메모리 대역 동의 장점을 가지며, CPU에 비해 가격이 저렴하다. 최근 이러한 GPU의 특성용 활용하여 범용 컴퓨팅 분야에 활용하고자 하는 시도가 계속되고 있다. 엔비디아에서 발표한 범용 병렬 컴퓨팅 아키텍처인 쿠다(CUDA) 프로그래밍 모델의 경우 프로그래머가 GPU 상에서 동작하는 범용 어플리케이션을 보다 손쉽게 개발할 수 있도록 지원한다. 본 논문에서는 쿠다 프로그래밍 모델을 이용하여 기본적인 중첩-반복 스카이라인 알고리즘을 병렬화시킨다. 그리고 스카이라인 알고리즘의 특성을 고려하여 GPU 자원용 효율적으로 사용할 수 있도록 GPU의 메모리 및 명령어 처리율에 중점을 두고 단계적인 최적화를 진행한다. 최적화 단계에 따라 각각 다른 성능 개선이 나타나는 것을 확인하였으며, 그 결과 기본 병렬 중첩-반복 알고리즘에 비해 평균 80%의 성능이 향상됨을 확인하였다.