Welcome to my verification world! Hope the resource here is helpful for your ASIC verification projects.

1. scripting

python is the most important scripting language for me.

  • wrap up the verification environment
  • text parsing, especially for simulation log file post processing
  • parsing/generation of testcases, memory image, etc
  • simulation environment command line interface for co-verification environment
  • regression report generation, an excel spreadsheet file will be generated based on all testcase files and simulaton results
  • setup the environment variables for all EDA tools, end user need not to care about how to setup the tools, where to checkout licenses, etc

I used to write Tcl script for a long time

  • to remote-control electronic instruments, such as ATM signal generator/analyzer from ADTECH
  • adopted by most of EDA tools as the scriping language when running in batch mode

no need to say, shell is also a very important scripting language

  • ksh is the first shell I used, then I moved to bash, however, csh/tcsh is widely used in EDA industry, I don't want to speak a dialect. :(

other useful collections from the web

2. 个人兴趣

现在我还用python的MyHDL package来搭建testbench, it works well。我的兴趣范围还包括SystemC, Specman, SystemVerilog, PSL, testbench automation,coverage driven verification等,希望能和IC design领域的同行多多交流。

2.1. fpga prototyping

2.2. Verification vs. Test

  • Verification Predictive analysis to ensure that the synthesized design, when manufactured, will perform the given I/O function

  • Test A manufacturing step that ensures that the physical device, manufactured from the synthesized design, has no manufacturing defect.

  • website about test

2.3. Equivalence Check / STA

  • FPGA approach

SynplifyPro -> Conformal (lec) -> ISE Timing Analyzer (trce)
set verification mode on in Synplify to generate the .vif file, use vif2conformal to translate the vif file the a format that recognizible by conformal. The inputs of trce is .ncd and .pcf files, before we can use these files generated by Synplify with lec, we had to change all these file format using dos2unix, and add -define FPGA to the .vtc file. I can't understand why Synplify failed to add this switch to the .vtc file.

Set the verification mode on will greatly slow the the synthesis speed. The whole lec process will take about 1 and a half hours to complete.

  • ASIC approach

Design Compiler -> Formality -> PrimeTime

2.4. documentation

  • latex
  • wiki, I use moinmoin as the engine, and sometimes, use python package EditMoin to edit the moin pages with vim. It is a pure python implementation, and I made the following modification to make it works for me :)

   1 # original code commented out
   2 # self.datestamp = self._get_data(DATESTAMPRE, "datestamp")
   3 self.datestamp = ''

2.5. my linux world

linux下PPPOE拨号共享上网

2.6. processing excel with python

2.6.1. read

xlrd从python.cn上看到的介绍,自己没有试过。

2.6.2. write

xlwriter I have ever used this package to generate the summary verification report, quite good to do the same kind of work like report auto-generation. It is also platform independent. The bad side is not very easy to control the format. Some sample code:

   1 import pyXLWriter as xl
   2 def report_autogen(filename):
   3     wbk = xl.Writer(filename)
   4     sumsheet = wbk.add_worksheet('Summary')
   5     wbk.close()
   6     return 0

2.7. xml and python

XML-RPC for distributed computation, functions will be defined in the server side, client side can call these functions via http POST with xml as the embeded content.

3. 技术类

   1 from myhdl import *

4. QA

5. 精品电子书

comment: This book is almost same as the IUS document UVM

{zh} [email protected] :)

<< <  2007 / 11 >  >>
Mon Tue Wed Thu Fri Sat Sun
      1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30    

CategoryHomepage