• 제목/요약/키워드: 임베디드 소프트웨어

검색결과 752건 처리시간 0.027초

선박안전 운항을 위한 이진 분할 알고리즘 기반 해상 객체 검출 하드웨어 가속기 설계 및 구현 (Design and Implementation of a Hardware Accelerator for Marine Object Detection based on a Binary Segmentation Algorithm for Ship Safety Navigation)

  • 이효찬;송현학;이성주;전호석;김효성;임태호
    • 한국정보통신학회논문지
    • /
    • 제24권10호
    • /
    • pp.1331-1340
    • /
    • 2020
  • 해상 객체 검출은 선장이 육안으로 해상 주변의 충돌 위험성이 있는 부유물을 컴퓨터를 통해 자동으로 검출하여 사람이 확인하는 방법과 유사한 정확도로 인지하는 방법을 말한다. 기존 선박에서는 레이더의 전파를 통해 해상 부유물의 유무와 거리를 판단하였지만 형체를 알아내어 장애물이 무엇인지는 판단할 수 없는 약점이 있다. 반면, 카메라는 인공지능 기술이 발달하면서 물체를 검출하거나 인식하는데 성능이 우수하여 항로에 있는 장애물을 정확하게 판단할 수 있다. 하지만, 디지털 영상을 분석하기 위해서는 컴퓨터가 대용량의 화소를 연산해야 하는데 CPU는 순차적 처리 방식에 특화된 구조이기에 처리속도가 매우 느려 원활한 서비스 지원은 물론 안전성도 보장할 수 없게 된다. 따라서 본 논문에서는 해상 객체 인식 소프트웨어를 개발하였고 연산량이 많은 부분을 가속화하기 위해 FPGA로 구현하였다. 또한, 임베디드 보드와 FPGA 인터페이스를 통해 시스템 구현 완성도를 높였으며 소프트웨어 기반의 기존 구현 방법보다 약 30배의 빠른 성능을 얻었고 전체 시스템의 속도는 약 3배 이상이 개선되었음을 확인할 수 있었다.

C 프로그래밍 언어 학습에 공개 소스 소프트웨어 SDL 활용 사례 연구 (A Case Study on Utilizing Open-Source Software SDL in C Programming Language Learning)

  • 김성득
    • 실천공학교육논문지
    • /
    • 제14권1호
    • /
    • pp.1-10
    • /
    • 2022
  • 전자공학교육에서 C 프로그래밍 언어 학습은 컴퓨터 프로그래밍을 이해하고, 임베디드 시스템에서 마이크로프로세서 활용 능력을 습득하기 위한 중요한 기초 교육 과정이다. 기초적 문법과 알고리즘 이해에 중점을 두기 위해, 콘솔 창에서 C 표준 라이브러리 함수에 기반한 프로그램을 작성하며 이론과 실습을 병행해 학습하는 것이 일반적인 교육방법이다. 그렇지만, C 언어의 기본 지식을 어느 정도 습득한 후 프로젝트 활동을 하거나 더 심화된 단계로 나아가고자 한다면, 콘솔창에서 C 표준 라이브러리 함수만을 사용하는 것은 C 프로그램으로 표현하거나 제어할 수 있는 대상을 한정시키게 된다. 학습자가 그래픽 또는 멀티미디어 리소스를 쉽게 활용해 교육적 가치를 높이기 위한 목적으로, 본 논문에서는 공개 소스 소프트웨어인 Simple DirectMedia Layer (SDL)을 활용하는 방안을 C 프로그래밍 언어 학습 과정에 적용한 사례를 연구한다. 콘솔 창에서 수행하는 기초적 프로그래밍 교육과정을 마친 후에 적용된 SDL활용 프로그래밍 교육 과정을 소개하고, 설문 조사를 통해 교육적 가치를 평가한다. 그 결과, 응답자의 56% 이상이 응용능력개선, 흥미유발, 전반적 유용성 측면에서 긍정적 의견을 표명했으며, 부정적 의견은 4% 이하였다.

