임베디드 시스템의 진화 도약 소개

당신은 얼마나 많은 임베디드 프로젝트를 시스템 디자인, BOM (Bill Of Materials), 레이아웃 등의 주요 네트워크 없이 프로젝트의 라이프사이클 사이에서 성공적으로 전환하여 계속 작업했는가? 임베디드 분야의 대다수처럼 당신의 대답이 100% 미만이라면 당신은 당신의 귀중한 시간과 비용과 고충을 줄일 임베디드 디자인을 위한 새로운 방법에 마음을 열어야만 한다. 이 글에서 우리는 당신이 매일 마주하는 임베디드 디자인의 과제들을 실용적인 방식으로 탐구할 것이며, 어떻게 진정한 system-level programmability로 극복할 것인지를 탐구할 것이다. 우선, 진정한 system-level programmability가 의미하는 것이 무엇인지 간략히 보도록 하자.

글: 짐 데이비스/
싸이프레스세미컨덕터(www.cypress.com)

진정한 System-Level Programmability

이것을 3개의 섹션으로 따로 분리하고 우측에서부터 좌측으로 각각을 기술해 보자. Programmability, System-Level, 그리고 True. Programmability를 configurability와 혼동하지 않는다. 그러나 이것은 오히려 기본 building blocks를 이용하여 기능을 구축하기 위한 능력이다. 이러한 관계에 있어 이들 기본 building blocks은 하드웨어에서 구현되며, 레지스터, 데이터-경로 및 시그널-경로를 구성하는 방식에 의한 함수를 공동으로 구축하기 위해 사용된다. 예를 들어, 그림 1은 진정한 system-level programmability 를 구현하기 위해 싸이프레스의 차세대 PSoC 디바이스 아키텍처인 PSoC 3과 PSoC 5 내의 기본 building blocks을 묘사한 것이다. 그림에서 강조된 것과 같이 이들 기본 building blocks은 고성능 8-bit 8051(PSoC 3) 혹은 32-bit ARM Cortex M-3(PSoC 5) 프로세서, programmable clocking tree, Universal Digital Blocks(UDBs), programmable analog blocks 및 programmable routing, interconnects (analog, digital 및 system buses)로 구성되어 있다.
PSoC 3 및 PSoC 5 아키텍처의 clocking system은 ADCs, PWMs, counters 등과 같은 다양한 주변기기들을 지원하기 위한 아날로그 및 디지털 블록의 프로그래머블 세트를 가능하게 해 준다. 4개의 내부 혹은 2개의 외부 클록 소스의 설정에 모두 도달하면 디지털 시스템 주변기기를 위한 8개의 개별적으로 생산된 16-bit 클록 디바이더와 아날로그 시스템 주변기기를 위한 4개의 개별적으로 생산된 16-bit 클록 디바이더와 함께 당신은 강력한 clocking tree를 가지는 것이다. Universal Digital Blocks(UDB)는 아주 강력하고 유연한 digital logic block 이다. PSoC 3과 PSoC 5 아키텍처에서의 각 UDB는 clock 및 reset  모듈은 물론 ALU 기반의 8-bit datapath, 2개의 fine grained PLDs, 컨트롤 및 스테이터스 모듈을 포함하고 있다. 이러한 요소들은 low-end microcontroller의 기능을 구현하기 위해 통합될 수 있으며, 이들은 더 큰 기능을 구현하기 위해 또 다른 UDB와 함께 묶여질 수 있으며 또한 timers, counters, PWMs, UARTs, I2C, SPI, CRCs 등과 같은 디지털 주변기기를 구현할 수도 있다. PSoC 3과 PSoC 5 제품군의 디바이스 일부에서는 24 UDB로 8051 혹은 ARM Cortex-M3 processors, 또는 아주 강력한 아키텍처인 내부 DMA에 더하여 심지어 24-core processor를 구현할 수도 있다.
PSoC 3과 PSoC 5의 아날로그 기능은 mixers, trans-impedance amplifiers, buffers, op-amps 등을 구현하기 위해 사용할 수 있는 프로그래머블 아날로그 주변기기 설정으로 고-정밀 고정 기능의 아날로그(산업 온도 및 전압 범위에 따른 +/- 0.1%로 레퍼런스 전압이 정확한)를 결합하고 있다. 유연하고 고도로 정밀한 아날로그 기능의 조화는 고유의 강력한 많은 설계의 가능성을 열어두고 있다.
마지막으로 PSoC 3과 PSoC 5 아키텍처의 routing 과 interconnect는 그림 1에서 볼 수 있는 것처럼 어떠한 GPIO도 디지털, 아날로그, 캡센스(CapSense) 혹은 LCD drive I/O를 가능하게 하는 system buses를 구성할 수 있으며, 이는 획기적인 비용 절감 (4-layer 에서 2-layer PCBs)과 routing의 진정한 자유로 보드 레이아웃을 보다 쉽게할 수 있는 진정 강력한 특징들이다.
그럼, system-level은 무슨 의미인가? 우리는 programmable digital logic(CPLDs, FPGAs등), programmable analog(switched-capacitor 및 이와 유사한 기능), programmable clocks, programmable processors 등의 형태로 오랫동안 component-level programmability를 가졌다.
System-level programmability가 의미하는 것은 사용하기 쉽고 계층적 회로도를 기반으로 한 소프트웨어 개발 환경을 통해 조절되고 구성되는 모든 것들을 싱글 플랫폼, 싱글 디바이스에서 이런 모든 programmable components을 간단히 하는 것이다. 그림 2는 brushless DC Motor 제어 사례 애플리케이션의 system-level view를 보여주고 있다. 이 그림에서 보는 것처럼, 이러한 개별적인 구성요소들이 어떻게 실체화되는지에 대한 상세한 내용들에 대해서는 염려할 필요가 없다. 대신 이것을 하기 위해 이러한 주변기기 기능들이 무엇을 원하는지에 초점을 맞추면 된다. 모터 제어 기능에 feedback loop를 제공하기 위해 읽는 타코미터, 온도 또는 펌프 압력을 취하든 혹은 개별 PWM control을 이용하여 3-상 모터를 구동하든 당신은 사용을 위한 개별 IC나 주변기기 구성요소의 low-level details에 대해 걱정할 필요 없이 시스템 설계 과제를 해결할 수 있다.
이와 관련하여 최종적으로 true는 디바이스 내의 구성 가능한 고정 기능의 주변기기를 가진 디바이스로부터 programmability의 수준을 차별화하는 것을 도울 필요가 있다. 이는 당신이 어떤 특정 기능을 사용하지 않는다면 다른 목적을 위해 할당된 리소스들을 이용할 수 있다는 것을 의미한다; 당신이 특정 기능을 사용하지 않는다는 것을 선택했기 때문에 디바이스에서 당신은 기능을 소모하지 않는다. 디바이스에서 유일하게 낭비된 공간이 있다면 당신의 디자인에서 변경 규정을 위해 사용하거나 혹은 추가적인 기능을 구현하기 위해 준비하는 기본 building blocks으로 구성되어 있다.

