前言 伴隨著工藝技術水平的提高,當前ASIC設計規(guī)模和設計復雜度也不斷的提高。合理的選擇驗證工具在ASIC設計過程中起了關鍵作用。下面就結合實際的項目開發(fā),對比驗證工具的特點,幫助大家更好的認識驗證工具。 SystemC 介紹 SystemC是一個開發(fā)硬件的面向對象的新型建模方法,建立在C++基礎上,是為了方便系統(tǒng)級設計和IP交換。System C是一個開放的標準,由13家EDA和電子行業(yè)的公司共同控制。 包括 ARM Ltd.;Cadence Design Systems,Inc.;CoWare;Fujitsu;Mentor Graphics;Motorola;NECSynopsys System C的源碼可以從。SystemC是由一些C++的類庫組成。用System C開發(fā)的硬件模型可以用標準的C++編譯器來編譯: Unix/Solaris: bcc,gcc Windows: MSVC 經編譯后形成一個可執(zhí)行的應用程序,設計人員可以通過console來觀察系統(tǒng)的行為,驗證系統(tǒng)功能和結構. Specman E介紹 Specman Elite是Cadence公司的驗證技術工具,它能提供可配置、可再使用和可擴展的驗證組件。能夠產生足夠多的測試激勵訊號,并能對設計行為與預期結果進行檢查確認。 1. EOS 系統(tǒng)的驗證 測試EOS 系統(tǒng)采用SystemC,比較以往的以verilog,specman E,vera語言要有以下特點, 不用付高額的eda tool 費用;可以充分的利用個人電腦系統(tǒng)資源;實際的開發(fā)周期大大縮短。 下面是EOS驗證系統(tǒng)的設計框圖。 mii: Mii Interface MPI: Microprocessor Interface TCM: TCMBUS Interface RM設計和測試用例設計基于pc的c++環(huán)境開發(fā),所有的測試用例產生的輸入輸出結果存為文件。Verilog代碼根據輸入文件產生激勵,根據端口的輸出產生輸出文件(*.dump)。結果的檢查是通過比較所有的RM輸出的文件(*.REF)和verilog輸出的文件(*.DUMP)。 RM設計思路,基于數據流設計,大大減少了具體硬件實現上的細節(jié),提高了RM設計效率。 這個基于RM(reference model)設計的方法,在項目前期驗證設計系統(tǒng)結構設計是否合理;后面驗證可以繼承項目前期系統(tǒng)結構設計階段的成果。同時基于硬件資源環(huán)境4 workstations 和13 PC。由于PC資源充足,把測試用例的設計和RM測試在PC上進行設計。由于verilog的開發(fā)在workstation環(huán)境下,并且資源緊張,是項目開發(fā)進度的瓶頸,所以選擇verilog速度最優(yōu)的驗證途經。 基于specmanE實現測試SDH系統(tǒng)軟件 CPXXX支持的SDH業(yè)務基本復用結構如下: 根據數據結構特點和E語言特點,創(chuàng)建了STM4、STM1、AUG1、AU4、AU3、VC4、TUG3、TUG2、TU3、TU2、TU12、TU11、VC3、VC2、VC12、VC11、C4、C3、C2、C12和C11基本數據結構。實際的測試數據是通過擴展基本數據結構的方法配置SDH數據生成幀。可以配置數據結構包括STM4、STM1、AUG1、AU4、AU3、VC4、TUG3、TUG2、TU3、TU2、TU12、TU11、VC3、VC2、VC12、VC11、C4、C3、C2、C12、C11。配置方法的實質是對各種數據結構生成的初始化函數進行個性化擴展。 這種基于E語言的驗證設計環(huán)境,可以和verilog聯(lián)合仿真。但是仿真速度比較慢,單一的verilog仿真速度的1/4~1/3,在驗證工作量比較大的項目中,這是個瓶頸。所以在實際的驗證中,我們的策略是盡可能的把復雜的模塊進行詳細的模塊級驗證。因為每個模塊功能特性不一樣,這樣就需要維護的驗證環(huán)境比較多。 結論 1.對于驗證工具的選擇,要結合資源(包括機器,人力和費用)和實際項目的特點,選擇合理的有效的驗證工具搭建驗證環(huán)境。 2.對于驗證設計工具,不要有排斥或者崇拜的情緒,要結合實際的應用,搭建能發(fā)揮各自特點的環(huán)境是一個項目管理的要求。 |