[FPGA]

modelsim 한번에 compile하는 tip

Neo Park 2012. 10. 30. 10:06

 

폴더를 다음과 같이 만든다.

MPW_2008 -> src : 관련된 모든 소스코드를 넣는다.

sim : simulation 관련 파일 (testbench, testbench 에서 불러오는 파일 (*.dat 같은...), etc.)


testbench : msr_tb.v

 

관련된 모든 파일들을 'include 해놓는다. ex)

`include "../mt48lc32m8a2.v"

`include "../src/bram_active_word.v"

 

mt48lc32m8a2.v 랑 bram_active_word.v 를 include 한다. ../는 MSR_tb.v 가 있는 폴더를 의미,

../ 는 현재 tb파일이 있는 폴더의 상위폴더로 가는 것을 의미.

 

include 된 모든 파일들은 define 이나 기타 다른 선언을 겹치게 하면 안된다.

겹치게 될 parameter 들은 따로 parameter.v 에 선언하여 보관한다.

 

주의할 점은 compile될 하위 파일 내 'include 가 존재할 경우,

해당 'include의 path를 project를 만든 folder를 기준으로 수정해 놔야 한다는 점이다.

 

 

 

 

 

Modelsim -> 커맨드 창에서 다음과 같이 입력한다.

vlib work : work library를 만든다. 여기에 컴파일 되는 파일들이 들어간다.

vlog msr_tb.v : msr_tb.v를 컴파일한다. msr_tb.v 에 include 된 파일들도 함께 컴파일이 된다.

vsim msr_tb : msr_tb 를 시뮬레이션한다.

do wave.do : 저장한 wave.do 이 있다면 load 하여 wave 파형을 관찰한다.

run -all( 혹은 run 10ns) : 시뮬레이션을 끝까지( 혹은 원하는 시간까지) 수행함

restart : 시뮬레이션을 다시 시작함. 소스코드를 수정할 경우 vlog를 해준 후 restart 하면 바로 run -all 을 할 수 있음.

 

 

참조 : http://blog.naver.com/PostView.nhn?blogId=jwook1004&logNo=53354026&redirect=Dlog&widgetTypeCall=true