当前位置: 首页 > news >正文

网站 申请学校官方网站

网站 申请,学校官方网站,品质好的办公室装修设计,广州微网站制作LV4_移位运算与乘法 题目来源于牛客网 [牛客网在线编程_Verilog篇_Verilog快速入门 (nowcoder.com)](https://www.nowcoder.com/exam/oj?page1tabVerilog篇topicId301) 题目 题目描述#xff1a; 已知d为一个8位数#xff0c;请在每个时钟周期分别输出该数乘1/…LV4_移位运算与乘法 题目来源于牛客网 [牛客网在线编程_Verilog篇_Verilog快速入门 (nowcoder.com)](https://www.nowcoder.com/exam/oj?page1tabVerilog篇topicId301) 题目 题目描述 已知d为一个8位数请在每个时钟周期分别输出该数乘1/3/7/8,并输出一个信号通知此时刻输入的d有效d给出的信号的上升沿表示写入有效 信号示意图 波形示意图 输入描述 输入信号 d, clk, rst 类型 wire 在testbench中clk为周期5ns的时钟rst为低电平复位 输出描述 输出信号 input_grant out 类型 reg 状态机 在Verilog中可以使用always语句和case语句来实现状态机。 首先声明一个状态寄存器state_reg用于存储当前状态的值。状态寄存器通常是一个有限状态机中的关键变量。 reg [2:0] state_reg; 在always (posedge clk) 块中使用case语句根据当前的状态值执行相应的操作。在时钟的上升沿触发该always块。 always (posedge clk) begincase (state_reg)// 根据当前状态执行相应操作// 每个状态对应一个case// 每个case中描述该状态下的行为endcase end在每个case中根据当前的状态值执行相应的操作。每个case对应一个状态并描述在该状态下的行为。 always (posedge clk) begincase (state_reg)// 状态12d0: begin// 在状态1执行的操作// 可以包括信号的赋值、状态变迁等end// 状态22d1: begin// 在状态2执行的操作end// 状态32d2: begin// 在状态3执行的操作enddefault: begin// 默认情况下的操作当状态寄存器的值不匹配任何已定义的状态时执行endendcase end代码 timescale 1ns/1nsmodule multi_sel(input [7:0]d ,input clk,input rst,output reg input_grant,output reg [10:0]out ); //*************code***********// /*代码思路使用状态机进行逻辑跳转。可以借此题来练习状态机 1.声明状态寄存器 2.状态之间的转换 3.每个状态执行的操作将乘法改为移位来计算可以节省资源*///声明参数状态寄存器parameter IDLE 3d0; //空状态parameter M1 3d1; //M1时输入有效input_grant1parameter M3 3d2;parameter M7 3d3;parameter M8 3d4;reg [2:0] current_state;reg [2:0] next_state;reg [7:0] d_tool; //此变量是存储输入有效时d的值//状态之间的转换always (posedge clk or negedge rst) beginif(!rst)current_state IDLE;else current_state next_state;end //不同状态所要执行的操作always (*) begin //和时钟、复位无关case (current_state)IDLE : begininput_grant 0;out 0;next_state M1;endM1 : begininput_grant 1;out d_tool;next_state M3;endM3 : begininput_grant 0;out (d_tool 2d2) - d_tool;next_state M7;endM7 : begininput_grant 0;out (d_tool 2d3) - d_tool;next_state M8;endM8 : begininput_grant 0;out (d_tool 2d3);next_state M1;enddefault : begininput_grant 0;out 0;next_state IDLE;end endcase end //输入有效数据 d_tool 和实际的输入 d 的关系always (posedge clk or negedge rst) beginif(!rst)d_tool 0;else beginif(current_state IDLE)d_tool d;else if(current_state M8)d_tool d;else d_tool d_tool;endend//*************code***********// endmodule
http://www.dnsts.com.cn/news/146247.html

相关文章:

  • 网站app下载平台怎么做wordpress 读书主题
  • 腾讯云网站安全认证网站建设 绍兴的公司哪家好
  • 网站设计 wordpress公司招聘信息
  • 商城微网站建设多少钱软件论坛网站有哪些
  • 网站一次性链接怎么做的上海响应式网站建设推荐
  • 沈阳市城市建设局网站网站诚信认证怎么做
  • 无锡网站建设公司排名整站优化关键词排名
  • 499元做网站建设网站有什么作用
  • 网站中的搜索框怎么做cad使用视频在线观看
  • 手机管理网站模板下载软件pc网站的优势
  • 网站后台服务网站建设的前期投入
  • 宜宾网站制作免费发布出租房信息网站
  • 江苏省建设监理协会网站网站建设伍金手指下拉6
  • wordpress可以做下载站做视频哪个网站素材好
  • 钓鱼网站怎么制作html敦煌网外贸平台
  • 深圳网站建设效果深圳信息网
  • 做亚马逊网站的账务处理以下什么是网页制作软件
  • 手机网站框架中国最新军事新闻 新闻
  • 唐山建设个网站ui培训班有用吗
  • 做网站 英语页面设计工作要求
  • 国际贸易网站大全网站建设框架文案
  • 可以做网站的软件上传歌曲网站群 seo
  • 张梅 合肥网站建设网站开发我嵌入式开发
  • 怎么做几个版面的网站seo深度解析
  • 北京教育网站建设免费建网站平台哪个好
  • 稿定设计网站官网怎样在百度上做广告
  • 晋城城乡建设局网站程序员网站需要多少钱
  • 下载长沙appseo管理系统创作
  • 如何成立一个网站昭通市网站建设
  • 建筑资建设库网站缺陷贵大网站建设多少钱