본문 바로가기

Programming

VSLI 에서 Compilation, Elaboration, Simulation의 의미

디지털 디자인에서 compilation, elaboration, simulation의 의미는 무엇인가

Compilation, Elaboration, and Simulation은 HDL 코드가 tool에 의해 process 되는 step들이다.

이러한 과정들은 설계가 기능적으로(functionally) 올바른지 검증할 수 있게 해준다.

 

 

Compilation

source code를 읽고 syntax와 semantic error를 검사함

 

 

 

 

Elaboration

시뮬레이션을 위한 모든 과정들을 준비하는 단계라고 보면 된다.

parsing과 simulation 사이에 발생한다.

- 모듈들을 module instance에 결합시킨다.

- model hierarchy를 빌드한다.

- parameter 값을 계산한다.

- hierarchical name을 resolve한다.

- net connectivity를 establish한다.

 

 

 

 

Simulation

HDL로 작성된 design model이 executed 되는 process 스텝

HDL description은 여러개의 concurrent process, assignment, 그리고 그 컴포넌트들간 connection으로 구성되있다. 대부분의 HDL simulator는 event driven execution을 한다. 무슨 뜻이냐면, signal&net에서의 변화가 관련된 프로세스의 evaluation(값을 계산)을 trigger한다. simulation에서 시간 관념도 있는데, evaluation을 진행함에 따라 execution process에서의 current time slot을 next time slot으로 이동시켜서 시간을 track.