Electrical engineering

FPGA

SPI Interface - FPGA to Chip

在夏 2024. 6. 12. 16:40
728x90

총 3가지의 주체가 존재.

  1. 프로세서
  2. FPGA
  3. SPI 지원 (호환) Chip.
  • 사용자는 Chip의 데이터시트를 보고 Chip을 제어하기 위한 명령어를 파악한다.
    • 보통 24bit 길이
  • 제어 명령어를 프로세서에 입력하고, 프로세서는 이 명령어를 FPGA에 전달한다.
    • 프로세서에 Chip과 direct wire가 연결되어 있다면 프로세서에서 곧바로 제어 가능
  • FPGA는 프로세서로부터 받은 제어 명령어를 FPFA 내부에 있는 SPI module (Verilog 형태)에 전달.

### FPGA 내부에 구현된 SPI controller module의 역할?

  • 칩 제어 명령어는 보통 24bit의 형태이다.
  • 이 bit 단위를 SDI Port가 한개인 Chip에 어떻게 전달? (port가 한개이므로 Serial 형태로 입력)
  • FPGA안에 구현한 SPI 모듈은 SPI 칩의 CS, CLK SDIO 핀에 필요한 Pulse 파형을 생성한다.
  • 칩 데이터 시트를 보면 칩을 제어하기 위해 각 pin의 데이터, 클럭 등을 어떤 형태로 넣어주어야 하는지 설명되어 있다.
  • FPGA SPI 모듈은 위와 같은 파형을 만들어주는 역할을 한다.

 

  • SPI 통신을 지원하는 칩에는 SCLK, SCS, SDI, SDO, pin이 있다.
    • 종종 SDIO pin이 있는데 이것은 SDI, SDO의 역할을 동시에 수행한다.
  • SPI 칩의 SDI 핀에 SPI 칩의 내용을 Read 하겠다는 명령어를 Serial로 보낸다.
  • SPI 칩은 SDO 핀으로 데이터를 출력한다. (Write)
  • FPGA에서 받아 SCLK의 edge마다 1bit 씩 read 한다.
728x90

'FPGA' 카테고리의 다른 글

MIPI (Mobile Industry Processor Interface) - CSI, DSI, D-PHY, C-PHY  (0) 2024.06.19
SPI Interface Basic Concept  (0) 2024.06.12
UART Interface  (1) 2024.06.11