「Verilog学习笔记」游戏机计费程序

专栏前言

本专栏的内容主要是记录本人学习Verilog过程中的一些知识点,刷题网站用的是牛客网

复制代码
`timescale 1ns/1ns

module game_count
    (
		input rst_n, //异位复位信号,低电平有效
        input clk, 	//时钟信号
        input [9:0]money,
        input set,
		input boost,
		output reg[9:0]remain,
		output reg yellow,
		output reg red
    );
        always @ (posedge clk or negedge rst_n) begin 
            if (~rst_n) remain <= 0 ;  
            else if (boost) remain <= set ? remain + money : remain < 2 ? remain : remain - 2 ; 
            else remain <= set ? remain + money : remain < 1 ? remain : remain - 1 ; 
        end

        always @ (posedge clk or negedge rst_n) begin 
            if (~rst_n) begin 
                yellow <= 0 ; 
                red <= 0 ; 
            end
            else begin 
                yellow <= remain && remain < 10 ; 
                red <= boost ? remain < 2 : remain < 1 ;
            end
        end
endmodule
相关推荐
春风解人意2 小时前
从零开始学习嵌入式P32----网络基础之TCP
c语言·网络·学习·tcp/ip
李帅朋2 小时前
微分基本定义笔记
人工智能·笔记·深度学习·神经网络
传奇开心果编程4 小时前
【Rust入门知识点学与练】第21课:Trait 进阶 Advanced Traits
开发语言·学习·rust
水巷石子4 小时前
备考系统架构设计师第一天
学习·架构·软考·设计·考试
是隼人4 小时前
buuctf-pwn inndy_echo(32位fmt)题解(学习过程持续更新)
c语言·学习·安全·pwn入门·ctf入门
xian_wwq5 小时前
【学习笔记】深度认知系列-第16讲-提示词工程
人工智能·笔记·学习
洛阳纸贵5 小时前
MATLAB-matlab基础知识
学习·算法·matlab
Vcaker5 小时前
Linux学习25-harbor私有仓库部署
linux·运维·学习
留白_6 小时前
【tableau入门学习】5、筛选器、参考线和集
学习·tableau
youm20036 小时前
认识Redis
redis·笔记·学习