본문 바로가기

전체 글85

레고 플라워 만들기 집에만 있다보니 분위기 전환겸 레고를 만들어봤습니다. 기존 모듈러는 각잡고 하루종일 만들어야 했는데 이건 피스가 몇개 없다보니, 퇴근하고 금방 만들었네요 ㅎㅎ 2021. 5. 12.
[C ++] shallow copy vs deep copy 1. shallow copy - 원본 객체를 바탕으로 새로운 객체를 생성한후 새로운 객체가 원본객체의 필드를 바라보는 형태 - 같은 객체를 공유하기 때문에 한 쪽만 바꾸어도 양쪽의 data가 동시에 바뀌는 단점 - 메모리에 대한 비용 절감 가능 2. deep copy - 원본 객체를 바탕으로 새로운 객체를 생성한후 새로운 객체의 필드를 새로 만들어주는 형태(원본을 바라보지 않음) - 완전 다른 메모리에 할당이 되어 있기 때문에 한 쪽을 바꾸어도 변경되지가 않음 - 메모리는 절감이 되지 않은채로 2배 늘어남 이 concept은 Systemverilog나 Python 등 모든 program 언어에서 동일한 concept으로 되어 있습니다. 2021. 5. 8.
[System C] 환경 구축하기 기존에 글을 올린 것처럼 집에서 System C를 study하기 위해 준비 중에 있습니다. 우선 이 책을 사서 한 번 다 읽어 보았습니다. 뒷 부분에는 많은 내용을 이해하지는 못하지만 큰 틀은 "RTL로 구현하기전 architecture를 빨리 구체화 시켜 simulation을 해본다" 라는 의미가 큰 것 같습니다. 시작하기에 앞서 우선 System C를 설치합니다 1. 설치하기 www.accellera.org/downloads/standards/systemc로 이동하여 library 파일을 다운받아줍니다 여기서 맨위의 압축파일을 받아 자신이 원하는 폴더에 압축을 풀어 줍니다. 압축을 풀기 위해 configure를 수행해줘야 하는데 build라는 폴더를 만들어 준 후 아래와 같이 명령어를 칩니다. mkd.. 2021. 5. 7.
[linux] 리눅스 용량 확인 명령어(du) 리눅스에서 하위 디렉토리를 포함한 용량을 확인 할 수 있는 명령어인 du는 아래와 같이 주로 사용합니다 단순히 du 만 사용할 경우 불필요하게 정보를 보여줄수 있어 option을 사용합니다. ■ du 명령어 option du -h 폴더,파일 크기를 KB/MB/GB 단위로 표시(-human readable) du -s 폴더의 전체 사용량만 표시 du --max-depth=N 최대 N번째 하위 폴더까지 표시 ■ 사용 화면 2021. 4. 30.
[systemC] systemC study hardware architecture를 빠르게 탐색 및 기능 검증을 위한 systemC language 공부를 시작하려합니다. 기존에 UVM의 경우는 책은 샀는데 회사에서 하고있는 업무와 연관성이 낮아 천천히 조금씩 공부를 하고, systemC를 본격적으로 study하겠습니다. 2021. 4. 28.
[linux] tar, zip, gz 압축/해제 tar 압축 tar -cvf 압축파일명.tar 압축대상 tar 압축 해제 tar -xvf 압축파일명.tar tar.gz 압축 tar -zcvf 압축파일명.tar.gz 압축대상 tar.gz 압축 해제 tar -zxvf 압축파일명.tar.gz zip 압축 zip 압축파일명.zip 압축대상 zip 압축 해제 unzip 압축파일명.zip 2021. 4. 27.
[vcs] coverage option 정리 기존에 올렸던 포스팅을 보다보니 coverage option정리를 위해 포스팅을 합니다 leehc257.tistory.com/64?category=896295 [vcs] vcs, verdi, systemverilog tutorial 강의 www.youtube.com/channel/UCie9pbYjNDqWhmpNz_l3b3Q KK SystemVerilog KK와 함께하는 System Verilog www.youtube.com sysnopsys에서 좋은 강의자료를 올려논 것 같아 공유합니다. leehc257.tistory.com coverage compile command : vcs -cm "option" coverage compile command : simv -cm "option" ※ option lis.. 2021. 4. 24.
[makefile] :=, =, += 차이 최근에 다른 code들을 보며 skill up을 하고 있는데 우연찮게 nvidia code를 보다보니 아래와 같은 구문이 있어 글을 남깁니다 makefile을 사용할 경우 변수 선언을 위해 = 를 사용하게 됩니다 이때 변수가 여러번 사용되면서 변경이 된다고 한다면 = 을 사용하면 다른 결과가 나오는데 code를 아래와 같이 작성을 하게 되면 결과가 어떻게 나올까요?? 우리가 원한건 A, B가 차례대로 호출이 되어야 할 것 같지만, 실제 결과는 이렇게 B가 두번 호출이 됩니다. 그 이유는 make file안에서는 = 는 최종적으로 실행하는 단계(run을 돌리는)에서 마지막으로 할당된 변수를 가져오게 됩니다. 따라서 위의 구문의 T=A는 실제론 필요없는 구문이 된 것입니다. 이를 막기위해선 :=를 사용하는데.. 2021. 4. 23.
[verilog] compile 없이 입력조건 변경 설계를 하다보면 simulation 조건만을 바꿔서 돌리는(regression)같은 작업을 할 때가 있는데 아래 블로그가 정리를 잘해놓아 공유합니다. donny.co.kr/wp/?p=231 [Verilog] 새로 컴파일하지 않고 테스트 입력/조건을 바꾸는 방법 Donny | Design, Simulation, Verification, Verilog donny.co.kr 2021. 4. 16.