Code Monkey home page Code Monkey logo

tnoc's Issues

ファブリック生成スクリプトを作る

ファブリック生成スクリプトを作る。
以下の項目を設定し、

  • 共通項目
    • プロジェクト名
    • データ幅
    • アドレス幅
    • タグ数
    • 最大バースト長
    • 入力 FIFO サイズ
    • エラーデータ
  • マスターノード
    • プロトコル
    • ファブリック内での位置
  • スレーブノード
    • プロトコル
    • ファブリック内での位置
    • アドレス
      • 開始アドレス
      • サイズ

以下の項目を自動生成する。

  • コンフィグパラメータ (tnoc_config) を収めた SystemVerilog Package
  • RTL
    • アドレスデコーダ (アドレス -> ファブリック内位置情報)
    • ファブリック

NOC TB presentation

Hi @taichi-ishitani ,

I'm trying to understand your NOC TB here, it would be great help if you can have a presentation on this. I have already gone through your work " rggen " which was awesome and impressive, trying to understand this NOC TB the same way. If you have a presentation explaining how this works and it's structure..It will be great.

Thanks !

Error-[NYI-CSTR-SYS-FTC] NYI constraint: sys function calls

Hello !
After I git clone it,I execute the script "./setup_submodules.sh" in the root directory.When I do "make",it has errors.Details as follows:
[gzl@gzl tnoc]$ cd sim
[gzl@gzl sim]$ ls
axi_adapter_data_width_16 fabric_data_width_64_vc_2
axi_adapter_data_width_256 makefile
axi_adapter_data_width_64 router_data_width_256_vc_1
common router_data_width_256_vc_2
fabric_data_width_256_vc_1 router_data_width_32_vc_1
fabric_data_width_256_vc_2 router_data_width_32_vc_2
fabric_data_width_32_vc_1 router_data_width_64_vc_1
fabric_data_width_32_vc_2 router_data_width_64_vc_2
fabric_data_width_64_vc_1
[gzl@gzl sim]$ make
make -C fabric_data_width_256_vc_1 SIMULATOR=vcs
make[1]: Entering directory /home/gzl/uvm/tnoc/sim/fabric_data_width_256_vc_1' make run_simv TEST_NAME=tnoc_fabric_sample_test make[2]: Entering directory /home/gzl/uvm/tnoc/sim/fabric_data_width_256_vc_1'
if [ ! -f simv ] ; then
make compile_simv ;
fi
make[3]: Entering directory `/home/gzl/uvm/tnoc/sim/fabric_data_width_256_vc_1'
vcs -full64 -sverilog -timescale="1ns/1ps" -l vcs.log -ntb_opts uvm-1.2 +define+UVM_NO_DEPRECATED +define+UVM_OBJECT_MUST_HAVE_CONSTRUCTO -top top -f /home/gzl/uvm/tnoc/rtl/bcm/compile.f -f /home/gzl/uvm/tnoc/rtl/common/compile.f -f /home/gzl/uvm/tnoc/rtl/router/compile.f -f /home/gzl/uvm/tnoc/rtl/fabric/compile.f -f /home/gzl/uvm/tnoc/env/tue/compile.f -f /home/gzl/uvm/tnoc/env/bfm/compile.f -f /home/gzl/uvm/tnoc/env/common/compile.f -f /home/gzl/uvm/tnoc/env/fabric/compile.f -f /home/gzl/uvm/tnoc/test/fabric/compile.f /home/gzl/uvm/tnoc/env/fabric/top.sv +define+TNOC_FABRIC_ENV_DATA_WIDTH=256 +define+TNOC_ROUTER_ENV_VIRTUAL_CHANNELS=1
Chronologic VCS (TM)
Version L-2016.06_Full64 -- Mon Jul 13 10:39:13 2020
Copyright (c) 1991-2016 by Synopsys Inc.
ALL RIGHTS RESERVED

This program is proprietary and confidential information of Synopsys Inc.
and may be used and disclosed only as authorized in a license agreement
controlling such use and disclosure.

Parsing design file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/uvm_pkg.sv'
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/uvm_macros.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/macros/uvm_version_defines.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/uvm_macros.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/macros/uvm_global_defines.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/uvm_macros.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/macros/uvm_message_defines.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/uvm_macros.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/macros/uvm_phase_defines.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/uvm_macros.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/macros/uvm_object_defines.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/uvm_macros.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/macros/uvm_printer_defines.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/uvm_macros.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/macros/uvm_tlm_defines.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/tlm1/uvm_tlm_imps.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/macros/uvm_tlm_defines.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/uvm_macros.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/macros/uvm_sequence_defines.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/uvm_macros.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/macros/uvm_callback_defines.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/uvm_macros.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/macros/uvm_reg_defines.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/uvm_macros.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/macros/uvm_deprecated_defines.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/uvm_macros.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/uvm_pkg.sv'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/dpi/uvm_dpi.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/dpi/uvm_hdl.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/dpi/uvm_dpi.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/dpi/uvm_svcmd_dpi.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/dpi/uvm_dpi.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/dpi/uvm_regex.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/dpi/uvm_dpi.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/uvm_pkg.sv'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/base/uvm_base.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/base/uvm_coreservice.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/base/uvm_base.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/base/uvm_version.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/base/uvm_base.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/base/uvm_object_globals.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/base/uvm_base.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/base/uvm_misc.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/base/uvm_base.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/base/uvm_object.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/base/uvm_base.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/base/uvm_pool.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/base/uvm_base.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/base/uvm_queue.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/base/uvm_base.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/base/uvm_factory.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/base/uvm_base.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/base/uvm_registry.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/base/uvm_base.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/base/uvm_spell_chkr.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/base/uvm_base.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/base/uvm_resource.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/base/uvm_base.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/base/uvm_resource_specializations.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/base/uvm_base.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/base/uvm_resource_db.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/base/uvm_base.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/base/uvm_config_db.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/base/uvm_base.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/base/uvm_printer.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/base/uvm_base.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/base/uvm_comparer.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/base/uvm_base.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/base/uvm_packer.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/base/uvm_base.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/base/uvm_links.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/base/uvm_base.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/base/uvm_tr_database.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/base/uvm_base.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/base/uvm_tr_stream.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/base/uvm_base.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/base/uvm_recorder.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/base/uvm_base.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/base/uvm_event_callback.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/base/uvm_base.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/base/uvm_event.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/base/uvm_base.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/base/uvm_barrier.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/base/uvm_base.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/base/uvm_callback.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/uvm_macros.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/base/uvm_callback.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/base/uvm_base.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/base/uvm_report_message.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/base/uvm_base.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/base/uvm_report_catcher.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/base/uvm_base.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/base/uvm_report_server.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/base/uvm_base.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/base/uvm_report_handler.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/base/uvm_base.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/base/uvm_report_object.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/base/uvm_base.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/base/uvm_transaction.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/base/uvm_base.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/base/uvm_phase.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/base/uvm_base.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/base/uvm_domain.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/base/uvm_base.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/base/uvm_bottomup_phase.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/base/uvm_base.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/base/uvm_topdown_phase.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/base/uvm_base.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/base/uvm_task_phase.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/base/uvm_base.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/base/uvm_common_phases.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/base/uvm_base.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/base/uvm_runtime_phases.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/base/uvm_base.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/base/uvm_component.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/base/uvm_root.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/base/uvm_component.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/base/uvm_base.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/base/uvm_objection.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/base/uvm_base.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/base/uvm_heartbeat.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/base/uvm_base.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/base/uvm_globals.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/base/uvm_base.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/base/uvm_cmdline_processor.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/base/uvm_base.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/base/uvm_traversal.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/base/uvm_base.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/uvm_pkg.sv'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/dap/uvm_dap.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/dap/uvm_set_get_dap_base.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/dap/uvm_dap.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/dap/uvm_simple_lock_dap.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/dap/uvm_dap.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/dap/uvm_get_to_lock_dap.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/dap/uvm_dap.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/dap/uvm_set_before_get_dap.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/dap/uvm_dap.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/uvm_pkg.sv'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/tlm1/uvm_tlm.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/tlm1/uvm_tlm_ifs.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/tlm1/uvm_tlm.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/tlm1/uvm_sqr_ifs.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/tlm1/uvm_tlm.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/base/uvm_port_base.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/tlm1/uvm_tlm.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/tlm1/uvm_tlm_imps.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/tlm1/uvm_tlm.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/tlm1/uvm_imps.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/tlm1/uvm_tlm.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/tlm1/uvm_ports.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/tlm1/uvm_tlm.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/tlm1/uvm_exports.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/tlm1/uvm_tlm.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/tlm1/uvm_analysis_port.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/tlm1/uvm_tlm.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/tlm1/uvm_tlm_fifo_base.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/tlm1/uvm_tlm.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/tlm1/uvm_tlm_fifos.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/tlm1/uvm_tlm.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/tlm1/uvm_tlm_req_rsp.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/tlm1/uvm_tlm.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/tlm1/uvm_sqr_connections.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/tlm1/uvm_tlm.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/uvm_pkg.sv'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/comps/uvm_comps.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/comps/uvm_pair.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/comps/uvm_comps.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/comps/uvm_policies.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/comps/uvm_comps.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/comps/uvm_in_order_comparator.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/comps/uvm_comps.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/comps/uvm_algorithmic_comparator.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/comps/uvm_comps.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/comps/uvm_random_stimulus.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/comps/uvm_comps.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/comps/uvm_subscriber.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/comps/uvm_comps.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/comps/uvm_monitor.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/comps/uvm_comps.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/comps/uvm_driver.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/comps/uvm_comps.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/comps/uvm_push_driver.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/comps/uvm_comps.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/comps/uvm_scoreboard.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/comps/uvm_comps.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/comps/uvm_agent.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/comps/uvm_comps.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/comps/uvm_env.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/comps/uvm_comps.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/comps/uvm_test.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/comps/uvm_comps.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/uvm_pkg.sv'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/seq/uvm_seq.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/seq/uvm_sequence_item.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/seq/uvm_seq.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/seq/uvm_sequencer_base.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/seq/uvm_seq.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/seq/uvm_sequencer_analysis_fifo.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/seq/uvm_seq.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/seq/uvm_sequencer_param_base.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/seq/uvm_seq.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/seq/uvm_sequencer.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/seq/uvm_seq.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/seq/uvm_push_sequencer.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/seq/uvm_seq.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/seq/uvm_sequence_base.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/seq/uvm_seq.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/seq/uvm_sequence.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/seq/uvm_seq.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/seq/uvm_sequence_library.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/seq/uvm_seq.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/seq/uvm_sequence_builtin.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/seq/uvm_seq.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/uvm_pkg.sv'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/tlm2/uvm_tlm2.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/tlm2/uvm_tlm2_defines.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/tlm2/uvm_tlm2.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/tlm2/uvm_tlm2_time.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/tlm2/uvm_tlm2.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/tlm2/uvm_tlm2_generic_payload.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/tlm2/uvm_tlm2.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/tlm2/uvm_tlm2_ifs.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/tlm2/uvm_tlm2.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/tlm2/uvm_tlm2_imps.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/tlm2/uvm_tlm2.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/tlm2/uvm_tlm2_ports.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/tlm2/uvm_tlm2.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/tlm2/uvm_tlm2_exports.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/tlm2/uvm_tlm2.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/tlm2/uvm_tlm2_sockets_base.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/tlm2/uvm_tlm2.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/tlm2/uvm_tlm2_sockets.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/tlm2/uvm_tlm2.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/uvm_pkg.sv'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/reg/uvm_reg_model.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/reg/uvm_reg_item.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/reg/uvm_reg_model.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/reg/uvm_reg_adapter.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/reg/uvm_reg_model.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/reg/uvm_reg_predictor.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/reg/uvm_reg_model.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/reg/uvm_reg_sequence.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/reg/uvm_reg_model.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/reg/uvm_reg_cbs.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/reg/uvm_reg_model.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/reg/uvm_reg_backdoor.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/reg/uvm_reg_model.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/reg/uvm_reg_field.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/reg/uvm_reg_model.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/reg/uvm_vreg_field.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/reg/uvm_reg_model.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/reg/uvm_reg.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/reg/uvm_reg_model.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/reg/uvm_reg_indirect.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/reg/uvm_reg_model.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/reg/uvm_reg_fifo.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/reg/uvm_reg_model.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/reg/uvm_reg_file.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/reg/uvm_reg_model.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/reg/uvm_mem_mam.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/reg/uvm_reg_model.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/reg/uvm_vreg.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/reg/uvm_reg_model.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/reg/uvm_mem.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/reg/uvm_reg_model.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/reg/uvm_reg_map.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/reg/uvm_reg_model.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/reg/uvm_reg_block.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/reg/uvm_reg_model.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/reg/sequences/uvm_reg_hw_reset_seq.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/reg/uvm_reg_model.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/reg/sequences/uvm_reg_bit_bash_seq.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/reg/uvm_reg_model.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/reg/sequences/uvm_mem_walk_seq.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/reg/uvm_reg_model.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/reg/sequences/uvm_mem_access_seq.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/reg/uvm_reg_model.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/reg/sequences/uvm_reg_access_seq.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/reg/uvm_reg_model.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/reg/sequences/uvm_reg_mem_shared_access_seq.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/reg/uvm_reg_model.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/reg/sequences/uvm_reg_mem_built_in_seq.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/reg/uvm_reg_model.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/reg/sequences/uvm_reg_mem_hdl_paths_seq.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/reg/uvm_reg_model.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/reg/snps_uvm_reg_bank.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/reg/uvm_reg_model.svh'.
Back to file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/uvm_pkg.sv'.
Parsing design file '/home/gzl/uvm/tnoc/rtl/bcm/tbcm_counter.sv'
Parsing design file '/home/gzl/uvm/tnoc/rtl/bcm/tbcm_fifo.sv'
Parsing design file '/home/gzl/uvm/tnoc/rtl/bcm/tbcm_mux.sv'
Parsing design file '/home/gzl/uvm/tnoc/rtl/bcm/tbcm_demux.sv'
Parsing design file '/home/gzl/uvm/tnoc/rtl/bcm/tbcm_selector.sv'
Parsing design file '/home/gzl/uvm/tnoc/rtl/bcm/tbcm_onehot.sv'
Parsing design file '/home/gzl/uvm/tnoc/rtl/bcm/tbcm_round_robin_arbiter.sv'
Parsing design file '/home/gzl/uvm/tnoc/rtl/bcm/tbcm_crc_pkg.sv'
Parsing design file '/home/gzl/uvm/tnoc/rtl/bcm/tbcm_crc.sv'
Parsing design file '/home/gzl/uvm/tnoc/rtl/common/tnoc_pkg.sv'
Parsing design file '/home/gzl/uvm/tnoc/rtl/common/tnoc_types.sv'
Parsing design file '/home/gzl/uvm/tnoc/rtl/common/tnoc_utils.sv'
Parsing design file '/home/gzl/uvm/tnoc/rtl/common/tnoc_flit_if.sv'
Parsing design file '/home/gzl/uvm/tnoc/rtl/common/tnoc_flit_if_connector.sv'
Parsing design file '/home/gzl/uvm/tnoc/rtl/common/tnoc_flit_if_dummy_receiver.sv'
Parsing design file '/home/gzl/uvm/tnoc/rtl/common/tnoc_flit_if_dummy_receiver_array.sv'
Parsing design file '/home/gzl/uvm/tnoc/rtl/common/tnoc_flit_if_dummy_sender.sv'
Parsing design file '/home/gzl/uvm/tnoc/rtl/common/tnoc_flit_if_dummy_sender_array.sv'
Parsing design file '/home/gzl/uvm/tnoc/rtl/common/tnoc_flit_if_mux.sv'
Parsing design file '/home/gzl/uvm/tnoc/rtl/common/tnoc_flit_if_demux.sv'
Parsing design file '/home/gzl/uvm/tnoc/rtl/common/tnoc_flit_if_fifo.sv'
Parsing design file '/home/gzl/uvm/tnoc/rtl/common/tnoc_flit_if_slicer.sv'
Parsing design file '/home/gzl/uvm/tnoc/rtl/common/tnoc_vc_arbiter.sv'
Parsing design file '/home/gzl/uvm/tnoc/rtl/common/tnoc_vc_splitter.sv'
Parsing design file '/home/gzl/uvm/tnoc/rtl/common/tnoc_vc_mux.sv'
Parsing design file '/home/gzl/uvm/tnoc/rtl/common/tnoc_packet_if.sv'
Parsing design file '/home/gzl/uvm/tnoc/rtl/common/tnoc_packet_serializer.sv'
Parsing design file '/home/gzl/uvm/tnoc/rtl/common/tnoc_packet_deserializer.sv'
Parsing design file '/home/gzl/uvm/tnoc/rtl/common/tnoc_address_decoder_if.sv'
Parsing design file '/home/gzl/uvm/tnoc/rtl/router/tnoc_port_control_if.sv'
Parsing design file '/home/gzl/uvm/tnoc/rtl/router/tnoc_port_controller_local.sv'
Parsing design file '/home/gzl/uvm/tnoc/rtl/router/tnoc_port_controller_internal.sv'
Parsing design file '/home/gzl/uvm/tnoc/rtl/router/tnoc_input_fifo.sv'
Parsing design file '/home/gzl/uvm/tnoc/rtl/router/tnoc_error_checker.sv'
Parsing design file '/home/gzl/uvm/tnoc/rtl/router/tnoc_vc_merger.sv'
Parsing design file '/home/gzl/uvm/tnoc/rtl/router/tnoc_route_selector.sv'
Parsing design file '/home/gzl/uvm/tnoc/rtl/router/tnoc_input_block.sv'
Parsing design file '/home/gzl/uvm/tnoc/rtl/router/tnoc_input_block_dummy.sv'
Parsing design file '/home/gzl/uvm/tnoc/rtl/router/tnoc_output_switch.sv'
Parsing design file '/home/gzl/uvm/tnoc/rtl/router/tnoc_output_block.sv'
Parsing design file '/home/gzl/uvm/tnoc/rtl/router/tnoc_output_block_dummy.sv'
Parsing design file '/home/gzl/uvm/tnoc/rtl/router/tnoc_if_transposer.sv'
Parsing design file '/home/gzl/uvm/tnoc/rtl/router/tnoc_router.sv'
Parsing design file '/home/gzl/uvm/tnoc/rtl/fabric/tnoc_dummy_node.sv'
Parsing design file '/home/gzl/uvm/tnoc/rtl/fabric/tnoc_fabric.sv'
Parsing design file '/home/gzl/uvm/tnoc/env/tue/src/tue_pkg.sv'
Parsing included file '/home/gzl/uvm/tnoc/env/tue/src/tue_macros.svh'.
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/uvm_macros.svh'.
Back to file '/home/gzl/uvm/tnoc/env/tue/src/tue_macros.svh'.
Parsing included file '/home/gzl/uvm/tnoc/env/tue/src/macros/tue_version_defines.svh'.
Back to file '/home/gzl/uvm/tnoc/env/tue/src/tue_macros.svh'.
Parsing included file '/home/gzl/uvm/tnoc/env/tue/src/macros/tue_object_defines.svh'.
Back to file '/home/gzl/uvm/tnoc/env/tue/src/tue_macros.svh'.
Parsing included file '/home/gzl/uvm/tnoc/env/tue/src/macros/tue_sequence_defines.svh'.
Back to file '/home/gzl/uvm/tnoc/env/tue/src/tue_macros.svh'.
Back to file '/home/gzl/uvm/tnoc/env/tue/src/tue_pkg.sv'.
Parsing included file '/home/gzl/uvm/tnoc/env/tue/src/base/tue_version.svh'.
Back to file '/home/gzl/uvm/tnoc/env/tue/src/tue_pkg.sv'.
Parsing included file '/home/gzl/uvm/tnoc/env/tue/src/base/tue_globals.svh'.
Back to file '/home/gzl/uvm/tnoc/env/tue/src/tue_pkg.sv'.
Parsing included file '/home/gzl/uvm/tnoc/env/tue/src/base/tue_fifo.svh'.
Back to file '/home/gzl/uvm/tnoc/env/tue/src/tue_pkg.sv'.
Parsing included file '/home/gzl/uvm/tnoc/env/tue/src/base/tue_configuration.svh'.
Back to file '/home/gzl/uvm/tnoc/env/tue/src/tue_pkg.sv'.
Parsing included file '/home/gzl/uvm/tnoc/env/tue/src/base/tue_status.svh'.
Back to file '/home/gzl/uvm/tnoc/env/tue/src/tue_pkg.sv'.
Parsing included file '/home/gzl/uvm/tnoc/env/tue/src/base/tue_check_type.svh'.
Back to file '/home/gzl/uvm/tnoc/env/tue/src/tue_pkg.sv'.
Parsing included file '/home/gzl/uvm/tnoc/env/tue/src/base/tue_object_base.svh'.
Back to file '/home/gzl/uvm/tnoc/env/tue/src/tue_pkg.sv'.
Parsing included file '/home/gzl/uvm/tnoc/env/tue/src/base/tue_component_base.svh'.
Back to file '/home/gzl/uvm/tnoc/env/tue/src/tue_pkg.sv'.
Parsing included file '/home/gzl/uvm/tnoc/env/tue/src/base/tue_component_proxy.svh'.
Back to file '/home/gzl/uvm/tnoc/env/tue/src/tue_pkg.sv'.
Parsing included file '/home/gzl/uvm/tnoc/env/tue/src/base/tue_component.svh'.
Back to file '/home/gzl/uvm/tnoc/env/tue/src/tue_pkg.sv'.
Parsing included file '/home/gzl/uvm/tnoc/env/tue/src/comps/tue_subscriber.svh'.
Back to file '/home/gzl/uvm/tnoc/env/tue/src/tue_pkg.sv'.
Parsing included file '/home/gzl/uvm/tnoc/env/tue/src/comps/tue_item_waiter.svh'.
Back to file '/home/gzl/uvm/tnoc/env/tue/src/tue_pkg.sv'.
Parsing included file '/home/gzl/uvm/tnoc/env/tue/src/comps/tue_monitor.svh'.
Back to file '/home/gzl/uvm/tnoc/env/tue/src/tue_pkg.sv'.
Parsing included file '/home/gzl/uvm/tnoc/env/tue/src/comps/tue_driver.svh'.
Back to file '/home/gzl/uvm/tnoc/env/tue/src/tue_pkg.sv'.
Parsing included file '/home/gzl/uvm/tnoc/env/tue/src/comps/tue_scoreboard.svh'.
Back to file '/home/gzl/uvm/tnoc/env/tue/src/tue_pkg.sv'.
Parsing included file '/home/gzl/uvm/tnoc/env/tue/src/comps/tue_agent.svh'.
Back to file '/home/gzl/uvm/tnoc/env/tue/src/tue_pkg.sv'.
Parsing included file '/home/gzl/uvm/tnoc/env/tue/src/comps/tue_env.svh'.
Back to file '/home/gzl/uvm/tnoc/env/tue/src/tue_pkg.sv'.
Parsing included file '/home/gzl/uvm/tnoc/env/tue/src/comps/tue_test.svh'.
Back to file '/home/gzl/uvm/tnoc/env/tue/src/tue_pkg.sv'.
Parsing included file '/home/gzl/uvm/tnoc/env/tue/src/seq/tue_sequence_item_base.svh'.
Back to file '/home/gzl/uvm/tnoc/env/tue/src/tue_pkg.sv'.
Parsing included file '/home/gzl/uvm/tnoc/env/tue/src/seq/tue_sequence_item.svh'.
Back to file '/home/gzl/uvm/tnoc/env/tue/src/tue_pkg.sv'.
Parsing included file '/home/gzl/uvm/tnoc/env/tue/src/seq/tue_sequence_base.svh'.
Back to file '/home/gzl/uvm/tnoc/env/tue/src/tue_pkg.sv'.
Parsing included file '/home/gzl/uvm/tnoc/env/tue/src/seq/tue_sequence.svh'.
Back to file '/home/gzl/uvm/tnoc/env/tue/src/tue_pkg.sv'.
Parsing included file '/home/gzl/uvm/tnoc/env/tue/src/seq/tue_sequencer.svh'.
Back to file '/home/gzl/uvm/tnoc/env/tue/src/tue_pkg.sv'.
Parsing included file '/home/gzl/uvm/tnoc/env/tue/src/seq/tue_sequence_item_dispatcher.svh'.
Back to file '/home/gzl/uvm/tnoc/env/tue/src/tue_pkg.sv'.
Parsing included file '/home/gzl/uvm/tnoc/env/tue/src/comps/tue_param_monitor.svh'.
Back to file '/home/gzl/uvm/tnoc/env/tue/src/tue_pkg.sv'.
Parsing included file '/home/gzl/uvm/tnoc/env/tue/src/comps/tue_param_agent.svh'.
Back to file '/home/gzl/uvm/tnoc/env/tue/src/tue_pkg.sv'.
Parsing included file '/home/gzl/uvm/tnoc/env/tue/src/seq/tue_reactive_sequencer.svh'.
Back to file '/home/gzl/uvm/tnoc/env/tue/src/tue_pkg.sv'.
Parsing included file '/home/gzl/uvm/tnoc/env/tue/src/seq/tue_reactive_sequence.svh'.
Back to file '/home/gzl/uvm/tnoc/env/tue/src/tue_pkg.sv'.
Parsing included file '/home/gzl/uvm/tnoc/env/tue/src/comps/tue_reactive_monitor.svh'.
Back to file '/home/gzl/uvm/tnoc/env/tue/src/tue_pkg.sv'.
Parsing included file '/home/gzl/uvm/tnoc/env/tue/src/comps/tue_reactive_agent.svh'.
Back to file '/home/gzl/uvm/tnoc/env/tue/src/tue_pkg.sv'.
Parsing included file '/home/gzl/uvm/tnoc/env/tue/src/reg/tue_reg_cbs.svh'.
Back to file '/home/gzl/uvm/tnoc/env/tue/src/tue_pkg.sv'.
Parsing included file '/home/gzl/uvm/tnoc/env/tue/src/reg/tue_reg_field.svh'.
Back to file '/home/gzl/uvm/tnoc/env/tue/src/tue_pkg.sv'.
Parsing included file '/home/gzl/uvm/tnoc/env/tue/src/reg/tue_reg.svh'.
Back to file '/home/gzl/uvm/tnoc/env/tue/src/tue_pkg.sv'.
Parsing included file '/home/gzl/uvm/tnoc/env/tue/src/reg/tue_reg_block.svh'.
Back to file '/home/gzl/uvm/tnoc/env/tue/src/tue_pkg.sv'.
Parsing included file '/home/gzl/uvm/tnoc/env/tue/src/reg/tue_reg_map.svh'.
Back to file '/home/gzl/uvm/tnoc/env/tue/src/tue_pkg.sv'.
Parsing included file '/home/gzl/uvm/tnoc/env/tue/src/reg/tue_reg_item.svh'.
Back to file '/home/gzl/uvm/tnoc/env/tue/src/tue_pkg.sv'.
Parsing included file '/home/gzl/uvm/tnoc/env/tue/src/reg/tue_reg_predictor.svh'.
Back to file '/home/gzl/uvm/tnoc/env/tue/src/tue_pkg.sv'.
Parsing included file '/home/gzl/uvm/tnoc/env/tue/src/reg/sequences/tue_reg_sequence_base.svh'.
Back to file '/home/gzl/uvm/tnoc/env/tue/src/tue_pkg.sv'.
Parsing included file '/home/gzl/uvm/tnoc/env/tue/src/reg/sequences/tue_reg_hw_reset_seq.svh'.
Back to file '/home/gzl/uvm/tnoc/env/tue/src/tue_pkg.sv'.
Parsing included file '/home/gzl/uvm/tnoc/env/tue/src/reg/sequences/tue_reg_bit_bash_seq.svh'.
Back to file '/home/gzl/uvm/tnoc/env/tue/src/tue_pkg.sv'.
Parsing included file '/home/gzl/uvm/tnoc/env/tue/src/reg/sequences/tue_reg_access_seq.svh'.
Back to file '/home/gzl/uvm/tnoc/env/tue/src/tue_pkg.sv'.
Parsing design file '/home/gzl/uvm/tnoc/env/bfm/tnoc_bfm_types_pkg.sv'
Parsing design file '/home/gzl/uvm/tnoc/env/bfm/tnoc_bfm_flit_if.sv'
Parsing design file '/home/gzl/uvm/tnoc/env/bfm/tnoc_bfm_pkg.sv'
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/uvm_macros.svh'.
Back to file '/home/gzl/uvm/tnoc/env/bfm/tnoc_bfm_pkg.sv'.
Parsing included file '/home/gzl/uvm/tnoc/env/tue/src/tue_macros.svh'.
Back to file '/home/gzl/uvm/tnoc/env/bfm/tnoc_bfm_pkg.sv'.
Parsing included file '/home/gzl/uvm/tnoc/env/bfm/tnoc_bfm_configuration.svh'.
Back to file '/home/gzl/uvm/tnoc/env/bfm/tnoc_bfm_pkg.sv'.
Parsing included file '/home/gzl/uvm/tnoc/env/bfm/tnoc_bfm_status.svh'.
Back to file '/home/gzl/uvm/tnoc/env/bfm/tnoc_bfm_pkg.sv'.
Parsing included file '/home/gzl/uvm/tnoc/env/bfm/tnoc_bfm_utils.svh'.
Back to file '/home/gzl/uvm/tnoc/env/bfm/tnoc_bfm_pkg.sv'.
Parsing included file '/home/gzl/uvm/tnoc/env/bfm/tnoc_bfm_flit_item.svh'.
Back to file '/home/gzl/uvm/tnoc/env/bfm/tnoc_bfm_pkg.sv'.
Parsing included file '/home/gzl/uvm/tnoc/env/bfm/tnoc_bfm_packet_item.svh'.
Back to file '/home/gzl/uvm/tnoc/env/bfm/tnoc_bfm_pkg.sv'.
Parsing included file '/home/gzl/uvm/tnoc/env/bfm/tnoc_bfm_component_base.svh'.
Back to file '/home/gzl/uvm/tnoc/env/bfm/tnoc_bfm_pkg.sv'.
Parsing included file '/home/gzl/uvm/tnoc/env/bfm/tnoc_bfm_packet_vc_monitor.svh'.
Back to file '/home/gzl/uvm/tnoc/env/bfm/tnoc_bfm_pkg.sv'.
Parsing included file '/home/gzl/uvm/tnoc/env/bfm/tnoc_bfm_packet_vc_sequencer.svh'.
Back to file '/home/gzl/uvm/tnoc/env/bfm/tnoc_bfm_pkg.sv'.
Parsing included file '/home/gzl/uvm/tnoc/env/bfm/tnoc_bfm_packet_vc_driver.svh'.
Back to file '/home/gzl/uvm/tnoc/env/bfm/tnoc_bfm_pkg.sv'.
Parsing included file '/home/gzl/uvm/tnoc/env/bfm/tnoc_bfm_packet_vc_agent.svh'.
Back to file '/home/gzl/uvm/tnoc/env/bfm/tnoc_bfm_pkg.sv'.
Parsing included file '/home/gzl/uvm/tnoc/env/bfm/tnoc_bfm_packet_dispatcher.svh'.
Back to file '/home/gzl/uvm/tnoc/env/bfm/tnoc_bfm_pkg.sv'.
Parsing included file '/home/gzl/uvm/tnoc/env/bfm/tnoc_bfm_packet_sequencer.svh'.
Back to file '/home/gzl/uvm/tnoc/env/bfm/tnoc_bfm_pkg.sv'.
Parsing included file '/home/gzl/uvm/tnoc/env/bfm/tnoc_bfm_packet_agent.svh'.
Back to file '/home/gzl/uvm/tnoc/env/bfm/tnoc_bfm_pkg.sv'.
Parsing included file '/home/gzl/uvm/tnoc/env/bfm/tnoc_bfm_sequence_base.svh'.
Back to file '/home/gzl/uvm/tnoc/env/bfm/tnoc_bfm_pkg.sv'.
Parsing design file '/home/gzl/uvm/tnoc/env/common/tnoc_common_env_pkg.sv'
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/uvm_macros.svh'.
Back to file '/home/gzl/uvm/tnoc/env/common/tnoc_common_env_pkg.sv'.
Parsing included file '/home/gzl/uvm/tnoc/env/tue/src/tue_macros.svh'.
Back to file '/home/gzl/uvm/tnoc/env/common/tnoc_common_env_pkg.sv'.
Parsing included file '/home/gzl/uvm/tnoc/env/common/tnoc_common_utilities.svh'.
Back to file '/home/gzl/uvm/tnoc/env/common/tnoc_common_env_pkg.sv'.
Parsing included file '/home/gzl/uvm/tnoc/env/common/tnoc_packet_scoreboard.svh'.
Back to file '/home/gzl/uvm/tnoc/env/common/tnoc_common_env_pkg.sv'.
Parsing included file '/home/gzl/uvm/tnoc/env/common/tnoc_model_base.svh'.
Back to file '/home/gzl/uvm/tnoc/env/common/tnoc_common_env_pkg.sv'.
Parsing included file '/home/gzl/uvm/tnoc/env/common/tnoc_sequence_base.svh'.
Back to file '/home/gzl/uvm/tnoc/env/common/tnoc_common_env_pkg.sv'.
Parsing included file '/home/gzl/uvm/tnoc/env/common/tnoc_test_base.svh'.
Back to file '/home/gzl/uvm/tnoc/env/common/tnoc_common_env_pkg.sv'.
Parsing design file '/home/gzl/uvm/tnoc/env/common/tnoc_bfm_flit_if_connector.sv'
Parsing design file '/home/gzl/uvm/tnoc/env/fabric/tnoc_fabric_env_pkg.sv'
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/uvm_macros.svh'.
Back to file '/home/gzl/uvm/tnoc/env/fabric/tnoc_fabric_env_pkg.sv'.
Parsing included file '/home/gzl/uvm/tnoc/env/tue/src/tue_macros.svh'.
Back to file '/home/gzl/uvm/tnoc/env/fabric/tnoc_fabric_env_pkg.sv'.
Parsing included file '/home/gzl/uvm/tnoc/env/fabric/tnoc_fabric_env_configuration.svh'.
Back to file '/home/gzl/uvm/tnoc/env/fabric/tnoc_fabric_env_pkg.sv'.
Parsing included file '/home/gzl/uvm/tnoc/env/fabric/tnoc_fabric_env_model.svh'.
Back to file '/home/gzl/uvm/tnoc/env/fabric/tnoc_fabric_env_pkg.sv'.
Parsing included file '/home/gzl/uvm/tnoc/env/fabric/tnoc_fabric_env_sequencer.svh'.
Back to file '/home/gzl/uvm/tnoc/env/fabric/tnoc_fabric_env_pkg.sv'.
Parsing included file '/home/gzl/uvm/tnoc/env/fabric/tnoc_fabric_env.svh'.
Back to file '/home/gzl/uvm/tnoc/env/fabric/tnoc_fabric_env_pkg.sv'.
Parsing design file '/home/gzl/uvm/tnoc/test/fabric/tnoc_fabric_tests_pkg.sv'
Parsing included file '/opt/synopsys/vcs-mx_vL-2016.06/etc/uvm-1.2/uvm_macros.svh'.
Back to file '/home/gzl/uvm/tnoc/test/fabric/tnoc_fabric_tests_pkg.sv'.
Parsing included file '/home/gzl/uvm/tnoc/env/tue/src/tue_macros.svh'.
Back to file '/home/gzl/uvm/tnoc/test/fabric/tnoc_fabric_tests_pkg.sv'.
Parsing included file '/home/gzl/uvm/tnoc/test/fabric/tnoc_fabric_test_base.svh'.
Back to file '/home/gzl/uvm/tnoc/test/fabric/tnoc_fabric_tests_pkg.sv'.
Parsing included file '/home/gzl/uvm/tnoc/test/fabric/tnoc_fabric_sample_test.svh'.
Back to file '/home/gzl/uvm/tnoc/test/fabric/tnoc_fabric_tests_pkg.sv'.
Parsing included file '/home/gzl/uvm/tnoc/test/fabric/tnoc_fabric_invalid_destination_test.svh'.
Back to file '/home/gzl/uvm/tnoc/test/fabric/tnoc_fabric_tests_pkg.sv'.
Parsing included file '/home/gzl/uvm/tnoc/test/fabric/tnoc_fabric_stress_access_test.svh'.
Back to file '/home/gzl/uvm/tnoc/test/fabric/tnoc_fabric_tests_pkg.sv'.
Parsing included file '/home/gzl/uvm/tnoc/test/fabric/tnoc_fabric_random_test.svh'.
Back to file '/home/gzl/uvm/tnoc/test/fabric/tnoc_fabric_tests_pkg.sv'.
Parsing design file '/home/gzl/uvm/tnoc/env/fabric/top.sv'
Top Level Modules:
top

Warning-[UII-L] Interface not instantiated
/home/gzl/uvm/tnoc/rtl/bcm/tbcm_crc.sv, 1
Interface 'tbcm_crc' defined in logic library 'work' is never instantiated
in design. It will be ignored.

Warning-[UII-L] Interface not instantiated
/home/gzl/uvm/tnoc/rtl/common/tnoc_address_decoder_if.sv, 3
Interface 'tnoc_address_decoder_if' defined in logic library 'work' is never
instantiated in design. It will be ignored.

TimeScale is 1 ns / 1 ps

Error-[NYI-CSTR-SYS-FTC] NYI constraint: sys function calls
/home/gzl/uvm/tnoc/env/bfm/tnoc_bfm_configuration.svh, 54
tnoc_bfm_pkg, "$clog2(this.virtual_channels)"
System function calls are not yet implemented in constraints.
Remove the function call or if possible replace it with an integral state
variable assigned in pre_randomize().

Error-[NYI-CSTR-SYS-FTC] NYI constraint: sys function calls
/home/gzl/uvm/tnoc/env/bfm/tnoc_bfm_configuration.svh, 64
tnoc_bfm_pkg, "$clog2(this.tags)"
System function calls are not yet implemented in constraints.
Remove the function call or if possible replace it with an integral state
variable assigned in pre_randomize().

2 warnings
2 errors
CPU time: 24.083 seconds to compile
make[3]: *** [compile_simv] Error 255
make[3]: Leaving directory /home/gzl/uvm/tnoc/sim/fabric_data_width_256_vc_1' make[2]: *** [run_simv] Error 2 make[2]: Leaving directory /home/gzl/uvm/tnoc/sim/fabric_data_width_256_vc_1'
make[1]: *** [tnoc_fabric_sample_test] Error 2
make[1]: Leaving directory `/home/gzl/uvm/tnoc/sim/fabric_data_width_256_vc_1'
make: *** [simulation_fabric_data_width_256_vc_1] Error 2
[gzl@gzl sim]$

