Configuration Requests 가 왜 필요한지 이해하기 위해서는 PCIe Configuration Space 에 대한 설명을 먼저 읽을 수 있음.
Host software 는 direct 로 각 PCIe device 의 address space 에 접근 할 수 있는 것은 아니다.
Host software 는 Root Complex를 통해서 Requests 를 생성하여, traget 이 되는 BDF에 전달할 수 있다.
결국 Request 라는 것은 PCIe Transaction Layer 에서 생성하는 TLP(Transaction Layer Packets)을 말한다.
TLP는 어떠한 종류의 역할을 하느냐에 따라 다음 4가지 type 으로 분류될 수 있다.
1. Memory
2. IO
3. Configuration
4. Message

Configuration Read/Write TLP의 경우 각 function의 configuration address space 를 접근 하기 위한 목적으로 사용되는 Request 들 이다.
Memory Read/Write TLP의 경우 각 configuration address space header 가 물고 있는 BAR 영역 들 즉 Memory adress space 부분에 접근 하기 위한 목적으로 사용되는 Request 들 이다.
| Request | Non-Posted or Posted | Remarks |
| Memory Read Request | Non-Posted | |
| Memory Read Request - Locked access | Non-Posted | |
| Memory Write Request | Posted | |
| Configuration Read (Type 0 / 1) | Non-Posted | |
| Configuration Write (Tyep 0 / 1) | Non-Posted | Write 이지만, confirm 용 completion 을 받아야 한다. |
| Message Request without Data | Posted | |
| Message Request with Data | Posted |
Non-Posted : completion 을 요구하는 request
Posted : completion 을 요구하지 않는 request.
'PCIe' 카테고리의 다른 글
| [PCIe] Power Management - 4 - L1 Sub state (1) | 2024.03.12 |
|---|---|
| [PCIe] Power Management - 2 (0) | 2024.01.03 |
| [PCIe] Power Management - 1 (4) | 2024.01.03 |
| Device PM States (1) | 2022.02.21 |
| PCIe Technology in Automotive. (0) | 2021.04.16 |