KOKU005 February   2023

 

  1.   요약
  2.   상표
  3. 1BSL 기능 개요
  4. 2용어
  5. 3BSL 아키텍처
    1. 3.1 설계
      1. 3.1.1 타임아웃 기능
        1. 3.1.1.1 인터페이스 자동 감지
        2. 3.1.1.2 명령 수신
    2. 3.2 BSL 호출
      1. 3.2.1 빈 장치
      2. 3.2.2 애플리케이션 요청
      3. 3.2.3 GPIO 기반 호출
      4. 3.2.4 사서함 디버그 명령
      5. 3.2.5 기타
        1. 3.2.5.1 부팅 전 애플리케이션 확인
    3. 3.3 메모리
      1. 3.3.1 SRAM 메모리 사용량
    4. 3.4 BSL 구성
    5. 3.5 BSL 상태
  6. 4부트로더 프로토콜
    1. 4.1 패킷 형식
    2. 4.2 UART 및 I2C BSL 프로토콜
      1. 4.2.1 BSL 승인
      2. 4.2.2 주변 기기 구성
        1. 4.2.2.1 UART
        2. 4.2.2.2 I2C
        3. 4.2.2.3 CRC
    3. 4.3 부트로더 코어 명령
      1. 4.3.1  Connection
      2. 4.3.2  장치 정보 가져오기
      3. 4.3.3  부트로더 잠금 해제
      4. 4.3.4  데이터 프로그래밍
      5. 4.3.5  빠른 데이터 프로그래밍
      6. 4.3.6  데이터 다시 읽기
      7. 4.3.7  플래시 범위 삭제
      8. 4.3.8  대량 삭제
      9. 4.3.9  공장 초기화
      10. 4.3.10 독립 실행형 검증
      11. 4.3.11 애플리케이션 시작
      12. 4.3.12 전송 속도 변경
    4. 4.4 BSL 코어 응답
      1. 4.4.1 BSL 코어 메시지
      2. 4.4.2 자세한 오류
      3. 4.4.3 메모리 다시 읽기
      4. 4.4.4 장치 정보
      5. 4.4.5 독립 실행형 검증
    5. 4.5 부트로더 보안
      1. 4.5.1 암호로 보호된 명령
        1. 4.5.1.1 보안 경고
      2. 4.5.2 BSL 입력
  7. 5부트로더를 사용한 샘플 프로그램 흐름
  8. 6보조 부트로더
    1. 6.1 보조 부트로더 예
  9. 7인터페이스 플러그인
    1. 7.1 구현
      1. 7.1.1 Init
      2. 7.1.2 Receive
      3. 7.1.3 Transmit
      4. 7.1.4 Deinit
      5. 7.1.5 중요 참고
    2. 7.2 플래시 플러그인 유형
    3. 7.3 기존 인터페이스 재정의
      1. 7.3.1 UART 인터페이스 플래시 플러그인 예
  10. 8참고 문헌
  11. 9개정 내역

보조 부트로더

ROM 부트로더는 사용자 지정 부트로더를 사용할 수 있는 옵션을 제공합니다. 이를 위해서는 메인 플래시 메모리에 사용자 지정 부트로더를 로드하고 비 메인 플래시의 BSL 구성에 등록합니다. 다음에 ROM BSL이 호출되면 보조 부트로더 구성 필드와 해당 필드를 확인하게 되며, 컨트롤은 ROM BSL로 다시 돌아가지 않을 것으로 예상됩니다.

BCR 구성의 BSL 모드 구성은 2차 BSL에도 적용할 수 있습니다. 이 설정을 비활성화하면 보조 BSL이 호출되지 않습니다.

부트로드 프로세스 중에 의도하지 않은 삭제가 발생하지 않도록 사용자 지정 BSL이 로드된 플래시 메모리 영역은 BCR 구성에서 쓰기 보호되어야 합니다. 보조 부트로더 사용 사례의 경우 비 메인 쓰기 보호는 선택 사항입니다. 그러나 삭제 후 보조 부트로더 포인터가 제대로 복원되어야 합니다.

주:

보조 부트로더를 삭제하면 장치가 잠길 수 있습니다. 따라서 보조 부트로더 메모리 영역을 작성해야 합니다.