VMM 검증 방법론 학습 에세이

1 스코어 (스코어)

  스코어 보드 설계의 동적 응답을 예측하는 데, 여기에 적용이 DUT에인가하면서 검사에게 배달 점수 판, 모든 스코어 보드의 변환 함수 변환 반응의 최종 형태로 여기 입력과 데이터 구조에 저장 트랜잭션이없는 등등되어 있는지, 또한 업무 및 통계의 수를 기록 스코어 보드는 기록은, 모든 거래에 성공 또는 거래의 실패의 수를 수행.

2, 시나리오 (시나리오)

시나리오 (시나리오)은, 주로 특정의 관계를 갖는 거래 랜덤 시퀀스를 생성하는데 사용된다.

3, 가장 일반적으로 일반적으로 사용되는 기본 클래스는 다음과 같은 구 개 기본 클래스가 있습니다 :

vmm_env, vmm_xactor, vmm_channel, vmm_data, vmm_log, vmm_atomic_gen,

vmm_scenario_gen, vmm_notify, vmm_test.

 

VMM 검증 방법은 주로 인증 콘텍스트 검증 방법은 여러 가지 기본 클래스는 상기 마스터해야로서 다음베이스 클래스의 숫자로 구성 :

  vmm_data : 매우 중요한 기본 클래스는 다른 클래스의 많은 확장하고오고 연장된다

  vmm_xactor : 모바일에서 매우 기본적인 클래스는 응용 프로그램은, 다른 많은 기본 클래스는 많은 확장 된 의해 결정에서 확장된다.

vmm_data 및 vmm_xactor 학습 초점 VMM 검증 방법은 철저하게 이해하는 것이 중요하다, 어렵다.

 

VMM 검증 방법은 네 가지 다른 메커니즘을 통해 프로젝트의 생산성을 향상시킬 수 있습니다. 할 수있는이 네 메커니즘은 다음과 같습니다 주장, 추상화, 자동화 및 재사용.


이 섹션에서는 VMM을 기반으로 테스트 벤치의 VMM 기본 클래스의 설명과 구조를 찾을 수 있습니다.

VMM 기본 클래스 :

인덱스 :
        - VMM 로그 : VMM 로그 메시지 예를 들어, 매크로, 심각도 및 방법
        - VMM 데이터 : VMM 데이터 클래스는 모델 트랜잭션, 패킷 또는 항목에 사용되는
        - VMM 채널 : VMM 채널이 발전기 및 트랜 잭터를 연결하는 inferface입니다 트랜잭션 개체 전달
        - VMM Xactor : 점수 판 등의 업무를 담당하고, 발전기, 모니터, 같은 실행중인 모든 구성 요소를 xactor 클래스 deriverd 있습니다
        - VMM은 통지 : VMM은 기본 클래스를 통지
        - VMM 원자 세대 : VMM 원자 발전기 생성하는 데 사용됩니다 무작위로 거래
        - VMM의 ENV는 :에서 인증 할 환경은 vmm_env 클래스에서 extened한다
        - VMM 콜백 : 콜백 실제로를 compoent을 변경하지 않고 검증 구성 요소의 동작을 변경하는 데 사용됩니다

 

VCS는 상세 일반적인 명령을 사용하여

+ v2k이
는 IEEE 1364년부터 2001년까지 표준 언어 기능을 사용할 수 있습니다.

성공은报告成功匹配
성공적인 일치의보고를 가능하게하고,에 성공
실패뿐만 아니라, 커버 문. 기본값은보고입니다
만 실패.


过滤掉空成功필터링 할 수 있습니다.
블록 사소한 의미의 성공의보고. 이러한 일이
함의 구조 만 때문에 성공 등록 할 때
전제 (선행) 부분이 거짓을 (그리고 그렇게
그에 부가 조사되지 않음). 이 옵션을보고
만하는 것은 성공의 전체 표현의 일치를 보여줍니다.


-assert 필터 + 성공经常两者结合起来用.注意用时在필터 + 성공前加上-assert

maxsuccess = N은
당신에게보고해야 N. 성공의 총 개수 제한
N을 공급 달리 제한 세트 없다. VCS는 모니터에 계속
주장 한계에 도달 한 후에도.

-assert maxsuccess = 3

-l 파일 이름 로그 파일文件名
지정 VCS는 컴파일 메시지를 기록하는 파일. 이 경우
도 -R 또는 -ri 옵션을 입력, VCS는 모두의 메시지 기록
같은 파일의 편집 및 시뮬레이션을.


-assert enable_diag는
런타임 옵션을보고 결과를 추가로 제어 가능하게

-sverilog
SystemVerilog를 코드의 사용을 가능하게합니다.

-cm 어설
컴파일 SystemVerilog를 주장 적용합니다. -㎝가 아닌
새 컴파일시 옵션 만 어설 인수는 새로운 기능입니다.
옵션 및 인수는 실행시에 입력해야합니다.



VCS * .V * .sva -sverilog \
+ 정의 + enable_blk_assertions \
tb_sva + + \ DEFINE
+ + slv_fc DEFINE \
+ + slv_doc DEFINE \
-PP -assert enable_diag -cm 어설 \
-l compile.log


SIMV -assert -l run.log 필터이다. + 3 = 성공 maxsuccess -assert

의 VCS를 Verilog 모델 시뮬레이션은 두 단계로 구성
  파일을 Verilog 1. 컴파일은 명령 실행 가능한 바이너리 파일이된다 :
    . {} 1 개 하였다하며 Source_Files VCS

  2. 실행 파일을 실행
    {1}있다 ./simv
 
  NC 유사은 또한 하나의 명령입니다 라인은 :
    {} 1 개된다 -R 및 LT VCS Source_Files.
    -R 및 LT 표시 명령이 즉시 컴파일 후에 실행된다.
    
    
