일반적인 MCU는 픽셀 클록이나 메모리 용량 등이 제한적이기 때문에 브랜드 인지도의 중요성, 고급 그래픽 기능을 위한 MCU, 통합 그래픽 컨트롤러 등 세 가지 사이에 절충이 필요할 수 있다.

예를 들어 풍부하고 생동감 넘치는 색 깊이를 원한다면 MCU가 지원하는 메모리 공간에 애플리케이션을 맞추기 위해 원래 필요한 것보다 더 작은 디스플레이를 사용해야 한다.

하지만 최근 설계 및 제조 기술이 발전하면서 패키지 내 가용 메모리가 크게 늘어났으며 이를 통해 그래픽 MCU의 성능이 크게 향상되었다. 대용량 통합 메모리의 중요성을 더 잘 이해하기 위해 색 깊이에 대해 살펴보도록 하자.


색 깊이
색 깊이는 비트맵 이미지에서 단일 픽셀의 색을 표현하기 위해 사용되는 비트 수를 말한다. 어떤 색을 표현할 때 더 많은 비트를 사용할수록 하나의 값에서 다음 값에 이르는 색 차이가 더 미세해진다.

이제 MCU의 가용 메모리 양이 늘어나면서 32비트에 이르는 색 깊이를 일반적으로 사용할 수 있게 되었다. 32비트의 색 깊이로 표현할 수 있는 색의 가짓수는 1,670만 개에 달한다. 깊이 있는 색감은 다음 두 가지 이유에서 사용자 경험과 브랜드 구축에 중요하다.

source: FreeQration

풍부한 색감이 중요한 이유는 먼저 표현되고 있는 이미지를 최종 사용자가 어떻게 해석했으면 하는 지와 연관된다. 애플리케이션이 사진이나 미술 작품을 사실적으로 표현하는 데 중점을 두고 있다면, 최종 사용자는 표현되는 이미지가 자신이 보았던 혹은 기억하는 것과 얼마나 비슷한지에 따라 그 디바이스의 품질을 판단할 것이다.

두 번째 이유는 브랜드 인지도에 관련된 것이다. 색은 소비자들이 브랜드를 인식하는 데 있어 지극히 중요한 역할을 한다.

색은 굉장히 세밀할 뿐만 아니라(펜톤 컬러 등의 기업은 이 방면으로 이미 하나의 산업을 확립), 소비자들이 어떤 제품이 정품인지 아닌지를 구분하는 데에도 도움을 준다. 또한 색을 통해 브랜드를 정확하게 표현하지 못하면 제품 품질에 대한 사용자의 인식에도 부정적인 영향을 미칠 수 있다.

하지만 32비트 색(실제 색을 나타내는 것은 24비트이며, 8비트는 알파 채널로서 투명도를 나타내는 데 사용)을 사용하면 애플리케이션의 메모리 사용이 부담될 만큼 늘어난다. WVGA(800x480) 디스플레이의 경우 32비트 색을 사용하면 버퍼 하나, 또는 메모리에 저장된 것을 표시하는 데에만 약 1.5MB의 메모리가 필요하다.

앞서 언급했듯 애플리케이션에 따라 이 정도 수준의 색 깊이가 꼭 필요할 수도 있다. 사진이나 미술 작품을 표현하거나, 협력업체에서 제공하는 색 표현에 예측 불가능하고 변화가 잦은 웹 액세스가 포함되는 경우가 있다(지도, 이미지, 영상 등).

대개 마이크로컨트롤러는 이미지 버퍼 유지를 위해 512KB 이상의 온-칩 메모리를 제공하지 않으므로 이러한 애플리케이션의 경우 외부 메모리가 필요하다.

하지만 다이 설계, 패키지, 제조 기술이 급격히 발전함에 따라 온-칩 메모리가 크게 늘어나게 되었다. 그 한 예인 마이크로칩의 PIC32MZ DA는 완벽한 성능의 그래픽 MCU로서 단일 패키지로 32MB의 DDR2 DRAM을 제공한다.

이 애플리케이션에는 외부 버퍼 메모리를 추가할 필요가 없으므로 디자인 비용, 복잡성, 전반적인 크기를 줄일 수 있다. 3층 구조의 그래픽 컨트롤러와 완벽한 기능을 갖춘 2D 그래픽 프로세서가 결합된 PIC32MZ DA는 GUI 기반 애플리케이션을 설계하는 임베디드 디자이너들을 위한 고도로 통합된 그래픽 컨트롤러의 진수이다.


그래픽 개발 툴의 기초
마지막으로 자동화와 유연성을 완벽하게 갖춘 설계 툴의 중요성에 주목해야 한다. 꼭 맞는 색을 찾아내는 동시에 사용자를 만족시키고 선호를 유도할 수 있는 사용자 인터페이스를 설계하기 위해서는 일상적인 코드 디버깅이나 불필요한 인터랙티브 프로그래밍에 시간을 낭비하는 대신 콘텐츠 개발에 집중할 수 있게 하는 툴의 역할이 중요하다.

커트 파커(Kurt Parker)

GUI 설계에 있어 임베디드 코드 개발자를 UX 전문가로 바꿔놓을 수 있는 기법을 WYSIWYG(What-You-See-Is-What-You-Get)라고 부른다. 이는 개발자가 툴 내의 디자인 공간에서 작성한 이미지를 하드웨어 플랫폼에 그대로 나타나게 하는 것이다.

여기에 비표준 그래픽 패널용으로 드라이버를 자동으로 생성하는 다른 툴들을 결합하면, 고품질 설계를 실제로 구현하는 동시에 사용자 인터페이스를 위한 코딩과 디버깅에 낭비되는 시간을 없앨 수 있다. 이러한 툴들은 현재 사용이 가능하며 그 중 하나인 마이크로칩의 MPLAB Harmony v2 소프트웨어 프레임워크는 무료로 제공된다.

MPLAB Harmony는 디자인 입력, 메모리 관리, 이벤트 및 디스플레이 드라이버 등 업계 최고의 기능들을 제공하고 코드 생성, 디버거, MPLAB X, MPLAB Harmony Configurator와 같은 기존 툴과 매끄럽게 연동해 사용할 수 있다.


맺음말
임베디드 사용자 인터페이스는 긍정적인 사용자 경험을 구축하고 사용자의 제품 선호도를 높이는 데 기여한다. 따라서 이러한 임베디드 사용자 인터페이스에 더욱 많은 주의를 기울이면 기업의 수익성을 높일 수 있다.

최근 MCU 그래픽 및 메모리 기술이 급격히 발전함에 따라, 임베디드 설계자들은 MPU 사용에 필요한 복잡한 신규 소프트웨어 및 하드웨어 설계 패러다임을 익히지 않고도 한 차원 높은 GUI 개발이 가능해졌다. 적절한 아키텍처와 툴 선택이 뒷받침된다면, 브랜드 선호도를 향상시키고 긍정적인 사용자 인식을 구축하는 것은 그 어느 때보다도 간단할 것이다.

글: 커트 파커(Kurt Parker), 마이크로칩 MCU32 사업부 제품 마케팅 매니저
(Product Marketing Manager for Microchip's MCU32 Division)

저작권자 © IT비즈뉴스(ITBizNews) 무단전재 및 재배포 금지