임베디드 디자인 과제를 해결하기 위한 System-Level Programmability의 Pragmatic Application

당신은 수많은 임베디드 디자인 과제에 직면한다. 맨 처음은 요구사항, 레이아웃, 디자인, 자료의 가용성 등 변화에 적응하는 것이다. 그 다음은 경쟁을 극복하고 가장 큰 영향력을 확보하기 위해 적시에 제품을 출시하면서 시장에 신속히 진입하는 것이다. 또 다른 과제는 바른 목적을 위한 올바른 부품들을 선택, 구성하고 이용하는 아날로그의 복잡성이다. 마지막으로 경쟁자들이 당신의 디자인을 복제하여 시장 점유율을 훔치는 것을 방지하기 위한 디자인 IP를 보호하는 것이다. 싸이프레스의 PSoC programmable system-on-chip과 개발 소프트웨어는 이러한 과제에 부합하도록 설계되었으며, 이 섹션에서 우리는 진정한 system-level programmability를 어떻게 실용적으로 접근할 것인지 그리고 PSoC이 이러한 과제들에 어떻게 부합하는지에 대해 얘기할 것이다.

변화에 적응하기
임베디드 엔지니어의 삶에서 유일하게 지속적인 것은 변화이며, 그것을 계획하고 적응할 수 있게 하는 툴을 이용함으로써 변화를 수용하는 능력은 당신이 진정으로 성공할 수 있는 유일한 방법이다. 그림 2에서 본 것처럼, PSoC 엔지니어에게 변화는 간단한 주변기기의 수정을 의미할 수 있었다. 아마 ADC의 해상도를 증가시키거나(그림 3) 혹은 USB나 LCD Segment Display, 그리고 커패시티브 센싱 버튼 (그림 4)을 통한 제어 인터페이스와 같이 디자인으로 추가적인 기능을 더함으로써 복잡해질 수 있을 것이다. 진정한 system-level programmability로 당신은 변화를 수용할 수 있으며 당신이 상상하는 최상의 제품을 개발하기 위해 이용할 수도 있다.

