- 35
- 0
- 约 10页
- 2020-03-13 发布于江西
- 举报
Moore 型 verilog 源代码:FSM 实现 10010 串的检测
Moore 状态转移图
module moorefsm(clk,rst,a,z);
input clk,rst;
input a;
output z;
reg z;
reg [3:0] currentstate,nextstate;
parameter S0 = 4b0000;
parameter S1 = 4b0001;
parameter S2 = 4b0010;
parameter S3 = 4b0011;
parameter S4 = 4b0100;
parameter S5 = 4b0101; always@(posedge clk or negedge rst)
begin
if(!rst)
currentstate = S0;
else
currentstate = nextstate;
end
always@(currentstate or a or rst)
begin
if(!rst)
nextstate = S0;
else
case(currentstate)
S0: nextstate = (a==1)?S1:S0;
S1: nextstate = (a==0)?S2:S1;
S2: nextstate = (a==0)?S3:S1;
S3: nextstate = (a==1)?S4:S0;
S4: nextstate = (a==0)?S5:S1;
S5: nextstate = (a==0)?S3:S1;
: nextstate = S0;
end
always@(rst or currentstate)
begin
if(!rst)
z = 0;
else
case(currentstate)
S0: z = 0;S1: z = 0;S2: z = 0; S3: z = 0;S4: z = 0;S5: z = 1; default: z = 0;
endcase
end
endmodule
moorefsm 测试模块 testbench module tb_fsm;
reg clk,rst;
reg a;
wire z;
moorefsm
fsm(.clk(clk),.rst(rst),.a(a),.z(z));
initial
begin
clk = 0;
rst = 1;
#5 rst = 0;
#3 rst = 1;
#20 a = 1;
#100 a = 1;
#100 a = 0;
#100 a = 0;
#100 a = 1;
#100 a = 0;
#100 a = 0;
#100 a = 1;
#100 a = 0;
#100 a = 0;
#100 a = 0;
#100 a = 0;
#100 a = 1;
#100 a = 0;
#100 a = 0;
#100 a = 1;
#100 a = 0;
#100 a = 1;
#100 a = 0;
end
always #50 clk = ~clk;
endmodule
Mealy 型 verilog 源代码:FSM 实现 10010 串的检测
Mealy 状态转移图
module mealyfsm(clk,rst,a,z);
input clk;
input rst;
input a;
output z;
reg z;
reg [3:0] temp_z;
reg [3:0] currentstate,nextstate;
parameter S0 = 4b0000;
parameter S1 = 4b0001;
parameter S2 = 4b0010;
parameter S3 = 4b0011;
parameter S4 = 4b0100; always@(posedge clk or negedge rst)
if(!rst)
currentstate = S0;
else
currentstate = nextstate; always@(currentstate or a or rst)
if(!rst)
nextstate = S0;
else
case(currentstate)
S0: nextstate = (a == 1)? S1 : S0; S1: nextstate = (a == 0)? S2 : S1; S2: nextstate = (a == 0)? S3 : S1; S3: nextstate = (a == 1)? S4 : S0; S4: nextstate = (a == 0)? S2 : S0; default:nextstate = S0;
endcase
always@(rst or curren
您可能关注的文档
- Verilog出租车计费器课程设计.docx
- vdhl语言出租车计费器课程设计报告.docx
- Verilog流水灯实验报告.docx
- Verilog语言的自动售货机.docx
- VEX部分零件名称及图片对照表.docx
- VHDL各种D触发器程序.docx
- VF期末考试试题.docx
- VHDL实现多路彩灯控制器.docx
- VHDL程序练习题(含答案).docx
- VHDL花样彩灯控制器的设计.docx
- 良肢位摆放在骨科康复中的应用.ppt
- 2026精选人教版一年级上册数学期末考试试卷(3套含答案解析).docx
- 2026新版人教版三年级上册语文期末考试试卷(3套含答案解析).pdf
- 2026精选人教版四年级上册英语期末考试试卷(3套含答案解析).pdf
- 2026新版人教版三年级上册数学期末考试试卷(3套含答案解析).pdf
- 2026新版人教版三年级下册数学期末考试试卷(3套含答案解析).docx
- 2026精选人教版四年级上册英语期末考试试卷(3套含答案解析).docx
- 2026新版人教版三年级上册语文期末考试试卷(3套含答案解析).docx
- 良肢位摆放与康复训练的结合.ppt
- 良肢位摆放在儿童康复中的应用.ppt
最近下载
- 2025年华侨港澳台生入学考试高考数学试卷真题.pdf VIP
- 2023年06月国家国防科技工业局核技术支持中心社会招考聘用笔试历年难、易错考点试题含答案解析.docx
- 统编版选择性必修下背诵篇目汇总.doc VIP
- 第十单元 课题2 酸和碱的中和反应(二)酸碱度 pH(学生版)-九年级化学下册同步讲义(人教版).docx VIP
- HPB300热轧光圆钢筋盘条的控轧控冷工艺优化.pdf VIP
- 产品碳足迹核算与评价课件:区域层级碳足迹.pptx VIP
- 产品碳足迹核算与评价课件:供应链碳足迹的概念与政策.pptx VIP
- 产品碳足迹核算与评价课件:数据管理计划的制定.pptx VIP
- 2024年初中化学同步讲义(人教版)第10单元 课题2 酸和碱的中和反应(一)(学生版).pdf VIP
- 产品碳足迹核算与评价课件:分配原则及方法.pptx VIP
原创力文档

文档评论(0)