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

崂山网站建设做外贸网站 用国外空间 还是 国内空间 区别

崂山网站建设,做外贸网站 用国外空间 还是 国内空间 区别,公司宣传册设计模板,网页传奇手游排行榜前十名状态机模板 1、一段式状态机1.1 一段式状态机模板代码1.2 一段式状态机结构特点说明 2、二段式状态机2.1 二段式状态机模板代码2.2 二段式状态机结构特点说明 3、三段式状态机3.1 三段式状态机模板代码3.2 三段式结构特点说明 4、总结区分4.1 三种架构对比表4.2 设计建议 1、一…

状态机模板

  • 1、一段式状态机
    • 1.1 一段式状态机模板代码
    • 1.2 一段式状态机结构特点说明
  • 2、二段式状态机
    • 2.1 二段式状态机模板代码
    • 2.2 二段式状态机结构特点说明
  • 3、三段式状态机
    • 3.1 三段式状态机模板代码
    • 3.2 三段式结构特点说明
  • 4、总结区分
    • 4.1 三种架构对比表
    • 4.2 设计建议

1、一段式状态机

1.1 一段式状态机模板代码

module fsm_one_segment (input               clk,input               rst_n,input               [输入信号],output reg          [输出信号]
);parameter [1:0] IDLE   = 2'b00,STATE1 = 2'b01,STATE2 = 2'b10;reg [1:0] current_state;always @(posedge clk or negedge rst_n) beginif (!rst_n) begincurrent_state <= IDLE;[输出信号]    <= 默认值;end else begincase (current_state)IDLE: begin[输出信号] <= 值1;if (转移条件) begincurrent_state <= STATE1;endendSTATE1: begin[输出信号] <= 值2;if (条件1) begincurrent_state <= STATE2;endenddefault: begincurrent_state <= IDLE;[输出信号] <= 默认值;endendcaseend
endendmodule

1.2 一段式状态机结构特点说明

  • 特点:所有逻辑在一个时序块中完成,代码结构简单,代码量小。
  • 缺点:代码可读性差,易产生锁存器,不推荐复杂设计。

2、二段式状态机

2.1 二段式状态机模板代码

module fsm_two_segment (input               clk,input               rst_n,input               [输入信号],output reg          [输出信号]
);// ================== 状态定义 ==================
parameter [1:0] IDLE   = 2'b00,STATE1 = 2'b01,STATE2 = 2'b10;reg [1:0] current_state;
reg [1:0] next_state;// ============== 状态寄存器(第一段)==============
always @(posedge clk or negedge rst_n) beginif (!rst_n) begincurrent_state <= IDLE;end else begincurrent_state <= next_state;end
end// ============== 状态转移+输出逻辑(第二段)==============
always @(*) begin// 默认值和状态转移初始化next_state = current_state;[输出信号] = 默认值;case (current_state)IDLE: begin[输出信号] = 值1;  // 输出逻辑if (转移条件) beginnext_state = STATE1;endendSTATE1: begin[输出信号] = 值2;if (条件1) beginnext_state = STATE2;end else if (条件2) beginnext_state = IDLE;endenddefault: beginnext_state = IDLE;[输出信号] = 默认值;endendcase
endendmodule

2.2 二段式状态机结构特点说明

特点:将状态转移逻辑与输出逻辑合并(输出在时序逻辑中)
优点:规避组合逻辑输出的毛刺,代码结构更简洁

3、三段式状态机

3.1 三段式状态机模板代码

module fsm_three_segment (input               clk,        // 时钟input               rst_n,      // 异步复位(低有效)input               [输入信号声明],output reg          [输出信号声明]
);
// ========================= 状态定义 =========================
// 建议使用独热码(one-hot)或二进制编码
parameter [STATE_WIDTH-1:0] IDLE    = 0,STATE1  = 1,STATE2  = 2;reg [STATE_WIDTH-1:0] current_state;
reg [STATE_WIDTH-1:0] next_state;// ===================== 状态寄存器(第一段)=====================
always @(posedge clk or negedge rst_n) beginif (!rst_n) begincurrent_state <= IDLE;      // 复位初始状态end else begincurrent_state <= next_state; // 状态更新end
end// ===================== 状态转移逻辑(第二段)=====================
always @(*) begin// 默认保持当前状态next_state = current_state; case (current_state)IDLE: beginif (触发条件) beginnext_state = STATE1;endendSTATE1: beginif (状态转移条件1) beginnext_state = STATE2;end else if (状态转移条件2) beginnext_state = IDLE;endendSTATE2: beginif (状态转移条件) beginnext_state = IDLE;endenddefault: next_state = IDLE; // 避免锁存endcase
end// ===================== 输出逻辑(第三段)=====================
always @(posedge clk or negedge rst_n) beginif (!rst_n) begin// 复位输出初始化[输出信号] <= 默认值;end else begincase (current_state)IDLE: begin// 状态对应输出[输出信号] <= 值1;endSTATE1: begin[输出信号] <= 值2;endSTATE2: begin[输出信号] <= 值3;enddefault: [输出信号] <= 默认值;endcaseend
endendmodule

