EDA365电子工程师网

标题: 求助代码编译问题 [打印本页]

作者: stonylian    时间: 2012-6-26 16:43
标题: 求助代码编译问题
本人新手,下面是一Verilog HDL程序代码,为什么总是编译不成功啊,恳请知道的帮助解决一下啊,  D( M2 N  F' V* |' U1 U- V- C
module ihq_counte(rst,clk,ihq_control,ia,ib,ic,iap,ibp,icp,iahq,ibhq,ichq);
$ q) v$ ^- }8 V8 `9 T0 s/ ?6 hinput rst;- M1 _6 e3 V8 h; h7 @! g- s5 f8 T
input clk,ihq_control;& r+ m  P8 }1 d; E7 a6 K
input[15:0]ia;
* Q" q# o7 n: @/ p0 X7 Einput[15:0]ib;
# J- t' w+ H( C- Finput[15:0]ic;- o3 o8 S  y! J3 F" ^9 u
input[15:0]iap;
; u/ t# p+ j# @9 r4 vinput[15:0]ibp;: J/ I2 x  ?' B$ S
input[15:0]icp;
( f& R5 c- d% @" x! ?& L; Y* `, U  Poutput[15:0]iahq;9 B) n+ r6 A* b+ z2 H
output[15:0]ibhq;
9 K5 J8 k' V4 L: P$ B# soutput[15:0]ichq;
. g: Z% G+ c: q5 @7 Ireg signed[15:0]a1,a2,a3,bl,b2,b3,cl,c2,c3,iahq,ibhq,ichq,iahq1,ibhq1,ichq1;% c- U  `3 i* P+ v; b
always @(posedge rst or posedge ihq_control)/ g# D/ V/ ?$ a0 V9 f/ v3 R1 s
if(rst)
# u; \/ |: j+ ]+ a% W9 Obegin
- {/ o5 Q1 p1 ]: m+ F( V" Aiahql=0;7 v7 n4 |$ p) M& k5 k: u0 l
ibhql=0;
( g$ c& }8 U4 Cichql=0;" ~  c7 B7 ?9 L$ `
end: r5 s/ ^1 I6 d! l9 W% u
else if(clk)) U* G( b: V2 m% j  r/ A0 |: B: a! n
begin
9 K& o% ^8 c; H/ k' J: _iahq=ihaql;8 ^4 h7 x6 o! ]  _# Y8 @
ibhq=ibhql;
$ h  j+ [5 v5 Y4 {8 w! y" B) xichq=ichql;0 ^' c# ?' r5 r$ S! Z- V
end, t, H/ _' ~0 y; T
else
( O9 F  L4 h$ M
! s* c: f7 s7 U; Cbegin
6 l( R% ~; t: \& t/ B" g; ~if(ia[11]==0)al=ia;
. B% @! ~' h: P0 s# j8 k3 Kelse. ~, _. u: B, b. ?2 ~3 |
begin3 Q( `$ ]+ U- `: i$ `! J1 R- o
al=ia;8 G0 x: A; A# g" c: J' [
a1[15:12]=15;
1 G8 U) J! g; u# a/ vend. c# R9 K: Y7 i# B0 A: |7 @
a2=iap;
, z9 P, h: Y7 _! H& |if(a2>0)a2=a2>>3;
: d; n- f, p1 A: E. R5 E5 aelse
2 R1 E9 `( Q2 Z  hbegin. W# P0 F+ u2 u6 S1 ~
a2=a2>>3;
4 @9 P% Z3 I+ @) Ca2[15:13]=7;( G- M; p) ~0 D* d, F* b; m
end
  n" w: i, E" D- f% ^1 W$ q% _if(ib[11]==0)b1=ib;
/ l! f; O( S7 N# ?else
+ x, y- ~$ U- i5 I1 H0 y9 `" Fbegin# O/ Q( P0 f9 X3 G8 C4 _9 g
bl=ib;
) P7 ], Z% e' q+ A* Mbl[15:12]=15;  E9 z& ]" u( Q! Z* [) C# o
end6 I: \5 `& Z3 f! L/ b& h
b2=ibp;2 \- h1 h" e* K3 z8 [+ |0 J
if(b2>0)b2=b2>>3;
+ {0 h; H1 r. O' v1 |6 @5 M* aelse
  ~0 K6 A0 U5 }0 P' Vbegin
6 ~0 K" |6 e) P6 I9 v, T: Vb2=b2>>3;
6 O9 k! ~# K6 T. sb2[15:13]=7;7 F! F7 M  \& V' ]# W
end1 L0 z2 M) p) {! @5 O( G; S. N
if(ic[11]==0)cl=ic;4 o; E. Q  ]7 u2 `- }
else
- O, J6 J5 V& \8 hbegin. R# a& E* W2 U& r6 V. H
cl=ic;( I5 k$ b5 n+ x0 k. I2 r0 Y
cl[15:12]=15;
" v3 R+ P/ P1 e7 w1 {8 D& Jend9 V1 z4 q7 D6 J$ q
c2=icp;$ |! k7 m. t" _3 m9 _9 L3 v* @
if(c2>0)c2=c2>>3;
1 R7 ~" g; Z# E. m) h: ielse
6 i9 o8 P  ~% t" rbegin% Z$ ^" X8 G& T: f0 N6 a
c2=c2>>3;
9 r8 }- b3 A4 t+ M: l$ V* F$ bc2[15:13]=7;1 v) Q- D) |# W6 j0 n
end" O- a4 O3 ]/ B. E. F
a3=al-a2;& w4 R+ s1 D. ~# J1 a  H  q- e
b3=bl-b2;) `! W3 t7 j; O8 r
c3=cl-c2;
* K; [+ [2 q# N( G& giahql=a3;
" ]  p- _1 _: z- xibhql=b3;4 o3 S! I  g' D. j- O! ?
ichql=c3;/ |# d+ n4 b* Q! [$ q" B% b! K
end
" ]; d% t2 ]0 e  X* \( u$ Xendmodule
作者: blue822180    时间: 2012-8-2 17:20
老大你工程名和你模块名字相同吗?你怎么不黏贴出问题所在?
作者: blue822180    时间: 2012-8-2 17:34
我看你代码了,你错误原因是很多信号没有定义呀,你直接用的,这些不知道是输入还是输出呀,你根据你的情况改一改吧
作者: xy31554406    时间: 2012-9-3 13:41
always里面最好用非阻塞赋值啊。还有clk信号和ihq_control信号会不会同时动作,导致 if else执行起来有冲突啊?




欢迎光临 EDA365电子工程师网 (https://bbs.elecnest.cn/) Powered by Discuz! X3.2