您的位置:首页 > 房产 > 建筑 > 中国制造网是干什么的_纷享销客官网_西安小程序开发的公司_想做网络推广的公司

中国制造网是干什么的_纷享销客官网_西安小程序开发的公司_想做网络推广的公司

2024/12/29 3:18:48 来源:https://blog.csdn.net/qq_38471068/article/details/143382200  浏览:    关键词:中国制造网是干什么的_纷享销客官网_西安小程序开发的公司_想做网络推广的公司
中国制造网是干什么的_纷享销客官网_西安小程序开发的公司_想做网络推广的公司

采用读热码编写方式:

module top_module(input clk,input in,input areset,output out); ////reg [3:0]A = 4'd0001;// reg [3:0]B = 4'd0010;//reg [3:0]C = 4'd0100;// reg [3:0]D = 4'd1000;
//1、首先用读热码定义四个状态变量parameter A = 4'd0001 ,B = 4'd0010, C = 4'd0100,D = 4'd1000;
//2、定义两个状态(因为4个状态变量为4为所以这两个状态也应该定义为4位)reg [3:0]state,next_state;
//同步时序下的状态复位always@(posedge clk or posedge areset)beginif(areset)state <= A;else state <= next_state;end// 组合逻辑描述状态转移assign next_state[0] = (state[0]&& ~in) || (state[2]&& ~in);assign next_state[1] = (state[0]&& in) || (state[3]&& in )|| (state[1]&& in);assign next_state[2] = (state[1]&& ~in) || (state[3]&& ~in);                   assign next_state[3] = (state[2]&& in);//输出逻辑 assign out = (state[3] == 1);
endmodule

 二进制码 编写方式 :

module top_module(input clk,input in,input areset,output out); ////1、定义两个状态reg [1:0] state,next_state;
//2、二进制码定义4个状态变量parameter A=0,B=1,C=2,D=3;// State flip-flops with asynchronous resetalways@(posedge clk or posedge areset)beginif(areset)state <= A;elsestate <= next_state;end// State transition logicalways@(*)begincase(state)A:next_state = in? B:A;B:next_state = in? B:C;C:next_state = in? D:A;D:next_state = in? B:C;endcaseend// Output logic//assign out = (state == D);always@(posedge clk or posedge areset)beginif(areset)out<= 0;else beginif(next_state == D)out <= 1;elseout <= 0;endendendmodule

注意定义A B C D为 parameter

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com