에지 클라우드 협동 이미지 처리기반 메타버스에서 스트리밍 가능한 저전력 AI 소프트웨어의 런타임 실행 (Low-Power Streamable AI Software Runtime Execution based on Collaborative Edge-Cloud Image Processing in Metaverse Applications)

  • 강명진;김호;박정원;양승범;윤준서;박대진
    • 한국정보통신학회논문지
    • /
    • 제26권11호
    • /
    • pp.1577-1585
    • /
    • 2022
  • 최근 4차산업혁명과 함께 메타버스에 대한 관심이 증가하는 가운데, 메타버스를 구축하는 멀티 에지 기반의 구조가 제시된다. 메타버스는 멀티 에지 시스템에서 많은 양의 영상처리와 데이터 전송을 통해 디지털 의사와 같은 시스템을 만들어 낼 수 있는 구조이다. 하지만 에지는 부족한 연산능력이라는 제약이 있으므로, 런타임 스트리밍이 가능한 서비스제공을 위해서는, 에지에서만 이루어졌던 영상처리와 데이터 전송을 에지-클라우드 협동을 통해 처리하여 저전력 시스템을 구축해야한다. 많은 에지들이 연결되는 시스템에서는, 그 무엇보다도 에지 경량화를 통해 효율적인 전체 시스템의 경량화 및 소모전력의 감소를 이루어낼 수 있다. 본 논문에서는 원격영상 처리방법과 Region of Interest (RoI) 기법을 사용하여, AI 소프트웨어의 저전력 런타임 스트리밍이 가능해지는, 에지-클라우드 협동 메타버스 애플리케이션을 제안한다. 에지-클라우드 협동 메타버스의 구조는 PC와 임베디드 보드를 사용하여 구현하였으며, 본 논문의 후반부에서는 에지의 시간 감소와 그에따른 전력 소모, 네트워크 통신량 감소를 검증하였다.

NAND 플래시 메모리 저장 장치에서 블록 재활용 기법의 비용 기반 최적화 (Cost-based Optimization of Block Recycling Scheme in NAND Flash Memory Based Storage System)

  • 이종민;김성훈;안성준;이동희;노삼혁
    • 한국정보과학회논문지:컴퓨팅의 실제 및 레터
    • /
    • 제13권7호
    • /
    • pp.508-519
    • /
    • 2007
  • 이동기기의 저장 장치로 사용되는 플래시 메모리는 이제 SSD(Solid State Disk) 형태로 노트북 컴퓨터까지 그 적용 범위가 확대되고 있다. 이러한 플래시 메모리는 무게, 내충격성, 전력 소비량 면에서 장점을 가지고 있지만, erase-before-write 속성과 같은 단점도 가진다. 이러한 단점을 극복하기 위하여 플래시 메모리 기반 저장 장치는 FTL(Flash-memory Translation Layer)이라는 특별한 주소 사상 소프트웨어를 필요로 하며, FTL은 종종 블록을 재활용하기 위하여 병합 연산을 수행해야 한다. NAND 플래시 메모리 기반 저장 장치에서 블록 재활용 비용을 줄이기 위해 본 논문에서는 이주 연산이라는 또 다른 블록 재활용 기법을 도입하였으며, FTL은 블록 재활용시 이주와 병합 연산 중에서 비용이 적게 드는 연산을 선택하도록 하였다. Postmark 벤치마크와 임베디드 시스템 워크로드를 사용한 실험 결과는 이러한 비용 기반 선택이 플래시 메모리 기반 저장 장치의 성능을 향상시킬 수 있음을 보여준다. 아울러 이주/병합 연산이 조합된 각 주기마다 블록 재활용 비용을 최소화하는 이주/병합 순서의 거시적 최적화의 해를 발견하였으며, 실험 결과는 거시적 최적화가 단순 비용 기반 선택보다 플래시 메모리 기반 저장 장치의 성능을 더욱 향상시킬 수 있음을 보여준다.

