자동차의 제어기는 단일 계층이 아니라, 서로 다른 기능과 책임을 가진 여러 계층으로 구성되어 있습니다. 이번 글에서는 브레이크 시스템을 예시로, ASW, BSW(MCAL 포함), MCU(HW Element)로 나눠 각각의 역할과 연결 구조, 설계 및 기능안전 매핑을 정리해 보겠습니다.
2. 전체 아키텍처 구조
[ ASW Layer ]
↓ 기능 판단 및 제어 요청
[ BSW Layer (MCAL 포함) ]
↓ API 제공, 하드웨어 접근 추상화
[ MCU Layer (HW Element, 예: TC387) ]
WDT, SMU, ECC, GTM 등 하드웨어 기능
3. 각 계층에서의 브레이크 시스템 역할
계층
역할
브레이크 시스템 예시
ASW
제어 알고리즘, 판단 수행
ABS 동작 판단, 제동력 계산, 슬립율 분석
BSW (MCAL 포함)
센서 값 처리, API 제공
ADC 값 획득, PWM 제어, CAN 송신
MCU (HW Element)
실제 회로 동작
ADC 변환, PWM 출력 생성, WDT 리셋 감지
4. 계층 간 연결 관계 및 예시
연결 흐름
설명
예시
ASW → BSW API
기능 요청을 BSW API로 전달
Can_Write()로 ABS 상태 전송
BSW → MCAL
MCAL을 통해 하드웨어 직접 제어
Adc_ReadGroup() 호출로 TC387 ADC 사용
MCAL → MCU
레지스터 접근, 신호 출력
PWM 타이머 설정, WDT 활성화
// ABS 제어 루틴 예시
void Abs_MainFunction(void) {
uint16 pedal = Bsw_Adc_Read();
if (pedal > threshold) {
Bsw_Pwm_SetOutput(Wheel_Valve, duty);
Bsw_Can_Transmit(ABS_Status);
}
}
5. 설계 요구사항 연결 매핑
항목
ASW
BSW (MCAL)
MCU (HW)
입력 처리
슬립율 계산, 필터 적용
ADC 결과 확인 및 보정
ADC 모듈로 실제 변환 수행
제동 제어
제동력 계산 및 제어 결정
PWM 제어 명령 생성
GTM으로 PWM 신호 생성
통신 처리
제어 상태 CAN 전송
Can_Write() 호출
CAN Controller 동작
Fault 대응
비정상 판단 및 제한 제어
Watchdog 관리, Dem 기록
WDT 리셋 트리거, SMU 오류 감지
6. 기능안전 요구사항 매핑 (ASIL 대응)
Safety Goal
ASW 대응
BSW (MCAL) 대응
MCU (HW) 대응
잘못된 제동 방지 (ASIL D)
슬립율 감시, 제동 제한 로직
API 내부 진단 처리
Lockstep CPU, SMU 전파
센서 오류 검출 (ASIL C)
센서 이중 비교, 값 검증
ADC range check, CRC 확인
ADC limit comparator, ECC
응답 없음 감지
Checkpoint 방식 Flow 감시
WdgM Alive/Deadline 감시
WDT 타임아웃 리셋
7. 사용 MCU 예시: Infineon TC3XX
ADC 모듈 – 고속 전압/센서 신호 처리
GTM – PWM 파형 생성 (밸브 제어)
SMU – Fault 상황 감지 및 리셋 트리거
ECC – 메모리 오류 감지 및 수정
WDT – 소프트웨어 오작동 감지
8. 마무리 정리
계층
핵심 역할
기능안전 대응 요약
ASW
제어 판단, 알고리즘 수행
PFM, 센서 비교, 로직 검증
BSW (MCAL)
API 제공, 하드웨어 추상화
WdgM, Dem, ADC 진단
MCU (HW)
실제 동작, 오류 감지
WDT, SMU, ECC, SCU 사용