|
就是我在跑Modelsim的時候) L/ P4 L+ `; R1 _7 o8 L: T5 Y
\, ?. q$ y* x, L t& t6 D3 y會出現以下訊息
% l' ~. a F5 L( n) r) F4 `. O7 F+ f$ n/ F1 |: ^% z
# -- Compiling module LD_feedback_0601
1 ~( T1 e9 B# M9 B# ** Error: ld_feedback_0601.v(29): 'bias_set_t' already declared in this
# c4 x% e. m4 U" k1 M2 z7 I% |scope (LD_feedback_0601).. `+ _& S( `1 M# s. v
# ** Error: ld_feedback_0601.v(1): Identifier must be declared with a port
/ T: M. j$ A) G lmode: bias_set_t.
, a: _( y, `$ k. C" Q# ** Error: C:/ispTOOLS7_0/modelsim/win32loem/vlog failed.
( ~$ T7 u0 b& V4 k7 ^
$ ^# S# T; Y, m4 |他指的是我bias_set_t宣告上有問題
9 @- F7 k+ I, I
4 K+ p+ c0 l# `可是我以前這樣宣告都正常阿 ~"~
7 G0 p# H2 G! I, P
# q, e2 E' |; y' H' X7 u+ }. s0 u" x( a" v
感謝解惑~, G% s& f3 f& `0 _# v
9 \3 D9 {- n$ c" a& o% y* X...........orz
% b- D6 E8 T0 Y. ?0 `- C- F1 i4 `. |; z
=============<程式碼~~~黃色部分~~~!!!>==================3 F ?0 z4 T: z3 f8 Q) t. ]( G
module LD_feedback_0601(clk,rst,E1,E2,p,q,p1,q1,bias_set_t,show_a_t);4 {$ P/ Q4 T- l x6 u# z
4 z9 Q6 ^" x- @8 H3 [0 ^) B! R) u' i% Q6 O" F
& H, T0 z% U' ?; e
input clk,rst;
% p: K( [) J, v9 x
4 x' u1 f1 { Y/ H- [input[7:0] E1 ;
, u6 }2 s& d! R3 zinput[7:0] E2 ;
$ u# L# P1 A* A' Sinput[7:0] p ;1 k( B/ s: W6 F. C& W2 F
input[7:0] q ;$ O4 [% y, e3 y
input[7:0] p1 ;. z$ U0 Z) \/ N9 Q; |/ X
input[7:0] q1 ;
# }, g4 k4 ` v* O P; v
7 n8 b4 i1 T! c+ u4 i" r
3 R" K8 e, b! a' `3 N- A% P8 mwire[15:0] k1;
. g" u; `" m5 G" K+ y1 Q/ _# Y" Dwire[15:0] k2;
, U4 M) G( c _( X7 jwire[15:0] k3;* Y. G3 g9 ^8 Z3 Q8 w9 h: ?
wire[15:0] k4;
. }$ e" e- R% ]) _* M* q" J7 m" e" N( V- d$ O7 c8 j
5 S* o( Q/ [* o/ D! `# f0 r4 ]assign k1 = E1 *(q - q1);6 S$ h# `$ c" x: I1 f6 z: |5 C, p
assign k2 = E2 *(p - p1);
) J. \ S/ |# v& D: X, ~assign k3 = E2 * p1;% k. I0 p2 p& L- g
assign k4 = E1 * q1;6 s( |/ L3 o: y) {8 q
$ S( b) E1 C. N- n8 k& t
//////////////////////////////////
9 L) e% G: { A* c$ A H4 G& breg[7:0] bias_set = 8'd8;/ u+ j' k7 N$ e' g, R
wire[7:0] bias_set_t;
# r* Q' a; K2 N2 `output[7:0] bias_set_t;) t1 w) ^) @ i6 _
' g7 M6 O# h* k1 ~0 Z$ b3 f$ K: h
assign bias_set_t = bias_set;# y2 D; ]- g: E
# f0 C4 I7 d" Q9 |
/ D1 d/ Z5 ], x0 \4 e2 k" Jreg[3:0] show_a;
+ V) m" v1 ]2 H F2 p1 { m" d9 eoutput[3:0] show_a_t;
9 `! M4 G i2 l4 c9 ^* S* Mwire[3:0] show_a_t;( P0 ]* O2 A5 S! K) w# Q3 z
) P6 z6 o& t5 p" O# Tassign show_a_t = show_a;6 r/ Y5 Y3 E o, K& j9 A# q
//////////////////////////////////9 N+ T7 K' M% L, B( }2 Y+ p( j
o. J/ ?, A, T" V( aalways@(k1 or k2 or k3 or k4)
' A) U* |1 I6 m2 i b5 ?
' o z/ a3 A9 v. @5 F2 S7 b- Ubegin
?8 g# W+ o: e if(!rst)
7 @+ f( a2 j2 T4 q: m4 z1 W begin
' Y0 r! g3 |/ {! N! F2 ^2 b show_a = 0;
- r& @5 e8 |! e+ n" q* W bias_set = bias_set;9 z& H. U& t. F. i5 A! S& E2 F: s
end $ e* C' B& A9 a9 A
else if(k1 == k2)
0 f5 M8 G4 s6 d9 |! M+ J begin
2 o6 }) }6 ]$ I( S/ C# F if(k3 == k4). v2 r y* c& q3 c0 \7 P# \) ] c
show_a = 3;
" ^# S& x6 S. E4 C/ r- m else if(k3 > k4 || k3 < k4)0 `! r" C/ y/ z% L
begin! {3 n) c' o; d2 E
show_a = 0;
% H# q0 q" ^$ Y bias_set = bias_set - 1;) T! R4 m' h. s
end/ d. m! S/ W3 g
end |
|