물리적 주소 공간을 부분적으로 가상화하는 것이 가능합니까?

물리적 주소 공간을 부분적으로 가상화하는 것이 가능합니까?

저는 현재 FPGA가 포함된 시스템을 개발 중입니다. 우리는 다양한IP 코어지지하는 사람들AXI 버스. PL의 IP 코어와 통신(프로그래밍 가능한 논리), PS의 주소 공간에 매핑해야 합니다.(처리 시스템). 예를 들어 널리 사용되는징크 PS주소 공간은 다음과 같습니다(UG585 - 섹션 4.1: 주소 매핑)

  • 0x0000_0000 ~ 0x7FFF_FFFF:실제 메모리에 매핑합니다. 외부 DDR 또는 온칩 메모리
  • 0x8000_0000 ~ 0xBFFF_FFFF: 위에서 설명한 PL에 매핑됩니다.
  • 0xE000_0000 ~ 0xFFFF_FFFF:칩의 다양한 기타 장치

보시다시피 주소 공간의 처음 1GB만 물리적 메모리용으로 예약되어 있고 나머지는 PL 또는 PS의 장치가 차지합니다. 따라서 가능하다면 처음 1GB에만 가상화 범위를 적용해 MMU를 건너뛰고 칩에 있는 장치에 더 빠르게 접근할 수 있도록 할 수 있다.

나는 그러한 수정을 통해 모든 종류의 프로세스가 권한을 제어하지 않고도 시스템의 물리적 장치에 액세스할 수 있도록 허용한다는 것을 알고 있습니다. 그래서 질문은

  • 물리적 주소 공간을 부분적으로 가상화하는 것이 가능합니까?
  • 가능하다면 이것이 합리적인가?

관련 정보