반응형

FPGA - 프로세서 그리고 데이터의 이동/PCIe 7

PCIe Link training과 Link equalization의 과정

본 문서는 TI사의 https://www.ti.com/lit/pdf/snla415  문서를 정리한 것입니다.  PCIe 과거와 현재는 다음 그림과 같다.  3. Components of PCIe Communication 3.1 Root ComplexRoot Complex는 CPU, 메모리, PCIe 장치 사이를 연결한다. Root Complex는 CPU 내부에 있는 경우도 있고, 외부에 있는 경우도 있다. PCIe endpoint가 출력하는 데이터가 CPU, 메모리에 전달되려면 Root Complex를 거쳐야 한다. 1개의 Root Complex와 다수의 PCIe endpoint 간에 PCIe 통신이 이루어진다. 3.2 Repeater Repeater는 Root complex와 PCIe endpoint ..

FPGA의 PCIe에 접근에 필요한 file descriptor는 무엇인가?

컴퓨터의 dev 폴더에 있는 xdma라는 이름이 붙여진 file descriptor를 이용하여, 컴퓨터는 FPGA1, 2보드의 pcie에 데이터를 주고 받는다. 2가지의 file descriptor가 존재한다. /dev/xdma0_user : FPGA의 register에 데이터를 쓰거나 읽을 때 사용 /dev/xdma0_c2h_0 : 컴퓨터가 DMA를 이용하여 FPGA에서 데이터를 load할 때 사용 file descriptor를 사용하기 위한 초기화를 수행한다. 컴퓨터가 PCIe slot에 꽂힌 FPGA 카드를 인식하고, xdma 드라이버를 정상적으로 load하였다면, dev 폴더에 위와 같은 file descriptor가 검색이 된다. 컴퓨터가 FPGA에 데이터를 쓰거나 읽기 위해서는 dev에 검색된..

PCIe - lspci , link status

lspci를 하면 검색되는 것이 PCIe의 root 역할과 endpoint가 다 검색이 된다. link status를 보고 실제 몇 GT/s 로 연결되어 있는지 확인할 수 있다. xilinx pcie lane을 4개로 하고 속도를 8GT/s로 설정한 것이다. 프로세서 RCW에서 5GT/s로 설정해두어서 link status가 위와 같았다. 그래서 프로세서의 PCIe 관련 속도를 8GT/s로 올리고 다시 부팅을 해보았다.

PCIe 통신 - Configuration Space, Base Address Register 개념

PCIe 통신 중 언급되는 용어인 Configuration Space, Base Address Register 에 대해 정리하였다.  Configuration Space ?  PCI configuration space is the underlying way that the Conventional PCI, PCI-X and PCI Express perform auto configuration of the cards inserted into their bus.   프로세서의 PCIe slot에 PCIe 장치들이 연결되어 있다. 프로세서는 어떻게 PCIe 장치를 인식할 수 있을까 ? PCIe장치가 나 이런 장치에요 라고 프로세서한테 알려주는것인가? 아니다! PCIe 장치는 Configuration Space를..

PCIe 속도 그리고 속도의 결정

PCIe의 속도는 다음과 같다. 등급이 다른 PCIe 기기를 서로 연결하면 어떻게 될까? 프로세서와 FPGA간에 PCIe 통신을 예로 들어보자 2종류의 프로세서가 있다 - 1. PCIe 1.0 lane 4개를 지원하는 프로세서 - 2. PCIe 3.0 lane 1개를 지원하는 프로세서 FPGA의 경우 - FPGA의 PCIe IP 모듈이 PCIe 2.0 lane 4개를 지원한다 FPGA와 위 2종류의 프로세서를 연결하여 PCIe 통신을 한다고 보자. 그러면 PCIe 통신 속도는 어떻게 될 것인가? 1번의 프로세서는 FPGA와 PCIe 1.0 Lane 4개로 통신하며 2번의 프로세서는 FPGA와 PCIe 2.0 Lane 1개로 통신한다. 즉 PCIe 등급이 서로 다른 기기가 연결되어, PCIe 통신을 한다면..

반응형