|
就是我在跑Modelsim的時候
: `; f# X5 y1 W; L# ]' I( ?4 e0 o* G7 W& A* O
會出現以下訊息
. H6 }, ^( G) Z# A
8 e3 k/ E ~( g# -- Compiling module LD_feedback_0601& L& H K; B8 P9 K" }( W6 G
# ** Error: ld_feedback_0601.v(29): 'bias_set_t' already declared in this) v0 ?# a4 [' @( a
scope (LD_feedback_0601).' O: G' J8 n; ^8 X2 {1 n6 Q2 G% l0 ]
# ** Error: ld_feedback_0601.v(1): Identifier must be declared with a port. [0 L+ h1 v- ?! `& D% H6 ~$ r- j
mode: bias_set_t.- ?; m$ t- }# Y. k3 T
# ** Error: C:/ispTOOLS7_0/modelsim/win32loem/vlog failed.8 u* K/ I. `6 U/ `) u+ I2 e/ n' k
( W I& r* J+ A; n( S& x8 i6 d他指的是我bias_set_t宣告上有問題
* L- P/ J2 x" k3 j
0 }) S" v4 M3 y6 ~$ \5 \$ k2 w可是我以前這樣宣告都正常阿 ~"~
+ d8 I1 @# }3 s* B
" V# ?! G5 Y; o j. G c" M4 z
" \$ u9 Z4 f" e8 ]: k+ J感謝解惑~) e. l0 [1 K7 y8 y0 G- x" O
, G( Q! F0 z% J/ m! C" e! K...........orz
1 P; R! r- g. Y- [% V) ?9 M) g5 f# z
=============<程式碼~~~黃色部分~~~!!!>==================
9 S5 a( u4 V* ~4 Tmodule LD_feedback_0601(clk,rst,E1,E2,p,q,p1,q1,bias_set_t,show_a_t);
: w0 }! G$ {& S( o) N5 v6 h/ o5 d5 O
5 m4 H8 p1 n* N! m2 G
( n( A3 P) \+ binput clk,rst;
* P/ J, R2 C v3 V4 o
: C: z' [1 Q% sinput[7:0] E1 ;
4 N1 Q6 M' ]" `+ L: V8 Y' Z3 ?8 Ainput[7:0] E2 ;
. @1 X; z {: ]6 f) s4 f$ winput[7:0] p ;
& H, S8 r5 c5 h3 C6 C0 V7 O1 q! Xinput[7:0] q ;! n* e. F6 o9 c0 M
input[7:0] p1 ;
- `8 b! @% ~4 {- tinput[7:0] q1 ;, r# R5 z% D( `4 F$ ^( ~0 U
* P3 R' S4 p6 p8 Z" m' G4 V7 r8 w, I f- U& O: @$ A3 S
wire[15:0] k1;
. C; U, g2 z, B/ P1 Dwire[15:0] k2;( Q9 d4 ]' D& L/ r- t5 l
wire[15:0] k3;. @, c3 Y& ?. u5 S9 R
wire[15:0] k4;+ Z6 M1 g+ p% z. [, V
' w) \+ }; d( d" b3 T9 Q' u
! ~% x# U% Q. P: N
assign k1 = E1 *(q - q1);
0 [1 b9 R% \: f% ]8 N% aassign k2 = E2 *(p - p1);
: l7 x! T( ], Rassign k3 = E2 * p1;
3 b3 ]9 W7 A9 C9 C+ D) \assign k4 = E1 * q1;
8 J- S% Y0 }3 ?0 F5 W0 l; n* ^7 x+ w+ U9 M/ N
//////////////////////////////////) G3 m; m; g& ]8 n" D3 [, \
reg[7:0] bias_set = 8'd8;' Z0 n: U/ Q& P' J- O) m( W
wire[7:0] bias_set_t;9 s" x. C4 S) K
output[7:0] bias_set_t;
$ a; |6 ~' y0 L
0 C5 ? f, S* f& kassign bias_set_t = bias_set;
Z& ^) V5 I" ]! W+ [5 ]
' s" c( X9 @; T1 @$ O7 G o* X; A' {: g- c3 y
reg[3:0] show_a;
3 ]: \) |! B$ d9 y8 h. Coutput[3:0] show_a_t;" ^! R. S3 g1 B2 u
wire[3:0] show_a_t;
) Y. k3 g: r6 R- @- @3 K1 Z, D3 `$ `' w- A7 Q
assign show_a_t = show_a;' K) M6 ]$ P5 G3 y2 W! k
//////////////////////////////////
! M6 ~- O; l" X9 c/ z
! n: A! L5 M5 v! k' f# qalways@(k1 or k2 or k3 or k4)
p1 T, `: [* R, F6 h9 F/ p9 g1 R x5 t2 I- z: D! R$ u8 `1 f
begin
$ N ~ G6 J% V$ N, P2 `5 T if(!rst)5 ?4 f5 E2 V1 w1 z0 a) e
begin! F; h2 @) ~" Y) d D p. M
show_a = 0;1 g! N/ s& W3 C' q! a
bias_set = bias_set;
9 V3 c3 O! T/ `3 |' K. u. G! ^ end ' c, B( J6 N8 z7 M
else if(k1 == k2)( T/ b6 [% { G* f
begin5 \" v) j% e/ ?- J/ \
if(k3 == k4)
) O4 m4 ~' l, @ show_a = 3;
9 d* e) S2 ~7 K; n else if(k3 > k4 || k3 < k4)6 y ^6 o& l1 u
begin- t; h P0 z7 Q3 a+ y9 D
show_a = 0;( ~( o& m, B2 k7 d+ _ W0 z
bias_set = bias_set - 1;: ^: o9 k, g |; }, C
end; Q/ A% O/ L4 [/ M' r
end |
|