에지 정렬 소스 동기화 출력 제한

author-image

기준

소스 동기 출력 인터페이스에서 FPGA 대상 장치의 클럭을 공급합니다. 에지 정렬된 소스 동기화 인터페이스에서 클럭 전환은 데이터 전환과 동시에 발생합니다. 그림 1은 샘플 소스 동기 출력 인터페이스를 보여줍니다.

그림 1. 소스 동기 출력 인터페이스.

다음 단계를 사용하여 에지 정렬 소스 동기화 출력 인터페이스를 제한합니다.

  1. 기본 및 생성된 클럭 생성
  2. 출력 지연 제약 조건 추가
  3. 잘못된 경로 예외를 추가하여 타이밍 분석 및 보고에서 잘못된 경로를 제외합니다.

이러한 단계 또는 아래 설명된 계산 및 제약 조건에 대한 자세한 내용은 소스 동기화 인터페이스 제한 및 분석(PDF)을참조하십시오.

시계

FPGA 입력 포트에 기본 클럭이 필요합니다.

생성된 클럭은 모든 위상 잠금 루프(PLL) 출력에 필요합니다. 이중 데이터 속도 에지 정렬 소스 동기화 출력은 출력 클럭을 데이터 클럭과 정렬합니다.

FPGA 출력 클럭 포트에 생성된 클럭이 필요합니다. 생성된 클럭은 데이터 버스의 출력 지연 값에 대한 클럭 참조입니다.

출력 지연 제약 조건

최대 기울기 사양을 사용하여 출력 지연 값을 계산할 수 있습니다. 최대 왜곡 사양은 데이터 버스의 개별 비트가 FPGA 떠날 수 있는 시간 변동을 나타냅니다.

출력 최대 지연 값은 클럭 기간(최대 기울기 값)입니다.

출력 최소 지연 값은 최대 기울기 값입니다.

False Path 예외

이 에지 정렬 예제에서는 상승 및 하강 소스 및 대상 클럭 전환 시 데이터가 전송됩니다. 데이터가 반대쪽 에지 클럭 전환에서 전송되지 않기 때문에 거짓 경로 예외를 사용하여 상승 및 낙하 클럭 전환을 줄입니다.

샘플 SDC 파일

# FPGA 입력 포트에 기본 클럭 생성, 10ns 기간
create_clock -name input_clock -period 10 [get_ports clk_in] #

PLL 출력에 생성 클럭 생성
# 출력 clk[0]는 데이터
레지스터를 구동합니다 # 출력 clk[1]는 출력 클럭
포트를 구동합니다. create_generated_clock -name data_clock -source [get_pins pll|inclk[0]] \
[get_pins pll|clk[0]]
create_generated_clock -name clock_clock -source [get_pins pll|inclk[0] \
[get_pins pll|clk[1]]

# FPGA create_generated_clock 출력 클럭 포트에서 생성된 클럭 만들기
-name output_clock -source [get_pins pll|clk[1]] \
[get_ports clk_out] # 최대 및 최소 출력 지연

제약 조건 추가 #
+/- 250ps의 왜곡 요구 사항 가정
# set_output_delay -max -clock output_clock 위에 나열된 출력 지연 값에 대한 방정식 사용
[expr { 10 - 0.250 }] \
[get_ports data_out*]
set_output_delay -max-clock output_clock -clock_fall \
[expr { 10 - 0.250 }] [get_ports data_out*]
-set_output_delay -min -clock output_clock 0.250 [get_ports data_out*] set_output_delay -를 추가합니다.
min-clock output_clock -clock_fall 0.250 \
[get_ports data_out*]

-추가 # 크로스 클럭 전송에 대한 거짓 경로 예외 추가
set_false_path -setup -end -rise_from [get_clocks data_clock] \
-fall_to [get_clocks output_clock]
set_false_path -end -fall_from [get_clocks data_clock] \
-rise_to [get_clocks output_clock]
set_false_path -hold-end -rise_from [get_clocks data_clock] \
-fall_to [get_clocks output_clock]
set_false_path -hold-end -fall_from [get_clocks data_clock] \
-rise_to [get_clocks output_clock]

이 페이지의 콘텐츠는 원본 영어 콘텐츠에 대한 사람 번역 및 컴퓨터 번역의 조합으로 완성되었습니다. 이 콘텐츠는 편의와 일반적인 정보 제공을 위해서만 제공되었으며, 완전하거나 정확한 것으로 간주되어선 안 됩니다. 이 페이지의 영어 버전과 번역 간 모순이 있는 경우, 영어 버전이 우선적으로 적용됩니다. 이 페이지의 영어 버전을 확인하십시오.