Chip123 科技應用創新平台

 找回密碼
 申請會員

QQ登錄

只需一步,快速開始

Login

用FB帳號登入

搜索
1 2 3 4
查看: 6128|回復: 6
打印 上一主題 下一主題

[問題求助] Verilog 宣告的小問題~

[複製鏈接]
跳轉到指定樓層
1#
發表於 2009-6-2 18:13:59 | 顯示全部樓層 回帖獎勵 |倒序瀏覽 |閱讀模式
就是我在跑Modelsim的時候9 C# s# P5 ^, e  t
) I1 _" J( [9 L; j
會出現以下訊息$ z7 W! v+ T/ {- _
2 w! @. B2 e: i  E8 C9 r7 L
# -- Compiling module LD_feedback_0601
3 {/ @5 C& @# ]% s# ** Error: ld_feedback_0601.v(29): 'bias_set_t' already declared in this- h. q6 h( K' ~' ]
scope (LD_feedback_0601).
' E6 s& E1 Q) ?7 a0 e$ j2 J' C4 I# ** Error: ld_feedback_0601.v(1): Identifier must be declared with a port
. y. x3 r. A1 o& Gmode: bias_set_t.  o/ ^) i0 h- B7 @+ g9 C9 Z
# ** Error: C:/ispTOOLS7_0/modelsim/win32loem/vlog failed.
& Z/ G3 j* p: C8 K  p1 g& F. j# _, }+ H+ ?
他指的是我bias_set_t宣告上有問題
, ?$ I( f( e1 N
) e- L2 i; p# H- q3 \& ~% ^+ u可是我以前這樣宣告都正常阿  ~"~
; O( h- ~/ {' l7 I  O. C$ K. @" U5 S6 H* r! a* w8 d6 B% o% g

" @, ]% z7 c% @) O* D$ n8 m8 l  G感謝解惑~8 S* m- ]5 h: o7 r) S& ^
5 X, x! P9 Q% R  B
...........orz
- M4 u/ L9 {4 I' e8 N1 Z3 F8 i, G8 O# y
=============<程式碼~~~黃色部分~~~!!!>==================2 L1 y4 }* N$ O4 {. D
module LD_feedback_0601(clk,rst,E1,E2,p,q,p1,q1,bias_set_t,show_a_t);
4 a5 p3 s" \; X; R" b% m( H7 H2 e% i, a( m7 ^
4 P: P+ z# B3 u

* D4 v) f1 F$ }7 G# g6 l/ k9 c% H+ u% {2 Iinput clk,rst;' V, Q9 D5 a7 @
0 G/ o: ?& u' T* |8 p
input[7:0] E1 ;; h4 \: V# o+ V! P; t
input[7:0] E2 ;
$ H9 D1 k: d  V8 p, G. Hinput[7:0] p ;
/ ~) J$ Z! [0 I3 K  v! s" G' R  Z$ sinput[7:0] q ;
7 u0 F& w$ P! S6 q5 a, Rinput[7:0] p1 ;1 F& k$ U! n/ L! B' x
input[7:0] q1 ;
5 D, o# A/ r% l) o) I- I
$ d7 p! K# R" {" G/ G4 t1 w/ v9 B9 A9 r6 T
wire[15:0] k1;
4 i! n; o- t+ x6 m3 e, mwire[15:0] k2;
0 q# ^) [* x! T3 b- P- N% ]wire[15:0] k3;
; i8 W+ |$ @6 U+ C$ ^" jwire[15:0] k4;. p$ ^& g7 l$ O5 o' @
. n8 B* y  K" `3 e: L* S

8 m) q+ X' j4 P+ Dassign k1 = E1 *(q - q1);! [9 G: ^" ~) {% W" C9 }
assign k2 = E2 *(p - p1);
' G$ u( Y. l6 ]% a0 N# J6 |1 massign k3 = E2 * p1;& A6 @' s7 i" f
assign k4 = E1 * q1;
5 Y0 x9 I/ |7 G! q2 O
& X/ Y0 |. i& Z" o* Q) k//////////////////////////////////1 o- k& a8 u3 w3 k6 e
reg[7:0] bias_set = 8'd8;1 m$ ~8 p! }' H) G; Z/ O- B5 y
wire[7:0] bias_set_t;1 [! m6 S# Z. C
output[7:0] bias_set_t;# n* ^' q1 ?/ x/ O9 H
1 ?$ Y! e$ Y* B- K/ T
assign bias_set_t = bias_set;+ N: I* ~' c% U$ t4 w2 k. K4 [

- R9 q/ M" @0 b; g/ y) y% K7 A0 D: m
reg[3:0] show_a;
7 @4 e1 m; }) l' M, Zoutput[3:0] show_a_t;
0 z8 m  a9 c: U4 Ewire[3:0] show_a_t;& ]/ ]# o& y9 [, ?
$ Q) m8 b; r& i
assign show_a_t = show_a;
: ~! o& F7 |& \//////////////////////////////////

