|
module sh(a,division,out);& Q! Q, U, S3 x* S
, X* Z0 j/ n. t5 v; o. j5 ?input [7:0] a;$ l8 O# Z2 [: E3 U" A
input division;
h7 U3 ~& N P/ z2 i" ]output [10:0] out;
" t8 G$ ?# k5 u* ?: m) s) H& T/ @reg [10:0] out;; N& U4 K! X8 X! K5 t5 Q+ m
wire [4:0] div_8_out; ?9 Q. a' u1 a
wire [10:0] mult_8_out ;) ~4 l. s, B5 |1 @( ?+ z
( _6 T; D5 D1 p7 d- H; E9 wassign div_8_out = a>>4'b0011;
+ D/ O+ ?! z$ W0 _! v$ x1 P$ }' ?assign mult_8_out = a<<4'b0011;
: ?- N$ A7 s: h( r, H9 N/ D1 x& s1 _, ^0 _3 a) S# s) R# `
always@(*)% H' a' s3 D' ?* s/ n( A1 r, i- U
begin
2 u$ {+ L( G7 }$ U7 G8 c8 B% D4 Zif(division)- J+ G6 D; A: h2 t5 X4 X9 t
begin
$ `3 a9 c% g \ out ={6'b0,div_8_out};
4 }; U$ {7 J7 H' j1 @5 O end
8 r: M( C$ h* Q7 Relse
6 A0 C4 ?4 |7 J8 Z& Z& v begin
- f# M0 L& {! v out =mult_8_out ;+ y9 j9 d2 \6 Q0 Q% Z5 N" S7 \/ V
end
# B9 K& m0 n R* Fend. z/ a+ I7 B" R5 h/ g/ _
' d v% R0 D/ A% Y/ l( S9 B
endmodule7 N# T V7 v+ ^, _. Y, |, }" M
& O8 X8 k1 ^' M1 a8 g& x
[ 本帖最後由 masonchung 於 2008-12-22 02:22 PM 編輯 ] |
|