找回密码
 注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

巢课
电巢直播8月计划
查看: 1000|回复: 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,具体关系见下表。不考虑计算结果的上溢和下溢。2 l7 ~7 N6 \) v# F7 ]
Select信号                      函数的输出  U, F6 x$ ~' U6 \- ?+ z2 o
3’b000                                                   a' P! f; R2 ~" U2 h' ~/ Y8 g
3’b001                                                 a+b+ `/ g7 k3 y% P8 [) i
3’b010                                                  a-b6 ]! x4 M6 W: a3 U/ }
3’b011                                                  a/b
" V& D  K- s4 j8 z6 E, h: O$ W* @4 D3’b100                                             a%b(余数)6 b4 `7 ~+ ^: K6 C* H% G% V
3’b101                                                 a<<1
* D7 C! |' L% ^3 D) d" l% Q3’b110                                                 a>>1
5 z# g* C* q" J0 H! n3 W+ _( I7 |! P3’b111                                                  a>b9 a& @1 V/ K( s

" v% X/ S& n! r% }" M! e以下是我的代码:
1 L& g2 L* n- c3 Z8 w$ A5 H; Imodule alu8(a,b,select,out);# l. p( H1 [! Q( p7 W8 `% Z
input[3:0]a,b;
) Z+ `2 E( \7 ?" q& h1 zinput[2:0]select;, L4 h2 [& i" U( N
output[4:0]out;" V' f; B) V) j- S2 D! V
reg[4:0]out;
" X% t6 r, s( i7 Salways@(select[2:0] or a or b): f, b) B" m! f, W+ i
case(sel)! l1 o- [7 q& k# w7 r  D9 ]
3'b000ut=a;% ~# f2 f# |" ?
3'b001ut=a+b;
- H+ |! \: ^# _9 M3'b010ut=a-b;# l# `9 n% z( c6 H2 E# @! p
3'b011:out=a/b;
( S  c/ F, N6 l) H2 x' @  G, W3'b100:out=a%b;
+ U  k# ~- h7 y9 o! f  p3'b101:out=a<<1;0 Y( B; ^8 Y! c# |0 ]
3'b110:out=a>>1;6 K* x( |" |! j5 J5 {  e) W
3'b111:out=a>b;
4 a0 o  t! m8 K  g. Wdefaultdisplay("Invalid control signals!");
" M( K; `  f5 b( j. Eendcase6 k( i& v' X9 g  {' o) j
endmodule
分享到:  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 . k/ D, R7 U1 E# Q5 J1 J8 A7 p
到FPGA各大公司的主页上都有关于开发板介绍的,不过官网上比较贵,可以到taobao上看看

- O$ T7 j: [7 w1 ^8 T% Q我那个程序把非阻塞付直改为阻塞付直应该可以再板子上跑的

15

主题

81

帖子

415

积分

三级会员(30)

Rank: 3Rank: 3Rank: 3

积分
415
8#
发表于 2012-8-20 16:49 | 只看该作者
blue822180 发表于 2012-8-20 16:31
. A: l' n( ~5 i" Y开发板哪里买呀,什么型号?多少钱

4 m9 v8 b  r1 q4 d到FPGA各大公司的主页上都有关于开发板介绍的,不过官网上比较贵,可以到taobao上看看

36

主题

276

帖子

1957

积分

四级会员(40)

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

积分
1957
7#
发表于 2012-8-20 16:31 | 只看该作者
逸风 发表于 2012-8-20 12:02
# n; @, q! E1 F. O9 U- e是的,不能上板子的,仿真倒是可以。我觉得学FPGA时需要个板子的,更实际,建议买个开发板吧,也贵不了哪 ...

3 r. z2 r. _, ?( S% b开发板哪里买呀,什么型号?多少钱

15

主题

81

帖子

415

积分

三级会员(30)

Rank: 3Rank: 3Rank: 3

积分
415
6#
发表于 2012-8-20 12:02 | 只看该作者
blue822180 发表于 2012-8-20 08:25
$ S; J0 H0 O3 {; E' C' _' T7 j兄弟我没有板子,我只能做到仿真没问题,至于能不能上班子你试试吧
* [9 M9 a& ~8 u3 r/ ?5 x
是的,不能上板子的,仿真倒是可以。我觉得学FPGA时需要个板子的,更实际,建议买个开发板吧,也贵不了哪去,还能学到东西

36

主题

276

帖子

1957

积分

四级会员(40)

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

积分
1957
5#
发表于 2012-8-20 08:25 | 只看该作者
逸风 发表于 2012-8-17 22:09 ) R' S# O* @1 q
这个程序不能编译下载到板子里吧??

4 @, I  u: D' p& j兄弟我没有板子,我只能做到仿真没问题,至于能不能上班子你试试吧

15

主题

81

帖子

415

积分

三级会员(30)

Rank: 3Rank: 3Rank: 3

积分
415
4#
发表于 2012-8-17 22:09 | 只看该作者
blue822180 发表于 2012-8-13 15:54 ( C  F4 a1 c# r7 j' y1 W, _: h
给你改了,我编译已经通过,没有错误有警告
! x3 a% b0 w# X% @5 i8 y! c6 r! D
这个程序不能编译下载到板子里吧??

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);  G! v6 ]7 \8 j8 o& ~
input[3:2]a,b,rst;8 h: g1 |9 F7 k* N
input[2:0]select;& ^6 P  T/ c$ P0 s
output[4:0]out;
$ {2 v2 [! U$ t# _, ?  | reg[4:0]out;
/ O( N6 i  O: A; ^ parameter 8 l! @  S1 @8 S! X
idle=3'b000,
2 g( P  I! X' b s1=3'b001,/ I8 E* n  y5 N- J+ P- @
s2=3'b010,
8 l3 S" {4 m  e  J5 C8 E s3=3'b011,7 V5 o$ h% w: X+ H4 ^# x8 }
s4=3'b100,
7 V9 ~" B9 e; C) b2 j4 i1 f& c s5=3'b101,
/ [+ A1 q& _* y/ s4 T. ~ s6=3'b110,
2 h* h9 _% X+ v, q! K" ^ s7=3'b111;; n& ^& T; I& ?9 S; n+ a
" F, c* K; R# W
always@( a or b)
. a- X  p8 Z( I6 ~# P if(rst)
3 r7 U" {% ?- S! s6 c   out<=00000;
, p, q3 Q4 W4 H; ]( j/ ~6 B3 o   else
8 e2 G- Y$ `" Z* {$ g5 V0 w! ]" _   begin8 q( o, @0 n1 f* c
   case(select)
1 v" T5 ~- L3 b* I: }; ? idle:begin
+ F/ e) Q, r7 H( ~) E% j' r   out<=a;
" u! b+ P- c" R% `& l    end' n4 U% u5 R/ m8 P3 l9 @0 H, r
s1:begin: q1 d3 }% J$ B# a5 R( z1 y. V+ V6 }
     out<=a+b;
2 n* u" _5 p+ o& ^9 n3 r5 |      end0 u/ N" q9 k) F* D. h* t
s2:begin
# v$ H* U# w+ n+ D' i) h5 ?* t$ \    out=a-b;: ?( x3 [: ~  T: x5 w3 r
    end9 P& [* Q1 J1 W& [. R
s3:begin! i% f+ A" D+ J, o+ O) M
    out=a/b;
( b% s4 h3 L* Q2 Z: y/ n) w    end5 F: K) h4 k5 t, m4 b
s4: begin+ K/ [0 m, @  A/ q0 t
   out=a%b;
/ D$ k$ i! H$ P2 I; {+ M    end4 z8 `! T) T: A. w# M2 O
s5:begin) a  w5 _+ [- I
    out=a<<1;: H+ \  W' ], c9 s: u
    end- I5 O9 q2 A9 z- c: h4 J
s6:begin
' I) N9 J6 M' G+ T% G! Y1 Oout=a>>1;
4 i: e: D; c' H6 Lend- {' ^# o3 ~5 n' x% K* A  `( Y6 g) d
s7:begin
2 E5 L% K, `4 p' b  out=a>b;
  D6 B  ?6 g+ u6 f: y4 b& j  end' Q+ k& I3 K2 {
default' g7 p" i, a# n: v6 U9 u5 L  Q
$display( "Invalid control signals!");
3 S6 T! |2 d' p endcase" o' \) W7 r- a( ~( \6 x
end
: A0 Q; D; k; F8 I endmodule
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

巢课

技术风云榜

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

GMT+8, 2025-2-19 07:00 , Processed in 0.061403 second(s), 32 queries , Gzip On.

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

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

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