首页
题库
公司真题
专项练习
面试题库
在线编程
面试
面试经验
AI 模拟面试
简历
求职
学习
基础学习课
实战项目课
求职辅导课
专栏&文章
竞赛
我要招人
发布职位
发布职位、邀约牛人
更多企业解决方案
AI面试、笔试、校招、雇品
HR免费试用AI面试
最新面试提效必备
登录
/
注册
Avalon•LT
西安电子科技大学 Java
发布于陕西
关注
已关注
取消关注
@牛客阿芙:
题解 | #输入序列连续的序列检测#
题意整理 题目要求检测a的序列,a为单bit输入,每个时刻可能具有不同的值,当连续8个时钟周期中a的值依次为01110001,判断a出现目标序列,把匹配信号match拉高。 值得注意的是:当前N位数值匹配则N+1位是否匹配,当出现某一位不匹配时,注意不一定从第一位开始重新判断,例如出现前五位数值为01110,第六位数值出现1,不匹配目标序列,但第五,第六位数值符合第一,第二位数值,可以继续判断下一位是否匹配目标序列的第三位,而不需要从第一位开始。 题解主体 对于序列检测题目,常规的解法有两种:状态机法和序列缓存对比法。 状态机法的过程类似于题意理解中提到的过程:在初始状态中,先判断第一位是否符合,若符合则进入下一个状态,判断第二位是否符合;若第一位不符合则保持在初始状态,直到第一位匹配。如前两位匹配,则判断第三位是否符合,若第一位匹配,最新输入的数值和目标序列的第二位不匹配,则根据最新一位是否匹配第一位,进入第一位匹配状态或者初始状态。依次类推。 序列缓存对比法,则是将八个时刻的数据缓存,作为一个数组,每个时刻的输入位于数组的末尾,数组其它元素左移,把最早输入的数据移出。然后将数组和目标序列对比,如果数组和目标序列相等,则说明出现目标序列。 序列缓存对比法在实现上比较简单,本题采用该方法实现。首先声明一个数组,缓存八个时刻的a输入的数值。移位可以通过位截取操作和位拼接操作实现:a_tem[6:0]表示截取a_tem的低7位,{a_tem[6:0],a}表示把a_tem[6:0]和新输入的数值a拼接,a位于低位。 reg [7:0] a_tem; always @(posedge clk or negedge rst_n) if (!rst_n) begin a_tem <= 8'b0; end else begin a_tem <= {a_tem[6:0],a}; end 然后将缓存的数组和目标序列:0111_0001相对比,如果匹配,则把match拉高,其它情况下,macth为0。 always @(posedge clk or negedge rst_n) if (!rst_n) begin match <= 1'b0; end else if (a_tem == 8'b0111_0001) begin match <= 1'b1; end else begin match <= 1'b0; end 参考答案`timescale 1ns/1nsmodule sequence_detect( input clk, input rst_n, input a, output reg match ); reg [7:0] a_tem; always @(posedge clk or negedge rst_n) if (!rst_n) begin match <= 1'b0; end else if (a_tem == 8'b0111_0001) begin match <= 1'b1; end else begin match <= 1'b0; end always @(posedge clk or negedge rst_n) if (!rst_n) begin a_tem <= 8'b0; end else begin a_tem <= {a_tem[6:0],a}; endendmodule
点赞 76
评论 8
全部评论
推荐
最新
楼层
暂无评论,快来抢首评~
相关推荐
08-14 16:17
门头沟学院 硬件开发
拓竹硬件已挂
拓竹科技的硬件测试岗位已经挂了,希望我投的第一志愿能过
投递拓竹科技等公司10个岗位
点赞
评论
收藏
分享
08-14 14:49
华南师范大学 Java
阿里国际一面,遭遇校园网gank,拼尽全力,不知道有没有战胜。
自我介绍+实习相关既然实习中提到了大模型,有没有调研过具体效果如何?RAG是如何运用的?设计模式讲解一下(讲解简历提到的两种模式)AOP切面在实习中有没有实际写过?有没有做过全局异常处理?线程池参数如何设置?简历中的xx功能QPS是多少?每天大概多少个用户?xx功能有没有进行过优化?实习中有没有用到消息队列?讲一讲你对消息队列的理解如何确保不会消息队列重复消费?at least one怎么保证呢?回问了一下线程池的拒绝策略和阻塞队列的设置如何利用SpringBoot写一个starter?SpringBoot 自动装配原理是什么?Resource 和 Autowired的区别?Quilfy注解是...
查看30道真题和解析
点赞
评论
收藏
分享
07-10 14:08
已编辑
江西农业大学 Java
笔试做项目
咋感觉是白嫖呢
拒绝无效加班的小学生...:
期望3k吗?java这辈子有了
点赞
评论
收藏
分享
08-05 11:28
郑州轻工业大学 Java
找不到实习
球球各位大佬帮鼠鼠看看简历,boss上投了20多份简历了,一个面试也没有,我感觉简历是不是有大问题😭
点赞
评论
收藏
分享
08-12 13:37
南华大学 Java
小红书你给这么多
看到了小红书顶尖实习生的薪资爆料,小红书你给这么多的吗
也不容易的大老虎很爱...:
博士那个略有耳闻,进面的都是5篇a起步
点赞
评论
收藏
分享
评论
点赞成功,聊一聊 >
点赞
收藏
分享
评论
提到的真题
返回内容
全站热榜
更多
1
...
【评论得现金💰】牛客评论活动又来咯
5.3W
2
...
8月份面经整理的算法高频题集合
1.4W
3
...
快手秋招一面
5736
4
...
家里人一直跟我说要给领导买点东西,搞好关系
3690
5
...
大疆结构秋招一面
3449
6
...
快手秋招-后端一面
3357
7
...
8.13快手秋招Java后端二面记录
3235
8
...
小红书-引擎架构- java实习-一&二面凉经
2837
9
...
快手 秋招 一面
2601
10
...
大家离职都怎么开口的啊?
2586
创作者周榜
更多
正在热议
更多
#
实习的内耗时刻
#
56980次浏览
628人参与
#
扒一扒那些奇葩实习经历
#
71093次浏览
933人参与
#
工作上你捅过哪些篓子?
#
21380次浏览
139人参与
#
发工资后,你做的第一件事是什么
#
72494次浏览
252人参与
#
你上一次给父母打电话是什么时候
#
13125次浏览
123人参与
#
给26届的秋招建议
#
37948次浏览
980人参与
#
在职场上,你最讨厌什么样的同事
#
27976次浏览
201人参与
#
我的秋招“寄”录
#
44343次浏览
574人参与
#
秋招投递记录
#
28047次浏览
312人参与
#
我的AI电子员工
#
13313次浏览
105人参与
#
你最近一次加班是什么时候?
#
80119次浏览
428人参与
#
如果校招重来我最想改变的是
#
279469次浏览
2904人参与
#
秋招,不懂就问
#
11824次浏览
125人参与
#
校招第一份工作你干了多久?
#
99110次浏览
435人参与
#
安克创新求职进展汇总
#
40130次浏览
445人参与
#
网易求职进展汇总
#
113174次浏览
1069人参与
#
应届生初入职场,求建议
#
240321次浏览
2714人参与
#
独居后,你的生活是更好了还是更差了?
#
13437次浏览
176人参与
#
我的国央企投递进展
#
52046次浏览
312人参与
#
规定下班时间vs实际下班时间
#
22049次浏览
164人参与
牛客网
牛客网在线编程
牛客网题解
牛客企业服务