M
MRFGUY
Guest
我只是试图研究密克罗尼西亚。
我只是说用有限状态机的Verilog 1。我的计划是销售15票。用户被允许添加5或10。每当达到15票会出来
, 回到开始状态。如果达到20,票证和变化5,回到开始状态。它似乎在这个时候确定。(但让我知道我应该改变我的程序)
但我也想显示在两个7秒展示架。如多少用户需要增加更多的获得门票。在这一点上我不知道如何添加。
如果我想分成两个条件,7秒(目前领导下领导)。
我已经在这里附上我的程序。
谢谢`时间表1ns的/ 1ps
////////////////////////////////////////////////// //////////////////////////////
/ /公司:
/ /工程师:
/ /
/ /创建日期:16时15分○八秒08/29/05
/ /设计名称:
/ /模块名称:sell_ticket
/ /项目名称:
/ /目标设备:
/ /工具版本:
/ /描述:销售15票。如果用户增加15只票将出来。
/ /如果用户增加20机器chnage 5票就会出来。
/ /
/ /依赖关系:
/ /
/ /修订:
/ /版本0.01 -文件创建
/ /附加说明:
/ /
////////////////////////////////////////////////// //////////////////////////////
模块sell_ticket(甲,乙,复位,时钟,吨,三);
输入的A,B,复位,时钟/ / 1为5 $投入和b是10 $输入
输出吨,ç; / / c是硬币的变化和t是机票
章吨,荤;
第[2:0]的状态,next_state;
参数零= 3'b000;
参数5 = 3'b001;
参数10 = 3'b010;
参数15 = 3'b011;
参数20 = 3'b100;总是@(posedge时钟)
开始
如果(复位)
国家“= 0;
其他的
国家“= next_state;
末端
总是@(甲,乙,州)
开始
案(国家)
零:案((B,是一种))
2'b00:next_state = 0;
2'b01:next_state = 5;
默认值:next_state = 10;
endcase
五:案((B,是一种))
2'b00:next_state = 5;
2'b01:next_state = 10;
默认值:next_state = 15;
endcase
10:案((B,是一种))
2'b00:next_state = 10;
2'b01:next_state = 15;
默认值:next_state = 20;
endcase
默认值:next_state = 0;
endcase / /国家的国家案件结束
为此/ /永远结束总是@(州)
开始
案(国家)
15:(吨,C)的= 2'b10;
20:(吨,C)的= 2'b11;
默认值:(吨,C)的= 2'b00;
endcase
末端
endmodule
我只是说用有限状态机的Verilog 1。我的计划是销售15票。用户被允许添加5或10。每当达到15票会出来
, 回到开始状态。如果达到20,票证和变化5,回到开始状态。它似乎在这个时候确定。(但让我知道我应该改变我的程序)
但我也想显示在两个7秒展示架。如多少用户需要增加更多的获得门票。在这一点上我不知道如何添加。
如果我想分成两个条件,7秒(目前领导下领导)。
我已经在这里附上我的程序。
谢谢`时间表1ns的/ 1ps
////////////////////////////////////////////////// //////////////////////////////
/ /公司:
/ /工程师:
/ /
/ /创建日期:16时15分○八秒08/29/05
/ /设计名称:
/ /模块名称:sell_ticket
/ /项目名称:
/ /目标设备:
/ /工具版本:
/ /描述:销售15票。如果用户增加15只票将出来。
/ /如果用户增加20机器chnage 5票就会出来。
/ /
/ /依赖关系:
/ /
/ /修订:
/ /版本0.01 -文件创建
/ /附加说明:
/ /
////////////////////////////////////////////////// //////////////////////////////
模块sell_ticket(甲,乙,复位,时钟,吨,三);
输入的A,B,复位,时钟/ / 1为5 $投入和b是10 $输入
输出吨,ç; / / c是硬币的变化和t是机票
章吨,荤;
第[2:0]的状态,next_state;
参数零= 3'b000;
参数5 = 3'b001;
参数10 = 3'b010;
参数15 = 3'b011;
参数20 = 3'b100;总是@(posedge时钟)
开始
如果(复位)
国家“= 0;
其他的
国家“= next_state;
末端
总是@(甲,乙,州)
开始
案(国家)
零:案((B,是一种))
2'b00:next_state = 0;
2'b01:next_state = 5;
默认值:next_state = 10;
endcase
五:案((B,是一种))
2'b00:next_state = 5;
2'b01:next_state = 10;
默认值:next_state = 15;
endcase
10:案((B,是一种))
2'b00:next_state = 10;
2'b01:next_state = 15;
默认值:next_state = 20;
endcase
默认值:next_state = 0;
endcase / /国家的国家案件结束
为此/ /永远结束总是@(州)
开始
案(国家)
15:(吨,C)的= 2'b10;
20:(吨,C)的= 2'b11;
默认值:(吨,C)的= 2'b00;
endcase
末端
endmodule