Do you know why? Thank you for your reply!

パケット用の interface を定義する

tnoc_packet を送受信するための interface を定義する。
また、パケットからフリット、フリットからパケットに変換するモジュールも作成する。

router 内 flit 接続の変更

router 内の input/output block の flit 接続には、各ルート用のポートが使用されている。
記述簡略化のため、ポートを配列に変更する。

AXI ブリッジを転送サイズのフィールド変更に対応させる

AXI ブリッジを #51 に対応させる。
AXI のリードデータチャンネルには、転送サイズを示すフィールドはない。
なので、ブリッジ内で、

  • 要求パケットから、転送サイズを取り出して保持
  • byte_count/byte_offset を管理

する必要がある。

これを保持するバッファが必要になるが、パラメータで保持する値を指定する。
バッファのインデックスは、

  • location_id/tag の幅が ID 幅より小さい場合
    • location_id/tag そのもの
  • location_id/tag の幅が ID 幅より大きい場合
    • location_id/tag から CRC を計算し、その上位ビット

とする。インデックスがリクエストの ID となる。

転送サイズを示すフィールドの変更

転送サイズを示すフィールドを変更する。
バス幅変換をしやすくするため。

  • 要求
    • burst_length を byte_length に変更
      • 単位はバス幅ではなく、バイトに変更
  • 応答
    • byte_size を追加(ヘッダー)
      • 要求で来た値をそのまま返す
    • byte_offset を追加(ヘッダー)
      • バス上でどの位置から始まるかを示す
      • アドレスの下位ビット相当
      • 幅は全体で共通で、最大データ幅から求める
    • byte_end を追加 (ペイロード)
      • バスの終端位置を示す
      • 最終フリット上の end_byte が有効
      • 幅はデータ幅から求める
    • ステータスの変更
      • ExOkay/Slave Error/Decode Error をビット単位に変更する
        • バス幅を減らす際に、ステータスは OR を取れば良い

