본문 바로가기

SystemC Tutorial

Ch0. SystemC - Introduction

반응형



SystemC는 무엇인가?

반도체 설계 분야에 일하는 사람들은 한 번 쯤 들어 보았을 것이다. 하지만 아직까지 현업에서 널리 사용되고 있지는 않은 것 같다. RTL 설계에서는 아직까지 HDL이 대세이고 검증에서도 Specman 이나 vera가 많이 쓰이는 것 같다. SystemC를 HDL같은 하드웨어 설계 언어로 생각하는 사람도 많은 것 같은데 실제론 그렇지 않다. SystemC는 사실 C++ 그 자체이고 단지 C++를 사용하여 Hardware modeling을 하기위해 만든 class library라고 하는 편이 맞을 것이다. 즉 SystemC는 동시성(concurrency), input/output port, clock, fifo 등과 같은 하드웨어 특성을 쉽게 구현 할 수 있는 class와 이 class들로 모델링한 시스템을 simulation할 수 있는 scheduler로 구성 되어 있는 것이다. SystemC를 공부하고 사용하다 보면 SystemC spec에도 나와 있듯이 SystemC는 system level modeling이나 검증에 사용하기 좋은 tool이다. 특히 transaction level의 설계 및 검증에는 탁월한 기능들을 갖추고 있다. 앞으로 이런 SystemC의 특성과 활용 방법들에 대해 글을 올리고자 한다.


참고로 이글의 독자는 Verilog 또는 VHDL과 같은 HDL 언어를 사용해 본 경험이 있고 C++에 대한 기초 지식이 있다는 것을 가정으로 하였습니다. 또한  https://www.accellera.org/downloads/standards/systemc에 있는  spec과 각종 자료를 참조하여 같이 보시면 많은 도움이 될 것입니다.

반응형