เนื่องจากปัญหาในซอฟต์แวร์ Quartus® II เวอร์ชัน 13.0 ขึ้นไป ระบบ Qsys ที่มี AXI Default Slave แต่ไม่มี AXI Slave จะไม่คอมไพล์และจําลองอย่างถูกต้อง ข้อผิดพลาดต่อไปนี้จะถูกรายงานในระหว่างการจําลอง:
Modelsim : ** error _mm_interconnect_0_addr_router.sv(196): (vlog-2730) ตัวแปรที่ไม่ได้กําหนด: 'write_transaction'
Synopsys VCS : "Error-[IND] Identifier ไม่ได้ประกาศ_interconnect_0_addr_router.sv, 196
ยังไม่ได้ประกาศตัวระบุ 'write_transaction' หากไม่คาดว่าเกิดข้อผิดพลาดนี้ โปรดตรวจสอบว่าคุณได้ตั้งค่า "altpcietb_bfm_vc_intf_ast_common.v" ไว้หรือไม่
--------------------------------------
เพื่อแก้ไขปัญหาดังกล่าว คุณจําเป็นต้องทําตามขั้นตอนต่อไปนี้:
1. ลบไฟล์ซ้ําซ้อนต่อไปนี้ในsim_filelistที่กําหนดไว้ใน altpcietb_bfm_ep_example_chaining_pipen1b.vo ด้วย:
altpcierd_cdma_ecrc_check_128.v
altpcierd_cdma_ecrc_check_64.v
altpcierd_cdma_ecrc_gen.v
altpcierd_cdma_ecrc_gen_calc.v
altpcierd_cdma_ecrc_gen_ctl_128.v
altpcierd_cdma_ecrc_gen_ctl_64.v
altpcierd_cdma_ecrc_gen_datapath.v
altpcierd_rx_ecrc_128.vo
altpcierd_rx_ecrc_64.vo
altpcierd_tl_cfg_sample.v
altpcierd_tx_ecrc_128.vo
altpcierd_tx_ecrc_64.vo
altpcierd_tx_ecrc_ctl_fifo.v
altpcierd_tx_ecrc_data_fifo.v
altpcierd_tx_ecrc_fifo.v
altpcierd_pcie_reconfig.v
2. Open altpcietb_bfm_ep_example_chaining_pipen1b.vo" ภายใต้/_examples/common/testbench directory
3. เปลี่ยนชื่อการประกาศของโมดูลที่สองโดยผนวก "_altcrc" กับชื่อดั้งเดิมในรายการด้านล่าง
- บรรทัดที่ 23425 เปลี่ยนaltpcierd_rx_ecrc_128เป็น altpcierd_rx_ecrc_128_altcrc
- บรรทัดที่ 29557 เปลี่ยนaltpcierd_rx_ecrc_64เป็น altpcierd_rx_ecrc_64_altcrc
- บรรทัดที่ 33081 เปลี่ยนaltpcierd_tx_ecrc_128เป็น altpcierd_tx_ecrc_128_altcrc
- บรรทัดที่ 39787 เปลี่ยนaltpcierd_tx_ecrc_64เป็น altpcierd_tx_ecrc_64_altcrc
4. ปรับเปลี่ยนruntb_vcs.sh สําหรับรายการต่อไปนี้
- เปลี่ยนQUARTUS_ROOTDIRเพื่อชี้ไปยังไดเรกทอรีการติดตั้ง Quartus ปัจจุบันของคุณ
- เพิ่มตัวเลือก "-cla" ไปยังบรรทัดคําสั่งหลังจาก "vcs"
- เพิ่ม " /" หลังจาก " incdir" เพื่อรวมไดเรกทอรีด้านบน testbench สําหรับสคริปต์เพื่อค้นหา altpcietb_bfm_vc_intf_ast_common.v
คําสั่งใหม่จะมีลักษณะดังนี้:
vcs -lca -ntb_opts check -R vcs lic wait error 100 v2k incdir .. / .. /.. /common/testbench/ .. /.. /common/incremental_compile_module -f sim_filelist.f -l transcript
ปัญหานี้จะได้รับการแก้ไขในเวอร์ชันซอฟต์แวร์ Quartus II ในอนาคต