OpenGL을 이용한 OpenGL ES 1.1 구현 (OpenGL ES 1.1 Implementation Using OpenGL)

  • 이환용;백낙훈
    • 정보처리학회논문지A
    • /
    • 제16A권3호
    • /
    • pp.159-168
    • /
    • 2009
  • 본 논문에서는 데스크탑과 같이 OpenGL 기능이 전용 하드웨어로 제공되는 환경을 대상으로, OpenGL ES 1.1 표준을 효율적으로 구현하는 방법을 제시한다. OpenGL ES는 기존의 OpenGL 표준을 바탕으로 하였지만, 고정소수점 연산, 이를 수용하는 버퍼 기능, 완전히 새로운 텍스처 처리 등의 도입으로, 임베디드 시스템에 특화된 3차원 그래픽스 라이브러리로 새롭게 제정되어, 구글 안드로이드, 애플 아이폰, 플레이스테이션3 등에서 공식 3차원 그래픽스 API로 채택되었다. 본 논문에서는 OpenGL ES의 특징적 자료형인 고정소수점 표현에 대한 산술 연산들을 개선하였고, 특히 고정소수점 자료형들을 부동소수점 형태로 변환하여 하위의 OpenGL API로 넘기는 과정에서 표준을 준수하면서도 효율적인 처리가 가능하도록 하였다. 새로 도입된 고정소수점 자료형을 허용하는 버퍼 기능에 대해서는 변환된 자료들을 별도의 메모리 공간에서 관리하는 방식으로 속도 향상에 중점을 두었으며, 요구 사항이 완전히 달라진 텍스처 처리 부분은 전체 기능을 별도의 소프트웨어로 완전히 새롭게 구현하였다. 최종 구현 결과인 OpenGL ES 라이브러리는 OpenGL ES 1.1 표준에 규정된 총 200여 함수를 제공하며, 표준인증 테스트를 완전히 통과하여 1.1 표준을 완벽히 만족시켰음을 보였다. 수행 속도 면에서는 OpenGL ES에 특화된 응용 프로그램들에 대한 처리 속도 측정에서 기존의 구현 사례들에 비해 최대 33.147배의 속도 향상을 가져왔으며, 동일한 범주의 구현 사례들 중에서 가장 빠른 구현 결과이다.

VLIW 기반 고성능 DSP에서의 SAD 알고리즘 최적화 스케줄링 (Optimal Scheduling of SAD Algorithm on VLIW-Based High Performance DSP)

  • 유희재;정수환;정선태
    • 한국콘텐츠학회논문지
    • /
    • 제7권12호
    • /
    • pp.262-272
    • /
    • 2007
  • SAD(Sum of Absolute Difference) 알고리즘은 동영상 인코더에서 가장 많은 시간이 소용되는 것으로 잘 알려진 움직임 추정에서 가장 자주 계산이 수행되는 알고리즘으로, 동영상 인코딩 수행시간을 줄이기 위해서 우선적으로 최적화 구현되어야 하는 알고리즘이다. 본 논문에서는 VLIW 기반 고성능 DSP 프로세서에서의 조건 분기를 갖는 SAD 알고리즘의 최적 스케줄링 구현 방법을 제안한다. 제안 방법은 먼저 조건 분기를 갖는 중첩 루프를 VLIW 구조가 제공하는 ILP(Instruction Level Parallelism) 능력을 잘 활용할 수 있도록 충분한 크기의 루프 몸체를 가지며 또한 빨리 루프를 탈출 할 수 있는 조건 분기를 갖는 단일 루프로 변환한 후에, 모듈로 스케줄링 기법을 적용하여 VLIW 기반 프로세서에서 최적화 스케줄링 구현을 한다. 제안된 구현 방안을 TMS320C6713에서 구현하고, 코드 크기 및 수행 시간에 대한 성능 분석을 하였다. 구현된 최적화 SAD 루틴은 코드 크기도 크지 않아 임베디드 응용에 적합하며, 이 SAD 구현을 사용한 H.263 인코더가 그렇지 않은 H.263 인코더보다 훨씬 좋은 성능을 보임을 실험을 통해 확인하였다.

