2009년 2월 6일 금요일

자동차 안전 관련 ECU에서 워치독 MCU의 역할

NE-Korea

차량 내 전자 장치와 관련한 기술이 발전함에 따라 차량이 보다 안전하고 지능적이며 에너지 효율적으로 변화하고 있다. 전자 장치는 기계, 공압 및 유체역학에 이르는 자동차 구성 요소 중 가장 빠르게 진화하는 구성 요소가 될 것이다. 임베디드 시스템 설계자는 운전자의 요구에 부합하는 자동차 기능을 실현하기 위해 새로운 ECM(Electronic Control Module)을 계속해서 개발하고 있다. 이러한 자동차 전자 장치의 진화는 거의 대부분이 갈수록 증가하는 차량의 안전에 대한 요구에서 비롯된 것이라고 볼 수 있다. 또한 이러한 진화는 글로벌 경쟁이 심화됨에 따라 자동차 OEM들이 비용 문제에 민감해져 있는 환경에서 소비자의 선호도와 정부 정책이라는 두 가지 요인 모두에 의해 더욱 촉진되고 있다.

전자 제어 시스템은 보다 핵심적인 애플리케이션에서 더욱 보편화되고 있다. 그다지 핵심적이지 않은 애플리케이션이 고장 나는 것은 단지 약간의 불편함만을 낳을 뿐이지만 안전과 관련한 핵심적인 애플리케이션이 고장 나는 것은 사고와 직결되며, 심할 경우 운전자의 사망으로 이어질 수도 있다. 안전과 관련한 핵심적인 자동차 애플리케이션으로는 에어백 제어, 안티스키드 브레이크 및 전자 파워 스티어링 등이 있다.

자동차 전반에 ECU(Electronic Control Unit)가 널리 사용되면서 제한된 전력 한도에서 구현 할 수 있는 견고한 무결성 요건을 갖춘 분산된 지능형 시스템의 필요성이 대두되고 있다. 서브 시스템 공급업체들은 신뢰할 수 있고 경제적인 혁신 솔루션을 개발하기 위해 지속적으로 상호 협력한다. 시스템 견고성 문제를 해결하는 한 가지 예로 시스템 워치독(Watchdog) 디바이스로 활용될 수 있는 저가형 마이크로컨트롤러(MCU) 기반의 모니터링 메커니즘의 구현을 들 수 있다.

엔진 관리, 전자 파워 스티어링, ABS, 에어백 등 대부분의 안전과 관련한 핵심적인 애플리케이션에서 기본 MCU는 여러 가지 중요한 특성을 공유한다(그림 1). 기본 MCU는 16/32bit 마이크로컨트롤러 컴퓨팅 기능, 대용량 온칩 메모리(일반적으로 256Kbyte 이상)를 지원하며, 고장률 0의 고장 방지 기능을 갖추어야 한다. 그렇다면 설계자는 자동차 애플리케이션에서 핵심 시스템의 안전성을 어떻게 보장할 수 있을까?

워치독 동작의 기본 원리

워치독 MCU의 용도는 기본 MCU 또는 시스템이 올바르게 작동하도록 하는 것이다. 워치독 MCU는 돌발적인 사고, 불안정한 전원 공급, 환경적 영향, 하드웨어 고장 및 알 수 없는 소프트웨어 또는 하드웨어 작동 모드 등으로 인해 발생할 수 있는 예상치 못한 오류를 방지한다.

결함 조건이 감지되거나 의심되면 워치독 MCU는 전원 사이클링 또는 자체 초기화 기능을 통해 기본 MCU 또는 전체 시스템에서 하드웨어 시스템을 초기화한다(그림 2). 경우에 따라 워치독 MCU가 기본 MCU로 직렬 통신을 통해 명령을 보내 이와 동일한 작업을 할 수도 있다. 기본 MCU가 정상적으로 작동하지 않는 경우에도 인터럽트 기능은 여전히 제공되어 인터럽트 서비스 루틴에서 실행할 수 있는 전달된 명령에 적절하게 응답할 수 있다. 워치독 MCU는 시스템 오류 이벤트의 특성 및 발생 빈도를 기록하는 기능도 제공한다.

안전과 관련한 핵심적인 애플리케이션 설계자는 FMEA(Failure Mode Effects Analysis), 예비 소프트웨어 및 하드웨어 기술을 조합한 내결함성 설계를 사용하여 사고 발생률 및 심각도를 줄인다. FMEA에는 모든 가능한 고장을 평가하는 절차가 포함된다. 시스템에서 고장으로 파급되는 영향을 분석하고 각 고장을 처리하기 위한 계획을 결정할 수 있다.

예비 소프트웨어는 애플리케이션별로 여러 가지 서로 다른 방법을 사용하여 결과를 계산한다. 이때 결과가 다른 경우에는 문제가 발생할 수 있다. 예비 소프트웨어를 사용하려면 설계자는 해당 상황에 신속히 대응하기 위해 발생할 수 있는 각각의 고장 모드를 예상해야 한다.