3.2 三段式结构特点说明

  • 特点:逻辑分层明确,代码简洁且符合同步设计规范。
  • 优点:规避毛刺问题,综合优化友好,模块化设计,易扩展性好。

4、总结区分

一段式:所有逻辑混在一个 always 块中,代码臃肿且难以维护。易因条件覆盖不全产生锁存器,但其代码量少易于构建使用,简单状态逻辑可以使用。
两段式(组合输出型):两段式一般将状态转移和输出逻辑合并,或者将状态寄存器和转移逻辑分开,输出逻辑为组合电路,其可能产生毛刺,需额外同步电路处理,状态转移和输出逻辑混合,代码可读性降低。
三段式:三段式状态机通常分为三个部分,状态寄存器(时序)、状态转移逻辑(组合)和输出逻辑(时序或组合),输出逻辑用时序电路,直接规避毛刺问题,逻辑分层明确,代码简洁且符合同步设计规范。

4.1 三种架构对比表

类型代码结构毛刺风险可维护性推荐场景
三段式状态寄存 + 转移 + 输出时序/组合
两段式状态寄存 + (转移+输出)时序或组合
一段式单时序块完成所有逻辑时序

4.2 设计建议

  • 推荐使用 parameter 定义状态(而非 define)
  • FPGA 建议使用独热码(one-hot),ASIC 建议用二进制编码
  • 每个状态对应独立的输出逻辑
  • 所有条件分支必须覆盖所有可能性
  • 必须包含 default 处理未定义状态
  • 建议对状态机做容错处理(例如添加看门狗)

文章转载自:

http://kSGYpUxi.ywpwq.cn
http://jTwtyEbf.ywpwq.cn
http://lI1vC3qE.ywpwq.cn
http://nh0ZIvyf.ywpwq.cn
http://nlKe7eWq.ywpwq.cn
http://PNxb1cfz.ywpwq.cn
http://zJMVNtrJ.ywpwq.cn
http://BR5OiGGK.ywpwq.cn
http://G6kxYOJf.ywpwq.cn
http://xnZ7jYJs.ywpwq.cn
http://upTJxv1x.ywpwq.cn
http://lPy6gchr.ywpwq.cn
http://FB6BvjHB.ywpwq.cn
http://hORTSmtR.ywpwq.cn
http://dSzzddOC.ywpwq.cn
http://9F0u9nHc.ywpwq.cn
http://x8qXZDKD.ywpwq.cn
http://kz65nE1z.ywpwq.cn
http://x0HoroH5.ywpwq.cn
http://AKjWODps.ywpwq.cn
http://ZPsmr9B5.ywpwq.cn
http://YDyXfcrt.ywpwq.cn
http://RxVL3VwA.ywpwq.cn
http://clodgHa6.ywpwq.cn
http://lZjgvMqC.ywpwq.cn
http://AjY2a6DK.ywpwq.cn
http://LClnQ1NP.ywpwq.cn
http://RHR1vkLp.ywpwq.cn
http://PPqv2DFJ.ywpwq.cn
http://RjnvNrNk.ywpwq.cn
http://www.dtcms.com/wzjs/662892.html

相关文章:

  • 网站建设与维护是什么内容?简单wordpress主题
  • 微官网和公众号的区别网站建设优化哪家公司好
  • 网站模块源码百度小说app
  • 天津电子商务网站秦皇岛海三建设没钱了
  • 沈阳住房城乡建设部网站软件外包app
  • 有人拉我做彩票网站seo职位
  • 公众号怎么做微网站吗公司起名字大全免费三字
  • 搞网站开发的程序员属于哪一类平台门户网站建设方案
  • 做网站要不要交税好看的静态页面
  • 光谷做网站推广哪家好网站建设线框图
  • 国内漂亮大气的网站做好网站建设
  • 网站引导页利弊长沙专业做网站公司哪家好
  • 网站改版设计方案高端网站建设方案
  • 中山教育平台网站建设上海南桥网站建设
  • 国外网站建设模板wordpress不显示中文图片
  • 做网站有必要要源码吗wordpress开放用户注册
  • 网站建设款计入什么科目网站的基本布局
  • 海参企业网站怎么做设置网站的关键词
  • 企业网站用什么技术做网站开发 平面设计
  • 上海网站空间续费程序员接单网站
  • 做离线版申报表进入哪个网站seo的工作原理
  • 黄山网站设计公司秦皇岛市建设局
  • 网站开发的技术可行性怎么写ppt网站建设答案
  • 网站菜单栏代码网站建设外包费用
  • 企业网站托管费用云建站自动建站系统源码
  • 自己做网站卖东西可以企业购网站建设
  • 家庭清洁东莞网站建设技术支持app定制网站开发
  • 江苏省建设考试网站营销网站制作信ls15227
  • 企业网站建设的定位东莞凤岗网站建设
  • 海口智能建站价格低多边形网站