0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

FPGA Verilog中计数器的2中写法对比

FPGA学习交流 2018-09-26 12:51 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

功能是,计数记到24,清零,重新计数….

第一种写法:

module count_debug (

clk,

rst_n,

dout

);

input clk;

input rst_n;

output [4:0] dout;

reg [4:0] cnt;

always @(posedgeclk or negedge rst_n) begin

if(rst_n == 1'b0) begin

cnt <= {5{1'b0}};

end else if(cnt == 5'd24)begin

cnt <= {5{1'b0}};

end else begin

cnt <= cnt + 1'b1;

end

end

assign dout = cnt;

endmodule

这种写法是我常用的方式,现在来看看消耗的逻辑单元



; Family ; Cyclone II ;

; Device ; EP2C8Q208C8 ;

; TimingModels ; Final ;

; Total logicelements ; 9 / 8,256 ( <1 % )                     ;

; Total combinational functions ; 9 / 8,256 ( < 1 % )           ;

; Dedicated logic registers ; 5 / 8,256 ( < 1 % )               ;

; Totalregisters ; 5 ;

; Total pins ; 7 / 138 ( 5 % ) ;

; Total virtualpins ; 0 ;

; Total memorybits ; 0 / 165,888 ( 0 %) ;

; EmbeddedMultiplier 9-bit elements ; 0 / 36 ( 0 % ) ;

RTL图如下:



第二种写法:

module count_debug (

clk,

rst_n,

dout

);



input clk;

input rst_n;

output [4:0] dout;

reg [4:0] cnt;

always @(posedgeclk or negedge rst_n) begin

if(rst_n == 1'b0) begin

cnt <= {5{1'b0}};

end else if(cnt < 5'd24)begin

cnt <= cnt + 1'b1;

end else begin

cnt <= {5{1'b0}};

end

end

assign dout = cnt;

endmodule

消耗的逻辑单元:

; Family ; Cyclone II ;

; Device ; EP2C8Q208C8 ;

; TimingModels ; Final ;

; Met timingrequirements ; Yes ;

; Total logicelements ; 6 / 8,256 ( <1 % )                      ;

; Total combinational functions ; 6 / 8,256 ( < 1 % )            ;

; Dedicated logic registers ; 5 / 8,256 ( < 1 % )                ;

; Totalregisters ; 5 ;

; Total pins ; 7 / 138 ( 5 % ) ;

; Total virtualpins ; 0 ;

; Total memorybits ; 0 / 165,888 ( 0 %) ;

; EmbeddedMultiplier 9-bit elements ; 0 / 36 ( 0 % ) ;


RTL图如下:




第一种写法比第二种写法多耗了3个逻辑单元。

从上面的逻辑单元和RTL图对比,在用计数器实现相同的功能时,可以看出 == COUNT 消耗的逻辑单元比 <   COUNT  消耗的逻辑单元要多。

这只是从例子上看出来的,那具体其他情况是不是,就不知道了。目前我在学习中,

以上结论仅供参考。


仿真波形如下:

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • FPGA
    +关注

    关注

    1656

    文章

    22292

    浏览量

    630413
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    国产频率计数器vs进口频率计数器

    计数器
    西安同步电子科技有限公司
    发布于 :2025年11月04日 17:55:01

    频率计数器/定时 时间间隔计数器的应用领域和范围的深度解析 频率计数器模块

    在精密电子测量、科研实验、工业控制等领域,时间间隔的精准测量是保障系统性能与数据可靠性的关键环节。 SYN5620A时间间隔计数器模块 作为一款集成化、高性能的测量单元,凭借其高精度、宽量程、高
    的头像 发表于 10-30 11:22 426次阅读
    频率<b class='flag-5'>计数器</b>/定时<b class='flag-5'>器</b> 时间间隔<b class='flag-5'>计数器</b>的应用领域和范围的深度解析 频率<b class='flag-5'>计数器</b>模块

    如何利用Verilog HDL在FPGA上实现SRAM的读写测试

    、建立读写操作、配置地址计数器、模拟数据流、综合与仿真以及下载到FPGA进行硬件测试。通过实践,掌握SRAM在FPGA的使用和基本读写方法,加深对
    的头像 发表于 10-22 17:21 3972次阅读
    如何利用<b class='flag-5'>Verilog</b> HDL在<b class='flag-5'>FPGA</b>上实现SRAM的读写测试

    武汉特高压:避雷放电计数器校验仪,筑牢电力防雷 “安全屏障”

    在电力系统运行,避雷是抵御雷电过电压的核心设备,而放电计数器的精准度直接决定着避雷状态判断的可靠性。武汉特高压电力科技有限公司研发的避雷
    的头像 发表于 09-23 15:58 371次阅读
    武汉特高压:避雷<b class='flag-5'>器</b>放电<b class='flag-5'>计数器</b>校验仪,筑牢电力防雷 “安全屏障”

    雷击计数器的种类和综合选型部署解决方案

    一、雷击计数器的定义与作用 雷击计数器(Lightning Counter,又称雷电计数器、雷击记录仪)是安装在避雷针、接闪杆、SPD(浪涌保护)或下引线回路
    的头像 发表于 09-11 15:28 571次阅读
    雷击<b class='flag-5'>计数器</b>的种类和综合选型部署解决方案

    请问如何为 NuMicro® M451 系列的 PWM 设置计数器同步?

    如何为 NuMicro® M451 系列的 PWM 设置计数器同步?
    发表于 08-29 06:48

    雷电(雷击)计数器的原理、作用及行业应用解决方案

    安全事故。雷电(雷击)计数器作为防雷系统的重要组成部分,扮演着“记录雷击事件、辅助安全运维”的关键角色,已经成为智能防雷系统不可或缺的一环。 二、雷电(雷击)计数器的原理 1. 工
    的头像 发表于 06-12 15:14 780次阅读
    雷电(雷击)<b class='flag-5'>计数器</b>的原理、作用及行业应用解决方案

    MCU定时/计数器

    架构与功能特性‌ 定时类型与配置‌ 高级控制定时‌:支持互补PWM输出与刹车功能,适用于电机驱动等高精度控制场景。通用定时‌:集成输入捕获、输出比较、单脉冲模式等基础功能‌。 系统定时
    的头像 发表于 04-27 13:54 598次阅读

    数字电路—24、计数器

    在数字电路,能够记忆输入脉冲个数的电路称为计数器
    发表于 03-26 15:13

    STM32F103高级定时,开启单脉冲模式是不是会立刻清除计数器使能位?

    在输出256个脉冲后更新并进入更新中断 3、在2的更新后RCR的新值(4)生效,在更新中断开启单脉冲模式,使计数器在输出4个脉冲后停止计数。 但现在的问题是,通过逻辑分析仪分析,最终
    发表于 03-10 07:34

    KEYSIGHT是德科技53220A台式频率计计数器原安捷伦

    KEYSIGHT TECHNOLOGIES 53220A 频率计数器/定时, 350MHz 12位 100PS 53220A 350MHz通用频率计数器/计时是一款双通道频率
    的头像 发表于 02-12 17:15 799次阅读
    KEYSIGHT是德科技53220A台式频率计<b class='flag-5'>计数器</b>原安捷伦

    ‌尘埃粒子计数器有什么特点

    在当今对空气质量要求日益严苛的时代,尘埃粒子计数器作为一种高效、准确的检测工具,正逐渐成为众多领域重要的得力助手。它采用激光散射原理,以稳定的气流流速对空气进行采样,当空气的微粒通过内部光敏
    的头像 发表于 01-24 11:44 699次阅读

    UC-018:时间间隔计数器的用途

    电子发烧友网站提供《UC-018:时间间隔计数器的用途.pdf》资料免费下载
    发表于 01-13 17:02 0次下载
    UC-018:时间间隔<b class='flag-5'>计数器</b>的用途

    智能雷击计数器的综合行业解决方案

    智能雷击计数器 是一种用于记录雷击事件发生次数的高科技装置,广泛应用于防雷系统。与传统的机械式雷击计数器相比,智能雷击计数器不仅能够精确记录雷击次数,还能对雷电参数进行分析,并通过智
    的头像 发表于 12-20 10:50 868次阅读
    智能雷击<b class='flag-5'>计数器</b>的综合行业解决方案

    Verilog 测试平台设计方法 Verilog FPGA开发指南

    Verilog测试平台设计方法是Verilog FPGA开发的重要环节,它用于验证Verilog设计的正确性和性能。以下是一个详细的
    的头像 发表于 12-17 09:50 1563次阅读