EDA365电子工程师网
标题:
case中NULL与数据保持问题
[打印本页]
作者:
thinkzero
时间:
2017-3-19 15:33
标题:
case中NULL与数据保持问题
9 y, T! Z. _& Q: s% @( @
....
4 K0 q& ^4 w! p/ i+ a
case st is
+ V) T4 A, j; P( O
when 1=>
l& L9 _1 ]; X
n<='1';
# G! F* ]; w- a5 h% {
when 2=>
5 ^. D3 p4 y7 N+ ?( X8 S2 t8 Y) l
n<='0';
- G6 K' A- d, E5 O
when 3=>
6 K& L# c5 F/ i6 q/ Z4 q
n<=pulse;
$ i1 Y% P6 c6 H
when others=>
$ R$ h. i8 w4 F+ Z2 T9 a+ a
null;
. o/ {5 w( V5 v8 m" C: F
.......
# B! U& [ g5 t4 @+ R4 A
m<=n;
+ R9 t: _5 z* u$ q; s; [5 d; }
...
( E$ `. ~9 b+ ~( b( B: ]( \3 P
VHDL描述大致如上,st具有255个可选值,且st 为脉冲信号。
' X1 |1 Y8 z: ^7 K
希望功能:st脉冲信号能够控制n的值。
5 ^! M w. w8 ?) G6 Q, B
结果:
9 k8 e- \8 z( G" X$ x& `7 x
1. st脉冲等于1,2 时,功能正常,脉冲信号撤掉后,n的状态依然存在,且正确。
. {; F; W$ u8 p1 @* F
2. 3 脉冲却功能异常,当3 存在时,n的状态为pulse,当3信号撤销后,n的状态为随机定值。
4 [- @ R9 X. \$ S% a/ L# _& q: t
问题:1.希望NULL实现“无操作”=“保持之前状态”,但是结果却异常,且和赋值信号有关。
6 J1 I. z7 i3 ~
8 C0 {3 w: E, y% O6 o9 b1 n
改进测试:
' o! ~" v0 y A, u/ P- G( i
添加并如下调整后
8 T8 p& l% j) e0 f3 D- [) S
CASE st is
. l+ }# B; B X9 q7 A
when 1=>
1 K/ M. m7 ^" L
q<=1;
5 N- @/ n+ o- p) w. r" H( ]
when 2=>
6 h/ a3 n* a5 Z9 f
q<=2;
) R( s. {1 n+ C& c3 I! j: ?% S8 C
when 3=>
3 W$ Q; Y- W( T& y. s6 N. F
q<=3;
% n# r. V5 m/ j! W# p4 q" U+ _
when others=>
* |- z8 G+ r: t6 e! p& C
null;
! Q8 H" E+ l* m: h, @2 b
.......
' M0 m l9 ^8 W' ?4 I- z# t- w
+ i' n* u6 k* h0 I* y" `1 }' I
case q is
/ c# l0 Q2 V: c* W8 u ^" a
when 1|2=>
( d5 Q8 @) l7 I7 n0 Z
m<=n;
" f8 E6 d, E* Q8 R& o9 g! [
when 3=>
' @5 c& o! o/ o7 Z. Y* ]8 R
m<=pulse;
2 }. F. i) M& Y$ p: L5 @+ g
when others=>
7 h, h$ |& o2 i
null;
6 u/ t7 E9 l2 Q+ h2 P
( `. G+ u; H' Q& n
....
3 a B' b% r e; o5 A
然后功能正常 。
% _' Y) ]" D1 y+ p3 X, H
! r. M2 ?5 x* g( D* ?: ], f
以上测试结果为signaltapII测试结果和示波器测试结果。
+ d# W/ C1 w7 h+ O
- L7 O4 J6 A/ D$ U, R! k
上述代码为示例代码,希望各位朋友指点迷津?
, J$ o! S, w, G9 ] P
N4 c+ p; L5 e( r6 X8 d+ a
由于数据拷贝权限问题,不能上传源码和图片。
' d7 V! j9 A& q8 L: n
作者:
thinkzero
时间:
2017-3-20 19:02
简化了工程文件如附件。
: @; u4 r9 Z, ?7 T
case_test.rar
2017-3-20 19:01 上传
点击文件名下载附件
下载积分: 威望 -5
4.06 MB, 下载次数: 0, 下载积分: 威望 -5
作者:
whawbb
时间:
2017-11-25 20:47
这个贴不错!!!!!
欢迎光临 EDA365电子工程师网 (https://bbs.elecnest.cn/)
Powered by Discuz! X3.2