読み出しインターリーブをサポートする

AXI は読み出しインターリーブをサポートしているので、これをサポートする。
レスポンスパケットのペイロードに、末尾のレスポンスかどうかを示すフィールドを追加する。

tnoc_packet_packer/unpacker でヘッダーフリットの扱いに不整合がある

1 フリットに収まらないヘッダーがある場合、tnoc_packet_packer/unpacker でヘッダーフリット扱いに不整合があり、フリットからパケットを再現できない場合がある。以下のコマンドで再現できる。

$ cd sim/router_data_width_64
$ make tnoc_router_invalid_destination_test

上記の環境場合、レスポンスヘッダーは 1 フリットに収まるが、当該モジュールでは 2 フリットで構成されている前提で処理されてしまう。
パケットの種類によって、フリット数を切り替えてやる必要がある。

不正な宛先のパケットの処理

不正な宛先のパケットの処理を実装する。
実装するポートはローカルポートのみ。

  • posted write
    • 破棄
    • レスポンスは返さない
  • non-posted write
    • 破棄
    • ステータスを DECODE ERROR として、レスポンスを返す
      • リクエストが使った VC を使ってレスポンスを返す
  • read
    • 破棄
    • ステータスを DECODE ERROR として、レスポンスを返す
      • リクエストが使った VC を使ってレスポンスを返す
    • リクエスト分のダミーデータを返す
      • データはコンフィグで指定する
    • バース長が 0 の場合は、データなしのレスポンスを返す
  • response
    • 破棄

