본문 바로가기

주의!!! 내용이 실제 업무에 맞지 않을 수 있으므로 아래 내용을 토대로 실무에 적용을 하면 안됩니다. 아무런 책임이 없는 글입니다. 챗GPT는 실수를 허용합니다. ^^;;;

UPF 파일을 작성하는 과정은 전적으로 수동으로 수행될 수 있습니다. 일반적으로 설계 엔지니어가 저전력 설계 요구사항을 기반으로 UPF 파일을 작성합니다. UPF 파일은 텍스트 파일 형식으로, 전원 도메인, 전원 스위치, 레벨 시프터, 전원 상태 등을 정의합니다.

UPF 파일 작성 단계

  1. 전원 도메인 정의: 설계의 각 부분이 어떤 전원 도메인에 속하는지 정의합니다.
  2. 전원 스위치 정의: 전원 스위치를 정의하여 전원 도메인 간의 전원 공급을 제어합니다.
  3. 레벨 시프터 정의: 서로 다른 전원 도메인 간의 신호 전송을 위해 레벨 시프터를 정의합니다.
  4. 전원 상태 정의: 다양한 전원 상태(전원 켜짐, 꺼짐 등)를 정의합니다.
  5. 전원 포트 정의: 전원 공급을 위한 포트를 정의합니다.

예제: UPF 파일 작성

아래는 간단한 UPF 파일 예제입니다.

1. 전원 도메인 정의

# Define power domains
create_power_domain PD1 -elements {U1} 
create_power_domain PD2 -elements {U2}

2. 전원 스위치 정의

# Define power switches
create_power_switch PS1 -domain PD1 -input_supply {VDD} -output_supply {VDD_PD1} -control {VDD_CTL}

3. 레벨 시프터 정의

# Define level shifter
create_level_shifter LS1 -from PD1 -to PD2 -location {U1_to_U2_ls}

4. 전원 상태 정의

# Define power states
create_power_state STATE_ON -domain PD1 -default
create_power_state STATE_OFF -domain PD1 -off

5. 전원 포트 정의

# Define supply ports
create_supply_port VDD
create_supply_port VDD_PD1
create_supply_port VDD_CTL
create_supply_port VDD_PD2

UPF 파일 작성 시 고려 사항

  1. 설계 사양 분석: 설계의 저전력 요구사항을 분석하고 각 모듈이 어떤 전원 도메인에 속해야 하는지 결정합니다.
  2. 전원 관리 전략 결정: 전원 스위치, 레벨 시프터 등의 전원 관리 요소를 설계에 어떻게 배치할지 결정합니다.
  3. 문서화: UPF 파일에 포함된 각 요소와 그 역할을 문서화하여 이해하기 쉽게 만듭니다.

도구의 도움

Synopsys SpyGlass는 UPF 파일을 직접 생성하는 도구는 아니지만, SpyGlass Power는 설계의 전력 소모를 분석하고 전력 관리 전략을 검증하는 데 도움이 될 수 있습니다. UPF 파일을 수동으로 작성하는 대신, SpyGlass Power를 사용하여 초기 전력 분석을 수행하고 그 결과를 바탕으로 UPF 파일을 작성하는 접근법을 제안할 수 있습니다.

다음은 SpyGlass Power를 사용하여 초기 UPF 파일을 만드는 과정을 단계별로 설명합니다.

단계 1: SpyGlass Power 설치 및 설정

SpyGlass Power를 사용하기 전에 설치하고 환경을 설정해야 합니다. 이를 위해 필요한 경로와 라이브러리를 설정합니다.

단계 2: 기본 넷리스트 파일 준비

간단한 AND 게이트 회로의 기본 넷리스트 파일을 준비합니다.

기본 넷리스트 (basic_netlist.v)

module simple_and (
    input a,
    input b,
    output c
);
    assign c = a & b;
endmodule

단계 3: SpyGlass Power 설정 파일 작성

SpyGlass Power 설정 파일을 작성하여 넷리스트 파일을 읽고 초기 전력 분석을 수행합니다.

SpyGlass Power 설정 파일 (spyglass_power.tcl)

# SpyGlass 환경 설정
setenv SEARCH_PATH /path/to/library/files
setenv TARGET_LIBRARY library.db
setenv LINK_LIBRARY library.db

