找回密码
 注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

巢课
电巢直播8月计划
查看: 1002|回复: 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,具体关系见下表。不考虑计算结果的上溢和下溢。
' C; G  ~9 A: M/ kSelect信号                      函数的输出: U6 Q9 N0 N4 t! f5 d
3’b000                                                   a
1 z- G" m, ^0 y) W9 z! u" \* `; `, D3’b001                                                 a+b- k6 {6 A; t4 `7 H7 E  n$ j& u
3’b010                                                  a-b3 t% ^5 T& b6 V! T# d
3’b011                                                  a/b% L3 o: s  m- ]. Q, a  G$ C& V: X
3’b100                                             a%b(余数)
# v" _! Y" d6 T  {: L3’b101                                                 a<<1
; a, U9 Z0 j, s% L% }( p" v# u4 d, V3’b110                                                 a>>1
- n+ S1 f9 V: B* P* W: y3’b111                                                  a>b
( W! l* v  B; N) t# C2 t) R! C5 h5 w* V$ L" g& W
以下是我的代码:$ |' }8 b0 a- X4 w8 _7 S2 ^
module alu8(a,b,select,out);
; p% e2 ?7 t4 o) g# Uinput[3:0]a,b;
0 f8 {: e* Q$ d2 ^1 |- ~) y+ dinput[2:0]select;
( P- l2 }, }. n0 h* B! boutput[4:0]out;" U  w& B4 K! e) h2 V
reg[4:0]out;# ], i6 }$ n* h7 [1 ^
always@(select[2:0] or a or b)
* M9 P& N$ \1 a7 B9 B& \/ Y1 ~, Icase(sel)1 W* ~7 Y) u' b* a6 T
3'b000ut=a;! p/ r" I. d$ u: L6 D3 X- g
3'b001ut=a+b;
) W! S# y; E( a. T+ j3'b010ut=a-b;
* T. A' z" @: b: A( _( `' @3'b011:out=a/b;
- K; q) m" s! ?. L8 r. J" Q/ J3'b100:out=a%b;9 }0 [7 [$ c$ W* x
3'b101:out=a<<1;
2 J7 I+ A3 X  m8 k2 y! ~1 r* ^+ S3'b110:out=a>>1;4 a8 L7 L# X, C- @- r- s8 |- c
3'b111:out=a>b;
3 B& P& ^  ^2 W: x& ]defaultdisplay("Invalid control signals!");
2 ]: I# G; E. b3 K. T5 ~2 x* ?endcase* s# n7 r9 g7 [1 K- W8 e: [
endmodule
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
收藏收藏 支持!支持! 反对!反对!

36

主题

276

帖子

1957

积分

四级会员(40)

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

积分
1957
2#
发表于 2012-8-13 15:53 | 只看该作者
module alu8(a,b,select,out,rst);
: z1 Q# p- d5 }! E input[3:2]a,b,rst;
' I6 R/ J% N0 O* ?: i" x% j input[2:0]select;7 H5 X: o& }& @/ W. t, S: x! D4 a
output[4:0]out;: x! m  g/ s; i# [, c5 q
reg[4:0]out;
; j& N& c' T# N+ _9 ~' R parameter 6 M9 i' l& }# E% O; |1 H
idle=3'b000,; R2 {: I6 H/ p
s1=3'b001,- v- [) _/ g* ~. u7 F$ d; T# V3 L
s2=3'b010,$ J# C2 R8 f6 ^' b+ g
s3=3'b011,
6 x, F! B3 b! f/ ]' Z+ z s4=3'b100,
8 O9 J% {' Z' ^2 v- c/ g1 \' x6 h( _ s5=3'b101,  ]/ I; ^* F  L) }7 ]
s6=3'b110,, T. `; E8 F% z) y" k
s7=3'b111;
( `; r$ y+ F1 Y% d: H2 w2 A5 p
( r! P- ~. N) t$ { always@( a or b)
! R3 k( I* u3 [% V! v6 | if(rst)% h' K- W' ]9 m
   out<=00000;  \2 \& j; v4 G$ E. f1 `" I* O
   else
# K) i9 C4 ^8 I6 E5 Z9 I+ j   begin
3 q" C' W& F: v  x  z  D6 i   case(select)
, H8 ~; ?( g! B" ^  O" @% g idle:begin
% G2 s9 w, G2 E' V2 ^; x  S   out<=a;+ l. _# M8 {# `/ [0 o! N0 R( ?
    end
8 f$ x3 w1 @) ]* ?6 A s1:begin
% g+ Z1 o' q( F$ C     out<=a+b;
0 j3 |" @: h6 S9 q      end
+ h: l1 }8 k/ n- U s2:begin! C4 K: \7 {  S& e& Y) Z
    out=a-b;
