|
就是我在跑Modelsim的時候* n+ ~ l/ h6 Q8 i8 T/ n9 R8 i6 i
# d( ?6 C2 j8 }9 M O# l
會出現以下訊息2 P) k& S8 a. b; V# E
9 M% Q4 |" C8 _
# -- Compiling module LD_feedback_0601
2 i4 q i1 |: B* I# q4 c# ** Error: ld_feedback_0601.v(29): 'bias_set_t' already declared in this2 b* _ {4 {1 N4 y$ X3 X: b) j e1 H3 o+ I
scope (LD_feedback_0601).
& q; S' b" p4 }; z# ** Error: ld_feedback_0601.v(1): Identifier must be declared with a port4 _" e) e) S; a2 c T# H ~
mode: bias_set_t.
4 G& c; T% k# S3 i# ** Error: C:/ispTOOLS7_0/modelsim/win32loem/vlog failed.
9 ] t4 A4 o' H; I) B; ?5 {$ T+ `! F" e4 s) G) ^4 S
他指的是我bias_set_t宣告上有問題
% e- h) J: g& q1 D" Z
8 S$ ?9 _6 V! O2 ^- K8 I可是我以前這樣宣告都正常阿 ~"~
$ L! @: J p" c$ m- ?6 w# ^
0 F& l1 @8 R: ^- A% G
% Z* X7 I5 P6 D; \感謝解惑~
) V9 Z- E) s: C& |, @/ s
; y& T+ |0 Z2 G( |4 u" Q...........orz, c& X, p; C0 U# N! K
! q& ^7 N8 U' m s" T: i; O
=============<程式碼~~~黃色部分~~~!!!>==================
* j8 z" h$ D) D8 [module LD_feedback_0601(clk,rst,E1,E2,p,q,p1,q1,bias_set_t,show_a_t);
7 Z* G% u& Z6 r8 v# T4 z) s" G8 D! d* D+ T
- `) m7 R4 ^: @- n# Z) L3 H4 g6 m A* j$ I$ w6 e8 O. Z6 Y
input clk,rst;3 Q0 G2 b# R: w% A, r# B o7 }
. _" @( a4 w4 h A+ u9 M
input[7:0] E1 ;
# P4 l, j5 |8 F+ U5 dinput[7:0] E2 ;0 Z6 ~+ O; _# d
input[7:0] p ;
' ?2 M1 I2 u. \' D# C8 C, Ainput[7:0] q ;
. S4 C2 v: Q- yinput[7:0] p1 ;
, \% a0 Z' C8 |" ~input[7:0] q1 ;+ T X! Q: Q5 c7 v6 X8 f3 p5 P- o
7 o2 b4 P. g g8 f3 r
( @: i( H+ {6 ]
wire[15:0] k1;
1 f9 \4 R2 \6 U9 D3 zwire[15:0] k2;
1 J/ d3 h2 N# o. g& y hwire[15:0] k3;
7 @# }7 O1 Q% g/ [+ G) \' Dwire[15:0] k4;
' s+ N3 O6 R$ B4 _2 N p+ \5 B- e* n! @8 y6 W
/ {) x% Z9 }9 q. {! w% Vassign k1 = E1 *(q - q1);
7 M; _, Z7 }' l5 T5 z- x9 C7 wassign k2 = E2 *(p - p1);; X9 a: Z$ s% o
assign k3 = E2 * p1;
; o g% J3 y4 ]assign k4 = E1 * q1;' R6 h4 e4 v' |" r
2 f' N6 N. _' f. I8 ~2 Z U9 H
//////////////////////////////////
b, Z1 F/ ~" W# |. G& a$ Greg[7:0] bias_set = 8'd8;
' L! ]' U0 z6 X2 ywire[7:0] bias_set_t;
; q( Z, y6 L9 A6 f% Uoutput[7:0] bias_set_t;- h u! W! V: Y
4 k2 Y b* X4 m( K4 G, K4 z
assign bias_set_t = bias_set;
! @% t5 O# F/ K! S
( M3 m" q! Q. o. j2 k0 G. W' c; H2 W) O0 V1 ~, \/ H
reg[3:0] show_a;# D8 l" {* ]% }, u6 }9 A" v/ l
output[3:0] show_a_t;% q- h6 P! o% i/ R) ~8 ]
wire[3:0] show_a_t;' h% j0 a; q* \( {0 H. p0 u0 ^; D
& e, O V) i) \! t0 R) h8 e9 D
assign show_a_t = show_a;
4 J1 T0 T7 ~3 b A' |7 m X//////////////////////////////////- u' h! b# }& u% W
; b6 y! [9 h% A0 v' |always@(k1 or k2 or k3 or k4)) j4 D2 t0 l( o0 J: U
O3 U% h0 D' q$ c6 @5 ebegin
d1 {- M% |- `4 T: f) M" y if(!rst) I9 c$ J: C0 M$ P6 x! |$ m
begin
6 y n {2 K& y. T show_a = 0;* {0 h- f7 u- ]6 i4 p; f) U3 Q
bias_set = bias_set;
6 K" T+ C! X4 g6 O$ Y8 ~# D end
! Q: [- B0 {7 d else if(k1 == k2)
/ n& Z* Z) f: L begin3 v6 |1 I3 C+ c* B1 i+ W% D
if(k3 == k4)
. j' B; o+ {' @/ y/ W- `' Z show_a = 3;
: ?. E7 c0 H8 V# F, P5 k9 T else if(k3 > k4 || k3 < k4)$ h9 A& M/ `% [% ~2 v# Y4 y
begin2 B# X5 ~% k' C: @
show_a = 0;
9 S& c% q8 [+ ^2 P1 E+ A3 A bias_set = bias_set - 1;' H% Y, x( W" n, l% ]0 M
end
$ C' {( G- ^$ Z0 `- }3 }$ o end |
|