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

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

[复制链接]

该用户从未签到

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

EDA365欢迎您登录!

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

x
最近在学习verilog,刚做了个奇数分频器,
" j- g! Y+ @# `- Q- O' X$ Z用modelsim 5.7仿真波形都是OK的,3 \) g% S' I& ~- M, z7 D6 |. s
可用ISE却总是综合不了,有一个警告说clk1是常量,count就加不到2,
0 k7 Q& J4 y/ X/ t所以请大侠帮忙看看我的程序是不是有问题,谢谢啦!
, L2 P" D+ x$ |1 {+ X# o7 Lmodule div (clkout,clkin,rst);
- d& Y7 ]* B# u! W
1 C6 w- f! }  Q: `/ W5 N+ H output clkout;, W; T+ }6 X% J, D( d
input clkin;$ k6 I8 C: p) s. s
input rst;/ m& I7 i7 H& e3 g2 k5 i: o
reg clkout;
/ N/ ]7 i+ ^2 E- L# Y# e reg clk1,clk2;
3 p6 R8 b7 o( f7 Y2 r reg [1:0]count;5 X. G- Y8 _: U+ p
2 l/ N% c4 O; v
always @(posedge clkin or negedge rst); P8 h4 J, X; R$ L7 Q" O8 U& a8 H
begin! }. @( J  U& y/ j+ ]  u
  if (!rst)
/ v2 @+ f0 K3 i- ]   begin
) U0 `$ B2 ~/ Z: v1 Y- c   clk1<=0;
% T/ s/ G5 ?! Z5 O   count<=0;$ R, r( {( ~* V: e9 u
   end
  H& |# b+ L3 L- d! Q5 U) _# x  else if(count==2)
4 a0 j" {! s; p  P" K    begin7 z( b8 R& b: s4 |; @6 F3 m
    count<=0;
5 D- X, a" y6 D$ {( F: T4 t    clk1<=~clk1;2 ]/ }: `- G  r' J1 x! I
    end
$ }3 P% \% D) k   else
; c+ ]  h9 P1 e' k   count<=count+1;
; v* f' ?+ X9 x end

! `! ?7 e' r, H, J: o. z* U" S& \- ^( h* n& v; m
always @ (negedge clkin or negedge rst)- P) q9 |5 Z* }3 K9 t: K
begin3 T; s8 n, |1 z7 f8 E
  if(!rst)
' e9 c+ _+ P3 O+ e  o  Q& u   begin. b7 Q" m; y2 X, @1 j# x. \( m, T
    clk2<=0;
3 I/ p9 {( ~4 g6 J    count<=0;
+ Z$ }& o6 _9 S5 h   end: ]" ^/ y) [9 }; v% u
  else if(count==1)
8 C( N$ Q& {, k4 U- e. C   clk2<=~clk2;) S7 y6 w& r6 n$ T5 {; g( _
end
9 w8 f2 X+ y3 e! d
; ^7 M! q: C* V; Ialways @ (clk1 or clk2 or rst)0 e( ?. f5 ]8 D1 a8 v
begin& A/ {* s  X0 {6 @( f* C0 s4 d2 k. s
  if(!rst)# F# i/ i, y- i2 B, a
  clkout<=0;
' G# Q5 C( c! }/ F. S  else
/ e7 \* ]$ }3 {2 E& `& V' ~  clkout<=clk1^clk2;
1 n! s" Q5 \+ P7 b end
4 K5 a! R* W1 m$ 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自带的软件仿真的,因为我没有synplify
9 U) D* W5 ~" D/ N% s1 p问题点刚刚找到了,第二个always中count不用赋初值了,
% B! Q; w1 o4 [% b0 R. `8 ~还是感谢你的关注,以后多交流了!

该用户从未签到

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

该用户从未签到

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

回复 5# 的帖子

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

本版积分规则

关闭

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

EDA365公众号

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

GMT+8, 2025-10-28 19:09 , Processed in 0.156250 second(s), 25 queries , Gzip On.

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

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

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