Verification
Getting Started with UVM
··859 단어수·2 분·
loading
오랜만에 책 소개입니다.
https://www.amazon.com/Getting-Started-UVM-Beginners-Guide/dp/0615819974
지난 연휴때 읽어볼 요량으로 샀는데, 이곳 저곳 다니다가 이번 연휴 때 읽게 되었습니다. 특이하게 스타벅스에서 읽었네요. (음.. 제 생활 패턴으로 봤을 때 안 특이한건가.. 싶기도 하네요..)
이 책은 사진을 보시면 아시겠지만 엄청나게 얇습니다. 솔직하게 이야기하면, 받고나서 좀 아까웠습니다. (뭐 두꺼운게 좋은 책이란 말은 아닙니다만, 이렇게까지 얇으면 본전 생각이 살짝… 어흠 어흠)
DVCON 2017 간략 리뷰
·3351 단어수·7 분·
loading
바로 밑에 DVCON 2016리뷰가 있는 걸 보니, blog에 얼마나 무관심했는지 약간 죄책감이 듭니다만 꺼리가 생겼으니 써야겠죠.
DVCON(Design & Verification Conference)은 산업계에서 주도해서 열고 있는 회의로, DVCON을 주최하고 있는 Accellra(http://accellera.org/)가 SystemC, VHDL, SystemVerilog, UVM, IP-XACT, UPF등의 굵직굵직한 산업계의 주요 표준을 만들고, IEEE-SA와의 협력을 통해서 국제 표준으로 등록하고 있는 단체라는 점을 고려하면 그 성격을 파악할 수 있을 것입니다.
SystemVerilog for Verification
··520 단어수·2 분·
loading
이 책은 얼마전에 새로 사서 요즘에 읽기 시작한 책인데요, 여기에도 있네요. 온라인 상에서 찾을 수 있을 줄은 생각도 못했습니다. 🙂 대단한 scribd.com..
SystemVerilog의 경우 설계용 언어라기 보다는, 또한, 모델링용 언어라기 보다는(C/C++에 기반을 둔 SystemC가 있기 때문에), 검증용 확장이라 생각하고 있는데, SystemVerilog for Design에 이어서 검증에 초점을 두고 쓰여진 책이지요.
Mentor의 Verification Academy
OVM과 AVM을 밀고 있는 mentor에서 verification academy를 열었습니다. [여기]
주소가 바뀌어서 https://verificationacademy.com/ 로 바꿨습니다. 현재는 아래의 세개 모듈로 구성되어 있으며, Flash 기반으로 구성되어 있어서 왠만한 웹브라우저에서는 모두 접근 가능하다는 장점이 있습니다. 단, 현재는 회사 메일로만 가입을 받고 있다고 적혀 있는데, 학생들도 가능할지는 모르겠습니다.
Project Veripage etc…
··980 단어수·2 분·
loading
Quiz # Veripage 라는 곳에서 느닷 없이 뉴스레터를 보내왔는데(그동안 왔을 텐데, 스팸 처리 되었을 가능성이 더 높지만..), 거기에 아래와 같은 문제가 있습니다.
다음에서 Z의 값은 어떻게 될까요?
1bit c, e, o, r, t; 2bit [2:0] v, w; 3bit [5:0] x, y; 4bit [6:0] z; 5 6v = {<<{c,e,r}}; 7w = {<<{r,o,c}}; 8x = {>>{v,w}}; 9y = {<<3{x}}; 10z = {>>{y,t}}; SystemVerilog를 써 보신 분들은 보신 적이 있으실 streaming concatenation 연산입니다. 간단히 설명드리면, 병합 연산을 수행하되 « 는 병합 순서에 있어서 right-to-left로, »는 left-to-right로 병합하라는 연산이지요. <<N{}은 N단위로 블록을 잡으라는 의미이구요.
Low Power VMM 공개
가끔 올리는 짧은 소식 몇 가지.
LPVMM # Synopsys에서 Low Power Verification Methodology Manual을 공개하였습니다
Solvnet ID가 있으시다면 누구라도 여기(http://www.vmmcentral.org/vmmlp)에서 다운 받으실 수 있습니다.
저는 다운만 받고 아직 훓어보지도 못해서 no comment입니다. ^^;
집중이 안되는 여름
·1131 단어수·3 분·
loading
연일 30도를 넘나드는 더위가 계속되고 있습니다.
이럴때 항상 문제가 되는 것이 집중력이 떨어진다는 건데요.. 저도 마찬가지 입니다.
(실은 개인적으로 좋은 일이 생겨서 그럴지도 모르겠습니다만 ^^;)
오늘만해도 gcc-MinGW에서 mti vpi 연결시키는 거 때문에 잠깐 modelsim userguide를 보다가, 딴짓을 하기 시작해서 대략한 5시간동안 딴짓을 했습니다.
PLI와 Simulator의 연결(I)
·2317 단어수·5 분·
loading
Automated Functional Verification 방법에는 여러 가지가 있지만, testvector 발생 유닛(보통 Directed Random방식을 사용하지요?)과 golden model을 이용한 checker model을 만들어서 DUV(Design Under Verification)의 결과와 비교하는 것이 가장 편한 방법 중에 하나임은 부정할 수 없습니다. (여담입니다만, 국내에서는 많은 경우 golden model없이 설계하는 경우가 많아서 검증을 위하여 작성한 golden model이 실제로 RTL보다도 정확성이 떨어지는 경우가 있다는 것이 문제가 종종 발생합니다. 여기서는 golden모델의 확보에 대한 이야기는 나중으로 미루죠.)
보통 golden model은 C model을 이용하게 되는데, C 모델을 Verilog와 동시에 simulation하는 것은 그리 녹녹한 일이 아닙니다.
Perl을 이용해서 검증할때 유용한 팁
·950 단어수·2 분·
loading
뭐랄까요.. 요즘 이런 저런 일로 바쁘다보니, 사람이 좀 얇팍하게 글을 쓰게되네요. 🙂
(퇴고 없이 그냥 온라인에서 쓰는 글이라 앞뒤가 없을지도 모르겠습니다.)
오늘은 여러분들께서 perl을 이용해서 Verilog HDL을 위한 testbench를 작성할 때 간단히 명령어 해석기를 만들어 사용하는 방법을 알려드리죠.
이 방법은 제가 JTAG을 위한 protocol을 만들다가 생각해낸 방법인데요.. 아주 유용하게 쓰고 있습니다.
얼마전 AXI FileReader와 같은 간단한 명령어 해석기가 필요할 때도 쉽게 적용할 수 있구요.
Level of abstraction
··1904 단어수·4 분·
loading
“추상화 수준”, “추상화 단계”라 불리는 용어이지요. 아마도 C++를 다루실 때 많이 접하셨을 것이라 생각합니다. ^^; 추상화 수준이라는 것은 말 그대로 추상화의 정도입니다. 추상화의 반대가 구체화라는 것은 아실 것이고, 추상화는 생각에, 구체화는 사물에 가깝다는 것도 아실 것이라 생각합니다.
모든 작품(?)이 다들 그렇지만, 머리 속의 관념이(ASIC에서는 알고리즘) 표현 도구를 통하여 구체화되는 과정을 거쳐서 하나의 작품이 됩니다. 이때 머리속의 관념은 추상화 단계에서 점차 구체화되는데요.. 칩쟁이들이 잘 하는 말로 algorithm level, architecture level, register transfer level, gate level, physical implement level 뭐 이 정도 표현할 수 있겠습니다.