# 디자인 파일 읽기
read_netlist -verilog basic_netlist.v

# 디자인 엘라보레이션
elaborate

# 전력 분석 실행
run_power_analysis

# 전력 분석 보고서 생성
report_power -format html -out power_report.html

단계 4: SpyGlass Power 실행

SpyGlass Power를 실행하여 설정 파일을 바탕으로 전력 분석을 수행합니다.

spyglass -batch -f spyglass_power.tcl

단계 5: 전력 분석 결과 바탕으로 UPF 파일 작성

전력 분석 보고서(power_report.html)를 검토하여 전력 소모와 전원 도메인 정보를 얻습니다. 이 정보를 바탕으로 초기 UPF 파일을 작성합니다.

초기 UPF 파일 (initial_power.upf)

# 전원 도메인 정의
create_power_domain PD1 -elements {U1}

# 전원 스위치 정의
create_power_switch PS1 -domain PD1 -input_supply {VDD} -output_supply {VDD_PD1} -control {VDD_CTL}

# 레벨 시프터 정의
create_level_shifter LS1 -from PD1 -to PD2 -location {U1_to_U2_ls}

# 전원 포트 정의
create_supply_port VDD
create_supply_port VDD_PD1
create_supply_port VDD_CTL
create_supply_port VDD_PD2

# 전원 넷 연결
connect_supply_net VDD -ports {VDD}
connect_supply_net VDD_PD1 -ports {VDD_PD1}
connect_supply_net VDD_CTL -ports {VDD_CTL}
connect_supply_net VDD_PD2 -ports {VDD_PD2}

단계 6: UPF 파일 적용 및 검증

초기 UPF 파일을 작성한 후, 이를 SpyGlass Power를 사용하여 넷리스트에 적용하고 검증합니다.

SpyGlass Power 설정 및 검증 파일 (spyglass_upf_verification.tcl)

# SpyGlass 환경 설정
setenv SEARCH_PATH /path/to/library/files
setenv TARGET_LIBRARY library.db
setenv LINK_LIBRARY library.db

# 디자인 파일 및 UPF 파일 읽기
read_netlist -verilog basic_netlist.v
read_upf initial_power.upf

# 디자인 엘라보레이션
elaborate

# 전력 의도 검증 실행
run_power_intent_checks

# 전력 의도 검증 보고서 생성
report_power_intent_checks -html -out upf_verification_report.html

단계 7: SpyGlass Power 실행 및 검증

SpyGlass Power를 실행하여 UPF 파일을 검증합니다.

spyglass -batch -f spyglass_upf_verification.tcl

요약

  • 수동 작성: UPF 파일은 수동으로 작성할 수 있으며, 이는 전원 도메인, 전원 스위치, 레벨 시프터 등의 전원 관리 정보를 포함합니다.
  • 도구 지원: EDA 도구를 사용하면 UPF 파일 작성 및 검증을 보다 효율적으로 수행할 수 있습니다. 이러한 도구는 전원 관리 전략을 분석하고 최적화하는 데 도움이 됩니다.
  1. 넷리스트 파일 준비: 설계의 기본 넷리스트 파일을 준비합니다.
  2. SpyGlass Power 설정: 전력 분석을 수행하기 위한 SpyGlass Power 설정 파일을 작성합니다.
  3. 전력 분석 수행: SpyGlass Power를 실행하여 전력 분석을 수행하고, 결과를 바탕으로 초기 UPF 파일을 작성합니다.
  4. UPF 파일 작성: 전력 분석 결과를 바탕으로 초기 UPF 파일을 작성합니다.
  5. UPF 파일 검증: SpyGlass Power를 사용하여 UPF 파일을 넷리스트에 적용하고 검증합니다.

이 과정을 통해 설계의 전력 소모를 분석하고, 이를 바탕으로 초기 UPF 파일을 작성할 수 있습니다. SpyGlass Power는 전력 분석 및 검증을 통해 저전력 설계를 지원하는 강력한 도구입니다.

UPF 파일을 수동으로 작성하는 과정은 전원 관리 전략을 명확히 이해하고 이를 정확히 반영하는 데 중요합니다. 동시에, EDA 도구를 활용하면 PF 파일 작성과 검증 과정을 더 효율적으로 수행할 수 있습니다.

B로그0간

개발 관련 글과 유용한 정보를 공유하는 공간입니다.