2013年9月27日 星期五

fast debug key notes

these are my tips for fast debug.

  • set breakpoint when the assertion was happened
    • like GDB methodology 
      • forward, backward, force signal, release signal
    • tip
      • forcing the error signal value to your expect signal value when the simulation assertion was happened. if the signal was forced, then continuous go through it without rerun again. that can save the interrater running  times
  • dump the error time window waveform without whole simulation time dump
    • tip
      • using the interactive method to dump waveform. 
        • 1. find the error happened time
        • 2. set breakpoint 
        • 3. jumping the previous time window via backward breakpoint
        • 4. open interactive dump waveform command
        • 5. start dumping until the next breakpoint was happened
  • using assertion 
  • using verification IPs
    • sub IP test (selftest)
      • functional test, coverage test, Direct/Random pattern test
    • sub system test (sub system test)
      • protocol test, transaction path test, performance test
    • whole system test (H/S test)
      • OS boot, H/S correlation test

2013年9月25日 星期三

python2.7 + openCV + myHDL


  • main purpose
    • using openCV to estimate how may hardware cycles in our archicture
  • requirement
    • python2.7.3
    • opencv2.4.2
    • numpy
  • exercise
    • rotate 0, 90, 180, 270 degree
    • image mask
    • image fetch
    • watermaker
  • project:
    • https://github.com/funningboy/openCV_myHDL/tree/master/opencv
    • ref
    • http://docs.opencv.org/doc/tutorials/calib3d/camera_calibration/camera_calibration.html
    • https://github.com/FalkorSystems/DeFisheye/blob/master/README.md
    • http://cg2010studio.wordpress.com/2012/01/03/opencv-%E6%A8%A1%E6%93%AC%E9%AD%9A%E7%9C%BC%E9%8F%A1%E9%A0%AD-simulate-fisheye-lens/
    • http://stackoverflow.com/questions/2477774/correcting-fisheye-distortion-programmatically

2013年9月22日 星期日

2013年9月21日 星期六

MyHDL slides

coverage group based on different bins

bus interface coverage catagology

classification

  • functional coverage bins
    • address rage bins
    • burst len bins
    • read/write bins
    • burst type bins
    • byten enable bins
    • cross coverage 
      • read trx
        • address, burst, read, ....
      • write trx
        • address, burst, write, ....
  • performance coverage bins
    • standard/normal bins
    • out standard bins
    • below standard bins
    • cross coverage
      • read trx
        • standard
      • write trx
        • standard
  • toggle coverage bins
    • 0 -> 1 
    • 1 -> 0
    • cross coverage
      • read trx
        • 0 -> 1 -> 0
      • write trx
        • 0 -> 1 -> 0
  • FSM coverage bins
    • default pass
  • protocol coverage bins
    • atomic bins
    • out of order bins
    • divide/conquer bins
    • address mapping table bins span tree
    • hit rate bins (cache coherence)



2013年9月14日 星期六

python finance model Quant-economic

Python finance model example

  • http://quant-econ.net/_static/pdfs/quant-econ.pdf?utm_source=Python+Weekly+Newsletter&utm_campaign=8e17b3ce66-Python_Weekly_Issue_104_September_12_2013&utm_medium=email&utm_term=0_9e26887fc5-8e17b3ce66-312683741
  • https://github.com/funningboy/quant-econ


requirements
  • numpy
  • pandas
  • scipy
  • matplotlib
  • pylab


Cadence SimVision UVM/SystemVerilog debugger

transaction level debug via SimVision....

  • transaction waveform info/pin level waveform info 
  • transaction database info
  • UVM phase sequence info
  • assertion info
  • coverage rate
    • functional
    • fsm
    • code
    • assertion
    • performance 
  • debug step by step, like gdb forward, backward, stop point, value dump....
  • unknown signal trace back
  • vif (virtual interface), Driver