빠른 시장 진입
빠른 시장 진입을 위한 가장 큰 도전 과제는 항상 컨셉이나 아이디어가 아닌 이러한 아이디어 들에서 제품을 만들어내는 것이다. 제품의 빠른 시장 진입은 더 높은 마진과 상대적으로 경쟁이 덜 한 상태의 보다 특화된 시장을 얻을 수 있다. PSoC 엔지니어링은 system-level 소프트웨어 개발 환경과 함께 쉬운 in-chip 조정 및 프로그래밍으로 신속한 prototyping 을 가능하게 한다. 이러한 두 가지 능력으로 진정 필요한 사항을 이해하고 생산 제품을 위한 하드웨어 솔루션을 용이하게 만들 수 있다.

아날로그 복잡성
PSoC programmable system-on-chip과 PSoC programmable system-on-chip 소프트웨어 개발 환경은 직관적인 system-level, 도식 기반의 설계 방법론을 통해 아날로그 회로와 기능의 이용을 용이하게 해 준다. 그림 2와 그림 3의 본 것처럼, 예를 들어 아날로그 주변기기의 인스턴스화는 당신이 수행하고 있는(이 경우에는 ADC를 위한 것: 해상도, 전환율, 클록 소스 등) 기능에 특정 주변기기 구성 설정에 이어 PSoC Creator에 있는 설계 캔버스로 구성요소를 drag-and-drop 하는 만큼 간단하다. Trans-impedance amplifiers, filters, analog multiplexers, comparators, DACs, 기타 주변기기 등과 같은 다른 아날로그 주변기기의 인스턴스화는 아주 간단하다.

설계 IP 보호
PSoC programmable system-on-chip은 디바이스에 임베디드 된 system-level programmability 의 방식에 의해 추가적인 보안 layer를 제공한다. 만일 경쟁업체가 die를 조사한다면 그들이 볼 수 있는 모든 것은 PSoC Creator를 이용하여 당신이 개발한 시스템을 초기화하고 인스턴스화 하는 펌웨어가 아닌 PSoC 디바이스 자체를 구성하는 구성요소들이다. PSoC디바이스에 저장된 펌웨어는 또한 몇 단계의 보안으로 보호되며, 전체 디바이스에 걸친 몇 가지 차원의 보호 기능을 수용하기 위한 메모리 블록에 의해 규정된다. full protection(no external read/write 혹은 internal write)는 물론 no protection(개발 시 이용된), external read protec tion, external read/write protection. 이러한 보호 수준과 함께, PSoC 디바이스에서 구현할 때의 설계의 비밀 소스는 표준 역 설계 기법으로 인해 쉽게 보호받을 수 있다.

결론

싸이프레스의 PSoC programmable system-on-chip과 개발 소프트웨어는 일상의 임베디드 설계 과제를 쉽게 극복하고 제품의 진짜 문제에 초점을 맞출 수 있게 도와주는 싸이프레스의 새로운 PSoC 3 와 PSoC 5 아키텍처로 진정한 system-level programmability를 가능하게 해 준다. 이러한 싸이프레스의 PSoC 3 와 PSoC 5 아키텍처는 설계의 한계를 없애면서 세계에서 유일한 프로그래머블 임베디드 설계 플랫폼으로 확장시켜 준다. 이용자는 하나의 칩에 수십개의 drop-in 주변기기, 우수한 전원 관리기능 및 풍부한 연결 소스들과 함께 12-bit~20-bit의 delta-sigma ADCs, digital logic library를 포함한 아주 높은 정밀도의 프로그래머블 아날로그를 이용할 수 있다. 이 모든 것들은 PSoC 3 혹은 PSoC 5 아키텍처에 각각 있는 통합된 고성능의 single-cycle 8051 또는 최신ARM짋 Cortex™-M3 processor와 함께한다.
새로운 소프트웨어 툴 및 PSoC Creator와 관련한 보다 자세한 사항은 싸이프레스의 웹사이트(www.cypress.com)를 참조할 수 있다. 
 
회원가입 후 이용바랍니다.
개의 댓글
0 / 400
댓글 정렬
BEST댓글
BEST 댓글 답글과 추천수를 합산하여 자동으로 노출됩니다.
댓글삭제
삭제한 댓글은 다시 복구할 수 없습니다.
그래도 삭제하시겠습니까?
댓글수정
댓글 수정은 작성 후 1분내에만 가능합니다.
/ 400
내 댓글 모음
저작권자 © 테크월드뉴스 무단전재 및 재배포 금지