Chip123 科技應用創新平台

 找回密碼
 申請會員

QQ登錄

只需一步,快速開始

Login

用FB帳號登入

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

[問題求助] 用VHDL把一個ALU改成三態的MUX,想請教三態的function是如何描述?

[複製鏈接]
跳轉到指定樓層
1#
發表於 2007-9-11 22:39:00 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
小弟最近要用VHDL把一個ALU改成三態的MUX,但不知道三態的function是如何描述。# z. z% F; z7 w
因此可否麻煩版眾提供個範例,或是提點一下三態的描述方式。
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享分享 頂 踩 分享分享
2#
 樓主| 發表於 2007-9-13 17:14:29 | 只看該作者

回復 #1 day766 的帖子

Alu的 input為rum_A[15,0], rum_B[15,0], ALUs_dp[1,0], jpsign
: G: q4 ?1 p) y7 U7 r     output為ALUz, ALUout[15,0]) p* g% n4 y! m6 _) E

) U* ?# a1 @4 D  g! ^& D6 N$ zfunction為
/ f6 W9 r+ z/ {! B
2 n/ D& [7 H) j; C% t% c& Q3 M00  A  →Res6 g" o$ \% s/ b: v8 O7 ^
01  B  →Res5 x4 v& y- S# ^
10  A+B→Res' b3 \) f* L. a3 q3 c# @
11  A-B→Res
- w/ G, a1 e. ~1 c6 Q& v' B- A9 `0 f' ^
想要讓一些訊號(00,01)不經過ALU,等於是用三態的方式處理。% s) C+ r9 w5 {8 k5 K
6 i( @/ ?/ ~% {* _" I9 q/ X' s$ Z4 l
我試寫為! x# E' F  X3 D

0 L  `, e' ?6 u3 yif (ALUs_dp[1])=1
/ z2 b4 j/ q( C; sthen& N( v' _) K2 T
    begin
8 C/ f) Q, {# }8 C% Y* ~. N; J        if ALUs_dp[0]==1' X3 |/ g! J; r* Q/ J- x! X
        then
; D* p8 q" Z& v# P% J            Res <= A+B6 O% O& ?: @0 v5 j& i& Y$ s
        else* l4 `8 W' y; E) Q6 W) E
            Res <= A-B
- p4 a6 M6 a/ b3 i6 R, Q    end
" L6 }0 W0 k4 t/ v  belse
8 x! Q1 S% N6 G" i* Z    begin4 J6 D# s3 _! B
        if ALUs_dp[0]==1
! t, V: R% {; P: I1 C        then$ g* `+ X; V% T# E7 B
            Res <= A) l. M9 ]3 L. u+ H
        else1 A6 Z" _1 V9 n- d; b1 T" t- C
            Res <= B8 @+ g" ?$ o; A9 P: y
    end
# A" e, ^. f5 Q9 e( P3 [! C" Yend/ |# B$ ]; a/ M1 u

8 ?$ |& H7 ]3 L. P只是不知道這樣對不對?或是還有其他沒想到的地方嗎?! v: ~; r; Q3 @) X4 ?
麻煩板上高人了
3#
發表於 2007-9-19 20:12:11 | 只看該作者
不建議在CODE內放三態電路" d# q. d+ u, e% P/ \" P2 D
/ x) W4 K* R7 B% c. a, |
大部分的case都可以用mux解決掉吧
您需要登錄後才可以回帖 登錄 | 申請會員

本版積分規則

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

GMT+8, 2025-2-23 01:20 AM , Processed in 0.155009 second(s), 17 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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