해당 포스팅에서는 차량 기능안전 표준인 ISO 26262 관련하여, 차량 E/E 시스템의 하드웨어 구성 요소 중 Memory 와 관련된 Failure mode 를 정리합니다.
Overview - MCU Component
위의 그림은 MCU 의 일반적인 요소들과 그들의 관계를 나타내며 각각의 요소에 대한 설명은 다음과 같습니다.
- HW Element 1.1
- MCU 에 연결된 하드웨어 요소로부터 정보를 수신할 수 있도록 하는 인터페이스 처리 요소
- HW Element 1.2
- 기능적 관점에서 Hardware Element 1.1 과 동일한 기능을 하는 인터페이스 처리 요소
- HW Element 2
- External Element 2 를 제어하는데 사용되는 요소
- Control
- HW Element 1.1 및 1.2 의 연결을 제어할 수 있는 선택 신호를 제공하는 요소
- Data SRAM
- Software Element 의 변수를 저장하는 메모리 (소프트웨어와 DMA 사이 및 소프트웨어 요소 자체 사이의 통신 버퍼를 포함)
- Code ROM
- Software Element 에 의해 실행되는 코드와 Software Element 에서 사용하는 상수 데이터를 포함하는 읽기 전용 메모리 (Read Only Memory)
- Watchdog Interface
- External Watchdog 과 통신하는 요소
- DMA (Direct Memory Access) hardware element
- DMA 는 각 Software Element 에서 사용할 수 있으며 주소 지정 가능한 모든 리소스 (메모리, 구성 레지스터) 에 대한 읽기 및 쓰기 접근 권한이 있는 요소
- EVR ( Embedded Voltage Regulator)
- "External Power Supply (e.g. ignition, battery)" 에 의해 전원이 공급되는 입력 / 출력 패드를 제외하고 MCU 내부의 각 하드웨어 요소에 전원 공급을 제공하는 요소
- Reset Generation & Distribution
- Hardware or Software 요소에 의해 제어되는 외부 초기화 소스 또는 내부 초기화 동작에서 발생하는 명령을 기반으로 MCU 의 초기화 상태를 제어 하는 요소
- Clock Generation & Distribution
- "External Clock Source "를 사용하여 PLL을 기반으로 각 하드웨어 요소에 대해 의도한 클럭을 제공하는 요소
- Test Control & Distribution
- MCU 생산 테스트에 필요한 테스트 제어 및 신호 분배를 해주는 요소
위에서 설명한 MCU 의 전체 요소 중 Memory 의 Failure Mode 와 관련된 요소는 아래와 같습니다.
- Data SRAM (Internal and External)
- Code ROM (Internal and External)
Memory 의 Failure Mode
특정 하드웨어 요소의 Failure mode 는 시스템에 할당된 기능 및 안전 요구사항에 따라 다릅니다. 이에, 통합하는 시스템을 기반으로 특정 Failure mode 는 안전 요구 사항을 위반할 수도 있고 그렇지 않을 수도 있습니다.
아래에서 설명하는 Memory 의 Failure mode 는 특정 시스템을 대상으로 정리한 Failure mode 가 아닌 일반적으로 고려할 수 있는 Failure mode 를 정리합니다.
정리한 Failure mode 및 Component 의 H/W Part 는 일반적으로 참조할 수 있는 내용이며 경우에 따라 내용을 삭제, 추가 할 수 있습니다.
Digital I/O 의 Failure mode 는 다음의 형태로 정리합니다.
Component 명
- H/W Part : H/W Part 명
- 기능 : 해당 H/W Part 의 기능
- Failure Mode
- Failure Mode 1
- Failure Mode 2
- 참고사항
- XX
Volatile Memory
- H/W Part : External SDRAM with SDRAM Controller
- 기능
- External SDRAM 은 SDRAM 컨트롤러의 명령에 따라 주어진 행 및 열 주소에 데이터를 저장 (Write)
- External SDRAM 은 SDRAM 컨트롤러의 명령에 따라 주어진 행 및 열 주소에 데이터를 읽음 (Read)
- Failure Mode - Write & Read
- Given write/read access not executed (omission)
- Un-intended write/read access executed (commission)
- Incorrect write / read access result (too early/late)
- Incorrect write / read access result
- 기능
- SDRAM Controller 는 읽기 또는 쓰기 작업을 위해 준비할 행 주소를 제공 (row address)
- SDRAM Controller 는 읽기 또는 쓰기 작업을 위해 데이터에 접근하기 위한 열 주소를 제공 (column address)
- SDRAM data path 는 메모리 array 에 대한 쓰기 / 읽기 데이터를 제공 (Data Word)
- SDRAM Controller 는 읽기 또는 쓰기 작업을 위한 데이터를 가져오는 명령 (ex. 활성화, 쓰기, 읽기, 새로 고침 등) 을 제공 (Instruction (Command))
- Failure Mode - row address
- Given row address not accessed (omission)
- Un-intended row address accessed (commission)
- Delayed row address result (too early/late)
- Incorrect row address result
- Failure Mode - column address
- Given column address not accessed (omission)
- Un-intended column address accessed (commission)
- Delayed column address result (too early/late)
- Incorrect column address result
- Failure Mode - Data Word
- Given data word not executed (omission)
- Un-intended data word executed (commission)
- Delayed data word result (too early/late)
- Incorrect data word result
- Failure Mode - Instruction (Command)
- Given instruction not executed (omission)
- Un-intended instruction executed (commission)
- Delayed instruction result (too early/late)
- Incorrect instruction result
- 기능
Non-volatile memory
- H/W Part : External FLASH with FLASH Controller
- 기능
- External FLASH 는 FLASH 컨트롤러의 명령에 따라 주어진 행 및 열 주오세 데이터를 저장 (Write)
- External FLASH 는 FLASH 컨트롤러의 명령에 따라 주어진 행 및 열 주소에 데이터를 읽음 (Read)
- Failure Mode - Write & Read
- Given write/read access not executed (omission)
- Un-intended write/read access executed (commission)
- Incorrect write / read access result (too early/late)
- Incorrect write / read access result
- 기능
- H/W Part : Embedded FLASH (eFLASH) with eFLASH controller
- 기능
- eFLASH 는 프로그램 코드와 상수 데이터를 저장
- eFLASH 는 eFLASH 컨트롤러의 명령에 따라 데이터를 Program (쓰기)
- eFLASH 는 eFLASH 컨트롤러의 명령에 따라 데이터를 Erase (지우기)
- eFLASH 는 eFLASH 컨트롤러의 명령에 따라 데이터를 Read (읽기)
- Failure Mode - Program
- Program not performed
- Program performed when not requested
- Incorrect Program timing
- Program performed with wrong content
- Failure Mode - Erase
- Erase not perormed
- Erase performed when not requested
- Incorrect erase timing
- Erase performed with wrong content
- Failure Mode - Read
- Read access not performed
- Read access when not requested
- Incorrect read access timing
- Read access delivers wrong content.
- 기능
- Common : Data coherency
- 특징 : 데이터 일관성 (Data coherency) 는 기본 아키텍처와 무관한 coherence invariant 으로 정의
- Failure Mode
- Write to memory "A" not executed (omission).
- 해당 Failure Mode 는 메모리 "A" 를 대해 일관성이 없는 상태로 변경
- Un-intended write to memory "A" (commission).
- 해당 Failure Mode 는 멀티 코어 상황에서, 여러 코어가 동일한 위치에 쓰기를 시도하는 상황에서 발생할 수 있음
- Delayed update (write) of memory "A" (too early/late)
- Content of memory "A" is corrupt.
- 해당 Failure Mode 는 잘못된 쓰기 명령이나 저장소의 Fault 로 인해 발생할 수 있음
- Write to memory "A" not executed (omission).
정리
앞에서도 언급하였지만, 위에서 정리한 Memory 에 대한 Failure mode 는 일반적으로 고려할 수 있는 Failure mode 입니다.
특정 프로젝트를 진행하며 Failure mode 를 도출할 때 참조 할 수 있는 내용으로 실제 시스템의 기능 및 안전 요구 사항에 맞춰 해당 내용을 추가 또는 제거하여 사용할 수 있습니다.
앞서 정리한 Failure mode 에 Failure mode 를 추가 하였을 경우에는 문제가 없지만, 만약 위에서 정리한 Failure mode 를 안전과 관련이 없는 것으로 분류 하여 제거하였을 경우에는 뒷받침 할 수 있는 안전 분석에 대한 근거를 제시할 필요가 있을 수도 있습니다. (고객의 요구로 인해)
'자율주행 개발 프로세스 > Functional Safety (ISO26262)' 카테고리의 다른 글
ISO26262 - Processing Unit 의 Failure Mode 정리 (0) | 2022.03.14 |
---|---|
ISO26262 - Power Supply 의 Failure Mode 정리 (0) | 2022.03.14 |
ISO26262 - Digital I/O 의 Failure Mode 정리 (0) | 2022.03.12 |
ISO26262 - Clock 의 Failure Mode 정리 (0) | 2022.03.12 |
ISO26262 - Analogue I/O 의 Failure Mode 정리 (0) | 2022.03.12 |