예비 하드웨어를 사용하면 여러 가지 장점을 얻을 수 있다. 예비 하드웨어는 시스템을 정지시킬 수 있는 유일한 핵심 구성 요소가 완전히 멈추는 것을 방지한다. 상황에 따라 핵심 구성 요소가 고장날 경우 심각한 성능 저하가 발생할 수도 있다. 예비 하드웨어를 통해 설계자는 곧 발생할 수 있는 고장을 감지하고 모든 고장 모드를 처리할 수 있는 대비책을 갖출 수 있다.

예비 하드웨어를 사용할 경우, 다음과 같은 단점이 있을 수 있다. 첫째, 예비 하드웨어를 지원하기 위해 자동차 설계의 복잡성이 증가한다. 둘째, 동일한 이유로 예비 하드웨어를 제공하기 위해 비용이 늘어난다. 이러한 이유로 설계자는 많은 비용을 초래하지 않으면서 예비적인 안전 관련 애플리케이션을 구현하기 위한 대안을 강구해야 한다. 그 결과, 설계자는 결함 시정 기능 대신 결함 감지 기술을 채택하게 되었으며 이러한 방안으로 시스템의 핵심 부분에만 예비 하드웨어를 갖추어 실현 가능한 결함 감지 기능을 배치하는 것이 있다.

서브 시스템에서 워치독 MCU의 기능

이번에는 워치독 MCU가 주요 서브 시스템에서 기본 MCU와 함께 작동하는 방법에 대해 알아보자. 워치독 MCU는 메인 컨트롤러와의 단순 통신 작업에 항상 참여하며, 메인 컨트롤러로 신호를 보내 MCU가 정상적으로 작동 중임을 확인한다. 워치독 MCU에는 몇 가지 주요 특징이 있다.

PWM 주변 장치

애플리케이션의 특성에 따라 주파수와 듀티 사이클이 다르기 때문에 워치독 MCU에 유연한 온칩 PWM 주변 장치를 장착하는 것이 좋다. 자동차 애플리케이션에서 주파수 범위는 일반적으로 수 Hz에서 수 kHz정도이다. 따라서 결함 모드에 있는 동안 '우연히' 50%의 듀티 사이클이 발생할 수 있으므로 50% 미만의 듀티 사이클이 적절하다. 그러나 항상 온칩 하드웨어 PWM 주변 장치를 장착하는 것은 그리 바람직하지 않다. 하드웨어 주변 장치가 구성되어 활성화된 후에는 소프트웨어 개입 없이 실행되므로 실시간으로 코드 손상을 감지할 수 없다. 이러한 경우에는 온보드 워치독 타이머를 사용하는 것이 좋으며, 그에 따라 하드웨어 PWM 모듈보다는 소프트웨어 PWM 컨트롤이 권장된다.

하드웨어 PWM 주변 장치의 경우와 동일한 주파수 및 듀티 사이클 특성이 적용된다. 소프트웨어 PWM은 실시간 루프 내 소스 코드로 구현 가능하다. 이는 일부 설계자들에게 '가장 효과적인' 내결함성 설계로 간주되고 있으며, 하드웨어 PWM 주변 장치의 응답 시간을 비교했을 때 소프트웨어에서 손상을 신속하게 감지할 수 있는 것으로 나타났다. 안전이 그리 중요하지 않은 애플리케이션에 대해서는 단일 펄스의 주기적인 사용만으로도 활동을 모니터링하기에 충분하다. 이 경우 일반적으로 메인 컨트롤러가 일정한 기간 내에 펄스를 수신해야 한다.

직렬 통신

워치독 MCU는 전용 프로토콜이나 I2C, UART SPI 등 산업 표준 프로토콜을 사용하여 시스템 컨트롤러와 통신한다. 어떤 프로토콜을 사용하든 데이터 전송 모드는 다양하다. 데이터는 모드 구성 시작 시에만 전송되거나 필요에 따라 기본 또는 워치독 MCU에 의해 요청될 수 있다. 데이터가 미리 결정된 시간 간격으로 정기적으로 제공될 수도 있다. 명령, 응답 또는 상태 정보로 구성될 수 있는 데이터 패킷은 CRC 또는 체크섬 평가를 거치거나 거치지 않고 패킷으로 구성되어 압축된 후 수신기로 전송될 수 있다.

확장된 워치독 MCU 기능

감시되는 시스템에서 예비 하드웨어의 배치는 핵심 부분에만 배치한다고 해도 여전히 많은 비용이 든다. 그렇다면 비용 문제는 어떻게 해결해야 할까? 시스템에 기능을 추가하는 '예비' 하드웨어를 활용하는 방법으로 이 문제를 해결할 수 있다. 보조 MCU의 기본 기능 외에도 워치독 MCU는 일부 기본적인 시스템 기능을 처리할 수 있는 충분한 리소스를 확보할 수 있다(그림 3). 이러한 관점에서 워치독 MCU는 기본 프로세서의 작업 부담을 덜어줄 수 있으며 이는 곧 다른 형태로 예비성을 제공하는 것이다. 이러한 설계로 부품 수를 줄이고 예비성이 필요한 시스템 비용을 절감할 수 있다. 예를 들어 워치독 MCU에서 온보드 ADC는 아날로그 전압 변환을 담당하는 기본 디바이스의 예비 디바이스로 사용할 수 있다.

