codesnippet序列检测与序列产生实例分析
codesnippet序列检测与序列产生实例分析
本文小编为大家详细介绍“codesnippet序列检测与序列产生实例分析”,内容详细,步骤清晰,细节处理妥当,希望这篇“codesnippet序列检测与序列产生实例分析”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。
序列检测与序列产生是一对对称的设计,就像有微分就有积分一样。
序列检测分为有重叠检测和无重叠检测;
例如检测序列1101011,我们给出输入:110101101011,如果是无重叠检测,则只能检测到一个序列:1101011_01011;
如果是有重叠检测,则可以检测到两个这样的序列:11010_11_01011。
同理,序列产生也可以分为有重叠序列的产生方法和无重叠序列的产生方法,序列产生的办法也可以用移位寄存器产生,也可以用状态机的方式来产生;这两种方法后面都是提到。
移位寄存器实现
以产生序列1101011为例,我们产生产生的序列要是这个样子的1101011_1101011..............
所以我们需要使用7位的移位寄存器,每次对序列1101011左移,同时输出最高位;7位的移位寄存器固然需要消耗7个触发器,这也是一个考点。
设计也极其简单,如下:
moduleseq_gen7(inputclk,inputreset,outputout);reg[6:0]seq_mid;always@(posedgeclkorposedgereset)beginif(reset)seq_mid<=7'b1101011;elseseq_mid<={seq_mid[5:0],seq_mid[6]};endassignout=seq_mid[6];endmodule
读到这里,这篇“codesnippet序列检测与序列产生实例分析”文章已经介绍完毕,想要掌握这篇文章的知识点还需要大家自己动手实践使用过才能领会,如果想了解更多相关内容的文章,欢迎关注恰卡编程网行业资讯频道。
推荐阅读
-
Notepad++ 插件推荐:代码折叠、语法高亮增强工具合集
-
Emacs Evil 模式:Vim 用户快速上手 Emacs 的过渡方案
-
Vim 寄存器深度解析:多缓冲区操作与复杂文本处理
-
Atom 主题切换:Material Design 与扁平化风格对比推荐
-
Lightly IDE 快捷键:Python 开发者必学的效率提升操作
-
Xcode 模拟器调试:多设备同步与性能监控技巧
-
PyCharm 代码格式化:黑魔法工具 Black 与自动规范配置
-
IntelliJ IDEA Docker 集成:微服务本地调试与镜像构建
-
VS Code Remote SSH:远程服务器开发环境搭建全流程
-
Retool 数据库连接:支持 MySQL、PostgreSQL 等多数据源配置