Lỗi này xảy ra trong phần mềm ModelSim® cho thiết kế VHDL. (Các lỗi tương tự có thể xảy ra trong các công cụ mô phỏng EDA khác).
Khi phần mềm Quartus® II tạo ra một vHDL gate-level netlist cho các công cụ mô phỏng của bên thứ ba (*.vho) cho một thiết kế có chứa bất kỳ giải pháp gỡ lỗi trên chip nào sử dụng cổng JTAG (chẳng hạn như trình phân tích logic SignalTap® II hoặc Trình xây dựng SOPC JTAG UART) thì danh sách mạng chứa các cổng JTAG sau:
- altera_reserved_tms
- altera_reserved_tck
- altera_reserved_tdi
- altera_reserved_ntrst
- altera_reserved_tdo
Lỗi xảy ra khi bạn mô phỏng thực thể cấp cao nhất bằng một thiết bị thử nghiệm trong công cụ mô phỏng của bên thứ ba nếu bạn không xác định các cổng JTAG này trong tuyên bố và khởi tạo thành phần cấp cao nhất.
Để tránh vấn đề này, hãy xác định các cổng JTAG trong tuyên bố thành phần và tức thì của thực thể trong testbench của bạn như được hiển thị dưới đây:
COMPONENT entity name>
PORT (
altera_reserved_tms : IN std_logic;
altera_reserved_tck : IN std_logic;
altera_reserved_tdi : IN std_logic;
altera_reserved_ntrst : IN std_logic;
altera_reserved_tdo : OUT std_logic;
...
);
Bạn có thể đặt các altera_reserved
* chân này ở cấp độ logic 0 trong bàn thử nghiệm của mình như sau, vì bạn không điều khiển dữ liệu trên các cổng này trong quá trình mô phỏng.
instance name> : entity name>
PORT MAP (
altera_reserved_tms => '0',
altera_reserved_tck => '0',
altera_reserved_tdi => '0',
altera_reserved_ntrst => '0',
altera_reserved_tdo => tdo,
...
);