기존 이솝 임베디드 포럼의 지식인 서비스가 게시판 형태로 변경되었습니다.

안녕하십니까?

 

ARM NEON을 이용하여 코드 최적화를 진행하는 도중에 난관에 부딪쳐서 문의드립니다. 

 

우선 ARM NEON intrinsic function set을 이용하여  카메라로부터 YUV4:2:0 데이터를 받아

 

RGB24 데이터로 변환하여 프리뷰를 띄우는 과정은 테스트 완료 하였습니다.

 

테스트 결과 최적화를 더 수행해야 겠습니다만,

 

순수 NDK(c code)만 사용한 경우보다 디스플래이 실행속도가 약 1.7배정도 빨라지는 것을 확인하였습니다.

 

그런데 영상처리 분야에서는  LUT(LookUp table) 연산을 종종 사용하게 됩니다.

 

ARM NEON의 white paper를 보니 간접 주소 지정(LUT 연산), 즉 스캐터(scatter)와 수집(gather)을 할 수 없다고 나와 있습니다.

 

아래 코드를 보시면 스캐터와 수집에 대한 이해가 빠르실 것 같습니다.

 

float a[99], b[99];
int ia[99], ib[99], i, n, j;

......

for (i = 0; i < n; i++) a[ia[i]] = b[j + ib[i]];

 

현재 문제점은ARM  NEON에서 직접적으로 간접 주소 지정을 할 수 없다면  우회적인 방법으로 간접 주소 지정(LUT 연산)을 할 수 있는 지가 궁금합니다.

 

혹시 위의 LUT 연산을 NEON에서 수행해 보신 경험이 있는 분이 계시다면 좋은 조언 좀 부탁드리겠습니다.

 

감사합니다.

 

좋은 주말 보내십시오.

 

List of Articles
번호 제목 글쓴이 날짜sort 조회 수

애플리케이션에서 GPIO 컨트롤하기 에 대해 문의드립니다. [6]

Exynos5250 부트로더 수정 관련

ARNDALE 보드에서 OpenCL 구동 가능한지요 ? [4]

ARM NEON 관련 문의 드립니다.

  • 죽유
  • 2013-02-02
  • 조회 수 1411

안드로이드 풀 빌드 시 구글 계정 사용할 수 있나요? [1]

aesop V210 진저브레드/ICS 커널 포팅 관련하여 질문드립니다. [1]

CPU 에서 마이컴 writing 관련 [3]

카메라 디바이스 드라이버에 대해서 공부하고 있는데요.. [1]

  • rubio
  • 2013-01-30
  • 조회 수 1308

엑시노스 5250 RESET 문제?? [2]

[이클립스]UI LCD 표시 매우 큰 글자 표시 방법

S5PV210 WinCE6.0 Sleep/Wakeup 질문

dtv 튜너 모듈이 있을까요? [3]

S5pv310의 GPL2(0)를 인터럽트로 사용 하려면 어떻게 해야 되지요.? [3]

[Arndale Board] OTG(mini USB)연결 문제에 관해서 문의드립니다... [6]

C110 보드 설계해보신분 답변 부탁드립니다(전압관련) [2]

ubuntu update와 tool package설치 관련 [2]

kernel 문제 다시 여쭤 봅니다. [8]

[arndale board] wiki의 오타 부분 [1]

  • monad
  • 2013-01-24
  • 조회 수 1188

[origen4412] gps 작동 질문. [4]

[android] power management [10]

사용자 로그인