Contents
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
Tcl/Tk is a glue language, a good artical Tcl over Python
Minotaur for Perl, Python and Tcl, if you need to mix these scripting languages in one file, try this. The bad thing is that nobody maintain it anymore and no document about the actual usage.
Inline Tcl best, I think, anybody can tell me is there a corespond in python?
个人兴趣
现在我还用python的MyHDL package来搭建testbench, it works well。我的兴趣范围还包括SystemC, Specman, SystemVerilog, PSL, testbench automation,coverage driven verification等,希望能和IC design领域的同行多多交流。
fpga prototyping
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.
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
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
my linux world
processing excel with python
read
xlrd从python.cn上看到的介绍,自己没有试过。
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:
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.
技术类
1 from myhdl import *
QA
精品电子书
Professional Verification -- A Guide to Advanced Funcational Verication, by Paul Wilcox, Cadence Design Systems, Inc.
comment: This book is almost same as the IUS document UVM
{zh} [email protected]
<< < 2025 / 4 > >> | ||||||
---|---|---|---|---|---|---|
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 |