找回密码
 注册
关于网站域名变更的通知
查看: 2049|回复: 5
打印 上一主题 下一主题

verilog奇数分频器遇到问题,请求高手指导一下

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2008-12-3 22:02 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

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

x
最近在学习verilog,刚做了个奇数分频器,
* I% ], q9 A& c: w& G用modelsim 5.7仿真波形都是OK的,
; h7 m$ [4 J9 ^可用ISE却总是综合不了,有一个警告说clk1是常量,count就加不到2,) e1 j" \% q2 o5 l  N8 i! G6 Y( J
所以请大侠帮忙看看我的程序是不是有问题,谢谢啦!5 R6 b8 p2 h: u: \7 H, I2 Y
module div (clkout,clkin,rst);
) z3 D* s5 l; k$ k0 P
9 l- W! C& D. [ output clkout;/ J0 ^9 j. |1 Q! K
input clkin;
3 O/ w: [" k$ v0 h' P input rst;/ C  f# Q. B# M
reg clkout;1 t0 u$ P2 i' R
reg clk1,clk2;
; {2 z' L' i# v. \; p2 ]: _ reg [1:0]count;; U2 }$ ^" R7 z* @7 y9 \
4 x7 N2 r- M9 T% _+ Y+ u
always @(posedge clkin or negedge rst)
' A( V$ c1 k+ n0 m9 L begin5 \' a( O& S! ]# O* E; c  O' ^1 ~
  if (!rst)
# m  Q: T8 {2 T: Y' ?   begin
/ P, b5 r% E8 ]- J4 J( a% N   clk1<=0;
+ x1 e) J3 m3 u7 m2 o# n   count<=0;  q& P' H) w$ W! J/ g3 T
   end& W5 W& o& q' U" i+ q( `  Y3 d- r
  else if(count==2)
! c3 e/ p' [7 R& J$ G3 Y5 n    begin/ x. @/ W7 g' z( ]6 t
    count<=0;( A; I* q1 ^) }
    clk1<=~clk1;9 V4 m% \6 b# y: \1 t
    end
' H5 I# h. N! ]1 e0 Y   else
8 H$ }) R1 A+ e% x! e0 `   count<=count+1;
) L+ K' F" t+ }& H% l9 \0 c end

$ a6 }* N# J1 o- l3 T# M8 Q9 V, w( _
always @ (negedge clkin or negedge rst)
& Q( H$ e- p% Z3 { begin
/ F' M% E3 U* p6 A. c  if(!rst)4 [7 l% _9 B, E" @$ [
   begin
& ]5 Y7 q, E% W4 x- k    clk2<=0;
! a( M  J2 a2 V2 f    count<=0;
" X; E" v0 z$ ~( ?# M" r   end* }9 m" s6 C$ H2 a% R8 M0 Q
  else if(count==1)2 O( l  t" _- s& D. L/ m' U, w
   clk2<=~clk2;
3 K/ i0 I7 R+ ^6 T! Z4 ?. M end
7 z; s. k, G# }4 |" O; Y- x. w& ]1 H: h/ K
always @ (clk1 or clk2 or rst)
& @( B% O" k& b3 Z$ g: S0 n begin
! t# K! L' z$ q" M7 |  if(!rst)
; c3 @3 b7 Y; {8 D! y% b- q  clkout<=0;; j; K' d# t0 Q/ W/ U9 |
  else
$ p& {7 G+ X6 ]0 f1 ^' _  clkout<=clk1^clk2;
; N$ ^  w. @: o end) Q( S1 r( Y. J: W1 A
endmodule

该用户从未签到

2#
 楼主| 发表于 2008-12-4 14:41 | 只看该作者
请各位大侠点拨一下,还在困惑中

该用户从未签到

3#
发表于 2008-12-8 19:28 | 只看该作者
你的程序是正确的,能实现3分频的目的;count加不到2感觉不可能;在ISE平台下,你是调用xilinx公司自带的软件仿真?假如是的话,仿真正确吗?综合的话,你可以调用synplify试试

该用户从未签到

4#
 楼主| 发表于 2008-12-9 09:59 | 只看该作者

回复 3# 的帖子

确实是用xilinx自带的软件仿真的,因为我没有synplify9 V# G1 P( `$ A" c
问题点刚刚找到了,第二个always中count不用赋初值了,
$ _' D) O# ]' a3 k还是感谢你的关注,以后多交流了!

该用户从未签到

5#
发表于 2008-12-9 13:16 | 只看该作者
一个变量不能同时在两个always语句里面赋值的啦~~~

该用户从未签到

6#
 楼主| 发表于 2008-12-9 14:32 | 只看该作者

回复 5# 的帖子

感谢!两天才找到这个问题点,惭愧
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-7-20 11:32 , Processed in 0.125000 second(s), 24 queries , Gzip On.

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

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

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