이 시점에 이르면 '바람직한 워치독 프로세서나 감시 프로세서는 어떤 것일까?', 또는 '자동차 애플리케이션에 적합한 워치독 MCU는 어떻게 선택하는가?'와 같은 의문이 들게 될 것이다.

일부 애플리케이션에는 스테퍼 모터, 브러시 또는 브러시리스 DC 모터와 같은 작고 단순한 모터를 작동하는 데 온보드 하드웨어 PWM 주변 장치를 사용할 수 있다. 가능한 경우 PWM을 필터링하고 DAC 기능을 제공하는 데 사용할 수 있다. 결함 코드를 저장하는 데는 비휘발성 메모리 또는 플래시 메모리를 사용할 수 있다. 이러한 메모리는 최종 조립이나 실시간 작동 중 교정 및 작동 파라미터를 저장하는 데도 사용할 수 있다. 따라서 워치독 MCU에는 신뢰할 수 있는 플래시 메모리를 사용해야 한다. 기본 MCU 제어 프로그램이 변경된 경우 워치독 MCU를 변경해야 할 수도 있다. 마이크로칩 테크놀로지와 같은 공급업체의 경우 1백만 회의 삭제/쓰기 주기 및 40년 이상 데이터를 보존할 수 있을 정도의 내구성을 갖춘 독자적인 플래시 메모리 기술을 탑재한 MCU를 제공한다.

워치독 프로세서는 오류 없는 직렬 통신 작업을 유지할 수 있게 해준다. 부트로더 프로그램을 사용하여 기본 MCU에서 워치독 MCU를 플래시 업그레이드할 수 있다. 워치독 MCU를 시스템 감시자로 사용하고 전력 소모가 많은 기본 MCU를 슬립 모드로 전환하여 모듈 전력 소비량을 줄일 수 있다. 그런 다음 기본 MCU를 주기적으로 작동시켜 시스템 상태를 확인하도록 한 후 '관리'가 필요하지 않은 경우 슬립 모드로 다시 진입하도록 한다. 일부 기능의 경우 자동차 엔진이 꺼져 있을 때 워치독 MCU를 활성화해야 한다. 이 경우 마이크로칩 테크놀로지의 저전력 마이크로컨트롤러에 내장된 나노 와트(nanoWatt) 기술이 임베디드 시스템 설계자가 직면한 전력 소비량 문제를 해결해준다. 마이크로칩 테크놀로지의 PIC 마이크로컨트롤러에 내장된 나노 와트 기술은 작동 주파수 범위에서 유연한 전원 관리 모드를 제공한다. 나노 와트 기술은 안정적인 저전력 작동과 관련된 복잡한 문제를 해결하는 기술적으로 실현 가능하며 경제적인 옵션을 제공하기 위해 개발되었다(표 참조).

마이크로칩 테크놀로지는 탁월한 절전 루틴 기반의 플랫폼을 만들 수 있는 광범위한 마이크로컨트롤러를 제공한다. PIC MCU 아키텍처는 다양한 오실레이터 옵션 및 다중 액정 모드, 외부 클럭 모드, 외부 RC 오실레이터 모드를 제공하는 광범위한 온칩 주변 장치와 소프트웨어로 제어되는 다중 클럭 주파수를 생성하는 내부 오실레이터 블록을 포함한다. 마이크로칩 테크놀로지의 마이크로컨트롤러는 다양한 기능을 갖추어 시스템 모니터, 감시 마이크로컨트롤러 또는 코프로세서 디바이스로 서비스하는 데 적합하다.

결론

자동차의 보다 핵심적인 애플리케이션이 MCU 제어 시스템으로 전환됨에 따라 주 시스템 컨트롤러로 16 또는 32bit 마이크로컨트롤러를 활용하는 핵심 시스템의 자동차 임베디드 설계자들은 워치독 또는 감시 MCU를 필요로 하게 되었다. 이처럼 안전과 관련이 있거나 특별한 목적을 가진 핵심 애플리케이션의 경우 시스템에 워치독 MCU를 포함할 가능성이 높다. 워치독 또는 관리용 MCU는 이러한 위험을 관리할 수 있는 실용적이고 널리 사용되는 방법이다. 안전 관련 핵심 기능을 구현하는 ECU를 사용하는 경우 워치독 MCU가 시스템 전반의 무결성과 차량 운전자의 환경에 직접적인 영향을 주므로 워치독 MCU의 역할이 중요하다.

제프 에켈(Jeff Eckel), 마크 베인햄(Mark Baynham), 존 데이(John Day)
자동차 부문 필드 애플리케이션 엔지니어 | 마이크로칩 테크놀로지

====================

출처: http://www.nekorea.co.kr/article_view.asp?seno=5499

댓글 없음: