|
2007年底,我加入一間美商 start-up ,
4 @/ `! ~0 M3 ?他們用 vera 來驗證他們的邏輯設計。7 e6 q/ i" U; ^, K0 I
我的任務是 video engine 的 design change,
% u3 y2 l, Q( w0 q由於沒有人和我交接(前一位負責的工程師在我加入前便離開了),
1 j0 [6 M, B; `% I) n我只能祈禱我所做的修改不要把原來 OK 的功能改壞了,( E0 o% T% s% O, A1 A
這時前人留下的 vera pattern 發揮了驚人的把關能力,
" C5 Y3 F. R7 R% p5 e- q讓我以前錯誤的觀念 (design 重於 verification) 徹底改變。3 A: f. _9 X" M
. v$ Q1 _- D' S! u8 @& \
雖然不久之後我也離開了,& j+ T9 }4 P" P% i T7 [5 F0 _
新東家用的是 cadence ncsim,* v; q2 u! \. d2 O# ]( e
verification 的方法是用 verilog implement monitor, checker, bfm, ... etc.! _& t2 r0 J" d, s
但畢竟這和以前用過的 vera 不可同日而語, o8 [! k, a f: p, o+ b' q% O4 S
於是興起了一個念頭:尋找可用於 cadence ncsim 的驗證環境
' A# w1 O' X$ I* G! m9 C' e N! C4 K6 _. G- g2 a
我找到了 TRUSS ,[size=100%]它定義了一套完整的邏輯驗證架構,
1 L, ]5 ]; F8 M- S' H透過 PLI/VPI ,它可以使用 C/C++ 建構驗證程序,
, p3 U5 _% g# f1 @以驗證使用 Verilog 製作的設計;; z! y1 u" X8 _) }2 |& B: {) s2 }
並且它是開放源碼的自由軟體,
' a4 m! ]7 q# l! D `! i每個人都可以免費取得並使用它。
8 @7 A4 |/ M3 H, ^& c( Y0 ^8 I: m Y- D3 B
我計劃將我的使用心得記錄在 Blog 上,
1 x4 D2 e$ G+ U. r歡迎討論指教。
+ R' E$ p4 E% ^+ ~5 q5 N5 r' o7 V! q% o$ O/ ?! W3 s L, v, p
Yi-shin Li |
|