본문 바로가기
language/systemC

[systemC] module instance(SC_METHOD, SC_THREAD, SC_CTHREAD)

by 파란하늘코더 2021. 5. 16.
반응형

기존 verilog로 설계할 때와 마찬가지로 System 에서도 동일하게 필요한 module 별로 설계하여

 

필요한 곳에 instance로 삽입이 가능합니다.

 

아래처럼 clock을 이용하여 reset을 만들어내는 module을 driver,

driver에서 생성한 신호를 이용하여 counter를 만들어내는 module을 sync_gen 이라고 하였을때

이 2가지 module을 top module에서 instance로 불러오고 필요한 신호를 assign 해주면 됩니다.

 

이렇게 설계를 하면 아래와 같은 신호 파형이 나오게 됩니다.

 

저도 공부중인데 systemC에서는 member function을 constructor에서 호출할 때 

 

SC_METHOD, SC_THREAD, SC_CTHREAD이렇게 3가지로 나누어진다고 힙니다.

 

각각이 다르다고는 하는데 제가 아직 잘 이해를 못한 것인지 지금까지는 정확하게 차이를 모르겠네요...

 

위의 예제에서 SC_METHOD를 SC_CTHREAD로 하면 정상동작을 하지 않아서..

 

기존에 제가 알고있던건 SC_METHOD는 combination logic 표현

 

SC_THREAD는 initial begin에서처럼 wait를 표현 가능

 

SC_CTHREAD는 clock이 들어간 THREAD라고 생각했는데 좀 더 공부를 해봐야겠습니다..

'language > systemC' 카테고리의 다른 글

[systemC] SC_CTHREAD 사용  (0) 2021.05.21
[systemC] image 입력받기  (0) 2021.05.19
[systemC] display sync signal gen  (0) 2021.05.19
[System C] 환경 구축하기  (0) 2021.05.07
[systemC] systemC study  (0) 2021.04.28

댓글