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

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

3天内不再提示

Johnson约翰逊计数器Verilog实现

FPGA之家 来源:FPGA之家 作者:FPGA之家 2022-06-15 09:27 次阅读


问题:实现 N Johnson Counter

当 N = 4 时,输出应该是

0000 -> 1000 -> 1100 -> 1110 ->

1111-> 0111 ->0011-> 0001 ->

0000 ->...

如下图所示,扭环形(约翰逊)计数器最后一个触发器的输出取反~Q3,然后输入回第一个触发器的输入 D(0)= ~Q(N-1),其余触发器的输入来自前级的输出 D(i+1) = Q(i)。

D(0)= ~Q(N-1)

D(i+1) = Q(i)

b0517284-ec45-11ec-ba43-dac502259ad0.png

Johnson 约翰逊计数器Verilog 实现

Verilog HDL写一个8-bitJohnson计数器,N = 8。


module johnson#(      parameter N=8)(      input clk,      input rst_n,      output reg [N-1:0] q); 
always @ (posedge clk,negedge rst_n)begin    if(!rst_n)q<= {N{1'b0}};    elseif(!q[0])        q <= {1'b1,q[N-1:1]};else        q <= {1'b0,q[N-1:1]};endendmodule

仿真图:

b09c5fb0-ec45-11ec-ba43-dac502259ad0.png

b0cb24f8-ec45-11ec-ba43-dac502259ad0.png

第二种:


module johnson#(      parameter N=8)(      input clk,      input rst_n,      output reg [N-1:0] q); 
always @ (posedge clk,negedge rst_n)begin    if(!rst_n)q<= {N{1'b0}};    elseq<= {~q[0], q[N-1:1]};endendmodule

Johnson 约翰逊计数器

(1)扭环形计数器约翰逊计数器,每次状态变化时仅有一个触发器发生翻转,译码不存在竞争冒险,在nn≥3)位计数器中,使用2n个状态,有2^n-2n个状态未使用;

(2)环形计数器,正常工作时所有触发器中只有一个是1(或0)状态,n个数需要n个触发器,状态利用率低;

(3)n寄存器线性反馈移位寄存器LFSR可以产生的最长的随机序列是2^n−1长度(m序列)LFSR常被用来生成m序列,也可产生和校验CRC

b1057432-ec45-11ec-ba43-dac502259ad0.png

b138be14-ec45-11ec-ba43-dac502259ad0.png

b14a18a8-ec45-11ec-ba43-dac502259ad0.png

审核编辑 :李倩


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

    关注

    1629

    文章

    21729

    浏览量

    602998
  • Verilog
    +关注

    关注

    28

    文章

    1351

    浏览量

    110074
  • 触发器
    +关注

    关注

    14

    文章

    2000

    浏览量

    61132

原文标题:FPGA/数字IC笔试题——Verilog实现 N 位 Johnson Counter【约翰逊计数器】【扭环形计数器】

文章出处:【微信号:zhuyandz,微信公众号:FPGA之家】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

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

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

    雷击计数器的概述与应用分析

    雷击计数器 是一种用于监测和记录电力系统、通信系统、建筑物等关键设施遭受雷击次数的设备。它能够有效地帮助管理人员掌握雷电活动的情况,以便进行预防性维护和风险评估。雷击计数器根据工作原理可以分为无源
    的头像 发表于 10-21 10:31 288次阅读
    雷击<b class='flag-5'>计数器</b>的概述与应用分析

    正交解码计数器

    正交解码计数器
    发表于 09-06 11:41 0次下载

    计数器的特点和参数

    计数器作为一种常用的电子元件,在电子设备和系统中扮演着至关重要的角色。它们不仅用于存储和增减数字值,还广泛应用于时序和频率测量、事件计数、控制步进电机和伺服系统、错误检测和纠正以及计算机数据存储和操作等领域。以下将详细阐述计数器
    的头像 发表于 08-29 14:54 931次阅读

    计数器同步和异步怎么判断

    计数器同步和异步是数字电路设计中的一个重要概念,它们在很多应用场景中都扮演着关键角色。 一、计数器概述 计数器是一种常见的数字电路,它可以对输入信号进行计数,并将
    的头像 发表于 07-23 11:14 1176次阅读

    PLC计数器的工作原理与功能

    至关重要的角色。计数器能够统计输入信号的脉冲次数,实现对某个事件的计数和监控,是控制系统实现精确控制的关键元件之一。本文将详细阐述PLC中计数器
    的头像 发表于 06-18 11:51 2034次阅读

    二进制串行计数器工作原理是什么?

    在数字电路设计中,计数器是一种非常关键的组件,用于测量时间、计数事件或跟踪状态变化等。其中,二进制串行计数器作为一种常用的计数器类型,在多种应用场景中都发挥着重要作用。本文将对二进制串
    的头像 发表于 05-28 15:52 841次阅读

    同步计数器和异步计数器的区别

    在数字电子领域中,计数器是一种用于统计脉冲信号数量的重要设备。其中,同步计数器和异步计数器是两种不同类型的计数器,它们在工作原理、特性以及应用场景等方面存在着显著的区别。本文将详细探讨
    的头像 发表于 05-24 14:36 4147次阅读

    同步计数器的主要类型和工作原理

    在数字电子领域,计数器是一种用于统计脉冲信号数量的设备,广泛应用于各种数字系统和电路中。其中,同步计数器作为计数器的一种重要类型,具有其独特的工作原理和分类。本文将详细探讨同步计数器
    的头像 发表于 05-24 14:34 1363次阅读

    计数器的结构和工作原理

    计数器,作为一种基础的电子设备,广泛应用于数字电路、计算机系统以及工业自动化等多个领域。它通过对输入信号进行计数和状态转换,实现对事件发生次数的统计和显示。本文将深入探讨计数器的定义、
    的头像 发表于 05-23 15:34 4760次阅读

    脉冲计数器的分类和作用

    在电子技术和数字系统中,脉冲计数器作为一种基本而重要的逻辑器件,其应用广泛且功能多样。脉冲计数器不仅能够实现基本的计数操作,还具备多种输出功能和控制功能,满足了电力、石化、冶金、轻工、
    的头像 发表于 05-15 17:11 1186次阅读

    简单认识脉冲计数器

    在数字电路和电子测量领域中,脉冲计数器作为一种基本而重要的工具,其应用十分广泛。脉冲计数器,也被称为脉冲频率计或脉冲数计,主要用于统计和测量输入脉冲信号的频率或数量。本文将详细阐述脉冲计数器的基本概念、工作原理、分类、应用领域以
    的头像 发表于 05-15 17:08 1745次阅读

    计数器怎么判断同步和异步 计数器异步和同步的区别

    计数器是计算机领域中常用的一种数据结构,用于记录和控制程序执行中的指令或事件发生的次数。计数器可以根据同步机制或异步机制进行操作。本文将详细讨论计数器的同步性和异步性,深入探讨两者的区别及其在实际
    的头像 发表于 02-22 15:14 3598次阅读

    计数器怎么用 计数器的作用有哪些

    计数器是一种被广泛应用于各个领域的实用工具,在我们的日常生活中随处可见。无论是进行时间统计,协助工作任务的完成,还是用于科学研究和编程技术,在各个领域都起到了重要的作用。本文将详细介绍计数器
    的头像 发表于 02-03 10:04 5364次阅读

    雷击计数器综合选型应用方案

    雷击计数器的基本原理是利用雷电流通过导线时产生的感应电压或电流来驱动计数器计数。根据计数器的类型,可以分为机械式雷击计数器和电子式雷击
    的头像 发表于 01-31 09:50 559次阅读
    雷击<b class='flag-5'>计数器</b>综合选型应用方案