
이번 글에서는 Zybo Z7-20 보드에서 자주 사용하게 되는 Clocking Wizard, Block Memory Generator, ILA IP를 정리해보겠습니다. 각 IP가 어떤 역할을 하는지, 설정 창에서 어떤 옵션을 주로 보면 되는지, 그리고 실습에서는 어떤 값을 바꾸면 되는지를 중심으로 설명하겠습니다.
먼저 clk_wiz는 Vivado의 Clocking Wizard IP로, Zybo Z7-20 보드에서 들어오는 125 MHz 기준 클럭을 원하는 주파수의 클럭으로 변환할 때 사용하는 블록입니다.
IP Catalog 열기

Clocking Wizard 검색
더블클릭해서 추가


Clock Monitor
Primitive
MMCM (Mixed-Mode Clock Manager)PLL (Phase-Locked Loop)Clocking Features
Frequency SynthesisMinimize PowerPhase AlignmentDynamic ReconfigSafe Clock StartupJitter Optimization
BalancedMinimize Output JitterMaximize Input Jitter FilteringDynamic Reconfig Interface Options
Input Clock Information
Primary의 Input Frequency (MHz)는 clk_in1에 들어오는 입력 클럭 주파수입니다.Secondary는 보조 입력 클럭을 쓰지 않으면 체크하지 않아도 됩니다.Port Name은 기본값인 clk_in1을 그대로 사용해도 됩니다.Input Jitter는 특별한 이유가 없다면 기본값을 사용합니다.

Output Freq (MHz)의 Requested 값을 원하는 출력 주파수로 변경합니다.Phase (degrees), Duty Cycle (%), power_down 등은 위상 조정, 펄스 폭 조정, 고급 피드백, 저전력 제어와 관련된 고급 기능입니다.
이 탭은 Vivado가 계산한 PLL 내부 파라미터를 요약해서 보여주는 화면입니다.
CLKIN1_PERIOD = 8.000
CLKFBOUT_MULT = 7
DIVCLK_DIVIDE = 1
clk_out1
Divide = 125Duty Cycle = 0.500Phase = 0.000즉, 입력 125MHz를 내부에서 7배한 뒤 125로 나누므로 최종 출력은 7MHz가 됩니다.


설정을 마쳤다면 Generate를 눌러 IP를 생성하면 됩니다.
Block Memory Generator는 FPGA 내부의 BRAM(Block RAM)을 손쉽게 RAM이나 ROM 형태로 구성할 수 있게 해주는 IP입니다. 간단한 데이터 저장, 계수 테이블 저장, LUT 대체 용도 등에서 자주 사용합니다.
IP Catalog 열기
Block Memory Generator 검색
더블클릭해서 추가


특별히 바꿔야 하는 옵션이 없다면 기본값을 사용해도 됩니다.

현재 화면의 의미
Always Enabled 상태로 두고 주소와 write enable로 제어합니다.Memory Size
Write WidthRead WidthWrite DepthRead DepthWrite Depth와 동일하게 설정합니다.Enable Port Type
Use ENA Pinena 포트가 추가됩니다.ena = 1일 때만 해당 클럭에서 읽기/쓰기 동작을 수행합니다.Always Enabledwe = 1이면 해당 주소에 데이터를 씁니다.Port A Optional Output Registers
Primitives Output RegisterCore Output RegisterSoftECC Input RegisterNo ECC라면 크게 신경 쓰지 않아도 됩니다.REGCEA PinPort A Output Reset Options
RSTA PinOutput Reset Value (Hex)Reset Memory LatchReset PriorityREAD Address Change A

설정을 마쳤다면 Generate를 눌러 IP를 생성하면 됩니다.
ILA (Integrated Logic Analyzer)는 FPGA 내부 신호를 실시간으로 관찰할 수 있게 해주는 디버깅용 IP입니다. 시뮬레이션에서는 보이지 않는 실제 보드 동작을 확인할 때 매우 유용합니다.
IP Catalog 열기
ILA 검색
더블클릭해서 추가


Monitor Type
NativeAXINumber of Probes
Sample Data Depth
1024 정도의 기본값이면 보통 충분합니다.Same Number of Comparators for All Probe Ports
Number of Comparators
Trigger Out Port
Trigger In Port
Input Pipe Stages
Trigger and Storage Settings
Capture ControlAdvanced Trigger
Probe Width현재 화면에서는 다음과 같이 설정되어 있습니다.
probe0 : 40비트 신호 연결 가능
probe1 : 1비트 신호 연결 가능
Probe Trigger or Data
설정을 마쳤다면 Generate를 눌러 ILA IP를 생성하면 됩니다.
이번 글에서는 Zybo Z7-20 보드에서 자주 사용하게 되는 Clocking Wizard, Block Memory Generator, ILA IP를 정리하였습니다.