一个奇怪的问题请教
时间:10-02
整理:3721RD
点击:
最近在调一个fpga板子(lattice的)时,发现有一个reg变量无法赋值,output reg[7:0] data_out;
always@( posedge rx_gclk or posedge rst)
begin
if(rst)
begin
data_out<=8'h0;
end
else
begin
data_out<=8‘h08;
end
end
用芯片示波器工具看data_out 一直是0 ,无法变成08,程序变编译过程没报错,无多源驱动,无data_out的警告。不知道哪里出错,不知大家有没有碰到过。
always@( posedge rx_gclk or posedge rst)
begin
if(rst)
begin
data_out<=8'h0;
end
else
begin
data_out<=8‘h08;
end
end
用芯片示波器工具看data_out 一直是0 ,无法变成08,程序变编译过程没报错,无多源驱动,无data_out的警告。不知道哪里出错,不知大家有没有碰到过。
检查一下复位有没有被拉死,如果没有把rx_gclk引到管脚上用示波器看一下
复位一直有效的话,可不是一直为0嘛
1、rst
2、rx_gclk
3、bit
第一个begin不是应该放到if的后面,另外看看时钟和复位信号是不是被拉到了一个固定的高电平
1、检查一下,设计文件管脚分配是否正确有没有分配管脚;
2、测一下rst电平,有没有变成低电平;
3、rx_gclk 有没有翻转(时钟);
4、其它程序是否能正常在你的板子上运行。
感觉是复位的问题!
先检查输入是否有问题,在检查程序的逻辑问题!
不动啊
你用的是高复位
抓波形检查下rst是不是一直为1
复位错啦
复位是高电平,跟一般的相反,所以很有可能是复位信号的问题
