본문 바로가기

allwinner

(23)
동영상 재생 테스트 비교적 낮은 성능의 CPU(Cortex-A7 1Ghz Single-Core)에서 동영상 재생 능력이 얼마나 되는지 테스트해보았다. 테스트 영상은 아래 링크에서 다운로드 받았다. 유명한 오픈소스 에니메이션 Big Buck Bunny이다. https://archive.org/download/BigBuckBunny/big_buck_bunny_480p_surround-fix.avi 동영상은 MPEG4 포맷으로 854x480의 해상도, 24bpp 칼라, 24.000 fps로 2500kbps (305.2 kbyte/s) 정도의 비트레이트로 된 파일이다. 사운드는 AC3 포맷으로 48KHz, 2 채널 스테레오이다. 데비안 OS위에서 apt로 설치한 mplayer 명령으로 재생하였으며 내 눈으로 보기에는 부드럽고, 사..
Kernel 5.5 (rc4) 포팅과 부팅 Allwinner i3(S3) CPU에 최신 메인라인 커널을 포팅하는 과정을 기록하기 시작한다. 과정에 실수나 오류가 있을수 있으나 그 것 자체가 개발 과정에 대한 유용한 기록이 되리라 생각한다. 내 보드에 맞는 devicetree와 defconfig 파일은 5.4.1 버전에서 테스트가 된것을 거의 그대로 사용해 보자. 그리고 커널 config 설정할때 oldconfig 옵션에 대한 공부는 좀 더 필요해 보인다. 우선 Tovalds님의 최신 커널 repo를 Github 홈페이지에서 "fork" 하였고 개발용 PC에 git clone으로 전체 소스를 다운로드 받았다. 툴체인은 u-boot 빌드에 사용했던 gcc-linaro-6.3.1을 그대로 이용하였다. Fork한 커널 소스는 https://github...
u-boot Ethernet 기능 활성화 u-boot에 Ethernet 기능이 꺼져 있어, TFTP를 이용한 원격 커널 부팅이 불가능했다. 뻔질나게 SD 카드를 옮기고 복사하면서 개발하는 것은 효율이 너무 낮아 네트웍 기능을 켜 보았다. sun8i-s3-foxnux.dts를 아래와 같이 변경하였다. USB 관련 변경은 무시하자. diff --git a/arch/arm/dts/sun8i-s3-foxnux.dts b/arch/arm/dts/sun8i-s3-foxnux.dts index 758c3ffeaf..1f51e305a6 100644 --- a/arch/arm/dts/sun8i-s3-foxnux.dts +++ b/arch/arm/dts/sun8i-s3-foxnux.dts @@ -49,6 +49,7 @@ compatible = "licheepi,..
u-boot 로고 이미지 변경하기 부팅할때 LCD 왼쪽 구석에 보이는 쬐끄만 펭귄 로고를 나만의 로고 이미지로 변경하고 싶으면 아래 절차를 따르면 된다. 먼저 로고 이미지를 만들어 보자. FoxNux의 7인치 LCD 해상도는 1024x600 이므로 같은 크기의 JPG 포맷의 그림 파일을 만들어 저장한다. 이번 예제어서는 파일 이름은 1024x600_fox_board_logo.JPG으로 정했다. u-boot에서 지원하는 로고 이미지는 256종류의 색상을 지원하는 8-bit BMP만 지원한다. 시스템 메모리가 부족하던 시절에 메모리 사용량을 최대한 절약하기 위해서 생긴 제약이 아직도 유지되는 것 같다. 색상의 종류에 대한 제한이 크므로 사진같은 이미지 보다는 단순한 로고 형태의 이미지를 추천한다. "sudo apt install netpbm..
FoxNux용 u-boot 빌드와 설치 타겟 보드의 RAM 용량이 크고 CPU가 빠르고 Debian 계열의 OS가 설치되어 있다면 보드에서 직접 컴파일(Native build)을 하는 경우가 많아 졌다. 그런데 FoxNux 보드는 CPU가 느린편이고 RAM 공간이 128MB 뿐이라 어려울 것이다. 쓸데없는 고생하지 말고 PC에서 Cross-toolchain을 이용하여 컴파일을 하자. 내가 사용하는 개발 PC는 x86-64bit용 Ubuntu 19.10이 동작하고 있다. 작년 여름에 18.04를 설치하였고 6개월마다 업그레이드를 하였더니 19.10되었다. 업그레이드 할때마다 자잘한 문제가 있었으나 6~7년전에 부팅조차 망가지던 것에 비하면 애교로 보인다. 내년에 20.04 LTS로 올리고나면 Major 업그레이드 없이 자잘한 update만으로 ..
Allwinner i3 CPU 소개 SoC(System on Chip) 라는 용어가 나온지는 거의 20년 정도 된듯하다. 사전적 의미는 아래와 같다. SoC는 한 개의 칩에 완전 구동이 가능한 제품과 시스템이 들어 있는 것을 말한다. 그러나 현실은 좀 다르다. DRAM과 Boot flash memory 정도는 외부에붙여야 시스템으로서 동작이 가능하다. 네트웍을 구현하려면 무선랜칩이나 Ethernet MAC / PHY 칩을 붙여야 한다. 오디오 출력이 필요하면 DAC과 앰프칩을 달아주어야 한다. 이렇게 메모리, 네트웍, 오디오 칩은 외부에 달아주는 것이 일반적인 상황이다. i3라는 칩은 좀 오래된 V3 CPU와 DDR3 128MB(1Gbit)을 하나의 패키지로 합쳐 만들어진 좀 더 SoC에 가까운 물건이다. 그런데 이 업계에서는 메모리까지 ..
중국업체에서 PCB 샘플 만들기 JLCPCB라는 중국 업체에서 샘플 PCB를 2회 만들어 보았다. 처음에는 양면(2-layer), 두번째는 4층(4-layer) 였다. 2번 모두 가격, 품질, 납기에 만족하였다. 국내 샘플 업체는 4층/임피던스/ENIG-RoHS 조건으로 동일한 샘플을 만드는 경우 가격이 3배가 넘는다. PCB 제작 기간은 비슷한것 같지만 국내업체는 배송에 1박2일, 중국의 경우 4박5일 정도 필요하므로 장단점이 있다. 내 경우 취미로 만드는 프로젝트라 3일 정도 더 기다려야 하는 것은 큰 문제가 이닌것 같다. 중국업체의 또다른 장점은 실시간으로 내 PCB가 어느공정에서 제작되고 있는지 진도 확인이 가능하다는 것이다. 3번째 PCB를 12월 11일 오후 3시쯤 발주하고 결재하였는데 오늘이나 내일 배송이 시작될것 같다. ..