verilator: 1일째

잠시 짬을 내서 windows에서 verilator를 올려보았다.

wsl로 arch linux를 올리고 그 위에 verilator를 올리면 아주 잘 올라간다.

컴파일 속도도 대단히 빨라서 C++로 만든 test bench까지 한꺼번에 빌드해주니까 작업시간이 엄청나게 절약된다.

vcs와의 작업속도를 구태여 비교하자면 vcs가 build하는 시간보단 약간 더 걸리는 듯 하지만, test bench를 c/c++로 작성하면 작업속도가 비약적으로 빨라지는데다가 확장성도 좋고 verilator가 스스로 multithreading을 하는 기능이 있다고 하니 (아직 테스트해보지 못함) 시뮬레이션 속도도 비교할 수 없을 정도라고 판단된다.

vcs라든가 그외 EDA 상용툴은 구버전의 리눅스에서 돌아가기 때문에 컴파일러의 최적화정도도 낮고 multi-threading을 하는 소프트웨어가 거의 없다고 봐도 무방하다. 그냥 수많은 잡을 single thread로 던져서 일을 하게 되므로 속도가 대단히 느린데, 역시 돈 받고 하는 일이라 그런지 별로 불만이 없는 것 같다.

문법에도 대단히 민감하고 synthesis가 되지 않는 구문들은 아예 지원을 하지 않으니까 대단히 실속있는 소프트웨어라고 볼 수 있다.

verilog를 재미로 하려는 사람에겐 적극 권장한다. 어차피 업으로 하는 사람들은 verilog를 재미로 하지도 않고 회사 밖에서 한다는 것은 ‘미친 짓’이니까 말 할 필요가 없을 것 같고.