관리 메뉴

Leo's Garage

AURIX TC3xx EVADC Self Diagnostic - Converter Diagnostics 본문

Embedded/AURIX

AURIX TC3xx EVADC Self Diagnostic - Converter Diagnostics

LeoBehindK 2023. 7. 20. 00:08
728x90
반응형

AURIX TC3xx EVADC Self Diagnostic 구현에 관해 정리하고자 한다. 

 

EVADC는 ADC로 쉽게 말해 Analog로 들어오는 input Signal을 적절하게 Digital Signal로 변환해주는 HW 장치라고 이해하면 된다. 

일반적으로 차량 시스템에는 다양한 Analog Signal이 있는데, 모든 신호은 전압의 형태로 들어오게 되고, 그 전압을 측정하여 정해진 Bit수에 맞게 변환해서 그 값을 User에게 전달하게 된다. 

EVADC는 12bit ADC로 들어오는 전압을 0부터 4095까지 표현할 수 있다. 

일반적으로 MCU의 공급 전압은 5V이고, ADC ref Voltage로 5V를 주로 사용하므로 4095는 5V라고 생각해도 된다.

보통 더 큰 전압이 들어오면 해당 전압을 0 ~ 5V 사이로 조정하고 그 스케일 다운된 전압을 읽어서 역 계산하는 방식으로 ADC를 활용한다. 

AURIX는 이러한 ADC HW module에 대해 스스로 점검하는 기능을 가지고 있다. 

그 중에서 오늘은 Converter Diagnostics라고 부르는 기능에 대해 정리하고자 한다. 

AURIX EVADC는 여러가지 자체 검증 기능을 가지고 있다.

위의 그림에서 보다시피 Converter Diagnostic은 Vddm과 Vssm에 ADC Kernel을 한 번씩 접촉시켜서 Max와 Min 값이 정상적으로 읽히는지를 점검하는 기능이다.

EVADC는 Cluster라 불리는 단위로 구성되어 있는데 이 Cluster에는 적게는 8개에서 많게는 16개의 ADC input port가 달려있다. 따라서 Cluster 내에 하나의 ADC input에 대해서 Diagnostic을 하게 되면 해당 Cluster는 정상이라고 판단할 수 있다. 

 

이 Converter Diagnostic 기능을 사용하기 위해서는 ADC input port를 open 상태로 열어둬야만 한다. 따라서 애초에 보드 설계 시에 점검할 ADC Cluster를 정하고 해당 Cluster 내에 open된 ADC input port를 하나 씩 열어둬야 한다. 

 

위에서 보다시피 GLOBTL register에 특정 pin을 setting하면 진단 기능을 사용할 수 있다. 

쉽게 설명해보면, CDEN을 1로 Set 하면 Converter Diagnostic 기능이 활성화된다. 

CDSEL을 0x0으로 하면 Vddm, 0x1로 설정하면 Vssm에 대한 진단을 하게 된다. 

더불어 CDCH의 값을 입력해서 진단으로 사용할 Channel을 선택할 수 있다. 

예를 들어 16개 Cluster에 대해서 0xF를 입력하면, 16번째 Channel을 진단용으로 사용하겠다는 것과 같다. 

추가로 GLOBTE로 Primary Group과 Secondary Group 중 Test를 진행할 Cluster를 지정할 수 있다. 

또한 GxQCTRLi register의 SRCRESREG를 이용하여 ADC 결과를 어떤 Group Result Register에 담아서 확인할 것인지 정할 수 있다. 

 

728x90
반응형
Comments