-cm 라인 | COND | FSM | TGL | OBC | 방식 커버리지 경로 세트


몇 옵션 컴파일 중요하다 :
. 1 . : IF RVM libs와는이이 요구되면, OV에서 클래스 코드에 사용되는
-ntb_opts RVM
및 매크로 rvm_ 2. VMM 클래스, vmm_ 매크로 SV에 사용될 수있다
OV 자동 플래그 부적절한 콘텐츠 패키지 페널티 vmm_ 코어 문장 IF에있는
이 본 또한 첨가
-ntb_opts 상호 운용성 -ntb_opts RVM

-LCA
VCS는 VCS "사용자 제한 사용"기능의 사용을 나타내는 파라미터 인 것을 VCS 일부 기능을 제공 그들이 가지고 있지 아직 완전히 공개 테스트, 당신은 -lca 매개 변수를 추가 할 이러한 기능을 사용하려면.

+ INCDIR + 디렉토리
디렉토리에서 지정 또는 디렉토리는 포함에 대한 VCS의 검색 있음
에에서 사용되는 파일은`는 컴파일러 지침을 포함한다. 마지막 내 더 많은
디렉토리가 +로 구분하여 지정할 수 있습니다.

+ plusarg_save
가 plusarg_save의 +에 와야합니다 일부 런타임 옵션이야
VCS를위한 옵션 그들 실행 INTO로 컴파일에서. 당신이 할 수로
하여 더 ON 중 하나를 명령 줄이나 파일에서 VCS에서이 옵션을 지정
-f 옵션 또는 -F에서 옵션으로 지정합니다.
또한 VCS 명령에 다음과 같은 런타임 옵션을 입력 할 수 있습니다
라인 또는의 -f 또는 -F 컴파일시 옵션으로 지정한 파일에
VCS는 SIMV 실행 파일로 컴파일 그래서,하지만 당신은해야한다
의 + 그들 앞에 plusarg_save 컴파일시 옵션 :
+ cfgfile + override_model_delays
+ VCS + dumpoff + VCS + dumpon
+ VCS + dumpvarsoff + VCS + grwavesoff
+ VCS + ignorestop + VCS + 학습 + PLI
+ VCS + mipd + noalias + VCS + nostdout
+ VCS + 정지 + vera_load
+ vera_mload + vpdbufsize
+ vpddrivers + vpdfile
+ vpdfilesize + vpdnocompress
+ vpdnostrengths + vpdports
+ vpdupdate

-ntb_opts는 DTM
당신은 테스트 벤치 구조에게로 외부 프로그램을 활성화
-ntb_opts DTM 컴파일 시간 옵션 및 키워드 인수입니다.
당신이 외부 프로그램을 입력 할 수있는 테스트 벤치의 구조
는 다음과 같이이 옵션은 다음과 같습니다 클래스 연관 배열 동적 배열   
의 SystemVerilog라는 이름의 이벤트

 

작업 상태 : 시뮬레이션 환경의 설립
 
  VCS 시놉시스, Inc.는 시뮬레이션 도구입니다.

  시뮬레이션 VCS를 Verilog 모델은 두 단계를 포함한다 :
  1. 컴파일을 Verilog 파일이 실행 가능한 바이너리 파일 명령이됩니다 :
    > vcssourcefiles2> vcssourcefiles2을 실행 파일을 실행합니다. 실행 파일을 실행> ./simv
 
  NC와 유사한, 방법은 단일 명령 줄이 있습니다 :
    $>는 Source_Files VCS를 -R
    -R 명령을 즉시 컴파일러의 구현 후 말했다.

    다음은 일반적으로 사용되는 명령 옵션에 대해 설명 :
  -㎝ 행 | 콘드 | FSM은 | TGL | OBC | 경로      설정 적용 방법
 
  +이 + 정의 매크로 = 값 +        미리 컴파일 된 매크로

  -f 파일 이름              RTL 파일 목록

  + incdir + 디렉토리 +            추가 폴더 포함

  - 난                  인터페이스 입력

  에 -l                  로그 파일 이름

  -P PLI. 탭              목록 PLI (탭) 파일의 정의

  + v2k                  권장 표준 사용

  -y를                 라이브러리를 Verilog 정의

  -notice의                진단 정보를 자세히 표시

  -o                  실행 파일 출력의 이름, 기본값은 sim.v입니다

 

 

상호 작용:

참고 인터페이스는 DUT와 테스트 벤치 인터페이스입니다. 따라서, 인터페이스는 단순히 문제가 신호 포트 DUT 최고 수준의 디자인을 복사 할 수 없습니다. DUT에 인터페이스와 상이한 방향으로 테스트 벤치 인터페이스 포트 신호를 보낸되도록 최상부 층 DUT 포트 설계 방향.

 

역설:

또한 주목해야 디자인을 주장 내에 포함되며, 그 자체 어서, 지인 신호 어설 신호리스트 포트 모듈이다. 포트 디자인의 신호 방향 신호 목록의 관점에서 달리이 컴파일됩니다 문제를 정의 할 수 없습니다. 예를 들면 :

stuctural 다이버에 의해 구동 변수는 다른 드라이버가 없을 수 있습니다.

출시 1012 원저 · 원 찬양 (520) ·은 12,700,000 + 조회수

추천

출처blog.csdn.net/Augusdi/article/details/104949746