硬汉嵌入式论坛

 找回密码
 立即注册
查看: 3596|回复: 1
收起左侧

Verilog设计练习进阶(3)-------利用条件语句实现较复杂的时序逻辑电路

[复制链接]

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
107122
QQ
发表于 2013-1-30 09:34:09 | 显示全部楼层 |阅读模式
设计一个简单的1/40分频。
module verilog_prj(RESET,F10M,F500K);
input F10M,RESET;
output F500K;
reg F500K;
reg [7:0] j;
  always @(posedge F10M)
    if(!RESET)          //低电平复位。
      begin
        F500K <= 0;
        j <= 7'd0;
      end
    else  
      begin
        if(j==19)      // 对计数器进行判断,以确定F500K 信号是否反转。
          begin
            j <= 7'd0;
            F500K <= ~F500K;
          end
        else
          j <= j + 1'b1;
      end
endmodule
测试模块
`timescale 1 ns/ 1 ps
module verilog_prj_vlg_tst();

// test vector input registers
reg F10M;
reg RESET;
// wires                                               
wire F500K;

// assign statements (if any)                          
verilog_prj i1 (
// port map - connection between master ports and signals/registers   
    .F10M(F10M),
    .F500K(F500K),
    .RESET(RESET)
);

always #50   F10M  =  ~ F10M;  

initial
  begin  
  RESET=1;
  F10M=0;
  #100 RESET=0;
  #100 RESET=1;
  #10000 $stop;
  end                                                   

endmodule
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
107122
QQ
 楼主| 发表于 2013-1-30 09:42:22 | 显示全部楼层
1.jpg
2.jpg
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2024-5-19 09:33 , Processed in 0.249132 second(s), 28 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

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