FLIT 幅の決定方法の変更

FLIT 幅の決め方を変える。
現在、header 全体の幅か、payload の幅の大きい方を FLIT の幅にしている。
これを、header の共通部分の幅か、payload の幅の大きい方を FLIT の幅にする。
これに伴い、FLIT 構造体 (noc_flit) に、先頭の FLIT であることを示す、head フィールドを追加する。

ドキュメントを書く

Readme などドキュメントを書く。

  • 概要
  • packet/flit のフォーマット
  • router の詳細
    • ブロック図
    • インターフェース

PH_TIMEOUT error is reported

The test below reprots PH_TIMEOUT error.

  • Test Name: fabric_data_width_32_vc_1/tnoc_fabric_random_test
  • Random Seed: 1908132033
  • Simulator: VCS P-2019.06

tnoc example testbench

hi taichi-ishitani ,
I'm appreciate for the Repo of tnoc. I use the vcs could regress all testcase in tnoc and view the waveform in verdi .

My question : use a 3 master to 4 slave axi port innterconnect as DUT , but i don't know how to connect the tnoc axi adapter , fabric and router as the DUT .

If the tnoc have a example of  connect the 3 parts , it's good for learner. Thank you very much!

BR,
Yuanchao

ディレクトリ構成の変更

rtl 内のディレクトリ構成を変更する。

  • config ディレクトリを作成
    • 以下のファイルを配置
      • tnoc_config_pkg.sv
      • tnoc_config_defines.svh (tnoc_defines.svh から改称)
  • include ディレクトリを削除
    • 中のファイルは rtl/common に移動

