Line 41... |
Line 41... |
//////////////////////////////////////////////////////////////////////
|
//////////////////////////////////////////////////////////////////////
|
//
|
//
|
// CVS Revision History
|
// CVS Revision History
|
//
|
//
|
// $Log: not supported by cvs2svn $
|
// $Log: not supported by cvs2svn $
|
|
// Revision 1.11 2004/04/07 19:28:55 igorm
|
|
// Zero is shifted out when CTRL_READ command is active.
|
|
//
|
// Revision 1.10 2004/04/01 10:22:45 igorm
|
// Revision 1.10 2004/04/01 10:22:45 igorm
|
// Signals for easier debugging removed.
|
// Signals for easier debugging removed.
|
//
|
//
|
// Revision 1.9 2004/03/31 14:34:09 igorm
|
// Revision 1.9 2004/03/31 14:34:09 igorm
|
// data_cnt_lim length changed to reduce number of warnings.
|
// data_cnt_lim length changed to reduce number of warnings.
|
Line 251... |
Line 254... |
latch_data <= #1 1'b0;
|
latch_data <= #1 1'b0;
|
dr <= #1 {`DBG_CPU_DR_LEN{1'b0}};
|
dr <= #1 {`DBG_CPU_DR_LEN{1'b0}};
|
end
|
end
|
else if (curr_cmd_rd_comm && crc_cnt_31) // Latching data (from internal regs)
|
else if (curr_cmd_rd_comm && crc_cnt_31) // Latching data (from internal regs)
|
begin
|
begin
|
dr[`DBG_CPU_ACC_TYPE_LEN + `DBG_CPU_ADR_LEN + `DBG_CPU_LEN_LEN -1:0] <= #1 {acc_type, adr, len};
|
dr[`DBG_CPU_DR_LEN -1:0] <= #1 {acc_type, adr, len};
|
end
|
end
|
else if (curr_cmd_rd_ctrl && crc_cnt_31) // Latching data (from control regs)
|
else if (curr_cmd_rd_ctrl && crc_cnt_31) // Latching data (from control regs)
|
begin
|
begin
|
dr[`DBG_CPU_DR_LEN -1:`DBG_CPU_DR_LEN -`DBG_CPU_CTRL_LEN] <= #1 ctrl_reg;
|
dr[`DBG_CPU_DR_LEN -1:0] <= #1 {ctrl_reg, {`DBG_CPU_DR_LEN -`DBG_CPU_CTRL_LEN{1'b0}}};
|
end
|
end
|
else if (acc_type_read && curr_cmd_go && crc_cnt_31) // Latchind first data (from WB)
|
else if (acc_type_read && curr_cmd_go && crc_cnt_31) // Latchind first data (from WB)
|
begin
|
begin
|
dr[31:0] <= #1 input_data[31:0];
|
dr[31:0] <= #1 input_data[31:0];
|
latch_data <= #1 1'b1;
|
latch_data <= #1 1'b1;
|
Line 884... |
Line 887... |
end
|
end
|
else if ((curr_cmd_rd_comm || curr_cmd_rd_ctrl) && addr_len_cnt_end && (!addr_len_cnt_end_q))
|
else if ((curr_cmd_rd_comm || curr_cmd_rd_ctrl) && addr_len_cnt_end && (!addr_len_cnt_end_q))
|
begin
|
begin
|
tdo_o = ~crc_match_reg;
|
tdo_o = ~crc_match_reg;
|
end
|
end
|
else if (curr_cmd_rd_comm && crc_cnt_end && (!addr_len_cnt_end))
|
else if ((curr_cmd_rd_comm || curr_cmd_rd_ctrl) && crc_cnt_end && (!addr_len_cnt_end))
|
begin
|
begin
|
tdo_o = dr[`DBG_CPU_ACC_TYPE_LEN + `DBG_CPU_ADR_LEN + `DBG_CPU_LEN_LEN -1];
|
tdo_o = dr[`DBG_CPU_ACC_TYPE_LEN + `DBG_CPU_ADR_LEN + `DBG_CPU_LEN_LEN -1];
|
end
|
end
|
else if (curr_cmd_rd_ctrl && crc_cnt_end && (!addr_len_cnt_end))
|
|
begin
|
|
tdo_o = 1'b0;
|
|
end
|
|
else if (status_cnt_en)
|
else if (status_cnt_en)
|
begin
|
begin
|
tdo_o = status[3];
|
tdo_o = status[3];
|
end
|
end
|
else
|
else
|