; k' C3 w0 D/ R) Z' N/ w6 C6 |2 P1 T/ B7 V; Z
always@(k1 or k2 or k3 or k4)% p% i* |9 ^4 m- |+ J

1 E$ ]# U9 R  _) }% ~begin
# K, o- [* x. F( _     if(!rst)
$ C4 H$ i, S* c8 S  {7 w% j       begin
! d! R5 ?' J/ V9 a6 g5 j% R       show_a = 0;
' O9 u- u, b6 g$ y       bias_set = bias_set;2 {( [3 r0 V) ^" D; r
       end ( a' g( y, b' {! [7 k
     else if(k1 == k2)
% r8 w$ h4 O: Y         begin/ U1 X/ s. ~0 Q( o
               if(k3 == k4)
8 c3 h# \6 O, d) A2 @0 n                 show_a = 3;
5 ^* a1 C) t0 W" J6 T/ \               else if(k3 > k4 || k3 < k4)( M7 x; a4 T3 N8 `& E# E! D2 S. k7 ^
                 begin
5 Y( u( P, V+ m( Z* b0 w8 g                   show_a = 0;  K. \: S& Q" n& @
                   bias_set = bias_set - 1;
8 k9 p7 O/ A: k- s$ C                 end
0 @+ `& y/ e- L, n0 [9 g& }         end
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享分享 頂 踩 分享分享
2#
 樓主| 發表於 2009-6-2 18:14:50 | 顯示全部樓層
else if(k1 > k2)( T; y- F" T* }3 G( _; _* m9 [) a3 R* p
        begin  t5 e$ K4 w8 ?3 Y0 R: p
             if( k3 < k4 )  F; M: R6 p; Y; Q8 E
                begin! A, k5 L6 Y  o5 ?9 Z. J
                   show_a = 0;
6 c" b9 {) V5 U5 D  _* l, l                   bias_set = bias_set - 1;                           & `) f0 K& n! d* G) c
                end
! q+ M3 P- h" `$ g' [! w   
. j$ J& C- |4 ?& W+ ?0 {9 @             else if( k3 > k4 )
; h1 t& v% M8 k5 u: z                begin4 N( l9 f. k1 ]3 S1 h' h4 A) ]
                        if( k3 - k4 > k1 - k2 )
9 Z0 v! r5 d% c* x' t# ?# p                          begin4 J: B% R8 J: v( L  I- p
                                show_a = 0;, {3 _( m1 p5 `6 U( r0 J8 ~
                                bias_set = bias_set - 1;                             - z/ H: f- O% @+ c% E; Q8 \6 M
                          end 5 n& P! j$ p. {* ?
8 j8 X/ J9 C$ K' s6 M7 B9 ^1 B+ H
                        else if( k3 - k4 < k1 - k2 )
" n/ Q$ f- l) X3 O5 J1 W                          begin6 L: u" M# e$ i% Y$ p  p
                                show_a = 2;
0 C, N6 c+ \' _+ k. M& @0 ?                                bias_set = bias_set + 1;                             . p9 I$ o4 r  p/ \
                          end 8 H$ P0 U' ?) y6 |; v+ ]/ B
                        else if( k3 - k4 == k1 - k2 )
; X3 R0 F0 Z% S2 a( i6 w6 l                          begin, k4 l9 _9 T  R1 u; l. A
                                show_a = 1;* P$ y/ s9 i+ M7 a
                                bias_set = bias_set ;                             
  y2 ~( |5 @! M' x6 F                          end 7 J. X6 O5 m) t5 N+ g' x) u* G
                end                        
' Q1 e8 }  }. ?9 a% w2 a: I        end
% c# K( r8 s1 n+ P" ]9 a4 o2 V' G2 R
     else if(k2 > k1), J/ ], T5 ]- I- f8 x% u/ U
        begin* W6 H% V# M* O+ v
             if( k4 < k3 )6 ]& D: W2 H$ [/ f+ V6 b
                begin& J4 i- Z8 P5 \" E: z
                   show_a = 0;
( F* c$ }# z' c9 N" V                   bias_set = bias_set - 1;                           
. I& J6 T2 L0 |                end
3#
 樓主| 發表於 2009-6-2 18:15:04 | 顯示全部樓層
else if( k4 > k3 )
* d% B& e3 [+ j* b/ ?1 K1 t. h                begin5 O0 |2 E, s: g; B
                        if( k4 - k3 > k2 - k1 )6 q9 g8 i3 b1 Z9 h. m
                          begin/ n5 H; m4 u2 `( b% Z2 y1 U8 k
                                show_a = 2;
. Z9 S% X. @, v8 j# E1 i0 N( {! f$ m4 o                                bias_set = bias_set + 1;                             
4 r! t  q" U1 f, `: K( G2 F: k                          end : }/ A: G1 c. B5 Y  z" P8 m7 n  W, ^
& g3 R  ?2 n$ e6 x
                        if( k4 - k3 < k2 - k1 )7 |% A/ ]& B; f; E/ K
                          begin
! V/ I8 J3 C/ ]3 ]& U                                show_a = 0;
8 ^- R" x: _; ~; o                                bias_set = bias_set - 1;                             
: X; c# p' L. \" I                          end , U' F2 m( v# s

8 b  r: ?- d' q$ [                        else if( k4 - k3 == k2 - k1 )
: Y5 [: z# ?) c/ m7 h# C& W. ~7 z                          begin
( V& X( u) R5 I+ y  ^2 D                                show_a = 1;
/ c7 I4 @4 a0 {+ X1 K                                bias_set = bias_set ;                               q! J9 r% p$ b; _* v
                          end - K- A- m& x9 H2 Y' }' U4 U
                end                         : g/ R' c; A# O) u
        end
' J# I; d2 C3 O  O
/ _9 A' |  W3 Zend+ L- M9 D1 H; J, ~4 O7 z# m$ k

& N6 b) Y2 k8 R, s% C5 Xendmodule
4#
 樓主| 發表於 2009-6-2 18:16:03 | 顯示全部樓層
宣告部分用黃色太失敗了
8 _4 u; @" J. k- L% p& h9 V- J
我重貼原文黃色部分
) W: t* _! j$ g" H4 v6 h7 p0 s' k3 i+ h( A- h4 X+ b
//////////////////////////////////
( {+ ]5 t: D0 E8 c# Q6 hreg[7:0] bias_set = 8'd8;
% c% ^9 l6 ?5 \/ Swire[7:0] bias_set_t;0 G" O# D# d+ ^" y" j' Z- `3 k
output[7:0] bias_set_t;
8 }; c! n% {8 a% H4 }# J2 _
: B5 A; d+ x& D& s& S% s  kassign bias_set_t = bias_set;
0 u; v2 }' E# t% ]
  B$ W. Q! i3 e- s% P2 ]/ g6 H" n2 W  {
7 A  C3 m, D6 M3 W  K6 Freg[3:0] show_a;& C( A8 v1 a& O9 a
output[3:0] show_a_t;8 N; X  O* T/ x; t  V9 l
wire[3:0] show_a_t;9 F) a; n$ ^# Z" A8 A, x5 G

" _1 m$ o8 _. H: Hassign show_a_t = show_a;
: A1 {  I  u1 T5 x3 ^" |; x; Z//////////////////////////////////
5#
 樓主| 發表於 2009-6-2 22:56:34 | 顯示全部樓層
感謝樓上...orz
0 p, N$ m* f! V9 X' [8 E3 m- j
& U% Y: x/ ]' ]
1 O, i1 w' U, o9 m+ [$ K* {真的OK了~
) p- l6 L1 ?# F+ ^9 T9 X
5 e; [5 N. P4 D" `1 S' D! R我還需要多多加強~!!!
您需要登錄後才可以回帖 登錄 | 申請會員

本版積分規則

首頁|手機版|Chip123 科技應用創新平台 |新契機國際商機整合股份有限公司

GMT+8, 2024-5-14 09:19 AM , Processed in 0.113006 second(s), 17 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回復 返回頂部 返回列表