URL
https://opencores.org/ocsvn/adv_debug_sys/adv_debug_sys/trunk
Subversion Repositories adv_debug_sys
Compare Revisions
- This comparison shows the changes necessary to convert path
/adv_debug_sys/trunk/Hardware
- from Rev 30 to Rev 32
- ↔ Reverse comparison
Rev 30 → Rev 32
/altera_virtual_jtag/rtl/vhdl/altera_virtual_jtag.vhd
1,64 → 1,64
---------------------------------------------------------------------- |
---- ---- |
---- altera_virtual_jtag.vhd ---- |
---- ---- |
---- ---- |
---- ---- |
---- Author(s): ---- |
---- Nathan Yawn (nathan.yawn@opencores.org) ---- |
---- ---- |
---- ---- |
---- ---- |
--------------------------------------------------------------------- |
---- ---- |
---- Copyright (C) 2003-2008 Authors ---- |
---- ---- |
---- This source file may be used and distributed without ---- |
---- restriction provided that this copyright statement is not ---- |
---- removed from the file and that any derivative work contains ---- |
---- the original copyright notice and the associated disclaimer. ---- |
---- ---- |
---- This source file is free software; you can redistribute it ---- |
---- and/or modify it under the terms of the GNU Lesser General ---- |
---- Public License as published by the Free Software Foundation; ---- |
---- either version 2.1 of the License, or (at your option) any ---- |
---- later version. ---- |
---- ---- |
---- This source is distributed in the hope that it will be ---- |
---- useful, but WITHOUT ANY WARRANTY; without even the implied ---- |
---- warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR ---- |
---- PURPOSE. See the GNU Lesser General Public License for more ---- |
---- details. ---- |
---- ---- |
---- You should have received a copy of the GNU Lesser General ---- |
---- Public License along with this source; if not, download it ---- |
---- from http://www.opencores.org/lgpl.shtml ---- |
---- ---- |
---------------------------------------------------------------------- |
-- -- |
-- This file is a wrapper for the Altera Virtual JTAG device. -- |
-- It is designed to take the place of a separate TAP -- |
-- controller in Altera systems, to allow a user to access a CPU -- |
-- debug module (such as that of the OR1200) through the FPGA's -- |
-- dedicated JTAG / configuration port. -- |
-- -- |
---------------------------------------------------------------------- |
-- |
-- CVS Revision History |
-- |
-- $Log: altera_virtual_jtag.vhd,v $ |
-- Revision 1.3 2009/06/16 02:53:19 Nathan |
-- Changed some signal names for better consistency between different hardware modules. |
-- |
-- Revision 1.2 2009/05/17 20:54:47 Nathan |
-- Changed email address to opencores.org |
-- |
-- Revision 1.1 2008/07/18 20:09:31 Nathan |
-- Changed directory structure to match existing projects. |
-- |
-- Revision 1.2 2008/05/22 19:55:20 Nathan |
-- Added added copyright, CVS log, and brief description. |
-- |
////////////////////////////////////////////////////////////////////// |
//// //// |
//// altera_virtual_jtag.vhd //// |
//// //// |
//// //// |
//// //// |
//// Author(s): //// |
//// Nathan Yawn (nathan.yawn@opencores.org) //// |
//// //// |
//// //// |
//// //// |
////////////////////////////////////////////////////////////////////// |
//// //// |
//// Copyright (C) 2003-2008 Authors //// |
//// //// |
//// This source file may be used and distributed without //// |
//// restriction provided that this copyright statement is not //// |
//// removed from the file and that any derivative work contains //// |
//// the original copyright notice and the associated disclaimer. //// |
//// //// |
//// This source file is free software; you can redistribute it //// |
//// and/or modify it under the terms of the GNU Lesser General //// |
//// Public License as published by the Free Software Foundation; //// |
//// either version 2.1 of the License, or (at your option) any //// |
//// later version. //// |
//// //// |
//// This source is distributed in the hope that it will be //// |
//// useful, but WITHOUT ANY WARRANTY; without even the implied //// |
//// warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR //// |
//// PURPOSE. See the GNU Lesser General Public License for more //// |
//// details. //// |
//// //// |
//// You should have received a copy of the GNU Lesser General //// |
//// Public License along with this source; if not, download it //// |
//// from http://www.opencores.org/lgpl.shtml //// |
//// //// |
////////////////////////////////////////////////////////////////////// |
// // |
// This file is a wrapper for the Altera Virtual JTAG device. // |
// It is designed to take the place of a separate TAP // |
// controller in Altera systems, to allow a user to access a CPU // |
// debug module (such as that of the OR1200) through the FPGA's // |
// dedicated JTAG / configuration port. // |
// // |
////////////////////////////////////////////////////////////////////// |
// |
// CVS Revision History |
// |
// $Log: altera_virtual_jtag.vhd,v $ |
// Revision 1.3 2009-06-16 02:53:19 Nathan |
// Changed some signal names for better consistency between different hardware modules. |
// |
// Revision 1.2 2009/05/17 20:54:47 Nathan |
// Changed email address to opencores.org |
// |
// Revision 1.1 2008/07/18 20:09:31 Nathan |
// Changed directory structure to match existing projects. |
// |
// Revision 1.2 2008/05/22 19:55:20 Nathan |
// Added added copyright, CVS log, and brief description. |
// |
|
|
LIBRARY ieee; |
/adv_dbg_if/bench/full_system/adv_dbg_tb.v
40,6 → 40,12
// CVS Revision History |
// |
// $Log: adv_dbg_tb.v,v $ |
// Revision 1.6 2010-01-16 02:15:22 Nathan |
// Updated to match changes in hardware. Added support for hi-speed mode. |
// |
// Revision 1.5 2010-01-08 01:41:07 Nathan |
// Removed unused, non-existant include from CPU behavioral model. Minor text edits. |
// |
// Revision 1.4 2009/05/17 20:54:55 Nathan |
// Changed email address to opencores.org |
// |
49,8 → 55,8
|
|
`include "tap_defines.v" |
`include "dbg_defines.v" |
`include "dbg_wb_defines.v" |
`include "adbg_defines.v" |
`include "adbg_wb_defines.v" |
|
|
// Polynomial for the CRC calculation |
619,8 → 625,24
write_bit(3'h0); // capture_ir |
write_bit(3'h0); // shift_ir |
|
`ifdef ADBG_USE_HISPEED |
// Get 1 status bit, then word_size_bytes*8 bits |
status = 1'b0; |
j = 0; |
while(!status) begin |
read_write_bit(3'h0, status); |
j = j + 1; |
end |
|
if(j > 1) begin |
$display("Took %0d tries before good status bit during burst read", j); |
end |
`endif |
|
// Now, repeat... |
for(i = 0; i < word_count; i=i+1) begin |
|
`ifndef ADBG_USE_HISPEED |
// Get 1 status bit, then word_size_bytes*8 bits |
status = 1'b0; |
j = 0; |
632,6 → 654,7
if(j > 1) begin |
$display("Took %0d tries before good status bit during burst read", j); |
end |
`endif |
|
jtag_read_write_stream(64'h0, {2'h0,(word_size_bytes<<3)},0,instream); |
//$display("Read 0x%0x", instream[31:0]); |
709,6 → 732,7
compute_crc(crc_calc_i, dataword[31:0], word_size_bits, crc_calc_o); |
crc_calc_i = crc_calc_o; |
|
`ifndef ADBG_USE_HISPEED |
// Check if WB bus is ready |
// *** THIS WILL NOT WORK IF THERE IS MORE THAN 1 DEVICE IN THE JTAG CHAIN!!! |
status = 1'b0; |
717,7 → 741,7
if(!status) begin |
$display("Bad status bit during burst write, index %d", i); |
end |
|
`endif |
|
//$display("Wrote 0x%0x", dataword); |
end |
/adv_dbg_if/bench/full_system/wave.do
1,499 → 1,500
onerror {resume} |
quietly WaveActivateNextPane {} 0 |
add wave -noupdate -format Logic /xsv_fpga_top/jtag_tdi |
add wave -noupdate -format Logic /xsv_fpga_top/jtag_tms |
add wave -noupdate -format Logic /xsv_fpga_top/jtag_tck |
add wave -noupdate -format Logic /xsv_fpga_top/jtag_tdo |
add wave -noupdate -format Logic /xsv_fpga_top/debug_select |
add wave -noupdate -divider {Top level signals} |
add wave -noupdate -format Logic /xsv_fpga_top/clk |
add wave -noupdate -format Logic /xsv_fpga_top/rstn |
add wave -noupdate -format Logic /xsv_fpga_top/rst_r |
add wave -noupdate -format Logic /xsv_fpga_top/wb_rst |
add wave -noupdate -format Logic /xsv_fpga_top/cpu_rst |
add wave -noupdate -divider {Top-level CPU dbg} |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_lss |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_is |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_wp |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_bp |
add wave -noupdate -format Literal -radix hexadecimal /xsv_fpga_top/dbg_dat_dbg |
add wave -noupdate -format Literal -radix hexadecimal /xsv_fpga_top/dbg_dat_risc |
add wave -noupdate -format Literal -radix hexadecimal /xsv_fpga_top/dbg_adr |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_ewt |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_stall |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_we |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_stb |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_ack |
add wave -noupdate -divider {CPU IWB} |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/iwb_clk_i |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/iwb_rst_i |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/iwb_ack_i |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/iwb_err_i |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/iwb_rty_i |
add wave -noupdate -format Literal -radix hexadecimal /xsv_fpga_top/or1200_top/iwb_dat_i |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/iwb_cyc_o |
add wave -noupdate -format Literal -radix hexadecimal /xsv_fpga_top/or1200_top/iwb_adr_o |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/iwb_stb_o |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/iwb_we_o |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/iwb_sel_o |
add wave -noupdate -format Literal -radix hexadecimal /xsv_fpga_top/or1200_top/iwb_dat_o |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/iwb_cab_o |
add wave -noupdate -divider {DBG WB signals} |
add wave -noupdate -format Literal -radix hexadecimal /xsv_fpga_top/wb_dm_adr_o |
add wave -noupdate -format Literal -radix hexadecimal /xsv_fpga_top/wb_dm_dat_i |
add wave -noupdate -format Literal -radix hexadecimal /xsv_fpga_top/wb_dm_dat_o |
add wave -noupdate -format Literal /xsv_fpga_top/wb_dm_sel_o |
add wave -noupdate -format Logic /xsv_fpga_top/wb_dm_we_o |
add wave -noupdate -format Logic /xsv_fpga_top/wb_dm_stb_o |
add wave -noupdate -format Logic /xsv_fpga_top/wb_dm_cyc_o |
add wave -noupdate -format Logic /xsv_fpga_top/wb_dm_cab_o |
add wave -noupdate -format Logic /xsv_fpga_top/wb_dm_ack_i |
add wave -noupdate -format Logic /xsv_fpga_top/wb_dm_err_i |
add wave -noupdate -divider {DBG WB BIU} |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/biu/tck_i |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/biu/rst_i |
add wave -noupdate -format Literal -radix hexadecimal /xsv_fpga_top/dbg_top/i_dbg_wb/biu/data_i |
add wave -noupdate -format Literal -radix hexadecimal /xsv_fpga_top/dbg_top/i_dbg_wb/biu/data_o |
add wave -noupdate -format Literal -radix hexadecimal /xsv_fpga_top/dbg_top/i_dbg_wb/biu/addr_i |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/biu/strobe_i |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/biu/rd_wrn_i |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/biu/rdy_o |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/biu/err_o |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_wb/biu/word_size_i |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/biu/wb_clk_i |
add wave -noupdate -format Literal -radix hexadecimal /xsv_fpga_top/dbg_top/i_dbg_wb/biu/wb_adr_o |
add wave -noupdate -format Literal -radix hexadecimal /xsv_fpga_top/dbg_top/i_dbg_wb/biu/wb_dat_o |
add wave -noupdate -format Literal -radix hexadecimal /xsv_fpga_top/dbg_top/i_dbg_wb/biu/wb_dat_i |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/biu/wb_cyc_o |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/biu/wb_stb_o |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_wb/biu/wb_sel_o |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/biu/wb_we_o |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/biu/wb_ack_i |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/biu/wb_cab_o |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/biu/wb_err_i |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_wb/biu/wb_cti_o |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_wb/biu/wb_bte_o |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_wb/biu/sel_reg |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_wb/biu/addr_reg |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_wb/biu/data_in_reg |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_wb/biu/data_out_reg |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/biu/wr_reg |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/biu/str_sync |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/biu/rdy_sync |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/biu/err_reg |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/biu/rdy_sync_tff1 |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/biu/rdy_sync_tff2 |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/biu/rdy_sync_tff2q |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/biu/str_sync_wbff1 |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/biu/str_sync_wbff2 |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/biu/str_sync_wbff2q |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/biu/data_o_en |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/biu/rdy_sync_en |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/biu/err_en |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_wb/biu/be_dec |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/biu/start_toggle |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_wb/biu/swapped_data_i |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_wb/biu/swapped_data_out |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/biu/wb_fsm_state |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/biu/next_fsm_state |
add wave -noupdate -divider {DBG WB Module} |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/tck_i |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/module_tdo_o |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/tdi_i |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/capture_dr_i |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/shift_dr_i |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/update_dr_i |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_wb/data_register_i |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/module_select_i |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/top_inhibit_o |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/rst_i |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/wb_clk_i |
add wave -noupdate -format Literal -radix hexadecimal /xsv_fpga_top/dbg_top/i_dbg_wb/wb_adr_o |
add wave -noupdate -format Literal -radix hexadecimal /xsv_fpga_top/dbg_top/i_dbg_wb/wb_dat_o |
add wave -noupdate -format Literal -radix hexadecimal /xsv_fpga_top/dbg_top/i_dbg_wb/wb_dat_i |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/wb_cyc_o |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/wb_stb_o |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_wb/wb_sel_o |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/wb_we_o |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/wb_ack_i |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/wb_cab_o |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/wb_err_i |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_wb/wb_cti_o |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_wb/wb_bte_o |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_wb/address_counter |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_wb/bit_count |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_wb/word_count |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_wb/operation |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_wb/data_out_shift_reg |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/internal_register_select |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_wb/internal_reg_error |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/addr_sel |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/addr_ct_en |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/op_reg_en |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/bit_ct_en |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/bit_ct_rst |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/word_ct_sel |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/word_ct_en |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/out_reg_ld_en |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/out_reg_shift_en |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/out_reg_data_sel |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_wb/tdo_output_sel |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/biu_strobe |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/crc_clr |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/crc_en |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/crc_in_sel |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/crc_shift_en |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/regsel_ld_en |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/intreg_ld_en |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/error_reg_en |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/biu_clr_err |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/word_count_zero |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/bit_count_max |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/module_cmd |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/biu_ready |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/biu_err |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/burst_instruction |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/intreg_instruction |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/intreg_write |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/rd_op |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/crc_match |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/bit_count_32 |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_wb/word_size_bits |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_wb/word_size_bytes |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_wb/incremented_address |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_wb/data_to_addr_counter |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_wb/data_to_word_counter |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_wb/decremented_word_count |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_wb/address_data_in |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_wb/count_data_in |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_wb/operation_in |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_wb/data_to_biu |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_wb/data_from_biu |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_wb/crc_data_out |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/crc_data_in |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/crc_serial_out |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/reg_select_data |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_wb/out_reg_data |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_wb/data_from_internal_reg |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/biu_rst |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_wb/module_state |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_wb/module_next_state |
add wave -noupdate -divider {DBG Top} |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/tck_i |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/tdi_i |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/tdo_o |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/rst_i |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/shift_dr_i |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/pause_dr_i |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/update_dr_i |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/capture_dr_i |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/debug_select_i |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/wb_clk_i |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/wb_adr_o |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/wb_dat_o |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/wb_dat_i |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/wb_cyc_o |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/wb_stb_o |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/wb_sel_o |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/wb_we_o |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/wb_ack_i |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/wb_cab_o |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/wb_err_i |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/wb_cti_o |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/wb_bte_o |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/cpu0_clk_i |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/cpu0_addr_o |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/cpu0_data_i |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/cpu0_data_o |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/cpu0_bp_i |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/cpu0_stall_o |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/cpu0_stb_o |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/cpu0_we_o |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/cpu0_ack_i |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/cpu0_rst_o |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/tdo_wb |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/tdo_cpu0 |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/tdo_cpu1 |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/input_shift_reg |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/module_id_reg |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/select_inhibit |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/module_inhibit |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/select_cmd |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/module_id_in |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/module_selects |
add wave -noupdate -divider {DBG CPU0 Module} |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/tck_i |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/module_tdo_o |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/tdi_i |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/capture_dr_i |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/shift_dr_i |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/update_dr_i |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/data_register_i |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/module_select_i |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/top_inhibit_o |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/rst_i |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/cpu_clk_i |
add wave -noupdate -format Literal -radix hexadecimal /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/cpu_addr_o |
add wave -noupdate -format Literal -radix hexadecimal /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/cpu_data_i |
add wave -noupdate -format Literal -radix hexadecimal /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/cpu_data_o |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/cpu_stb_o |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/cpu_we_o |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/cpu_ack_i |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/cpu_rst_o |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/cpu_bp_i |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/cpu_stall_o |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/address_counter |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/bit_count |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/word_count |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/operation |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/data_out_shift_reg |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/internal_register_select |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/internal_reg_status |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/addr_sel |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/addr_ct_en |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/op_reg_en |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/bit_ct_en |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/bit_ct_rst |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/word_ct_sel |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/word_ct_en |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/out_reg_ld_en |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/out_reg_shift_en |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/out_reg_data_sel |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/tdo_output_sel |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/biu_strobe |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/crc_clr |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/crc_en |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/crc_in_sel |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/crc_shift_en |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/regsel_ld_en |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/intreg_ld_en |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/word_count_zero |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/bit_count_max |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/module_cmd |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/biu_ready |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/burst_instruction |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/intreg_instruction |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/intreg_write |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/rd_op |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/crc_match |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/bit_count_32 |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/word_size_bits |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/address_increment |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/incremented_address |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/data_to_addr_counter |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/data_to_word_counter |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/decremented_word_count |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/address_data_in |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/count_data_in |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/operation_in |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/data_to_biu |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/data_from_biu |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/crc_data_out |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/crc_data_in |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/crc_serial_out |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/reg_select_data |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/out_reg_data |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/data_from_internal_reg |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/status_reg_wr |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/module_state |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/module_next_state |
add wave -noupdate -divider {DBG CPU0 BIU} |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/or1k_biu_i/tck_i |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/or1k_biu_i/rst_i |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/or1k_biu_i/data_i |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/or1k_biu_i/data_o |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/or1k_biu_i/addr_i |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/or1k_biu_i/strobe_i |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/or1k_biu_i/rd_wrn_i |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/or1k_biu_i/rdy_o |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/or1k_biu_i/cpu_clk_i |
add wave -noupdate -format Literal -radix hexadecimal /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/or1k_biu_i/cpu_addr_o |
add wave -noupdate -format Literal -radix hexadecimal /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/or1k_biu_i/cpu_data_i |
add wave -noupdate -format Literal -radix hexadecimal /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/or1k_biu_i/cpu_data_o |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/or1k_biu_i/cpu_stb_o |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/or1k_biu_i/cpu_we_o |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/or1k_biu_i/cpu_ack_i |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/or1k_biu_i/addr_reg |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/or1k_biu_i/data_in_reg |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/or1k_biu_i/data_out_reg |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/or1k_biu_i/wr_reg |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/or1k_biu_i/str_sync |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/or1k_biu_i/rdy_sync |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/or1k_biu_i/rdy_sync_tff1 |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/or1k_biu_i/rdy_sync_tff2 |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/or1k_biu_i/rdy_sync_tff2q |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/or1k_biu_i/str_sync_wbff1 |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/or1k_biu_i/str_sync_wbff2 |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/or1k_biu_i/str_sync_wbff2q |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/or1k_biu_i/data_o_en |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/or1k_biu_i/rdy_sync_en |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/or1k_biu_i/start_toggle |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/or1k_biu_i/cpu_fsm_state |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/or1k_biu_i/next_fsm_state |
add wave -noupdate -divider {CPU debug unit} |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_du/clk |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_du/rst |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_du/dcpu_cycstb_i |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_du/dcpu_we_i |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_du/dcpu_adr_i |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_du/dcpu_dat_lsu |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_du/dcpu_dat_dc |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_du/icpu_cycstb_i |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_du/ex_freeze |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_du/branch_op |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_du/ex_insn |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_du/id_pc |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_du/spr_dat_npc |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_du/rf_dataw |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_du/du_dsr |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_du/du_stall |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_du/du_addr |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_du/du_dat_i |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_du/du_dat_o |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_du/du_read |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_du/du_write |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_du/du_except |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_du/du_hwbkpt |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_du/spr_cs |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_du/spr_write |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_du/spr_addr |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_du/spr_dat_i |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_du/spr_dat_o |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_du/dbg_stall_i |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_du/dbg_ewt_i |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_du/dbg_lss_o |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_du/dbg_is_o |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_du/dbg_wp_o |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_du/dbg_bp_o |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_du/dbg_stb_i |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_du/dbg_we_i |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_du/dbg_adr_i |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_du/dbg_dat_i |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_du/dbg_dat_o |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_du/dbg_ack_o |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_du/dmr1 |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_du/dmr2 |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_du/dsr |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_du/drr |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_du/dvr0 |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_du/dvr1 |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_du/dvr2 |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_du/dvr3 |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_du/dvr4 |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_du/dvr5 |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_du/dvr6 |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_du/dvr7 |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_du/dcr0 |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_du/dcr1 |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_du/dcr2 |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_du/dcr3 |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_du/dcr4 |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_du/dcr5 |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_du/dcr6 |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_du/dcr7 |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_du/dwcr0 |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_du/dwcr1 |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_du/dmr1_sel |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_du/dmr2_sel |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_du/dsr_sel |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_du/drr_sel |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_du/dvr0_sel |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_du/dvr1_sel |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_du/dvr2_sel |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_du/dvr3_sel |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_du/dvr4_sel |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_du/dvr5_sel |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_du/dvr6_sel |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_du/dvr7_sel |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_du/dcr0_sel |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_du/dcr1_sel |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_du/dcr2_sel |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_du/dcr3_sel |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_du/dcr4_sel |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_du/dcr5_sel |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_du/dcr6_sel |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_du/dcr7_sel |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_du/dwcr0_sel |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_du/dwcr1_sel |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_du/dbg_bp_r |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_du/except_stop |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_du/tbia_dat_o |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_du/tbim_dat_o |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_du/tbar_dat_o |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_du/tbts_dat_o |
add wave -noupdate -divider {CPU SPRs} |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/clk |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/rst |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/flagforw |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/flag_we |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/flag |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/cyforw |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/cy_we |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/carry |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/addrbase |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/addrofs |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/dat_i |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/alu_op |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/branch_op |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/epcr |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/eear |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/esr |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/except_started |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/to_wbmux |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/epcr_we |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/eear_we |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/esr_we |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/pc_we |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/sr_we |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/to_sr |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/sr |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/spr_dat_cfgr |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/spr_dat_rf |
add wave -noupdate -format Literal -radix hexadecimal /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/spr_dat_npc |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/spr_dat_ppc |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/spr_dat_mac |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/spr_dat_pic |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/spr_dat_tt |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/spr_dat_pm |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/spr_dat_dmmu |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/spr_dat_immu |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/spr_dat_du |
add wave -noupdate -format Literal -radix hexadecimal /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/spr_addr |
add wave -noupdate -format Literal -radix hexadecimal /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/spr_dat_o |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/spr_cs |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/spr_we |
add wave -noupdate -format Literal -radix hexadecimal /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/du_addr |
add wave -noupdate -format Literal -radix hexadecimal /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/du_dat_du |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/du_read |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/du_write |
add wave -noupdate -format Literal -radix hexadecimal /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/du_dat_cpu |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/write_spr |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/read_spr |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/cfgr_sel |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/rf_sel |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/npc_sel |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/ppc_sel |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/sr_sel |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/epcr_sel |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/eear_sel |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/esr_sel |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/sys_data |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/du_access |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/sprs_op |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/unqualified_cs |
TreeUpdate [SetDefaultTree] |
WaveRestoreCursors {{Cursor 1} {6180 ps} 0} |
configure wave -namecolwidth 391 |
configure wave -valuecolwidth 100 |
configure wave -justifyvalue left |
configure wave -signalnamewidth 0 |
configure wave -snapdistance 10 |
configure wave -datasetprefix 0 |
configure wave -rowmargin 4 |
configure wave -childrowmargin 2 |
configure wave -gridoffset 0 |
configure wave -gridperiod 1 |
configure wave -griddelta 40 |
configure wave -timeline 0 |
update |
WaveRestoreZoom {0 ps} {6180 ps} |
onerror {resume} |
quietly WaveActivateNextPane {} 0 |
add wave -noupdate -format Logic /xsv_fpga_top/jtag_tdi |
add wave -noupdate -format Logic /xsv_fpga_top/jtag_tms |
add wave -noupdate -format Logic /xsv_fpga_top/jtag_tck |
add wave -noupdate -format Logic /xsv_fpga_top/jtag_tdo |
add wave -noupdate -format Logic /xsv_fpga_top/debug_select |
add wave -noupdate -divider {Top level signals} |
add wave -noupdate -format Logic /xsv_fpga_top/clk |
add wave -noupdate -format Logic /xsv_fpga_top/rstn |
add wave -noupdate -format Logic /xsv_fpga_top/rst_r |
add wave -noupdate -format Logic /xsv_fpga_top/wb_rst |
add wave -noupdate -format Logic /xsv_fpga_top/cpu_rst |
add wave -noupdate -divider {Top-level CPU dbg} |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_lss |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_is |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_wp |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_bp |
add wave -noupdate -format Literal -radix hexadecimal /xsv_fpga_top/dbg_dat_dbg |
add wave -noupdate -format Literal -radix hexadecimal /xsv_fpga_top/dbg_dat_risc |
add wave -noupdate -format Literal -radix hexadecimal /xsv_fpga_top/dbg_adr |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_ewt |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_stall |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_we |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_stb |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_ack |
add wave -noupdate -divider {CPU IWB} |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/iwb_clk_i |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/iwb_rst_i |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/iwb_ack_i |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/iwb_err_i |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/iwb_rty_i |
add wave -noupdate -format Literal -radix hexadecimal /xsv_fpga_top/or1200_top/iwb_dat_i |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/iwb_cyc_o |
add wave -noupdate -format Literal -radix hexadecimal /xsv_fpga_top/or1200_top/iwb_adr_o |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/iwb_stb_o |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/iwb_we_o |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/iwb_sel_o |
add wave -noupdate -format Literal -radix hexadecimal /xsv_fpga_top/or1200_top/iwb_dat_o |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/iwb_cab_o |
add wave -noupdate -divider {DBG WB signals} |
add wave -noupdate -format Literal -radix hexadecimal /xsv_fpga_top/wb_dm_adr_o |
add wave -noupdate -format Literal -radix hexadecimal /xsv_fpga_top/wb_dm_dat_i |
add wave -noupdate -format Literal -radix hexadecimal /xsv_fpga_top/wb_dm_dat_o |
add wave -noupdate -format Literal /xsv_fpga_top/wb_dm_sel_o |
add wave -noupdate -format Logic /xsv_fpga_top/wb_dm_we_o |
add wave -noupdate -format Logic /xsv_fpga_top/wb_dm_stb_o |
add wave -noupdate -format Logic /xsv_fpga_top/wb_dm_cyc_o |
add wave -noupdate -format Logic /xsv_fpga_top/wb_dm_cab_o |
add wave -noupdate -format Logic /xsv_fpga_top/wb_dm_ack_i |
add wave -noupdate -format Logic /xsv_fpga_top/wb_dm_err_i |
add wave -noupdate -divider {DBG WB BIU} |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/wb_biu_i/tck_i |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/wb_biu_i/rst_i |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_wb/wb_biu_i/data_i |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_wb/wb_biu_i/data_o |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_wb/wb_biu_i/addr_i |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/wb_biu_i/strobe_i |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/wb_biu_i/rd_wrn_i |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/wb_biu_i/rdy_o |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/wb_biu_i/err_o |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_wb/wb_biu_i/word_size_i |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/wb_biu_i/wb_clk_i |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_wb/wb_biu_i/wb_adr_o |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_wb/wb_biu_i/wb_dat_o |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_wb/wb_biu_i/wb_dat_i |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/wb_biu_i/wb_cyc_o |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/wb_biu_i/wb_stb_o |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_wb/wb_biu_i/wb_sel_o |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/wb_biu_i/wb_we_o |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/wb_biu_i/wb_ack_i |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/wb_biu_i/wb_cab_o |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/wb_biu_i/wb_err_i |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_wb/wb_biu_i/wb_cti_o |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_wb/wb_biu_i/wb_bte_o |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_wb/wb_biu_i/sel_reg |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_wb/wb_biu_i/addr_reg |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_wb/wb_biu_i/data_in_reg |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_wb/wb_biu_i/data_out_reg |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/wb_biu_i/wr_reg |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/wb_biu_i/str_sync |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/wb_biu_i/rdy_sync |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/wb_biu_i/err_reg |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/wb_biu_i/rdy_sync_tff1 |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/wb_biu_i/rdy_sync_tff2 |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/wb_biu_i/rdy_sync_tff2q |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/wb_biu_i/str_sync_wbff1 |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/wb_biu_i/str_sync_wbff2 |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/wb_biu_i/str_sync_wbff2q |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/wb_biu_i/data_o_en |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/wb_biu_i/rdy_sync_en |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/wb_biu_i/err_en |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_wb/wb_biu_i/be_dec |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/wb_biu_i/start_toggle |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_wb/wb_biu_i/swapped_data_i |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_wb/wb_biu_i/swapped_data_out |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/wb_biu_i/wb_fsm_state |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/wb_biu_i/next_fsm_state |
add wave -noupdate -divider {DBG WB Module} |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/tck_i |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/module_tdo_o |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/tdi_i |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/capture_dr_i |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/shift_dr_i |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/update_dr_i |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_wb/data_register_i |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/module_select_i |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/top_inhibit_o |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/rst_i |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/wb_clk_i |
add wave -noupdate -format Literal -radix hexadecimal /xsv_fpga_top/dbg_top/i_dbg_wb/wb_adr_o |
add wave -noupdate -format Literal -radix hexadecimal /xsv_fpga_top/dbg_top/i_dbg_wb/wb_dat_o |
add wave -noupdate -format Literal -radix hexadecimal /xsv_fpga_top/dbg_top/i_dbg_wb/wb_dat_i |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/wb_cyc_o |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/wb_stb_o |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_wb/wb_sel_o |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/wb_we_o |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/wb_ack_i |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/wb_cab_o |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/wb_err_i |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_wb/wb_cti_o |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_wb/wb_bte_o |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_wb/address_counter |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_wb/bit_count |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_wb/word_count |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_wb/operation |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_wb/data_out_shift_reg |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/internal_register_select |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_wb/internal_reg_error |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/addr_sel |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/addr_ct_en |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/op_reg_en |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/bit_ct_en |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/bit_ct_rst |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/word_ct_sel |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/word_ct_en |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/out_reg_ld_en |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/out_reg_shift_en |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/out_reg_data_sel |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_wb/tdo_output_sel |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/biu_strobe |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/crc_clr |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/crc_en |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/crc_in_sel |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/crc_shift_en |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/regsel_ld_en |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/intreg_ld_en |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/error_reg_en |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/biu_clr_err |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/word_count_zero |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/bit_count_max |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/module_cmd |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/biu_ready |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/biu_err |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/burst_instruction |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/intreg_instruction |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/intreg_write |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/rd_op |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/crc_match |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/bit_count_32 |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_wb/word_size_bits |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_wb/word_size_bytes |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_wb/incremented_address |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_wb/data_to_addr_counter |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_wb/data_to_word_counter |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_wb/decremented_word_count |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_wb/address_data_in |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_wb/count_data_in |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_wb/operation_in |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_wb/data_to_biu |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_wb/data_from_biu |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_wb/crc_data_out |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/crc_data_in |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/crc_serial_out |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/reg_select_data |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_wb/out_reg_data |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_wb/data_from_internal_reg |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_wb/biu_rst |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_wb/module_state |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_wb/module_next_state |
add wave -noupdate -divider {DBG Top} |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/tck_i |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/tdi_i |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/tdo_o |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/rst_i |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/shift_dr_i |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/pause_dr_i |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/update_dr_i |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/capture_dr_i |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/debug_select_i |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/wb_clk_i |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/wb_adr_o |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/wb_dat_o |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/wb_dat_i |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/wb_cyc_o |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/wb_stb_o |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/wb_sel_o |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/wb_we_o |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/wb_ack_i |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/wb_cab_o |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/wb_err_i |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/wb_cti_o |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/wb_bte_o |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/cpu0_clk_i |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/cpu0_addr_o |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/cpu0_data_i |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/cpu0_data_o |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/cpu0_bp_i |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/cpu0_stall_o |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/cpu0_stb_o |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/cpu0_we_o |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/cpu0_ack_i |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/cpu0_rst_o |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/tdo_wb |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/tdo_cpu0 |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/tdo_cpu1 |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/input_shift_reg |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/module_id_reg |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/select_inhibit |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/module_inhibit |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/select_cmd |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/module_id_in |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/module_selects |
add wave -noupdate -divider {DBG CPU0 Module} |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/tck_i |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/module_tdo_o |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/tdi_i |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/capture_dr_i |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/shift_dr_i |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/update_dr_i |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/data_register_i |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/module_select_i |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/top_inhibit_o |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/rst_i |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/cpu_clk_i |
add wave -noupdate -format Literal -radix hexadecimal /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/cpu_addr_o |
add wave -noupdate -format Literal -radix hexadecimal /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/cpu_data_i |
add wave -noupdate -format Literal -radix hexadecimal /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/cpu_data_o |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/cpu_stb_o |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/cpu_we_o |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/cpu_ack_i |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/cpu_rst_o |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/cpu_bp_i |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/cpu_stall_o |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/address_counter |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/bit_count |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/word_count |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/operation |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/data_out_shift_reg |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/internal_register_select |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/internal_reg_status |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/addr_sel |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/addr_ct_en |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/op_reg_en |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/bit_ct_en |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/bit_ct_rst |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/word_ct_sel |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/word_ct_en |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/out_reg_ld_en |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/out_reg_shift_en |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/out_reg_data_sel |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/tdo_output_sel |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/biu_strobe |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/crc_clr |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/crc_en |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/crc_in_sel |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/crc_shift_en |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/regsel_ld_en |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/intreg_ld_en |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/word_count_zero |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/bit_count_max |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/module_cmd |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/biu_ready |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/burst_instruction |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/intreg_instruction |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/intreg_write |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/rd_op |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/crc_match |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/bit_count_32 |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/word_size_bits |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/address_increment |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/incremented_address |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/data_to_addr_counter |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/data_to_word_counter |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/decremented_word_count |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/address_data_in |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/count_data_in |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/operation_in |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/data_to_biu |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/data_from_biu |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/crc_data_out |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/crc_data_in |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/crc_serial_out |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/reg_select_data |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/out_reg_data |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/data_from_internal_reg |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/status_reg_wr |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/module_state |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/module_next_state |
add wave -noupdate -divider {DBG CPU0 BIU} |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/or1k_biu_i/tck_i |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/or1k_biu_i/rst_i |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/or1k_biu_i/data_i |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/or1k_biu_i/data_o |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/or1k_biu_i/addr_i |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/or1k_biu_i/strobe_i |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/or1k_biu_i/rd_wrn_i |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/or1k_biu_i/rdy_o |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/or1k_biu_i/cpu_clk_i |
add wave -noupdate -format Literal -radix hexadecimal /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/or1k_biu_i/cpu_addr_o |
add wave -noupdate -format Literal -radix hexadecimal /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/or1k_biu_i/cpu_data_i |
add wave -noupdate -format Literal -radix hexadecimal /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/or1k_biu_i/cpu_data_o |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/or1k_biu_i/cpu_stb_o |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/or1k_biu_i/cpu_we_o |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/or1k_biu_i/cpu_ack_i |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/or1k_biu_i/addr_reg |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/or1k_biu_i/data_in_reg |
add wave -noupdate -format Literal /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/or1k_biu_i/data_out_reg |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/or1k_biu_i/wr_reg |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/or1k_biu_i/str_sync |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/or1k_biu_i/rdy_sync |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/or1k_biu_i/rdy_sync_tff1 |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/or1k_biu_i/rdy_sync_tff2 |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/or1k_biu_i/rdy_sync_tff2q |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/or1k_biu_i/str_sync_wbff1 |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/or1k_biu_i/str_sync_wbff2 |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/or1k_biu_i/str_sync_wbff2q |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/or1k_biu_i/data_o_en |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/or1k_biu_i/rdy_sync_en |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/or1k_biu_i/start_toggle |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/or1k_biu_i/cpu_fsm_state |
add wave -noupdate -format Logic /xsv_fpga_top/dbg_top/i_dbg_cpu_or1k/or1k_biu_i/next_fsm_state |
add wave -noupdate -divider {CPU debug unit} |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_du/clk |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_du/rst |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_du/dcpu_cycstb_i |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_du/dcpu_we_i |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_du/dcpu_adr_i |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_du/dcpu_dat_lsu |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_du/dcpu_dat_dc |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_du/icpu_cycstb_i |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_du/ex_freeze |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_du/branch_op |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_du/ex_insn |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_du/id_pc |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_du/spr_dat_npc |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_du/rf_dataw |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_du/du_dsr |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_du/du_stall |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_du/du_addr |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_du/du_dat_i |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_du/du_dat_o |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_du/du_read |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_du/du_write |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_du/du_except |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_du/du_hwbkpt |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_du/spr_cs |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_du/spr_write |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_du/spr_addr |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_du/spr_dat_i |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_du/spr_dat_o |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_du/dbg_stall_i |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_du/dbg_ewt_i |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_du/dbg_lss_o |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_du/dbg_is_o |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_du/dbg_wp_o |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_du/dbg_bp_o |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_du/dbg_stb_i |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_du/dbg_we_i |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_du/dbg_adr_i |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_du/dbg_dat_i |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_du/dbg_dat_o |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_du/dbg_ack_o |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_du/dmr1 |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_du/dmr2 |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_du/dsr |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_du/drr |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_du/dvr0 |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_du/dvr1 |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_du/dvr2 |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_du/dvr3 |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_du/dvr4 |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_du/dvr5 |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_du/dvr6 |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_du/dvr7 |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_du/dcr0 |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_du/dcr1 |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_du/dcr2 |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_du/dcr3 |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_du/dcr4 |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_du/dcr5 |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_du/dcr6 |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_du/dcr7 |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_du/dwcr0 |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_du/dwcr1 |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_du/dmr1_sel |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_du/dmr2_sel |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_du/dsr_sel |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_du/drr_sel |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_du/dvr0_sel |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_du/dvr1_sel |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_du/dvr2_sel |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_du/dvr3_sel |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_du/dvr4_sel |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_du/dvr5_sel |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_du/dvr6_sel |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_du/dvr7_sel |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_du/dcr0_sel |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_du/dcr1_sel |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_du/dcr2_sel |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_du/dcr3_sel |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_du/dcr4_sel |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_du/dcr5_sel |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_du/dcr6_sel |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_du/dcr7_sel |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_du/dwcr0_sel |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_du/dwcr1_sel |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_du/dbg_bp_r |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_du/except_stop |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_du/tbia_dat_o |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_du/tbim_dat_o |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_du/tbar_dat_o |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_du/tbts_dat_o |
add wave -noupdate -divider {CPU SPRs} |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/clk |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/rst |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/flagforw |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/flag_we |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/flag |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/cyforw |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/cy_we |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/carry |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/addrbase |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/addrofs |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/dat_i |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/alu_op |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/branch_op |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/epcr |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/eear |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/esr |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/except_started |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/to_wbmux |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/epcr_we |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/eear_we |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/esr_we |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/pc_we |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/sr_we |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/to_sr |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/sr |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/spr_dat_cfgr |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/spr_dat_rf |
add wave -noupdate -format Literal -radix hexadecimal /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/spr_dat_npc |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/spr_dat_ppc |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/spr_dat_mac |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/spr_dat_pic |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/spr_dat_tt |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/spr_dat_pm |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/spr_dat_dmmu |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/spr_dat_immu |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/spr_dat_du |
add wave -noupdate -format Literal -radix hexadecimal /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/spr_addr |
add wave -noupdate -format Literal -radix hexadecimal /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/spr_dat_o |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/spr_cs |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/spr_we |
add wave -noupdate -format Literal -radix hexadecimal /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/du_addr |
add wave -noupdate -format Literal -radix hexadecimal /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/du_dat_du |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/du_read |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/du_write |
add wave -noupdate -format Literal -radix hexadecimal /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/du_dat_cpu |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/write_spr |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/read_spr |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/cfgr_sel |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/rf_sel |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/npc_sel |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/ppc_sel |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/sr_sel |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/epcr_sel |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/eear_sel |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/esr_sel |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/sys_data |
add wave -noupdate -format Logic /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/du_access |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/sprs_op |
add wave -noupdate -format Literal /xsv_fpga_top/or1200_top/or1200_cpu/or1200_sprs/unqualified_cs |
TreeUpdate [SetDefaultTree] |
WaveRestoreCursors {{Cursor 1} {4278 ps} 0} |
configure wave -namecolwidth 391 |
configure wave -valuecolwidth 100 |
configure wave -justifyvalue left |
configure wave -signalnamewidth 0 |
configure wave -snapdistance 10 |
configure wave -datasetprefix 0 |
configure wave -rowmargin 4 |
configure wave -childrowmargin 2 |
configure wave -gridoffset 0 |
configure wave -gridperiod 1 |
configure wave -griddelta 40 |
configure wave -timeline 0 |
configure wave -timelineunits ps |
update |
WaveRestoreZoom {0 ps} {6180 ps} |
/adv_dbg_if/bench/full_system/xsv_fpga_top.v
44,6 → 44,12
// CVS Revision History |
// |
// $Log: xsv_fpga_top.v,v $ |
// Revision 1.5 2010-01-16 02:15:22 Nathan |
// Updated to match changes in hardware. Added support for hi-speed mode. |
// |
// Revision 1.4 2010-01-08 01:41:07 Nathan |
// Removed unused, non-existant include from CPU behavioral model. Minor text edits. |
// |
// Revision 1.3 2008/07/11 08:22:17 Nathan |
// Added code to make the native TAP simulate a Xilinx BSCAN device, and code to simulate the behavior of the xilinx_internal_jtag module. The adv_dbg_module should get inputs that emulate the xilinx_internal_jtag device outputs. |
// |
396,12 → 402,12
.debug_select_o(debug_select), |
|
// TDO signal that is connected to TDI of sub-modules. |
.tdo_o(debug_tdi), |
.tdi_o(debug_tdi), |
|
// TDI signals from sub-modules |
.debug_tdi_i(debug_tdo), // from debug module |
.bs_chain_tdi_i(1'b0), // from Boundary Scan Chain |
.mbist_tdi_i(1'b0) // from Mbist Chain |
.debug_tdo_i(debug_tdo), // from debug module |
.bs_chain_tdo_i(1'b0), // from Boundary Scan Chain |
.mbist_tdo_i(1'b0) // from Mbist Chain |
); |
|
// This is taken from the xilinx bscan_virtex4.v module |
442,7 → 448,7
// |
// Instantiation of the development i/f |
// |
dbg_top dbg_top ( |
adbg_top dbg_top ( |
|
// JTAG pins |
.tck_i ( tck2 ), |
/adv_dbg_if/bench/full_system/xsv_fpga_defines.v
45,6 → 45,9
// CVS Revision History |
// |
// $Log: xsv_fpga_defines.v,v $ |
// Revision 1.3 2010-01-08 01:41:07 Nathan |
// Removed unused, non-existant include from CPU behavioral model. Minor text edits. |
// |
// Revision 1.2 2008/07/11 08:16:01 Nathan |
// Ran through dos2unix |
// |
/adv_dbg_if/bench/README_testbench.txt
1,15 → 1,15
1README_testbench.txt |
README_testbench.txt |
Advanced Debug Module (adv_dbg_if) |
Nathan Yawn, nathan.yawn@opencores.org |
|
Two testbenches are supplied with the advanced debug interface. The first |
uses behavioral simulation of a wishbone bus with a memory attached, and |
another behavioral simulatioin of an OR1200 CPU. This testbench performs |
another behavioral simulation of an OR1200 CPU. This testbench performs |
and tests bus / memory operations, and performs a few CPU operations, The |
top-level module is in adv_dbg_tb.v. Other than the beavioral models, it |
instantiates an adv_dbg_if (found in ../rtl/verilog/), and a JTAG TAP |
("jtag" module, not included with this module). Note that the TAP |
distributed by OpenCores will not work correctly; use the version modified |
distributed by OpenCores will not work correctly; use the version modified |
by Nathan Yawn. |
|
The second testbench includes an actuall wishbone/OR1200 system. Its |
21,5 → 21,5
|
Both testbenches were written for use in ModelSim (version 6.3). A |
wave.do file is also included for each testbench, which will display a |
useful collectino of signals in the ModelSim wave view. |
useful collection of signals in the ModelSim wave view. |
|
/adv_dbg_if/bench/simulated_system/adv_dbg_tb.v
40,6 → 40,9
// CVS Revision History |
// |
// $Log: adv_dbg_tb.v,v $ |
// Revision 1.7 2010-01-13 00:55:45 Nathan |
// Created hi-speed mode for burst reads. This will probably be most beneficial to the OR1K module, as GDB does a burst read of all the GPRs each time a microinstruction is single-stepped. |
// |
// Revision 1.2 2009/05/17 20:54:55 Nathan |
// Changed email address to opencores.org |
// |
55,8 → 58,8
|
|
`include "tap_defines.v" |
`include "dbg_defines.v" |
`include "dbg_wb_defines.v" |
`include "adbg_defines.v" |
`include "adbg_wb_defines.v" |
`include "wb_model_defines.v" |
|
// Polynomial for the CRC calculation |
305,6 → 308,7
#1000; |
*/ |
|
/* |
#1000; |
$display("Testing WB intreg select at time %t", $time); |
select_module_internal_register(32'h1, 1); // Really just a read, with discarded data |
319,7 → 323,7
// Read the error bit |
read_module_internal_register(8'd33, err_data); // We assume the register is already selected |
#1000; |
|
*/ |
|
///////////////////////////////// |
// Test 8-bit WB access |
451,17 → 455,17
.debug_select_o(dbg_sel), |
|
// TDO signal that is connected to TDI of sub-modules. |
.tdo_o(dbg_tdo), |
.tdi_o(dbg_tdo), |
|
// TDI signals from sub-modules |
.debug_tdi_i(dbg_tdi), // from debug module |
.bs_chain_tdi_i(1'b0), // from Boundary Scan Chain |
.mbist_tdi_i(1'b0) // from Mbist Chain |
.debug_tdo_i(dbg_tdi), // from debug module |
.bs_chain_tdo_i(1'b0), // from Boundary Scan Chain |
.mbist_tdo_i(1'b0) // from Mbist Chain |
); |
|
|
// Top module |
dbg_top i_dbg_module( |
adbg_top i_dbg_module( |
// JTAG signals |
.tck_i(jtag_tck_o), |
.tdi_i(dbg_tdo), |
791,9 → 795,25
write_bit(`JTAG_TMS_bit); // select_dr_scan |
write_bit(3'h0); // capture_ir |
write_bit(3'h0); // shift_ir |
|
`ifdef ADBG_USE_HISPEED |
// Get 1 status bit, then word_size_bytes*8 bits |
status = 1'b0; |
j = 0; |
while(!status) begin |
read_write_bit(3'h0, status); |
j = j + 1; |
end |
|
if(j > 1) begin |
$display("Took %0d tries before good status bit during burst read", j); |
end |
`endif |
|
// Now, repeat... |
for(i = 0; i < word_count; i=i+1) begin |
|
`ifndef ADBG_USE_HISPEED |
// Get 1 status bit, then word_size_bytes*8 bits |
status = 1'b0; |
j = 0; |
805,6 → 825,7
if(j > 1) begin |
$display("Took %0d tries before good status bit during burst read", j); |
end |
`endif |
|
jtag_read_write_stream(64'h0, {2'h0,(word_size_bytes<<3)},0,instream); |
//$display("Read 0x%0x", instream[31:0]); |
882,6 → 903,8
compute_crc(crc_calc_i, dataword[31:0], word_size_bits, crc_calc_o); |
crc_calc_i = crc_calc_o; |
|
|
`ifndef ADBG_USE_HISPEED |
// Check if WB bus is ready |
// *** THIS WILL NOT WORK IF THERE IS MORE THAN 1 DEVICE IN THE JTAG CHAIN!!! |
status = 1'b0; |
890,7 → 913,7
if(!status) begin |
$display("Bad status bit during burst write, index %d", i); |
end |
|
`endif |
|
//$display("Wrote 0x%0x", dataword); |
end |
/adv_dbg_if/bench/simulated_system/wb_slave_behavioral.v
43,6 → 43,9
// CVS Revision History |
// |
// $Log: wb_slave_behavioral.v,v $ |
// Revision 1.2 2010-01-08 01:41:08 Nathan |
// Removed unused, non-existant include from CPU behavioral model. Minor text edits. |
// |
// Revision 1.1 2008/07/08 19:11:57 Nathan |
// Added second testbench to simulate a complete system, including OR1200, wb_conbus, and onchipram. Renamed sim-only testbench directory from verilog to simulated_system. |
// |
/adv_dbg_if/bench/simulated_system/wave.do
160,52 → 160,52
add wave -noupdate -format Literal /adv_debug_tb/i_dbg_module/i_dbg_wb/module_state |
add wave -noupdate -format Literal /adv_debug_tb/i_dbg_module/i_dbg_wb/module_next_state |
add wave -noupdate -divider {DBG WB module BIU internals} |
add wave -noupdate -format Logic /adv_debug_tb/i_dbg_module/i_dbg_wb/biu/tck_i |
add wave -noupdate -format Logic /adv_debug_tb/i_dbg_module/i_dbg_wb/biu/rst_i |
add wave -noupdate -format Literal -radix hexadecimal /adv_debug_tb/i_dbg_module/i_dbg_wb/biu/data_i |
add wave -noupdate -format Literal -radix hexadecimal /adv_debug_tb/i_dbg_module/i_dbg_wb/biu/data_o |
add wave -noupdate -format Literal -radix hexadecimal /adv_debug_tb/i_dbg_module/i_dbg_wb/biu/addr_i |
add wave -noupdate -format Logic /adv_debug_tb/i_dbg_module/i_dbg_wb/biu/strobe_i |
add wave -noupdate -format Logic /adv_debug_tb/i_dbg_module/i_dbg_wb/biu/rd_wrn_i |
add wave -noupdate -format Logic /adv_debug_tb/i_dbg_module/i_dbg_wb/biu/rdy_o |
add wave -noupdate -format Logic /adv_debug_tb/i_dbg_module/i_dbg_wb/biu/err_o |
add wave -noupdate -format Literal /adv_debug_tb/i_dbg_module/i_dbg_wb/biu/word_size_i |
add wave -noupdate -format Logic /adv_debug_tb/i_dbg_module/i_dbg_wb/biu/wb_clk_i |
add wave -noupdate -format Literal -radix hexadecimal /adv_debug_tb/i_dbg_module/i_dbg_wb/biu/wb_adr_o |
add wave -noupdate -format Literal -radix hexadecimal /adv_debug_tb/i_dbg_module/i_dbg_wb/biu/wb_dat_o |
add wave -noupdate -format Literal -radix hexadecimal /adv_debug_tb/i_dbg_module/i_dbg_wb/biu/wb_dat_i |
add wave -noupdate -format Logic /adv_debug_tb/i_dbg_module/i_dbg_wb/biu/wb_cyc_o |
add wave -noupdate -format Logic /adv_debug_tb/i_dbg_module/i_dbg_wb/biu/wb_stb_o |
add wave -noupdate -format Literal /adv_debug_tb/i_dbg_module/i_dbg_wb/biu/wb_sel_o |
add wave -noupdate -format Logic /adv_debug_tb/i_dbg_module/i_dbg_wb/biu/wb_we_o |
add wave -noupdate -format Logic /adv_debug_tb/i_dbg_module/i_dbg_wb/biu/wb_ack_i |
add wave -noupdate -format Logic /adv_debug_tb/i_dbg_module/i_dbg_wb/biu/wb_cab_o |
add wave -noupdate -format Logic /adv_debug_tb/i_dbg_module/i_dbg_wb/biu/wb_err_i |
add wave -noupdate -format Literal /adv_debug_tb/i_dbg_module/i_dbg_wb/biu/wb_cti_o |
add wave -noupdate -format Literal /adv_debug_tb/i_dbg_module/i_dbg_wb/biu/wb_bte_o |
add wave -noupdate -format Literal /adv_debug_tb/i_dbg_module/i_dbg_wb/biu/sel_reg |
add wave -noupdate -format Literal -radix hexadecimal /adv_debug_tb/i_dbg_module/i_dbg_wb/biu/addr_reg |
add wave -noupdate -format Literal -radix hexadecimal /adv_debug_tb/i_dbg_module/i_dbg_wb/biu/data_in_reg |
add wave -noupdate -format Literal -radix hexadecimal /adv_debug_tb/i_dbg_module/i_dbg_wb/biu/data_out_reg |
add wave -noupdate -format Logic /adv_debug_tb/i_dbg_module/i_dbg_wb/biu/wr_reg |
add wave -noupdate -format Logic /adv_debug_tb/i_dbg_module/i_dbg_wb/biu/str_sync |
add wave -noupdate -format Logic /adv_debug_tb/i_dbg_module/i_dbg_wb/biu/rdy_sync |
add wave -noupdate -format Logic /adv_debug_tb/i_dbg_module/i_dbg_wb/biu/err_reg |
add wave -noupdate -format Logic /adv_debug_tb/i_dbg_module/i_dbg_wb/biu/rdy_sync_tff1 |
add wave -noupdate -format Logic /adv_debug_tb/i_dbg_module/i_dbg_wb/biu/rdy_sync_tff2 |
add wave -noupdate -format Logic /adv_debug_tb/i_dbg_module/i_dbg_wb/biu/rdy_sync_tff2q |
add wave -noupdate -format Logic /adv_debug_tb/i_dbg_module/i_dbg_wb/biu/str_sync_wbff1 |
add wave -noupdate -format Logic /adv_debug_tb/i_dbg_module/i_dbg_wb/biu/str_sync_wbff2 |
add wave -noupdate -format Logic /adv_debug_tb/i_dbg_module/i_dbg_wb/biu/str_sync_wbff2q |
add wave -noupdate -format Logic /adv_debug_tb/i_dbg_module/i_dbg_wb/biu/data_o_en |
add wave -noupdate -format Logic /adv_debug_tb/i_dbg_module/i_dbg_wb/biu/rdy_sync_en |
add wave -noupdate -format Logic /adv_debug_tb/i_dbg_module/i_dbg_wb/biu/err_en |
add wave -noupdate -format Literal /adv_debug_tb/i_dbg_module/i_dbg_wb/biu/be_dec |
add wave -noupdate -format Logic /adv_debug_tb/i_dbg_module/i_dbg_wb/biu/start_toggle |
add wave -noupdate -format Literal -radix hexadecimal /adv_debug_tb/i_dbg_module/i_dbg_wb/biu/swapped_data_i |
add wave -noupdate -format Literal -radix hexadecimal /adv_debug_tb/i_dbg_module/i_dbg_wb/biu/swapped_data_out |
add wave -noupdate -format Logic /adv_debug_tb/i_dbg_module/i_dbg_wb/biu/wb_fsm_state |
add wave -noupdate -format Logic /adv_debug_tb/i_dbg_module/i_dbg_wb/biu/next_fsm_state |
add wave -noupdate -format Logic /adv_debug_tb/i_dbg_module/i_dbg_wb/wb_biu_i/tck_i |
add wave -noupdate -format Logic /adv_debug_tb/i_dbg_module/i_dbg_wb/wb_biu_i/rst_i |
add wave -noupdate -format Literal /adv_debug_tb/i_dbg_module/i_dbg_wb/wb_biu_i/data_i |
add wave -noupdate -format Literal /adv_debug_tb/i_dbg_module/i_dbg_wb/wb_biu_i/data_o |
add wave -noupdate -format Literal /adv_debug_tb/i_dbg_module/i_dbg_wb/wb_biu_i/addr_i |
add wave -noupdate -format Logic /adv_debug_tb/i_dbg_module/i_dbg_wb/wb_biu_i/strobe_i |
add wave -noupdate -format Logic /adv_debug_tb/i_dbg_module/i_dbg_wb/wb_biu_i/rd_wrn_i |
add wave -noupdate -format Logic /adv_debug_tb/i_dbg_module/i_dbg_wb/wb_biu_i/rdy_o |
add wave -noupdate -format Logic /adv_debug_tb/i_dbg_module/i_dbg_wb/wb_biu_i/err_o |
add wave -noupdate -format Literal /adv_debug_tb/i_dbg_module/i_dbg_wb/wb_biu_i/word_size_i |
add wave -noupdate -format Logic /adv_debug_tb/i_dbg_module/i_dbg_wb/wb_biu_i/wb_clk_i |
add wave -noupdate -format Literal /adv_debug_tb/i_dbg_module/i_dbg_wb/wb_biu_i/wb_adr_o |
add wave -noupdate -format Literal /adv_debug_tb/i_dbg_module/i_dbg_wb/wb_biu_i/wb_dat_o |
add wave -noupdate -format Literal /adv_debug_tb/i_dbg_module/i_dbg_wb/wb_biu_i/wb_dat_i |
add wave -noupdate -format Logic /adv_debug_tb/i_dbg_module/i_dbg_wb/wb_biu_i/wb_cyc_o |
add wave -noupdate -format Logic /adv_debug_tb/i_dbg_module/i_dbg_wb/wb_biu_i/wb_stb_o |
add wave -noupdate -format Literal /adv_debug_tb/i_dbg_module/i_dbg_wb/wb_biu_i/wb_sel_o |
add wave -noupdate -format Logic /adv_debug_tb/i_dbg_module/i_dbg_wb/wb_biu_i/wb_we_o |
add wave -noupdate -format Logic /adv_debug_tb/i_dbg_module/i_dbg_wb/wb_biu_i/wb_ack_i |
add wave -noupdate -format Logic /adv_debug_tb/i_dbg_module/i_dbg_wb/wb_biu_i/wb_cab_o |
add wave -noupdate -format Logic /adv_debug_tb/i_dbg_module/i_dbg_wb/wb_biu_i/wb_err_i |
add wave -noupdate -format Literal /adv_debug_tb/i_dbg_module/i_dbg_wb/wb_biu_i/wb_cti_o |
add wave -noupdate -format Literal /adv_debug_tb/i_dbg_module/i_dbg_wb/wb_biu_i/wb_bte_o |
add wave -noupdate -format Literal /adv_debug_tb/i_dbg_module/i_dbg_wb/wb_biu_i/sel_reg |
add wave -noupdate -format Literal /adv_debug_tb/i_dbg_module/i_dbg_wb/wb_biu_i/addr_reg |
add wave -noupdate -format Literal /adv_debug_tb/i_dbg_module/i_dbg_wb/wb_biu_i/data_in_reg |
add wave -noupdate -format Literal /adv_debug_tb/i_dbg_module/i_dbg_wb/wb_biu_i/data_out_reg |
add wave -noupdate -format Logic /adv_debug_tb/i_dbg_module/i_dbg_wb/wb_biu_i/wr_reg |
add wave -noupdate -format Logic /adv_debug_tb/i_dbg_module/i_dbg_wb/wb_biu_i/str_sync |
add wave -noupdate -format Logic /adv_debug_tb/i_dbg_module/i_dbg_wb/wb_biu_i/rdy_sync |
add wave -noupdate -format Logic /adv_debug_tb/i_dbg_module/i_dbg_wb/wb_biu_i/err_reg |
add wave -noupdate -format Logic /adv_debug_tb/i_dbg_module/i_dbg_wb/wb_biu_i/rdy_sync_tff1 |
add wave -noupdate -format Logic /adv_debug_tb/i_dbg_module/i_dbg_wb/wb_biu_i/rdy_sync_tff2 |
add wave -noupdate -format Logic /adv_debug_tb/i_dbg_module/i_dbg_wb/wb_biu_i/rdy_sync_tff2q |
add wave -noupdate -format Logic /adv_debug_tb/i_dbg_module/i_dbg_wb/wb_biu_i/str_sync_wbff1 |
add wave -noupdate -format Logic /adv_debug_tb/i_dbg_module/i_dbg_wb/wb_biu_i/str_sync_wbff2 |
add wave -noupdate -format Logic /adv_debug_tb/i_dbg_module/i_dbg_wb/wb_biu_i/str_sync_wbff2q |
add wave -noupdate -format Logic /adv_debug_tb/i_dbg_module/i_dbg_wb/wb_biu_i/data_o_en |
add wave -noupdate -format Logic /adv_debug_tb/i_dbg_module/i_dbg_wb/wb_biu_i/rdy_sync_en |
add wave -noupdate -format Logic /adv_debug_tb/i_dbg_module/i_dbg_wb/wb_biu_i/err_en |
add wave -noupdate -format Literal /adv_debug_tb/i_dbg_module/i_dbg_wb/wb_biu_i/be_dec |
add wave -noupdate -format Logic /adv_debug_tb/i_dbg_module/i_dbg_wb/wb_biu_i/start_toggle |
add wave -noupdate -format Literal /adv_debug_tb/i_dbg_module/i_dbg_wb/wb_biu_i/swapped_data_i |
add wave -noupdate -format Literal /adv_debug_tb/i_dbg_module/i_dbg_wb/wb_biu_i/swapped_data_out |
add wave -noupdate -format Logic /adv_debug_tb/i_dbg_module/i_dbg_wb/wb_biu_i/wb_fsm_state |
add wave -noupdate -format Logic /adv_debug_tb/i_dbg_module/i_dbg_wb/wb_biu_i/next_fsm_state |
add wave -noupdate -divider {DBG CPU0 module signals} |
add wave -noupdate -format Logic /adv_debug_tb/i_dbg_module/i_dbg_cpu_or1k/tck_i |
add wave -noupdate -format Logic /adv_debug_tb/i_dbg_module/i_dbg_cpu_or1k/module_tdo_o |
314,26 → 314,8
add wave -noupdate -format Logic /adv_debug_tb/i_dbg_module/i_dbg_cpu_or1k/or1k_biu_i/cpu_fsm_state |
add wave -noupdate -format Logic /adv_debug_tb/i_dbg_module/i_dbg_cpu_or1k/or1k_biu_i/next_fsm_state |
add wave -noupdate -divider {CPU0 Status register internals} |
add wave -noupdate -format Literal /adv_debug_tb/i_dbg_module/i_dbg_cpu_or1k/statusreg_i/data_i |
add wave -noupdate -format Logic /adv_debug_tb/i_dbg_module/i_dbg_cpu_or1k/statusreg_i/we_i |
add wave -noupdate -format Logic /adv_debug_tb/i_dbg_module/i_dbg_cpu_or1k/statusreg_i/tck_i |
add wave -noupdate -format Logic /adv_debug_tb/i_dbg_module/i_dbg_cpu_or1k/statusreg_i/bp_i |
add wave -noupdate -format Logic /adv_debug_tb/i_dbg_module/i_dbg_cpu_or1k/statusreg_i/rst_i |
add wave -noupdate -format Logic /adv_debug_tb/i_dbg_module/i_dbg_cpu_or1k/statusreg_i/cpu_clk_i |
add wave -noupdate -format Literal /adv_debug_tb/i_dbg_module/i_dbg_cpu_or1k/statusreg_i/ctrl_reg_o |
add wave -noupdate -format Logic /adv_debug_tb/i_dbg_module/i_dbg_cpu_or1k/statusreg_i/cpu_stall_o |
add wave -noupdate -format Logic /adv_debug_tb/i_dbg_module/i_dbg_cpu_or1k/statusreg_i/cpu_rst_o |
add wave -noupdate -format Logic /adv_debug_tb/i_dbg_module/i_dbg_cpu_or1k/statusreg_i/cpu_reset |
add wave -noupdate -format Literal /adv_debug_tb/i_dbg_module/i_dbg_cpu_or1k/statusreg_i/cpu_op_out |
add wave -noupdate -format Logic /adv_debug_tb/i_dbg_module/i_dbg_cpu_or1k/statusreg_i/stall_bp |
add wave -noupdate -format Logic /adv_debug_tb/i_dbg_module/i_dbg_cpu_or1k/statusreg_i/stall_bp_csff |
add wave -noupdate -format Logic /adv_debug_tb/i_dbg_module/i_dbg_cpu_or1k/statusreg_i/stall_bp_tck |
add wave -noupdate -format Logic /adv_debug_tb/i_dbg_module/i_dbg_cpu_or1k/statusreg_i/stall_reg |
add wave -noupdate -format Logic /adv_debug_tb/i_dbg_module/i_dbg_cpu_or1k/statusreg_i/stall_reg_csff |
add wave -noupdate -format Logic /adv_debug_tb/i_dbg_module/i_dbg_cpu_or1k/statusreg_i/stall_reg_cpu |
add wave -noupdate -format Logic /adv_debug_tb/i_dbg_module/i_dbg_cpu_or1k/statusreg_i/cpu_reset_csff |
TreeUpdate [SetDefaultTree] |
WaveRestoreCursors {{Cursor 1} {50652 ns} 0} |
WaveRestoreCursors {{Cursor 1} {31260960 ps} 0} |
configure wave -namecolwidth 409 |
configure wave -valuecolwidth 100 |
configure wave -justifyvalue left |
346,5 → 328,6
configure wave -gridperiod 1 |
configure wave -griddelta 40 |
configure wave -timeline 0 |
configure wave -timelineunits ps |
update |
WaveRestoreZoom {38962 ns} {65318 ns} |
WaveRestoreZoom {38962 ns} {70222960 ps} |
/adv_dbg_if/bench/simulated_system/cpu_behavioral.v
43,6 → 43,9
// CVS Revision History |
// |
// $Log: cpu_behavioral.v,v $ |
// Revision 1.2 2010-01-08 01:41:08 Nathan |
// Removed unused, non-existant include from CPU behavioral model. Minor text edits. |
// |
// Revision 1.1 2008/07/08 19:11:55 Nathan |
// Added second testbench to simulate a complete system, including OR1200, wb_conbus, and onchipram. Renamed sim-only testbench directory from verilog to simulated_system. |
// |
69,10 → 72,8
// |
// |
`include "timescale.v" |
`include "dbg_cpu_defines.v" |
|
|
|
module cpu_behavioral |
( |
// CPU signals |
/adv_dbg_if/bench/simulated_system/wb_model_defines.v
43,6 → 43,9
// CVS Revision History |
// |
// $Log: wb_model_defines.v,v $ |
// Revision 1.2 2010-01-08 01:41:08 Nathan |
// Removed unused, non-existant include from CPU behavioral model. Minor text edits. |
// |
// Revision 1.1 2008/07/08 19:11:57 Nathan |
// Added second testbench to simulate a complete system, including OR1200, wb_conbus, and onchipram. Renamed sim-only testbench directory from verilog to simulated_system. |
// |
/adv_dbg_if/bench/simulated_system/timescale.v
43,6 → 43,9
// CVS Revision History |
// |
// $Log: timescale.v,v $ |
// Revision 1.2 2010-01-08 01:41:08 Nathan |
// Removed unused, non-existant include from CPU behavioral model. Minor text edits. |
// |
// Revision 1.1 2008/07/08 19:11:56 Nathan |
// Added second testbench to simulate a complete system, including OR1200, wb_conbus, and onchipram. Renamed sim-only testbench directory from verilog to simulated_system. |
// |
/adv_dbg_if/rtl/verilog/adbg_or1k_module.v
12,7 → 12,7
//// //// |
////////////////////////////////////////////////////////////////////// |
//// //// |
//// Copyright (C) 2008 Authors //// |
//// Copyright (C) 2008 - 2010 Authors //// |
//// //// |
//// This source file may be used and distributed without //// |
//// restriction provided that this copyright statement is not //// |
40,6 → 40,9
// CVS Revision History |
// |
// $Log: adbg_or1k_module.v,v $ |
// Revision 1.5 2010-01-13 00:55:45 Nathan |
// Created hi-speed mode for burst reads. This will probably be most beneficial to the OR1K module, as GDB does a burst read of all the GPRs each time a microinstruction is single-stepped. |
// |
// Revision 1.2 2009/05/17 20:54:56 Nathan |
// Changed email address to opencores.org |
// |
56,6 → 59,7
// |
|
|
`include "adbg_defines.v" |
`include "adbg_or1k_defines.v" |
|
// Module interface |
191,7 → 195,11
assign operation_in = data_register_i[51:48]; |
assign address_data_in = data_register_i[47:16]; |
assign count_data_in = data_register_i[15:0]; |
`ifdef ADBG_USE_HISPEED |
assign data_to_biu = {tdi_i,data_register_i[52:22]}; |
`else |
assign data_to_biu = data_register_i[52:21]; |
`endif |
assign reg_select_data = data_register_i[47:(47-(`DBG_OR1K_REGSELECT_SIZE-1))]; |
|
//////////////////////////////////////////////// |
453,7 → 461,9
begin |
if(update_dr_i) module_next_state <= `STATE_idle; |
else if(bit_count_max && word_count_zero) module_next_state <= `STATE_Rcrc; |
`ifndef ADBG_USE_HISPEED |
else if(bit_count_max) module_next_state <= `STATE_Rstatus; |
`endif |
else module_next_state <= `STATE_Rburst; |
end |
`STATE_Rcrc: |
478,7 → 488,15
`STATE_Wburst: |
begin |
if(update_dr_i) module_next_state <= `STATE_idle; // client terminated early |
else if(bit_count_max) module_next_state <= `STATE_Wstatus; |
else if(bit_count_max) |
begin |
`ifdef ADBG_USE_HISPEED |
if(word_count_zero) module_next_state <= `STATE_Wcrc; |
else module_next_state <= `STATE_Wburst; |
`else |
module_next_state <= `STATE_Wstatus; |
`endif |
end |
else module_next_state <= `STATE_Wburst; |
end |
`STATE_Wstatus: |
581,17 → 599,19
tdo_output_sel <= 2'h0; |
top_inhibit_o <= 1'b1; // in case of early termination |
|
if (module_next_state == `STATE_Rburst) begin |
out_reg_data_sel <= 1'b0; // select BIU data |
out_reg_ld_en <= 1'b1; |
bit_ct_rst <= 1'b1; |
word_ct_sel <= 1'b1; |
word_ct_en <= 1'b1; |
if(!(decremented_word_count == 0) && !word_count_zero) begin // Start a biu read transaction |
biu_strobe <= 1'b1; |
addr_sel <= 1'b1; |
addr_ct_en <= 1'b1; |
end |
if (module_next_state == `STATE_Rburst) |
begin |
out_reg_data_sel <= 1'b0; // select BIU data |
out_reg_ld_en <= 1'b1; |
bit_ct_rst <= 1'b1; |
word_ct_sel <= 1'b1; |
word_ct_en <= 1'b1; |
if(!(decremented_word_count == 0) && !word_count_zero) // Start a biu read transaction |
begin |
biu_strobe <= 1'b1; |
addr_sel <= 1'b1; |
addr_ct_en <= 1'b1; |
end |
end |
end |
|
603,6 → 623,23
crc_en <= 1'b1; |
crc_in_sel <= 1'b0; // read data in output shift register LSB (tdo) |
top_inhibit_o <= 1'b1; // in case of early termination |
|
`ifdef ADBG_USE_HISPEED |
if(bit_count_max) |
begin |
out_reg_data_sel <= 1'b0; // select BIU data |
out_reg_ld_en <= 1'b1; |
bit_ct_rst <= 1'b1; |
word_ct_sel <= 1'b1; |
word_ct_en <= 1'b1; |
if(!(decremented_word_count == 0) && !word_count_zero) // Start a biu read transaction |
begin |
biu_strobe <= 1'b1; |
addr_sel <= 1'b1; |
addr_ct_en <= 1'b1; |
end |
end |
`endif |
end |
|
`STATE_Rcrc: |
636,6 → 673,23
crc_en <= 1'b1; |
crc_in_sel <= 1'b1; // read data from tdi_i |
top_inhibit_o <= 1'b1; // in case of early termination |
|
`ifdef ADBG_USE_HISPEED |
// It would be better to do this in STATE_Wstatus, but we don't use that state |
// if ADBG_USE_HISPEED is defined. |
if(bit_count_max) |
begin |
bit_ct_rst <= 1'b1; // Zero the bit count |
// start transaction. Can't do this here if not hispeed, biu_ready |
// is the status bit, and it's 0 if we start a transaction here. |
biu_strobe <= 1'b1; // Start a BIU transaction |
addr_ct_en <= 1'b1; // Increment thte address counter |
// Also can't dec the byte count yet unless hispeed, |
// that would skip the last word. |
word_ct_sel <= 1'b1; // Decrement the byte count |
word_ct_en <= 1'b1; |
end |
`endif |
end |
|
`STATE_Wstatus: |
/adv_dbg_if/rtl/verilog/adbg_top.v
12,7 → 12,7
//// //// |
////////////////////////////////////////////////////////////////////// |
//// //// |
//// Copyright (C) 2008 Authors //// |
//// Copyright (C) 2008-2010 Authors //// |
//// //// |
//// This source file may be used and distributed without //// |
//// restriction provided that this copyright statement is not //// |
40,6 → 40,9
// CVS Revision History |
// |
// $Log: adbg_top.v,v $ |
// Revision 1.3 2010-01-10 22:54:11 Nathan |
// Update copyright dates |
// |
// Revision 1.2 2009/05/17 20:54:56 Nathan |
// Changed email address to opencores.org |
// |
/adv_dbg_if/rtl/verilog/adbg_wb_defines.v
12,7 → 12,7
//// //// |
////////////////////////////////////////////////////////////////////// |
//// //// |
//// Copyright (C) 2008 Authors //// |
//// Copyright (C) 2008-2010 Authors //// |
//// //// |
//// This source file may be used and distributed without //// |
//// restriction provided that this copyright statement is not //// |
40,6 → 40,9
// CVS Revision History |
// |
// $Log: adbg_wb_defines.v,v $ |
// Revision 1.4 2010-01-10 22:54:11 Nathan |
// Update copyright dates |
// |
// Revision 1.3 2009/05/17 20:54:57 Nathan |
// Changed email address to opencores.org |
// |
/adv_dbg_if/rtl/verilog/adbg_wb_biu.v
12,7 → 12,7
//// //// |
////////////////////////////////////////////////////////////////////// |
//// //// |
//// Copyright (C) 2008 Authors //// |
//// Copyright (C) 2008-2010 Authors //// |
//// //// |
//// This source file may be used and distributed without //// |
//// restriction provided that this copyright statement is not //// |
40,6 → 40,9
// CVS Revision History |
// |
// $Log: adbg_wb_biu.v,v $ |
// Revision 1.4 2010-01-10 22:54:11 Nathan |
// Update copyright dates |
// |
// Revision 1.3 2009/05/17 20:54:57 Nathan |
// Changed email address to opencores.org |
// |
/adv_dbg_if/rtl/verilog/adbg_or1k_defines.v
12,7 → 12,7
//// //// |
////////////////////////////////////////////////////////////////////// |
//// //// |
//// Copyright (C) 2008 Authors //// |
//// Copyright (C) 2008 - 2010 Authors //// |
//// //// |
//// This source file may be used and distributed without //// |
//// restriction provided that this copyright statement is not //// |
40,6 → 40,9
// CVS Revision History |
// |
// $Log: adbg_or1k_defines.v,v $ |
// Revision 1.3 2010-01-10 22:54:10 Nathan |
// Update copyright dates |
// |
// Revision 1.2 2009/05/17 20:54:56 Nathan |
// Changed email address to opencores.org |
// |
/adv_dbg_if/rtl/verilog/adbg_or1k_biu.v
12,7 → 12,7
//// //// |
////////////////////////////////////////////////////////////////////// |
//// //// |
//// Copyright (C) 2008 Authors //// |
//// Copyright (C) 2008 - 2010 Authors //// |
//// //// |
//// This source file may be used and distributed without //// |
//// restriction provided that this copyright statement is not //// |
40,6 → 40,9
// CVS Revision History |
// |
// $Log: adbg_or1k_biu.v,v $ |
// Revision 1.3 2010-01-10 22:54:10 Nathan |
// Update copyright dates |
// |
// Revision 1.2 2009/05/17 20:54:56 Nathan |
// Changed email address to opencores.org |
// |
/adv_dbg_if/rtl/verilog/adbg_crc32.v
20,12 → 20,15
// http://www.easics.com |
// |
// Modified by Nathan Yawn for the Advanced Debug Module |
// Changes (C) 2008 Nathan Yawn |
// Changes (C) 2008 - 2010 Nathan Yawn |
/////////////////////////////////////////////////////////////////////// |
// |
// CVS Revision History |
// |
// $Log: adbg_crc32.v,v $ |
// Revision 1.2 2010-01-10 22:54:10 Nathan |
// Update copyright dates |
// |
// Revision 1.1 2008/07/22 20:28:29 Nathan |
// Changed names of all files and modules (prefixed an a, for advanced). Cleanup, indenting. No functional changes. |
// |
/adv_dbg_if/rtl/verilog/adbg_or1k_status_reg.v
12,7 → 12,7
//// //// |
////////////////////////////////////////////////////////////////////// |
//// //// |
//// Copyright (C) 2000 - 2008 Authors //// |
//// Copyright (C) 2000 - 2010 Authors //// |
//// //// |
//// This source file may be used and distributed without //// |
//// restriction provided that this copyright statement is not //// |
40,6 → 40,9
// CVS Revision History |
// |
// $Log: adbg_or1k_status_reg.v,v $ |
// Revision 1.2 2010-01-10 22:54:10 Nathan |
// Update copyright dates |
// |
// Revision 1.1 2008/07/22 20:28:31 Nathan |
// Changed names of all files and modules (prefixed an a, for advanced). Cleanup, indenting. No functional changes. |
// |
/adv_dbg_if/rtl/verilog/adbg_defines.v
12,7 → 12,7
//// //// |
////////////////////////////////////////////////////////////////////// |
//// //// |
//// Copyright (C) 2008 Authors //// |
//// Copyright (C) 2008 - 2010 Authors //// |
//// //// |
//// This source file may be used and distributed without //// |
//// restriction provided that this copyright statement is not //// |
40,6 → 40,12
// CVS Revision History |
// |
// $Log: adbg_defines.v,v $ |
// Revision 1.4 2010-01-14 02:03:40 Nathan |
// Make hi-speed mode the default |
// |
// Revision 1.3 2010-01-10 22:53:48 Nathan |
// Added define for hi-speed mode |
// |
// Revision 1.2 2009/05/17 20:54:56 Nathan |
// Changed email address to opencores.org |
// |
79,4 → 85,6
// If CPU_1 sub-module is supported uncomment the folowing line |
//`define DBG_CPU1_SUPPORTED |
|
|
// If this is defined, status bits will be skipped on burst |
// writes to improve download speeds. |
`define ADBG_USE_HISPEED |
/adv_dbg_if/rtl/verilog/adbg_wb_module.v
12,7 → 12,7
//// //// |
////////////////////////////////////////////////////////////////////// |
//// //// |
//// Copyright (C) 2008 Authors //// |
//// Copyright (C) 2008-2010 Authors //// |
//// //// |
//// This source file may be used and distributed without //// |
//// restriction provided that this copyright statement is not //// |
40,6 → 40,9
// CVS Revision History |
// |
// $Log: adbg_wb_module.v,v $ |
// Revision 1.5 2010-01-13 00:55:45 Nathan |
// Created hi-speed mode for burst reads. This will probably be most beneficial to the OR1K module, as GDB does a burst read of all the GPRs each time a microinstruction is single-stepped. |
// |
// Revision 1.2 2009/05/17 20:54:57 Nathan |
// Changed email address to opencores.org |
// |
54,7 → 57,7
// in the input shift register after e.g. a burst read. |
// |
|
|
`include "adbg_defines.v" |
`include "adbg_wb_defines.v" |
|
// Top module |
191,7 → 194,11
assign operation_in = data_register_i[51:48]; |
assign address_data_in = data_register_i[47:16]; |
assign count_data_in = data_register_i[15:0]; |
`ifdef ADBG_USE_HISPEED |
assign data_to_biu = {tdi_i,data_register_i[52:22]}; |
`else |
assign data_to_biu = data_register_i[52:21]; |
`endif |
assign reg_select_data = data_register_i[47:(47-(`DBG_WB_REGSELECT_SIZE-1))]; |
|
//////////////////////////////////////////////// |
298,7 → 305,11
end |
else if(error_reg_en && !internal_reg_error[0]) |
begin |
`ifdef ADBG_USE_HISPEED |
if(biu_err || (!biu_ready)) internal_reg_error[0] = 1'b1; |
`else |
if(biu_err) internal_reg_error[0] = 1'b1; |
`endif |
else if(biu_strobe) internal_reg_error[32:1] = address_counter; |
end |
else if(biu_strobe && !internal_reg_error[0]) internal_reg_error[32:1] = address_counter; // When no error, latch this whether error_reg_en or not |
365,9 → 376,9
assign word_count_zero = (word_count == 16'h0); |
|
///////////////////////////////////////////////////// |
// Output register and TDO output MUX |
// Output register and TDO output MUX |
|
assign out_reg_data = (out_reg_data_sel) ? data_from_internal_reg : {1'b0,data_from_biu}; |
assign out_reg_data = (out_reg_data_sel) ? data_from_internal_reg : {1'b0,data_from_biu}; |
|
always @ (posedge tck_i or posedge rst_i) |
begin |
509,7 → 520,9
begin |
if(update_dr_i) module_next_state <= `STATE_idle; |
else if(bit_count_max && word_count_zero) module_next_state <= `STATE_Rcrc; |
`ifndef ADBG_USE_HISPEED |
else if(bit_count_max) module_next_state <= `STATE_Rstatus; |
`endif |
else module_next_state <= `STATE_Rburst; |
end |
`STATE_Rcrc: |
533,8 → 546,16
end |
`STATE_Wburst: |
begin |
if(update_dr_i) module_next_state <= `STATE_idle; // client terminated early |
else if(bit_count_max) module_next_state <= `STATE_Wstatus; |
if(update_dr_i) module_next_state <= `STATE_idle; // client terminated early |
else if(bit_count_max) |
begin |
`ifdef ADBG_USE_HISPEED |
if(word_count_zero) module_next_state <= `STATE_Wcrc; |
else module_next_state <= `STATE_Wburst; |
`else |
module_next_state <= `STATE_Wstatus; |
`endif |
end |
else module_next_state <= `STATE_Wburst; |
end |
`STATE_Wstatus: |
662,6 → 683,24
crc_en <= 1'b1; |
crc_in_sel <= 1'b0; // read data in output shift register LSB (tdo) |
top_inhibit_o <= 1'b1; // in case of early termination |
|
`ifdef ADBG_USE_HISPEED |
if(bit_count_max) |
begin |
error_reg_en <= 1'b1; // Check the wb_error bit |
out_reg_data_sel <= 1'b0; // select BIU data |
out_reg_ld_en <= 1'b1; |
bit_ct_rst <= 1'b1; |
word_ct_sel <= 1'b1; |
word_ct_en <= 1'b1; |
if(!(decremented_word_count == 0) && !word_count_zero) // Start a biu read transaction |
begin |
biu_strobe <= 1'b1; |
addr_sel <= 1'b1; |
addr_ct_en <= 1'b1; |
end |
end |
`endif |
end |
|
`STATE_Rcrc: |
696,6 → 735,24
crc_en <= 1'b1; |
crc_in_sel <= 1'b1; // read data from tdi_i |
top_inhibit_o <= 1'b1; // in case of early termination |
|
`ifdef ADBG_USE_HISPEED |
// It would be better to do this in STATE_Wstatus, but we don't use that state |
// if ADBG_USE_HISPEED is defined. |
if(bit_count_max) |
begin |
error_reg_en <= 1'b1; // Check the wb_error bit |
bit_ct_rst <= 1'b1; // Zero the bit count |
// start transaction. Can't do this here if not hispeed, biu_ready |
// is the status bit, and it's 0 if we start a transaction here. |
biu_strobe <= 1'b1; // Start a BIU transaction |
addr_ct_en <= 1'b1; // Increment thte address counter |
// Also can't dec the byte count yet unless hispeed, |
// that would skip the last word. |
word_ct_sel <= 1'b1; // Decrement the byte count |
word_ct_en <= 1'b1; |
end |
`endif |
end |
|
`STATE_Wstatus: |
/adv_dbg_if/doc/AdvancedDebugInterface.pdf
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream
/adv_dbg_if/doc/src/AdvancedDebugInterface.odt
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream
/jtag/tap/rtl/verilog/tap_defines.v
43,7 → 43,7
// CVS Revision History |
// |
// $Log: tap_defines.v,v $ |
// Revision 1.1.1.1 2008/05/14 12:07:33 Nathan |
// Revision 1.1.1.1 2008-05-14 12:07:33 Nathan |
// Original from OpenCores |
// |
// Revision 1.3 2004/03/02 17:39:45 mohor |
/jtag/tap/rtl/verilog/tap_top.v
43,7 → 43,7
// CVS Revision History |
// |
// $Log: tap_top.v,v $ |
// Revision 1.5 2009/06/16 02:53:58 Nathan |
// Revision 1.5 2009-06-16 02:53:58 Nathan |
// Changed some signal names for better consistency between different hardware modules. Removed stale CVS log/comments. |
// |
// Revision 1.4 2009/05/17 20:54:38 Nathan |
/xilinx_internal_jtag/rtl/verilog/xilinx_internal_jtag.v
47,6 → 47,9
// CVS Revision History |
// |
// $Log: xilinx_internal_jtag.v,v $ |
// Revision 1.4 2009-12-28 01:15:28 Nathan |
// Removed incorrect duplicate assignment of capture_dr_o in SPARTAN2 TAP, per bug report from Raul Fajardo. |
// |
// Revision 1.3 2009/06/16 02:54:23 Nathan |
// Changed some signal names for better consistency between different hardware modules. |
// |
149,7 → 152,6
|
assign pause_dr_o = 1'b0; |
assign run_test_idle_o = 1'b0; |
assign capture_dr_o = 1'b0; |
|
// We get one TCK during capture_dr state (low,high,SHIFT goes high on next DRCK high) |
// On that negative edge, set capture_dr, and it will get registered on the rising |