APB Read Transfer 과정

1. Setup 단계

  • 읽기 전송을 시작하기 위한 초기 설정 단계입니다. 마스터가 슬레이브에게 접근할 주소를 지정하고 읽기 명령을 설정합니다.
  • 신호:
    • PADDR: 마스터가 읽고자 하는 슬레이브의 레지스터 주소를 설정합니다.
    • PSEL: 마스터는 특정 슬레이브를 선택하기 위해 PSEL 신호를 활성화합니다. 슬레이브는 이 신호가 활성화되면 자신이 선택되었음을 인지합니다.
    • PWRITE: 읽기 동작이므로 PWRITE 신호는 0으로 설정됩니다. 이 신호는 쓰기(1) 또는 읽기(0) 동작을 결정합니다.

2. Access 단계

  • Access 단계는 트랜잭션이 유효해지며, 실제로 데이터가 슬레이브에서 마스터로 전송되는 단계입니다. 마스터는 PENABLE 신호를 활성화하고, 슬레이브는 요청된 데이터를 PRDATA 버스를 통해 마스터에게 전달합니다.
  • 신호:
    • PENABLE: 마스터는 트랜잭션을 진행하기 위해 PENABLE 신호를 활성화합니다.
    • PRDATA: 슬레이브는 마스터가 요청한 주소의 데이터를 PRDATA 버스를 통해 전송합니다.
    • PREADY: 슬레이브는 PREADY 신호를 통해 마스터에게 데이터를 준비했음을 알립니다. 이 신호가 1일 때 마스터는 데이터를 읽을 수 있습니다.

3. Completion 단계

  • 트랜잭션이 완료되면 마스터는 트랜잭션을 종료하고 슬레이브는 데이터를 성공적으로 전송했음을 확인합니다.
  • 신호:
    • PENABLE: 마스터는 트랜잭션이 종료되었음을 알리기 위해 PENABLE 신호를 비활성화(0)합니다.
    • PSEL: 마스터는 슬레이브 선택을 해제하기 위해 PSEL 신호를 비활성화합니다.
    • PREADY: 슬레이브가 준비 상태에서 벗어나면 PREADY 신호를 비활성화할 수 있습니다.

APB Read Transfer 신호 타이밍 요약

  1. Cycle 1 (Setup 단계):
    • PADDR: 마스터가 읽고자 하는 슬레이브 주소를 설정.
    • PSEL: 슬레이브 선택 신호가 활성화됨.
    • PWRITE: 읽기 작업이므로 0으로 설정.
  2. Cycle 2 (Access 단계):
    • PENABLE: 활성화(1)되어 트랜잭션이 시작됨.
    • PREADY: 슬레이브가 데이터를 전송할 준비가 완료되면 1이 됨.
    • PRDATA: 슬레이브는 해당 주소에서 읽은 데이터를 PRDATA 버스로 마스터에게 전송.
  3. Cycle 3 (Completion 단계):
    • PENABLE: 비활성화(0)되어 트랜잭션이 종료됨.
    • PSEL: 비활성화(0), 트랜잭션이 종료되었음을 나타냄.
    • PREADY: 슬레이브는 PREADY를 1로 유지하며 전송 완료를 확인함.

APB Read Transfer의 주요 특징

  • 단순한 트랜잭션 구조: APB 프로토콜에서의 읽기 동작은 2개의 클럭 사이클을 필요로 합니다. 첫 번째 사이클에서는 주소 설정과 슬레이브 선택이 이루어지고, 두 번째 사이클에서는 데이터 전송이 이루어집니다.
  • 비파이프라인 처리: APB는 파이프라인 처리를 지원하지 않기 때문에, 한 번에 하나의 트랜잭션만 처리됩니다. 마스터는 하나의 트랜잭션이 완료된 후에야 다음 트랜잭션을 시작할 수 있습니다.
  • 데이터 전송의 단순성: 읽기 전송은 마스터가 슬레이브의 특정 주소에 접근하여 데이터를 읽어오는 방식으로, 슬레이브는 요청된 데이터를 PRDATA 버스를 통해 전송하고, 마스터는 이를 수신하여 처리합니다.
  • PREADY 신호의 역할: PREADY 신호는 슬레이브가 데이터를 읽어올 준비가 되었는지를 나타냅니다. 슬레이브가 준비되지 않았다면 PREADY 신호는 0으로 유지되며, 준비가 완료되면 1로 설정됩니다. PREADY가 1이 되면 트랜잭션이 진행됩니다.

* https://verificationforall.wordpress.com/apb-protocol/

'SoC Protocol > AMBA' 카테고리의 다른 글

06. AHB Write Operation  (0) 2024.09.27
05. AHB Interface  (0) 2024.09.27
03. APB Write Transfer  (0) 2024.09.27
02. APB interface  (0) 2024.09.27
01. Common sense (What is bus)  (0) 2024.09.27

+ Recent posts