首页
题库
公司真题
专项练习
面试题库
在线编程
面试
面试经验
AI 模拟面试
简历
求职
学习
基础学习课
实战项目课
求职辅导课
专栏&文章
竞赛
搜索
我要招人
发布职位
发布职位、邀约牛人
更多企业解决方案
在线笔面试、雇主品牌宣传
登录
/
注册
Kepler201905121422892
获赞
91
粉丝
2
关注
0
看过 TA
113
中山大学
2024
数字IC后端设计
IP属地:广东
君士坦丁堡在今天沦陷
私信
关注
拉黑
举报
举报
确定要拉黑Kepler201905121422892吗?
发布(22)
评论
刷题
Kepler201905121422892
关注TA,不错过内容更新
关注
2022-04-17 22:57
中山大学 数字IC后端设计
题解 | #占空比50%的奇数分频#
由于非偶数分频,采用电平计数较为方便 完整代码: `timescale 1ns/1ns module odo_div_or ( input wire rst , input wire clk_in, output wire clk_out7 ); //*************code***********// reg[2:0] cnt; reg out; assign clk_out7 = out; always@(rst or clk_in)begin if(~rst)...
0
点赞
评论
收藏
分享
2022-04-17 22:26
已编辑
中山大学 数字IC后端设计
题解 | #自动贩售机2#
将所投入的货币数目用最小单位(五毛钱)以寄存器cnt记录,由于测试用例最多出现3元,所以cnt的范围0~6,定义其大小[2:0]。 需注意 根据输出波形知道在输入货币的下一个时钟才会输出信号,而不是当前时钟。 每次找零后记得归零cnt。 `timescale 1ns/1ns module seller2( input wire clk , input wire rst , input wire d1 , input wire d2 , input wire sel , output reg out1, output reg out2, output reg out3...
0
点赞
评论
收藏
分享
2022-05-05 22:20
已编辑
中山大学 数字IC后端设计
题解 | #自动贩售机1#
将所投入的货币数目用最小单位(五毛钱)以寄存器Five_cnt记录,由于测试用例最多出现3元,所以Five_cnt的范围0~6,定义其大小[2:0]。 需注意 根据输出波形知道在输入货币的下一个时钟才会输出信号,而不是当前时钟。 完整代码: `timescale 1ns/1ns module seller1( input wire clk , input wire rst , input wire d1 , input wire d2 , input wire d3 , output reg out1, output reg [1:0]out2 ); //*******...
CloverN:
用quartus综合这段代码的时候会报错Erro(10028),原因是在不同的always块里对同一个reg变量进行了赋值,而always块是并行工作的,所以会起冲突。
0
点赞
评论
收藏
分享
2022-04-22 09:47
已编辑
中山大学 数字IC后端设计
题解 | #状态机-重叠序列检测#
重复检测是一般FSM应该具备的能力,根据画好的状态转换图,coding case部分。 需要注意题目检测输出是在下一个时钟周期,而非当前时钟周期。 完整代码: `timescale 1ns/1ns module sequence_test2( input wire clk , input wire rst , input wire data , output reg flag ); //*************code***********// parameter IDLE=0, A=1, B=2, C=3, D=4; reg [2:0]CS,NS; a...
0
点赞
评论
收藏
分享
2022-04-15 22:49
已编辑
中山大学 数字IC后端设计
题解 | #状态机-非重叠的序列检测#
采用标准的三段式风格编写状态机FSM,由于含有初始状态IDLE,故一般需定义的状态数等于序列数+1。非重叠检测下,当输出flag=1时,令当前状态CS=IDLE,避免重复检测。 `timescale 1ns/1ns module sequence_test1( input wire clk , input wire rst , input wire data , output reg flag ); //*************code***********// parameter IDLE=0, A=1, B=2, C=3, D=4, E=5; reg[2:...
0
点赞
评论
收藏
分享
2022-04-22 09:48
已编辑
中山大学 数字IC后端设计
题解 | #整数倍数据位宽转换8to16#
由于本题整数倍刚好是两倍,所以用一个存储器buff来保存上一个数据,在下个数据到来时,把两个数据拼起来一起给data_out。cnt计数周期为0-1。 完整代码 `timescale 1ns/1ns module width_8to16( input clk , input rst_n , input valid_in , input [7:0] data_in , output reg valid_out, output reg [15:0] data_out ); reg[7:0] ...
0
点赞
评论
收藏
分享
2022-04-22 09:49
已编辑
中山大学 数字IC后端设计
题解 | #非整数倍数据位宽转换8to12#
非整数倍的数据位宽转换 题型,第一,找最大倍数关系,比如24->128,则中间缓存大小为24*5=120,本题8->12,中间缓存大小为8。采用缓存buff保存data_in。第二,确定计数周期,在每次valid有效的时钟下,cnt自增1,当cnt=1,2时,data_out都会输出一次,那么计数周期就为0-2。第三,在每次输出时,使用拼接运算符拼接buff和data_in来输出data_out,并将未输出的data_in保存在缓存buff(在line34没有保存是因为此时data_in全部输出)。 完整代码 ````timescale 1ns/1ns module width_...
0
点赞
评论
收藏
分享
1
2
关注他的用户也关注了:
牛客网
牛客企业服务