|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
请教大家一个实际问题:
, v3 m3 K& F& o3 B ]0 |DS[1:0]是cpld的两个输入信号,经过如下代码锁存:
- J! k1 _. C' c' C' i+ V$ c6 N" z* \5 I F
always @(posedge Clk or negedge nReset)
. y* B7 C! J5 Bbegin
4 E8 Q0 Y: |& o9 }7 t1 Q if (!nReset) begin. I% i# C, j+ o! y
DSXout <= 1'b1;
1 M: i+ I8 ?: d9 P6 h! W NDSX <= 1'b1;
5 n2 V @" Y- d8 t, O. J9 f end
$ f' m7 w2 }: e" h" r else begin
$ B; h+ M/ a9 ^; t2 |+ c. F NDSX <= & DS;
5 J: Z" J- u; A- P! \" @& W x DSXout <= NDSX;7 t* }9 n' {3 l% R9 S
end
$ B6 X3 m: _" ?; y7 Vend
. X s, F, M; \, T5 ?5 ?+ E为何会在导入FPGA后的signaltap上看到如图1所示的情况??按照我的理解,虽然&DS作为组合逻辑可能有不稳定的地方,但也应该是竞争冒险那种情况、高低电平切换的边缘出问题??因为我在CPLD信号输入的源端用示波器点了,输入并没有毛刺(如图2,探头接地粗糙所以过冲大),那么该如何分析问题的来源,是逻辑写法问题还是CPLD管脚接触不良呢...求赐教! |
-
1.jpg
(12.84 KB, 下载次数: 9)
图1,最上面的信号是下面两个相与
-
2.jpg
(32.92 KB, 下载次数: 7)
示波器点的信号
|