Comments (23)
Thank you very much, Taichi. I appreciate your support. I can simulate your "tnoc" router. Just need to figure out what the used variables do.
from tnoc.
I am trying to look into your design. How can I simulate your NoC router? Can I do it using Xilinx Vivado?
from tnoc.
Hi @JEETIITGN ,
Thank you for having an interest in my NoC core.
The sample test bench is built on SystemVerilog and UVM.
You need to use one of following simulators If you want to use the sample test bench.
- Synopsys VCS (confirmed)
- Cadence Xcelium (confirmed)
- Mentor Questa (not yet confirmed)
- Aldec Riviera-PRO (not yet confirmed)
Can I do it using Xilinx Vivado?
I'm not sure Vivado simulator supports UVM but I think Vivado simulator may not support UVM.
from tnoc.
from tnoc.
Following procedures are how to run simulation.
Preparation
Run command below to clone sub-modules on which the NoC core depends.
$ ./setup_submodules.sh
Run Simulation
I have already prepared Makefile to run simulation. You only have to hit make
command on work directories listed below.
- sim/router_data_width_64_vc_2
- for router
- sim/fabric_data_width_64_vc_2
- for Mesh fabric
- sim/axi_adapter_data_width_64
- for fabric + AXI Adapter
Example:
$ cd sim/fabric_data_width_64_vc_2
$ make
Then, work directories for each tests will be created and result files (log, wave dump, etc.) will be output to the work directories.
If you want to dump wave forms you need to add DUMP=vpd
or DUMP=fsdb
to make command.
VPD Format:
$ make DUMP=vpd
FSDB Format:
$ make DUMP=fsdb
You may need to clean simulation binary before running simulation with wave dump.
$ make clean; make DUMP=fsdb
If you want to know details of simulation command please refer following Makefiles.
- https://github.com/taichi-ishitani/tnoc/blob/master/sim/common/common.mk?ts=2
- https://github.com/taichi-ishitani/tnoc/blob/master/sim/common/vcs.mk?ts=2
If you need more details please let me know.
from tnoc.
from tnoc.
from tnoc.
First, the submodule clone is not working because of some public license issue
Could you please tell me more details? I'd like to see the log.
But I am receiving errors which I am unable to rectify. The dump of the error is
Could you send me the log file? The vcs.log
is the log of compilation.
In addition, VCS Version J-2014.12 is too old can you use the latest VCS?
from tnoc.
from tnoc.
Hi @JEETIITGN ,
Could you please use following commands instead of executing setup_submodules.sh
script?
$ git clone https://github.com/taichi-ishitani/tbcm.git
$ git clone https://github.com/taichi-ishitani/tue.git
$ git clone https://github.com/taichi-ishitani/tvip-axi.git
$ export TBCM_HOME=`pwd`/tbcm
$ export TUE_HOME=`pwd`/tue
$ export TVIP_AXI_HOME=`pwd`/tvip-axi
from tnoc.
from tnoc.
Hi @JEETIITGN ,
I attached patch files to execute the sample tests on VCS J-2014.12 version.
patch.zip
Unzip the attached zip then you will get two patch files.
- tnoc_bfm_configuration.svh.patch
- Apply to
env/bfm/tnoc_bfm_configuration.svh
- Apply to
- tnoc_bfm_transmit_packet_sequence.svh.patch
- Apply to
env/bfm/tnoc_bfm_transmit_packet_sequence.svh
.
- Apply to
Could you please apply the patch files and try to run simulation again?
from tnoc.
from tnoc.
Hi @JEETIITGN ,
Options to enable FSDB dump were changed and Makefiles do not support the old options.
Could you please use VDP dump instead of FSDB dump or update VCS version?
from tnoc.
My previous answer is wrong.
Can you use Verdi tool for debugging? If no, you have to use VPD format.
from tnoc.
from tnoc.
Before running simulation, you may need following steps.
- Set an environment variable named
NOVAS_HOME
- This variable show the home directory of Verdi tool
- Update Makefile to adapt to old VCS version
- Add
-lca
to following line onvcs.mk
Line 7 in 9e70d07
- The
-debug_all
option is not needed
- Add
Then, I think you can use FSDB dump.
To open FSDB dump file, hit command below on the work directory.
$ verdi -simBin ../simv -ssf dump.fsdb
from tnoc.
from tnoc.
Hi @JEETIITGN ,
Can you try to use VPD
dump instead of FSDB
dump?
VPD dump is integrated with VCS natively so I think using VPD dump can reduce debug time.
from tnoc.
Hi @JEETIITGN ,
Do you have any topics for this ticket?
If no, can you close this ticket?
Off cause, you can open a new ticket if you have any questions, problems, etc.
from tnoc.
Hi Taichi,
I tried to create DUMP.vpd using the command
$make clean; make DUMP=vpd
It successfully builds without any error but does not generate DUMP.vpd file in the /tnoc/sim/router_data_width_64_vc_2 directory. Can you help me regarding it? Also, since I am new to simulation using Verdi, can you please send some commands as well?
from tnoc.
Work directories for each tests will be created during make
command execution.
For example:
- tnoc_router_sample_test
- tnoc_router_random_test
You can file VPD dump files named dump.vpd
from the work directories and use the command below to open the dump file.
$ cd tnoc_router_sample_test
$ dve -full64 -vpd dump.vpd
from tnoc.
Please feel free to open a new ticket if you have any questions, problems, etc. 😄
from tnoc.
Related Issues (20)
- Config の最大値/既定値をマクロにする
- AXI 用のアダプタを作る HOT 4
- 読み出しデータにもステータスを乗せる
- 読み出しインターリーブをサポートする
- パラメータに接頭辞をつける
- ディレクトリ構成の変更
- ファブリック生成スクリプトを作る
- ユーティリティモジュールを別リポジトリに分離する
- tvip_axi が規定外のパスにチェックアウトした場合、コンパイルできない
- router 内 flit 接続の変更
- PH_TIMEOUT error is reported HOT 1
- Remove macros to define typedefs and utility functions
- 転送サイズを示すフィールドの変更
- AXI ブリッジを転送サイズのフィールド変更に対応させる
- NOC TB presentation HOT 1
- Error-[NYI-CSTR-SYS-FTC] NYI constraint: sys function calls HOT 6
- tnoc test cannot be compiled with Cadence Xcelium Simulator
- verifying the correctness of the on-chip network HOT 3
- tnoc example testbench HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from tnoc.