下载到开发板上遇到一个与仿真不同的问题:波形不一致!
我用嵌入式分析仪抓数据发现波形与我仿真时的波形不一致
比较奇怪
我的设计思路是通过串口接受数据
然后把接收的数据写入sram器件里面去
但发现那个控制信号与仿真时不一致(见附图所示)
跟sram接口相关的代码如下:
-----------------------------------------------------------------------------------------
always @(posedge i_Clock or negedge i_Reset_n)
if(~i_Reset_n)begin
SRAM_STATE<=`SRAM_IDLE;
Write_ack<=0;
Read_ack<=0;
end
else begin
Write_ack<=0;
Read_ack<=0;
case (SRAM_STATE)
`SRAM_IDLE:begin
Write_ack<=0;
Read_ack<=0;
case({Write_req,Read_req})
2'b10:begin
SRAM_STATE<=`SRAM_WRITE;
Write_ack<=1;
end
2'b01:begin
SRAM_STATE<=`SRAM_READ;
end
default:SRAM_STATE<=`SRAM_IDLE;
endcase
end
`SRAM_WRITE:begin
SRAM_STATE<=`SRAM_IDLE;
end
`SRAM_READ:begin
SRAM_STATE<=`SRAM_READ_KEEP;
end
`SRAM_READ_KEEP:begin
SRAM_STATE<=`SRAM_IDLE;
Read_ack<=1;
end
default:begin
SRAM_STATE<=`SRAM_IDLE;
Write_ack<=0;
Read_ack<=0;
end
endcase
end
-----------------------------------------------------------------------------------------
assign io_Sram_data =(o_Sram_OE_n) ? Sys_dataout:{16{1'bz}};
assign Sys_datain = io_Sram_data;
//
always @(posedge i_Clock or negedge i_Reset_n)
if(~i_Reset_n)begin
o_Sram_CE_n<=1;
o_Sram_WE_n<=1;
o_Sram_OE_n<=1;
o_Sram_UB_n<=1;
o_Sram_LB_n<=1;
o_Sram_add<={16{1'b0}};
end
else begin
case(SRAM_STATE)
`SRAM_IDLE:begin
o_Sram_CE_n<=1;
o_Sram_WE_n<=1;
o_Sram_OE_n<=1;
o_Sram_UB_n<=1;
o_Sram_LB_n<=1;
o_Sram_add<=Sys_ADDR;
end
`SRAM_WRITE:begin
o_Sram_CE_n<=0;
o_Sram_WE_n<=0;
o_Sram_OE_n<=1;
o_Sram_UB_n<=0;
o_Sram_LB_n<=0;
o_Sram_add<=Sys_ADDR;
end
`SRAM_READ,
`SRAM_READ_KEEP:begin
o_Sram_CE_n<=0;
o_Sram_WE_n<=1;
o_Sram_OE_n<=0;
o_Sram_UB_n<=0;
o_Sram_LB_n<=0;
o_Sram_add<=Sys_ADDR;
end
default:begin
o_Sram_CE_n<=1;
o_Sram_WE_n<=1;
o_Sram_OE_n<=1;
o_Sram_UB_n<=1;
o_Sram_LB_n<=1;
o_Sram_add<=Sys_ADDR;
end
endcase
end
-----------------------------------------------------------------------------------------



而且也发现o_TX的波形也是与仿真时的波形时反向来着
还有一个问题是altera的嵌入式逻辑分析仪 为何有些数据可以产生用于抓取的信号 而有些不能
甚至有些模块连一个信号可抓取的都没有
altera的嵌入式逻辑分析仪一般针对哪些信号时可抓取的呢?我单独用uart发送模块给pc传数据 可以正常通过串口调试工具收到数据
例如我发1234 可以收到这个数据
我在看报告的时候发现这样的提示:
Warning: Reduced register "CRT2SRAM_DATAPATH:CRT2SRAM_DATAPATH|Write_req" with stuck data_in port to stuck value GND
Warning: Reduced register "CRT2SRAM_DATAPATH:CRT2SRAM_DATAPATH|SRAM_Sys_dataout[15]" with stuck data_in port to stuck value GND
Warning: Reduced register "CRT2SRAM_DATAPATH:CRT2SRAM_DATAPATH|SRAM_Sys_dataout[14]" with stuck data_in port to stuck value GND
Warning: Reduced register "CRT2SRAM_DATAPATH:CRT2SRAM_DATAPATH|SRAM_Sys_dataout[13]" with stuck data_in port to stuck value GND
Warning: Reduced register "CRT2SRAM_DATAPATH:CRT2SRAM_DATAPATH|SRAM_Sys_dataout[12]" with stuck data_in port to stuck value GND
Warning: Reduced register "CRT2SRAM_DATAPATH:CRT2SRAM_DATAPATH|SRAM_Sys_dataout[11]" with stuck data_in port to stuck value GND
Warning: Reduced register "CRT2SRAM_DATAPATH:CRT2SRAM_DATAPATH|SRAM_Sys_dataout[10]" with stuck data_in port to stuck value GND
Warning: Reduced register "CRT2SRAM_DATAPATH:CRT2SRAM_DATAPATH|SRAM_Sys_dataout[9]" with stuck data_in port to stuck value GND
Warning: Reduced register "CRT2SRAM_DATAPATH:CRT2SRAM_DATAPATH|SRAM_Sys_dataout[8]" with stuck data_in port to stuck value GND
Warning: Reduced register "CRT2SRAM_DATAPATH:CRT2SRAM_DATAPATH|SRAM_Sys_dataout[7]" with stuck data_in port to stuck value GND
Warning: Reduced register "CRT2SRAM_DATAPATH:CRT2SRAM_DATAPATH|SRAM_Sys_dataout[6]" with stuck data_in port to stuck value GND
Warning: Reduced register "CRT2SRAM_DATAPATH:CRT2SRAM_DATAPATH|SRAM_Sys_dataout[5]" with stuck data_in port to stuck value GND
Warning: Reduced register "CRT2SRAM_DATAPATH:CRT2SRAM_DATAPATH|SRAM_Sys_dataout[4]" with stuck data_in port to stuck value GND
Warning: Reduced register "CRT2SRAM_DATAPATH:CRT2SRAM_DATAPATH|SRAM_Sys_dataout[3]" with stuck data_in port to stuck value GND
Warning: Reduced register "CRT2SRAM_DATAPATH:CRT2SRAM_DATAPATH|SRAM_Sys_dataout[2]" with stuck data_in port to stuck value GND
Warning: Reduced register "CRT2SRAM_DATAPATH:CRT2SRAM_DATAPATH|SRAM_Sys_dataout[1]" with stuck data_in port to stuck value GND
Warning: Reduced register "CRT2SRAM_DATAPATH:CRT2SRAM_DATAPATH|SRAM_Sys_dataout[0]" with stuck data_in port to stuck value GND
Warning: Reduced register "CRT2SRAM_DATAPATH:CRT2SRAM_DATAPATH|UART_Sys_dataout[15]" with stuck data_in port to stuck value GND
Warning: Reduced register "CRT2SRAM_DATAPATH:CRT2SRAM_DATAPATH|UART_Sys_dataout[14]" with stuck data_in port to stuck value GND
Warning: Reduced register "CRT2SRAM_DATAPATH:CRT2SRAM_DATAPATH|UART_Sys_dataout[13]" with stuck data_in port to stuck value GND
Warning: Reduced register "CRT2SRAM_DATAPATH:CRT2SRAM_DATAPATH|UART_Sys_dataout[12]" with stuck data_in port to stuck value GND
Warning: Reduced register "CRT2SRAM_DATAPATH:CRT2SRAM_DATAPATH|UART_Sys_dataout[11]" with stuck data_in port to stuck value GND
Warning: Reduced register "CRT2SRAM_DATAPATH:CRT2SRAM_DATAPATH|UART_Sys_dataout[10]" with stuck data_in port to stuck value GND
Warning: Reduced register "CRT2SRAM_DATAPATH:CRT2SRAM_DATAPATH|UART_Sys_dataout[9]" with stuck data_in port to stuck value GND
Warning: Reduced register "CRT2SRAM_DATAPATH:CRT2SRAM_DATAPATH|UART_Sys_dataout[8]" with stuck data_in port to stuck value GND
Warning: Reduced register "CRT2SRAM_DATAPATH:CRT2SRAM_DATAPATH|UART_Sys_dataout[7]" with stuck data_in port to stuck value GND
Warning: Reduced register "CRT2SRAM_DATAPATH:CRT2SRAM_DATAPATH|UART_Sys_dataout[6]" with stuck data_in port to stuck value GND
Warning: Reduced register "CRT2SRAM_DATAPATH:CRT2SRAM_DATAPATH|UART_Sys_dataout[5]" with stuck data_in port to stuck value GND
Warning: Reduced register "CRT2SRAM_DATAPATH:CRT2SRAM_DATAPATH|UART_Sys_dataout[4]" with stuck data_in port to stuck value GND
Warning: Reduced register "CRT2SRAM_DATAPATH:CRT2SRAM_DATAPATH|UART_Sys_dataout[3]" with stuck data_in port to stuck value GND
Warning: Reduced register "CRT2SRAM_DATAPATH:CRT2SRAM_DATAPATH|UART_Sys_dataout[2]" with stuck data_in port to stuck value GND
Warning: Reduced register "CRT2SRAM_DATAPATH:CRT2SRAM_DATAPATH|UART_Sys_dataout[1]" with stuck data_in port to stuck value GND
感觉是不是那个地方可能写的不对导致综合后给优化掉了还是怎的?
