다양한 고속 데이터 전송을 위한 FPGA Mezzanine Card (FMC) Low Pin Count (LPC) 인터페이스를 제공
Audio CODEC:
오디오 입력과 출력을 처리할 수 있는 CODEC 칩이 포함
HDMI Out:
HDMI 출력을 통해 디스플레이 장치에 비디오 신호를 전송
VGA:
VGA 출력을 통해 디스플레이 장치에 아날로그 비디오 신호를 전송
128x32 OLED:
작은 OLED 디스플레이를 제어
Clock:
시스템의 클럭 신호를 제공
XADC:
아날로그 디지털 변환기(ADC)로 아날로그 신호를 디지털로 변환
LEDs, Switches, PROG SW, DONE LED, JTAG:
다양한 입출력 장치들로, FPGA 설계의 상태를 표시하거나 사용자 입력을 받을수 있음
Processor Subsystem
Dedicated
512 MB DDR3:
프로세서가 사용하는 메모리
Reset, Clock:
프로세서 시스템의 리셋과 클럭 신호를 제공
Multiplexed I/O (MIO)
QSPI Flash:
빠른 저장 장치로 사용
SD Card:
외부 저장 장치로 사용
Gb Ethernet:
기가비트 이더넷 인터페이스로 네트워크 연결을 제공
USB OTG:
USB On-The-Go 기능을 제공
USB UART:
USB를 통한 직렬 통신을 제공
Pmod Compatible, LED, Switches:
프로세서 시스템에서도 사용할 수 있는 Pmod, LED, 스위치
User Configured Logic (Prog. Logic)와 Processor Subsystem으로 나눈 이유
User Configured Logic (Prog. Logic)
FPGA의 프로그래머블 로직 영역을 말하며, 사용자가 자유롭게 설계하고 구성할 수 있는 영역임. 이 영역에는 다양한 외부 장치들이 연결될 수 있으며, 이는 사용자 설계에 따라 다르게 동작할 수 있음.
Processor Subsystem
Zynq SoC의 ARM 프로세서와 관련된 부분임, 프로세서 시스템은 FPGA 로직과는 독립적으로 동작함.
즉 이렇게 나눈 이유는
User Configured Logic 부분은 주로 하드웨어 설계를 통해 처리 성능이 중요한 작업들을 구현함. 예를 들어, 신호 처리, 데이터 변환, 고속 인터페이스 처리 등이 이에 해당함. 이 부분은 FPGA의 유연성을 최대한 활용하여 특정 요구사항에 맞춘 하드웨어 로직을 설계할 수 있음.
Constraints file이나 Block Design으로 설계하여 사용 (Vivado)
Processor Subsystem 부분은 소프트웨어 기반의 작업을 처리함. 예를 들어, 파일 시스템, 네트워크 통신, 사용자 인터페이스 처리 등이 이에 해당함. 이 부분은 ARM 프로세서의 강력한 연산 능력과 다양한 주변 장치 인터페이스를 활용하여 복잡한 소프트웨어 작업을 수행함.