logo资料库

一段、两端、三段式状态机设计原理详解.pdf

第1页 / 共38页
第2页 / 共38页
第3页 / 共38页
第4页 / 共38页
第5页 / 共38页
第6页 / 共38页
第7页 / 共38页
第8页 / 共38页
资料共38页,剩余部分请下载后查看
制作人:梁瑞宇 单位:河海大学 第五讲状态机设计及其指导原则 1/ 38 第五讲状态机设计及其指导原则 1 状态机是一种设计思想方法 2 状态机结构 3 状态机设计的其他技巧 4 状态机设计步骤
制作人:梁瑞宇 单位:河海大学 第五讲状态机设计及其指导原则 2/ 38  状态机是一种设计思想方法
第五讲状态机设计及其指导原则 3/ 38 制作人:梁瑞宇 单位:河海大学 原语描述 module noconditional (clk,nrst,state,event); input clk,nrst input state; output event; reg event; reg [2:0] CS; //CurrentState reg [2:0] NS; //NextState parameter [2:0] //one hot with zero idle = 3’b000, idle = 3'b001, dorm diningroom = 3'b010, classroom = 3'b100;
制作人:梁瑞宇 单位:河海大学 第五讲状态机设计及其指导原则 4/ 38 //sequential state transition always @ (posedge clk or negedge nrst) if (!nrst) CS <= idle; else CS <= NS; //combinational condition judgment always @ (CS) begin case (CS) idle_task;NS = dorm; idle: dorm: dorm_task;NS = diningroom; diningroom:diningroom_task;NS = classroom; classroom: default: classroom_task;NS = dorm; idle_task;NS = dorm; endcase end endmodule
制作人:梁瑞宇 单位:河海大学 第五讲状态机设计及其指导原则 5/ 38
制作人:梁瑞宇 单位:河海大学 第五讲状态机设计及其指导原则 6/ 38  状态机的本质--对具有逻辑顺序或 时序规律事件的一种描述方法  状态机的两个应用思路: - 从状态变量入手 - 明确电路的输出的关系
制作人:梁瑞宇 单位:河海大学  总结: 第五讲状态机设计及其指导原则 7/ 38 对于逻辑电路而言,小到一个简单的时 序逻辑,大到复杂的微处理器,都适合用状 态机方法进行描述。不要仅仅局限于时序逻 辑,发现电路的内在规律,确认电路的“状 态变量”,大胆使用状态机描述电路模型。 由于状态机不仅仅是一种电路描述工具,它 更是一种思想方法,而且状态机的HDL语言 表达方式比较规范,有章可循,所以很多有 经验的设计者习惯用状态机思想进行逻辑设 计,对各种复杂设计都套用状态机的设计理 念,从而提高设计的效率和稳定性。
制作人:梁瑞宇 单位:河海大学 第五讲状态机设计及其指导原则 8/ 38  状态机结构  摩尔(MOORE)状态机 - 输出只是当前状态值的函数,并且仅在时钟边沿到 来时才发生变化 米立(MEALY)状态机 - 输出则是当前状态值、当前输出值和当前输入值的 函数 注:这两种状态机都是同步的时序电路
分享到:
收藏