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

做网站怎么赚钱知乎坪山网站建设服务

做网站怎么赚钱知乎,坪山网站建设服务,标书制作是干啥的,郴州有哪些推广平台文章目录 移位运算与乘法状态机简介SystemVerilog中的测试平台VCS 波形仿真 阻塞赋值和非阻塞赋值有限状态机#xff08;FSM#xff09;与无限状态机的区别 本篇文章接着上篇文章【芯片设计- RTL 数字逻辑设计入门 11 – 移位运算与乘法】 继续介绍#xff0c;这里使用状态机… 文章目录 移位运算与乘法状态机简介SystemVerilog中的测试平台VCS 波形仿真 阻塞赋值和非阻塞赋值有限状态机FSM与无限状态机的区别 本篇文章接着上篇文章【芯片设计- RTL 数字逻辑设计入门 11 – 移位运算与乘法】 继续介绍这里使用状态机来实现。 移位运算与乘法 已知d为一个8位数请在每个时钟周期分别输出该数乘1/3/7/8,并输出一个信号通知此时刻输入的d有效d给出的信号的上升沿表示写入有效 状态机简介 在Verilog中实现状态机通常包括三个主要部分状态声明、状态转换和输出逻辑。状态机可以是Moore或Mealy类型区别在于输出是仅由当前状态决定Moore还是由当前状态和输入决定Mealy。 以下是一个 错误的 Moore 状态机的 Verilog 代码示例 module moore_state_machine( input clk, input rstn, output reg done );// 状态声明 localparam [1:0] S_IDLE 2b00, S_START 2b01, S_DONE 2b10;// 状态寄存器 reg [1:0] current_state, next_state;// 状态转换逻辑 always (posedge clk or posedge reset) begin if (!rstn) begindone 0; current_state S_IDLE; end else begin current_state next_state; end end// 下一个状态和输出逻辑 always (*) begin case (current_state) S_IDLE: begin if (start) begin next_state S_START;end end S_START: begin // 执行一些操作... next_state S_DONE; end S_DONE: begin done 1b1; next_state S_IDLE; end default: next_state S_IDLE; endcase endendmodule 此外还需要注意以下几点 开始状态这个状态通常都是做一些信号的初始化然后再执行下一个状态结束状态也就是最后一个状态这时需要回到最开始的状态default 的情况通常都是回到开始状态。 SystemVerilog中的测试平台 以下是上述状态机的SystemVerilog测试平台testbench代码示例 module tb_moore_state_machine; // 测试平台信号 reg clk, reset, done; // 实例化状态机模块 moore_state_machine uut( .clk(clk), .reset(reset), .done(done) ); // 时钟生成 always #5 clk ~clk; // 测试序列 initial begin // 初始化信号 clk 0; rstn 0; #10; // 释放复位 reset 1; #30; // 断言检查状态机是否正确完成 assert (done 1b1) else $error(状态机未正确完成。); // 仿真结束 $finish; end endmodule VCS 波形仿真 所以可以看出来仿真结果并不是预期中的这里主要是由于什么问题导致的答案是阻塞赋值与非阻塞赋值接下来对它进行详细介绍。 阻塞赋值和非阻塞赋值 在 always 语句块中 Verilog 语言支持两种类型的赋值 阻塞赋值和非阻塞赋值。 阻塞赋值使用 “” 语句 非阻塞赋值使用“” 语句。 阻塞赋值 在一个“begin…end” 的多行赋值语句 先执行当前行的赋值语句 再执行下一行的赋值语句。 非阻塞赋值 在一个“begin…end” 的多行赋值语句 在同一时间内同时赋值。 beginc a;d c a; endbeginc a;d c a; end上面两个例子中 第1个例子是阻塞赋值 程序会先执行第 1 行 得到结果后再执行第 2 行。第2个例子是非阻塞赋值 两行的赋值语句是同时执行的。 组合逻辑中应使用阻塞赋值“” 时序逻辑中应使用非阻塞赋值“” 。 可以将这个规则牢牢记住 按照这一规则进行设计绝对不会发生错误。 对代码做了如下两处修改(将阻塞赋值修改wield非阻塞赋值同时检测任意信号变化) 仿真波形图如下 如果再将 “下一个状态和输出逻辑” 中的 always (*) begin 修改为always (posedge clk or posedge reset) begin 之后则会出现仿真失败波形图如下 不太清楚是什么原因导致的这个问题 有限状态机FSM与无限状态机的区别 有限状态机FSM 有限状态机具有一个定义良好的状态集这个集合是有限的。通常包括状态、转换、输入和可选的输出。FSM可以是确定性的每个状态和输入组合对应一个唯一的后继状态也可以是非确定性的一个状态和输入组合可以对应多个后继状态。FSM广泛用于硬件设计、协议实现、解析器和其他工程应用。 无限状态机 理论上无限状态机拥有无限多个状态但这在实际硬件设计中不是可行的因为硬件资源是有限的。在软件中无限状态机可能通过数据结构和不断变化的状态信息来模拟无限状态的概念。无限状态机通常是指在概念模型中可能具有无限状态的系统如某些类型的自动机或计算模型。 在实际硬件设计中我们通常处理的是有限状态机。无限状态机更多地是计算理论的一部分用于研究计算能力和复杂性等问题。
http://www.zqtcl.cn/news/309149/

相关文章:

  • 平台网站建设网站邯郸seo优化
  • 做网站着用什么软件盐城网站建设电话
  • 自己的网站wordpress自动变化文字
  • 北京制作网站公司哪家好wordpress小工具不显示不出来
  • 如何建设一个新的网站h5网站建设价格
  • 无锡专业做网站的怎么攻击php做的网站
  • 盐城网站建设代理商wordpress定义字体颜色
  • 成都旅游网站建设地址自己做的网站怎么被搜索出来
  • 网站建设免费免代码商城微网站如何做
  • 网站建设域名是什么东莞网络科技营销
  • 法语网站建设高端网站建设 骆
  • vue网站开发注意事项做设计想接外单去哪个网站好
  • 免费模板下载网站推荐苏州seo
  • 徐州市水利工程建设有限公司网站网站建设技术团队有多重要性
  • 合肥佰瑞网站搜索引擎优化步骤
  • 营销型网站建设亏1广西桂林天气预报15天
  • 想做一个网站平台怎么做公司网站建设费用估计
  • 电商网站开发平台pi netwo网页设计文件下载
  • 南平网站设计笔记本怎么建设网站
  • 舆情分析网站免费人工智能培训班收费标准
  • 青岛网站建设 大公司制作相册视频
  • 什么是网站的域名jquery素材网站
  • 课程网站建设ppt模板百度seo推广
  • 网站建设需要用到什么怎么在电脑上用手机app软件
  • 公司做网站有意义么网站认证必须做么
  • 网站虚拟空间更新缓存php外贸网站建设
  • 河南省建设执业资格注册中心网站门户定制网站建设公司
  • 网站开发比较厉害wordpress中文 插件
  • 文化投资的微网站怎么做个人微信公众号如何推广
  • 单位的网站怎样设计才美观网页设计图片的代码