타이밍 분석기 클럭 활성화 멀티사이클

author-image

기준

Synopsys® 설계 제약(SDC) set_multicycle_path 및 get_fanouts 명령을 사용하면 활성화 레지스터를 기반으로 멀티사이클 예외를 만들 수 있습니다.

그림 1은 레지스터 enable_reg 등록 din_a_reg[7.0], din_b_reg[7.0], din_x_reg[7.0], din_y_reg[7.0], a_times_b 및 x_times_y등록할 수 있는 활성화 신호를 만드는 데 사용되는 간단한 회로를 보여줍니다.

그림 1. 간단한 등록 지원 설계.

활성화 레지스터 enable_reg 레지스터의 클럭 기간의 2배인 활성화 펄스를 생성하며, 이 때문에 올바른 분석을 위해 멀티사이클 예외를 적용해야 합니다. 레지스터 enable_reg 공급되는 활성화 기반 레지스터에 2의 멀티사이클 설정과 1의 멀티사이클 홀드 를 적용해야 합니다. 다중 사이클 예외는 대상 레지스터가 enable_reg의해 제어되는 등록-등록 경로에만 적용됩니다.

이를 달성하려면 모든 활성화 기반 레지스터에 set_multicycle_path 예외를 적용할 수 있습니다. 모든 활성화 기반 레지스터를 지정해야 하기 때문에 이 방법은 일반적으로 지루할 수 있습니다. 또는 set_multicycle_path 및 get_fanouts 조합은 다음과 같이 사용할 수 있습니다.

활성화된 대상 레지스터에 2의 멀티사이클 #Setup

set_multicycle_path 2 -to [get_fanouts [get_pins enable_reg|q*] \

-through [get_pins -hierarchical *|*ena*]] -end -setup

활성화된 대상 레지스터에 1의 멀티사이클 #Hold

set_multicycle_path 1 -to [get_fanouts [get_pins enable_reg|q*] \

-through [get_pins -hierarchical *|*ena*]] -end –hold

set_multicycle_path 예외 대상은 레지스터의 활성화 포트를 공급하는 레지스터 reg_en 모든 팬아웃으로 제한되며, 다음 옵션으로 수행됩니다.

[get_fanouts [get_pins enable_reg|q*] -through [get_pins -hierarchical *|*ena*]]

표 1은 멀티사이클 예외가 적용된 후 설계에 있는 모든 활성화 기반 레지스터-등록 경로의 새로운 설정 및 보유 관계를 보여줍니다.

표 1에서 레지스터 enable_reg 시작해서 활성화 기반 레지스터에서 끝나는 설정 및 보유 관계가 각각 2와 1임을 알 수 있습니다. 이러한 경로에 설정 및 유지 관계를 수정할 필요가 없는 경우, 다음 멀티사이클 예외를 적용하여 원래 관계를 적용할 수 있습니다.

set_multicycle_path 1 -from [get_pins enable_reg|q*] –end -setup

set_multicycle_path 0 -from [get_pins enable_reg|q*] –end –hold

예제 회로 clock_enable_multicycle.qar 를 다운로드하십시오.

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