디지털 디자인에서 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.
'Programming' 카테고리의 다른 글
[리눅스/터미널/스크립트] find 커맨드 사용시 특정 디렉토리를 제외시키는 방법 (0) | 2021.02.18 |
---|