packet_item と flit_item の直接変換

packet_item と flit_item の変換には flit 構造体を介して行っている。
直接変換できるようにして、パフォーマンスの改善をはかる。

読み出しデータにもステータスを乗せる

AXI など読み出しデータにステータスが乗ってくるプロトコルにも対応しやすくするために、各読み出しデータにもスタータスを乗せるようにする。
ヘッダーに乗っているステータスと、読み出しデータに載っているステータスが異なる場合の挙動は、アダプターの実装依存とする。
(ヘッダーのステータスがエラーで読み出しデータのステータスがエラーでない場合、ヘッダーのステータスを優先するほうが良いかもしれない。)

burst_length のフォーマット変更

burst_length のフォーマットを変更する。
現状、burst_length は、単なる、binary になっているが、PCIe のように、

  • burst_length 幅
    • BURST_LENGTH_WIDTH = $clog2(MAX_BURSTS)
  • burst_length = 0 の場合
    • 2**BURST_LENGTH_WIDTH を示す
  • 上記以外
    • そのまま

とする。

また、現状、burst_length 幅を Config で設定するようになっているが、最大バースト長で設定するように変更する。

VC 1 の場合のシミュレーションを実行する

VC 1 の場合のシミュレーションを実行する。
以下の対応が必要。

  • tnoc_bfm_packet_item/tnoc_bfm_transmit_packet_sequence の修正
    • packet_item と virtual_channel を紐づけている制約の削除
    • 別途、configuration で対応付けできるようにしておく
  • makefile の修正
    • 特定のテストを実行しないようにする

パケットフォーマットの変更

AXI での使用を考慮し、パケットのフォーマットを変更する。

  • length を廃止し、burst_size と burst_length に分ける
    • Request Header に編入する
  • burst_type を Request Header に導入する
    • Fixed Burst
    • Incremental Burst
    • Wrapping Burst
  • Response Header から以下のフィールドを削除する
    • Lower Address
    • Last Response

Xcelium 対応

VCS 用の実行環境しかないので、 Xcelium 用の実行環境も作成する。

ローカル側インターフェース仕様変更

ローカル側インターフェースの仕様を変更する。
現状、flit を VC 間で共有しているが、これを配列にして分離する。

  • tnoc_flit_if の変更点
    • ローカルか、内部接続用のインターフェースかを識別するパラメータを追加する
    • flit を配列化し、要素数を以下のようにする
      • ローカル用の場合は、VC 分
      • 内部接続用の場合は、1
    • 他のモジュールも、この変更に合わせて、適宜変更する

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.