|
2#
樓主 |
發表於 2007-9-13 17:14:29
|
只看該作者
回復 #1 day766 的帖子
Alu的 input為rum_A[15,0], rum_B[15,0], ALUs_dp[1,0], jpsign
/ @! [0 h# H+ W* p2 t6 K output為ALUz, ALUout[15,0]% C4 ~0 P5 l, F1 K' j
+ o: K7 t3 Y6 |( I1 O! D
function為
4 M1 I' [- H/ O1 A5 b- d- j3 n" ]/ F
00 A →Res
3 `" Z6 s6 D3 n, h6 E4 X7 S' F01 B →Res2 j9 C0 J @: p n0 N/ u
10 A+B→Res
; j4 d: G! R! Q+ ]4 X8 Y c% I8 A11 A-B→Res
6 R6 _6 O# o/ @; y
5 Y* R3 D' H* D8 L; w: N9 {想要讓一些訊號(00,01)不經過ALU,等於是用三態的方式處理。
, w: ~8 L$ o$ C5 S
; q; x$ |7 F- m% y$ u我試寫為
; X" @3 g- ]' c$ p8 C! h2 i- r0 G4 o+ D! Z3 o5 \' l9 n
if (ALUs_dp[1])=12 ^ }) X: n: R& p* ^) F' c
then
; a$ o; P, d N3 c% ` begin! b& M- ?1 U0 S: i, O
if ALUs_dp[0]==13 c8 _) J( S) P
then0 r9 R, b2 n1 {' q- U
Res <= A+B
! O- g6 w, F$ E9 H3 S, Q4 c) B4 \ else
+ J' t% b1 W- x0 L5 E& l+ U Res <= A-B
* E$ p5 n0 j9 w R end& t+ O8 u, p0 _) t0 f
else$ `# s& ~- L$ @" b8 h" w' F( I. M, p0 H
begin7 Q: u! E8 \; N1 l
if ALUs_dp[0]==1
" ?7 e, F, P( c/ x) ^. d then- u& z+ v" L/ W4 i8 F/ D
Res <= A
o) @4 o U; R1 Z: ]9 c else& k b, T4 P4 g- I2 _8 [5 h
Res <= B
3 ^2 @8 u: M3 v% P' v% Z9 p end* k1 y# H" _% O( Z+ k
end, s. Y5 g$ M4 o9 }, C0 m
( }5 `! {1 v) A% n) c
只是不知道這樣對不對?或是還有其他沒想到的地方嗎?
* J# |8 `' ~- _1 k8 U麻煩板上高人了 |
|