Verilog实现序列产生器(状态转移形,移位形,计数形)

本文详细介绍了使用Verilog实现序列产生器的三种方法:状态转移形式、循环移位形式和计数器译码形式。针对每种方法,作者提供了设计思路、Verilog代码示例、仿真输出和RTL电路图,以1011序列为例进行阐述。
摘要由CSDN通过智能技术生成

Verilog实现序列产生器是Verilog基础学习甚至求职面试时的一个常见问题,它用到计数器、状态机、移位寄存器等一系列知识。因此有必要进行学习与仿真:

一、思路

    状态转移形(利用状态机转移,逐个输出序列值);
    移位寄存器形(输入整个序列,在时钟驱动下不断按顺序循环输出序列中的某一位,从而实现序列的循环输出);
    计数形(计数与组合逻辑相结合,通过卡诺图化简得到计数值与输出的关系);

仿真:简单起见,假定实现1011序列

二、状态转移形式

采用思路一,设计状态机,实现几个状态循环转移的过程,每一个状态输出对应序列值,实现序列输出;

状态设置:

设置为四个状态,s0=2'b0、s1=2'b1、s2=2'b10、s3=2'b11(常见编码方式有二进制编码、格雷码、独热码,此处选为二进制码)

状态机设置:

三段式描述方式(时序逻辑描述状态转移、组合逻辑描述状态转移条件、时序逻辑描述输出)

Verilog代码如下:

`timescale 1ns / 1ps
//
// Company: 
// Engineer: guoliang CLL
// 
// Create Date: 2020/02/21 00:20:42
// Design Name: 
// Module Name: seq_gen_fsm
// Project 
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值