基于Verilog HDL的数字秒表、波形发送器等设计

这篇博客介绍了基于Verilog HDL的数字秒表和多功能数字时钟的设计,详细阐述了设计要求、代码示例及结果展示。同时,文章还提及了一个基于FPGA的贪吃蛇游戏的系统结构,包括食物生成、状态控制和红外解码模块。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、EDA

电子设计自动化(英语:Electronic design automation,缩写:EDA)是指利用计算机辅助设计(CAD)软件,来完成超大规模集成电路(VLSI)芯片的功能设计、综合、验证、物理设计(包括布局、布线、版图、设计规则检查等)等流程的设计方式。
在这里插入图片描述

二、基于Verilog HDL的数字秒表设计

1、 用Verilog HDL设计一个数字跑表,所需引脚和功能如下所示:

在这里插入图片描述

在这里插入图片描述

2、代码示例

module running_gly(clk,reset,pause,msh,msl,sh,sl,minh,minl);
input clk,reset,pause;
output [3:0] msh,msl,sh,sl,minh,minl;
reg [3:0] msh,msl,sh,sl,minh,minl;
reg count1,count2;
always @(posedge clk or posedge reset)
 begin
   if(reset)
	  begin
	    {msh,msl}<=0;
		 count1<=0;
	  end
   else if(!pause)
      begin
	     if(msl==9)
		     begin
			  msl<=0;
			    if(msh==9)
				  begin
				   msh<=0;
					count1<=1;
					end
					else
					 msh<=msh+1;
				end
   else
    begin
	 msl<=msl+1;
	 count1<=0;
	 end
	 end
end
always@(posedge count1 or posedge reset)
   begin
   if(reset)
     begin
	    {sh,sl}<=0;
		 count2<=0;
	  end
	 else if(sl==9)
	   begin
	     sl<=0;
		  if(sh==5)
		    begin
			  sh<=0;
			  count2<=1;
			  end
			else
			  sh<=sh+1;
			end
		else	
		     begin
			  sl<=sl+1;
			  count2<=0;
			  end
		end
always @(posedge count2 or posedge reset)
  begin
   if(reset)
     begin
      minh<=0;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值