동적으로 할당된 구조체를 위한 압축된 필드 재배치 (Compact Field Remapping for Dynamically Allocated Structures)

  • 김정은;한환수
    • 한국정보과학회논문지:소프트웨어및응용
    • /
    • 제32권10호
    • /
    • pp.1003-1012
    • /
    • 2005
  • 내장형 시스템과 범용 시스템의 가장 큰 차이는 유한한 전력인 배터리를 사용한다는 것과 대용량의 디스크를 사용하지 않고 메모리에 의존한다는 것이다. 특히 멀티미디어 데이타를 처리하는 응용프로그램이 늘어감에 따라 메모리 사용량이 기하급수적으로 증가하고 있어서 메모리가 성능과 에너지 소비의 병목지점으로 작용하게 되었다. 따라서 데이타 접근 비용을 줄이고자 하는 시도가 많이 이루어지고 있다. 대부분의 프로그램은 지역성을 갖는다. 지역성은 한번 참조된 데이타가 조만간 다시 참조된다는 시간적 지역성(temporal locality)과 근접한 곳에 할당된 데이타끼리 함께 참조된다는 공간적 지역성(spatial locality)으로 나눌 수 있다. 최근의 많은 임베디드시스템은 이 두 가지 지역성을 이용한 캐시 메모리를 사용함으로써 메모리 접근 시간을 대폭 줄이고 있다. 우리는 이 논문에서 낭비되는 메모리 공간을 줄이고, 캐시 실패율(cache miss rate)과 프로그램 수행시간을 줄일 수 있도록 구조체 형식의 데이타를 항목(field)별로 재배치시키는 알고리즘을 제안하고자 한다. 이 알고리즘은 동적으로 할당되는 구조체의 각 필드를 압축된 형태로 모아서 재배치함으로써, 실험에서 사용한 Olden 벤치마크의 Ll캐시 실패는 평균 $13.9\%$를, L2 캐시 실패는 평균 $15.9\%$를 이전 연구들보다 줄일 수 있었다. 수행시간 또한 이전의 방법보다 평균 $10.9\%$ 줄인 결과를 얻을 수 있었다.

시설하우스 이동형 환경 및 생장 모니터링 시스템 개발 (Development of a Moving Monitor System for Growing Crops and Environmental Information in Green House)

  • 김호준
    • 한국정보전자통신기술학회논문지
    • /
    • 제9권3호
    • /
    • pp.285-290
    • /
    • 2016
  • 우리 농촌은 시장개방화와 생산 비용 상승으로 수익성 악화에 직면하고 있다. 최근, 정부는 농업 및 농촌의 보유자원과 정보통신기술을 결합한 6차산업의 활성화를 독려하고 있다. 이에 따라 시설 원예 작물의 생육 환경을 원격 모니터하고 제어할 수 있는 '스마트 그린하우스' 보급에 투자를 하고 있다. 본 과제의 목표는 하우스를 이동하는 작물 생장 모니터링 시스템을 개발하는 것이다. 이 시스템은 이동형 센싱 모듈, 제어 모듈, 서버 PC로 구성된다. 이동체는 고해상도 IP 카메라, 온습도 센서, 아이파이 중계기를 포함하고 있다. 이 장치는 그린 하우스 천정에 매달린 레일에 걸려 굴러간다. 제어 모듈은 임베디드 PC, PLC, 와이파이 라우터, 그리고 이동체를 끌기위한 BLDC 모터를 포함한다. 그리고 서버 PC는 통합 농장관리 소프트웨어, 홈페이지, 그리고 작물의 영상과 환경정보가 저장된 데이터베이스를 포함한다. 이동체는 하우스 내에서 넓게 이동하며 여러 정보를 수집한다. 서버는 이 정보들을 저장하고 직거래 장터 웹 페이지를 통해 고객에게 제공한다. 이 시스템은 농부들이 하우스의 환경을 제어하고 온라인 시장에 그들의 작물을 판매하는데 도움을 줄 것이다. 궁극적으로 농가 소득증대에 기여할 수 있을 것이다.