% L( ?4 {. o% ]6 J    end) R% m, @# R- L% i) o
s3:begin
3 q% e" ?) H, X# D8 O6 A1 t    out=a/b;
% f! y* B; G/ C! n3 y. c1 Z    end: V! J- ?8 \' T: F  m
s4: begin
7 A+ n5 w0 J7 X' I/ C3 g5 G& d   out=a%b;
: v- E7 }, y6 `' O" o4 z5 f    end
) p4 I  [7 U' U s5:begin
9 F& b3 p8 D" w' Y    out=a<<1;' k6 V" e5 Y! p* O: s' d
    end0 p- g- g! {7 q' Z1 h/ |
s6:begin
" p, P# k9 k$ t% O7 R4 Vout=a>>1;1 g) ~$ Y% }8 z, ~& ^1 N  A9 A9 o
end3 u" T3 {, w% o' O5 }( s
s7:begin
% B! B1 A2 I+ R; \- [  out=a>b;: V# X& L6 {; `5 G3 X( |
  end
9 r7 ]3 i  k. x/ G( s8 L5 \6 X default
7 a: e% }. F4 g $display( "Invalid control signals!");! n; C7 D2 Z. t  C3 h- E
endcase( M2 ~$ D# b9 V; W5 B
end
# S, }/ P# h: q( a2 X" s endmodule

36

主题

276

帖子

1957

积分

四级会员(40)

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

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

15

主题

81

帖子

415

积分

三级会员(30)

Rank: 3Rank: 3Rank: 3

积分
415
4#
发表于 2012-8-17 22:09 | 只看该作者
blue822180 发表于 2012-8-13 15:54
' u# w6 t2 @/ G7 s# o* ]给你改了,我编译已经通过,没有错误有警告
4 ~+ f7 q- O: [  V! |0 {  f
这个程序不能编译下载到板子里吧??

36

主题

276

帖子

1957

积分

四级会员(40)

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

积分
1957
5#
发表于 2012-8-20 08:25 | 只看该作者
逸风 发表于 2012-8-17 22:09
1 Y: Y9 j& h4 F( ]5 D, J4 G这个程序不能编译下载到板子里吧??

/ S4 x7 G# p9 I9 |. n' K兄弟我没有板子,我只能做到仿真没问题,至于能不能上班子你试试吧

15

主题

81

帖子

415

积分

三级会员(30)

Rank: 3Rank: 3Rank: 3

积分
415
6#
发表于 2012-8-20 12:02 | 只看该作者
blue822180 发表于 2012-8-20 08:25
1 R- c; a6 s) H# @3 K  |: d0 i兄弟我没有板子,我只能做到仿真没问题,至于能不能上班子你试试吧

/ h& @1 u3 R* F& l5 D- z1 S* \0 `是的,不能上板子的,仿真倒是可以。我觉得学FPGA时需要个板子的,更实际,建议买个开发板吧,也贵不了哪去,还能学到东西

36

主题

276

帖子

1957

积分

四级会员(40)

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

积分
1957
7#
发表于 2012-8-20 16:31 | 只看该作者
逸风 发表于 2012-8-20 12:02
& l" ~5 v, e- H" v. Q是的,不能上板子的,仿真倒是可以。我觉得学FPGA时需要个板子的,更实际,建议买个开发板吧,也贵不了哪 ...
5 K$ ^; e$ f9 i- w3 A" o
开发板哪里买呀,什么型号?多少钱

15

主题

81

帖子

415

积分

三级会员(30)

Rank: 3Rank: 3Rank: 3

积分
415
8#
发表于 2012-8-20 16:49 | 只看该作者
blue822180 发表于 2012-8-20 16:31
8 y+ [3 [( R& Y& J* I. X4 @9 [开发板哪里买呀,什么型号?多少钱
0 v5 p" ?+ d. [" T3 Z( [: `5 R6 r/ e
到FPGA各大公司的主页上都有关于开发板介绍的,不过官网上比较贵,可以到taobao上看看

36

主题

276

帖子

1957

积分

四级会员(40)

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

积分
1957
9#
发表于 2012-8-21 08:42 | 只看该作者
逸风 发表于 2012-8-20 16:49 . [6 E# a' g' [; R: p
到FPGA各大公司的主页上都有关于开发板介绍的,不过官网上比较贵,可以到taobao上看看

# {$ e1 i4 O# E/ w+ A8 {2 A我那个程序把非阻塞付直改为阻塞付直应该可以再板子上跑的
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

巢课

技术风云榜

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

GMT+8, 2025-4-17 19:20 , Processed in 0.060840 second(s), 31 queries , Gzip On.

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

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

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