找回密码
 注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

巢课
电巢直播8月计划
查看: 994|回复: 8
打印 上一主题 下一主题

高手帮忙看看我的代码有什么问题

[复制链接]

6

主题

18

帖子

325

积分

三级会员(30)

Rank: 3Rank: 3Rank: 3

积分
325
跳转到指定楼层
1#
发表于 2012-1-17 01:36 | 只看该作者 回帖奖励 |正序浏览 |阅读模式

EDA365欢迎您!

您需要 登录 才可以下载或查看,没有帐号?注册

x
设计一个实现8位ALU功能的函数,其输入为两个4位操作数变量a和b,以及一个3位的选择信号select,输出为5位变量out,具体关系见下表。不考虑计算结果的上溢和下溢。! z, I5 [* g) m+ B5 E" |( O
Select信号                      函数的输出$ _' F& x, u. b7 y1 x4 L
3’b000                                                   a
' W  }! h5 z2 `) k3’b001                                                 a+b/ K$ b# L% W; ^& U- [* [
3’b010                                                  a-b
9 V# x7 R2 a8 K7 ?1 E3’b011                                                  a/b1 b4 h* j' ~& S! m* g
3’b100                                             a%b(余数)
4 s: s/ R' @4 ?4 S3’b101                                                 a<<11 a) j1 w. c5 ^5 F( F
3’b110                                                 a>>1- ]$ P+ f" t8 C
3’b111                                                  a>b
4 R; C# u, I  x0 P4 c% G
1 i% N: M+ s( L. p! u以下是我的代码:
1 V, n% w* y4 E, G- I; x+ S- Rmodule alu8(a,b,select,out);7 _% r9 m* p: W0 y& u3 P
input[3:0]a,b;
4 _) a3 Y* K+ D7 Tinput[2:0]select;+ S. q, p5 `& ~% M3 G! Z2 }
output[4:0]out;; I  E/ e2 D2 T( `- y- V2 G
reg[4:0]out;
) q9 Q. s; o5 H4 a5 W2 c3 jalways@(select[2:0] or a or b)
# \1 ?$ c% m; O4 d$ Lcase(sel)0 p" }8 N, E7 ~0 B- Y! M
3'b000ut=a;
% [) W; {& s* q! a& k0 k  O+ v! _3'b001ut=a+b;
( ~( t3 j; h& e3'b010ut=a-b;
; r4 V9 [) b) t& Z" v2 p  D- J3'b011:out=a/b;
4 c2 s; u. q4 _+ d. t- ?9 I3'b100:out=a%b;
4 ~0 R3 G) u: q9 O3'b101:out=a<<1;# |. A4 b' e; N: Q; X/ F- j
3'b110:out=a>>1;
. N( n: a1 a  E8 m% A: \9 W: d3'b111:out=a>b;- _, H7 z% H- M! ]8 d5 ]- s
defaultdisplay("Invalid control signals!");
) ~* s% `% d9 h* I* C" x* ]endcase
$ m  P9 K5 K( A6 t8 Hendmodule
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
收藏收藏 支持!支持! 反对!反对!

36

主题

276

帖子

1957

积分

四级会员(40)

Rank: 4Rank: 4Rank: 4Rank: 4

积分
1957
9#
发表于 2012-8-21 08:42 | 只看该作者
逸风 发表于 2012-8-20 16:49
+ z2 A" _& Q2 B8 R! m到FPGA各大公司的主页上都有关于开发板介绍的,不过官网上比较贵,可以到taobao上看看
7 C8 I( ]4 K% R! G+ p4 t' J" u
我那个程序把非阻塞付直改为阻塞付直应该可以再板子上跑的

15

主题

81

帖子

415

积分

三级会员(30)

Rank: 3Rank: 3Rank: 3

积分
415
8#
发表于 2012-8-20 16:49 | 只看该作者
blue822180 发表于 2012-8-20 16:31 % k1 L' z* D' V8 U& ?
开发板哪里买呀,什么型号?多少钱
& S# L% p, r5 r' V) {- S4 o
到FPGA各大公司的主页上都有关于开发板介绍的,不过官网上比较贵,可以到taobao上看看

36

主题

276

帖子

1957

积分

四级会员(40)

Rank: 4Rank: 4Rank: 4Rank: 4

积分
1957
7#
发表于 2012-8-20 16:31 | 只看该作者
逸风 发表于 2012-8-20 12:02 3 N+ l" \/ S- O) t9 T
是的,不能上板子的,仿真倒是可以。我觉得学FPGA时需要个板子的,更实际,建议买个开发板吧,也贵不了哪 ...
7 w# V2 c$ y8 A* _/ L5 \0 g
开发板哪里买呀,什么型号?多少钱

15

主题

81

帖子

415

积分

三级会员(30)

Rank: 3Rank: 3Rank: 3

积分
415
6#
发表于 2012-8-20 12:02 | 只看该作者
blue822180 发表于 2012-8-20 08:25
5 j; l/ {' T% r, D: g兄弟我没有板子,我只能做到仿真没问题,至于能不能上班子你试试吧

+ m- b1 j  _# `' V# n是的,不能上板子的,仿真倒是可以。我觉得学FPGA时需要个板子的,更实际,建议买个开发板吧,也贵不了哪去,还能学到东西

36

主题

276

帖子

1957

积分

四级会员(40)

Rank: 4Rank: 4Rank: 4Rank: 4

积分
1957
5#
发表于 2012-8-20 08:25 | 只看该作者
逸风 发表于 2012-8-17 22:09 ! b2 a  n4 L% u# b6 G3 T
这个程序不能编译下载到板子里吧??
" l/ e5 L2 b0 U8 k) h0 f# e8 o3 s
兄弟我没有板子,我只能做到仿真没问题,至于能不能上班子你试试吧

15

主题

81

帖子

415

积分

三级会员(30)

Rank: 3Rank: 3Rank: 3

积分
415
4#
发表于 2012-8-17 22:09 | 只看该作者
blue822180 发表于 2012-8-13 15:54 ; }* G# p6 ~1 B8 t  M! P
给你改了,我编译已经通过,没有错误有警告
/ z$ R2 I5 O% K0 l: `
这个程序不能编译下载到板子里吧??

36

主题

276

帖子

1957

积分

四级会员(40)

Rank: 4Rank: 4Rank: 4Rank: 4

积分
1957
3#
发表于 2012-8-13 15:54 | 只看该作者
给你改了,我编译已经通过,没有错误有警告

36

主题

276

帖子

1957

积分

四级会员(40)

Rank: 4Rank: 4Rank: 4Rank: 4

积分
1957
2#
发表于 2012-8-13 15:53 | 只看该作者
module alu8(a,b,select,out,rst);, k' h+ Z, |& o2 I$ V
input[3:2]a,b,rst;! }& @$ Q! _! ~" v* |
input[2:0]select;
( l" p) V" ^1 b* l6 Q output[4:0]out;4 U7 ?5 M5 V& ?5 o! y/ c, y
reg[4:0]out;9 v0 U( x1 J  J# r& g4 D6 U
parameter
: ]9 j, x* V% {6 \, e, O idle=3'b000,
  E. w- \' p8 L& j4 \2 U s1=3'b001,
4 i/ a# \4 K5 N s2=3'b010,
0 W# k( m4 V% ?# |; a1 j' L5 B s3=3'b011,
# r8 h6 @: h4 t' g s4=3'b100,
- C. P% t9 Z2 w  B! W. |. T s5=3'b101,7 K) p! p( z0 z
s6=3'b110,2 N; k/ V- s5 b4 M! f
s7=3'b111;' ^, b2 X! z4 H$ @% ~0 R: Z

! W7 r+ ~) {; {( W8 [! q: E# Q always@( a or b)
/ z( J- u+ W  x, Q if(rst). h- i4 f" ?( O
   out<=00000;) y# h; |. j% q4 d6 s
   else) _% H( S' L2 E. c, |+ [1 l
   begin
" {" J" R* ^, N" v# s& F; {, h   case(select)
3 I8 }: u2 w  v/ P- o+ N idle:begin1 _* L- C9 u5 P9 N. m6 Q+ Q
   out<=a;: B# `/ O' \% D% P
    end8 f2 W& w% s2 `. Z4 y6 q  C, ~
s1:begin8 m" A" K2 Y0 d2 T: U7 ~
     out<=a+b;
7 K0 R$ k& {0 b1 l. N      end* V6 [' l; K- `/ S7 f# e, K1 v  w
s2:begin
9 A# n2 b' @+ l5 o6 l    out=a-b;
6 x7 h0 z/ D" k  c. X! @    end
) k, ~0 N/ V9 i" |s3:begin/ F) g  U& _$ X% i
    out=a/b;: Z* {# m( M4 J
    end
# W0 E' L# L+ F+ ?7 gs4: begin
. u5 R. W) W, Z   out=a%b;5 ~' x( m% q. H! N
    end
. @) y' P) c' T s5:begin! l+ X( T3 `* E4 H* W8 [7 X
    out=a<<1;0 c  e2 o* t2 E2 z. k% ?; q, o
    end
5 m( _& w7 ^1 A3 k* es6:begin
( m. m4 K, K) U1 p2 o; k( Wout=a>>1;
4 U$ s: L( L  @& Z( l% Y# @4 n" oend
! Z7 E6 ?* O8 w2 f) I2 _+ rs7:begin
4 D3 l/ I. _7 w5 C/ J$ q  out=a>b;
+ K  X4 M$ ]: B# ~/ n3 G# C  end
" j- i, R& R+ L5 B! K4 P default$ f+ o; X4 _7 C% D- J
$display( "Invalid control signals!");
6 ?4 ^1 ?( Y! ]$ x9 _" Y  E endcase
( {# Q! D; E& F9 a; y end8 X  {+ Y( W1 x7 Z/ @4 _4 O( o$ d
endmodule
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

巢课

技术风云榜

关于我们|手机版|EDA365 ( 粤ICP备18020198号 )

GMT+8, 2025-2-19 06:13 , Processed in 0.057618 second(s), 32 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表