비전 및 HD Map 기반 차로 내 차량 정밀측위 기법 (Vehicle Localization Method for Lateral Position within Lane Based on Vision and HD Map)

  • 우리나라;서대화
    • 한국ITS학회 논문지
    • /
    • 제20권5호
    • /
    • pp.186-201
    • /
    • 2021
  • 자율 주행 기술이 발전함에 따라 주행 주변 환경을 인식하는 데 차량 위치의 정확성은 매우 중요하다. 측위의 정확도를 높이기 위해 정밀지도를 사용한 지도 정합 측위기술(map-matching localization)이 연구되고 있다. 기존의 지도 정합 기법은 지도에서 차선의 중심으로 표현된 데이터를 기반으로 차량 위치를 추정하기에 차선 내 측면 거리의 편차를 반영하지 않는다. 따라서 본 논문에서는 정밀한 측위를 제공하기 위해 영상처리를 통한 차선 검출 기법과 정밀지도의 차선 위치 정보를 이용한 기법을 제안한다. 영상 처리 기법으로 IPM(inverse perspective mapping)과 다중 차선 검출 기법, 중앙선 검출 기법을 통하여 차선 번호를 검출하고 차선 이탈 감지 방법으로 차선 중심으로부터 차량의 측면 거리를 추정한다. 최종적으로 영상처리로 검출한 차선 번호와 GNSS / INS의 위치를 기반으로 정밀지도에서 위치 링크정보를 추출하고 추출된 링크에 측면 거리를 반영하여 차선 내 차량의 위치를 추정한다. 제안된 방법의 성능을 평가하기 위하여 실제 도로에서 실험하였다. 제안하는 방법은 GNSS / INS와 비교 시 약 1.0m 정도 정확도가 개선되며, 기존의 차선레벨 맵매칭 방법과 비교 시 구간별로 약 0.04m ~ 0.21m(7~30%) 정확도가 개선됨을 확인하였다.

리눅스 커널 변수 취약성에 대한 소스레벨 발견 방법론 (A Source-Level Discovery Methodology for Vulnerabilities of Linux Kernel Variables)

  • 고광선;강용혁;엄영익;김재광
    • 정보보호학회논문지
    • /
    • 제15권6호
    • /
    • pp.13-25
    • /
    • 2005
  • 오늘날 리눅스 운영체제는 임베디드 시스템, 라우터, 대규모 서버에 이르기까지 다양한 분야에 사용되고 있다. 이는 리눅스 운영체제가 추구하는 커널 소스 공개 정책이 시스템 개발자들에게 여러 가지 이점을 주기 때문이다. 하지만 시스템 보안 측면에서 볼 때, 리눅스 커널 소스 공개는 보안상 문제점을 발생시킬 수 있는데, 만일 누군가가 리눅스 기반의 시스템을 공격하려 한다면 그 공격자는 리눅스 커널의 취약성을 이용하여 쉽게 시스템을 공격할 수 있기 때문이다. 현재까지 소프트웨어의 취약성을 분석하는 방법은 많이 있었지만 기존의 방법들본 방대한 크기의 리눅스 커널 소스에서 취약성을 발견하기에 적합하지 않다. 본 논문에서는 소스레벨 리눅스 커널 변수 취약성을 발견하는 방법론으로 Onion 메커니즘을 제안한다. Onion 메커니즘은 두 단계로 이루어져 있는데, 첫 번째 단계는 패틴매칭 방법을 이용하여 취약 가능성이 있는 변수들을 선정하는 단계이고, 두 번째 단계는 선정된 변수들의 취약 여부를 시스템 콜 트리를 이용해 검사하는 단계이다. 또한 본 논문에서 제안한 방법론을 이미 알려진 두 가지 소스레벨 취약성에 적용한 결과를 보인다.