新闻中心

EEPW首页>消费电子>设计应用> 实验16:扭环形计数器

实验16:扭环形计数器

作者: 时间:2023-10-12 来源:电子森林 收藏

实验目的

本文引用地址://m.amcfsurvey.com/article/202310/451437.htm

(1)熟悉和掌握开发流程和软件使用方法;

(2)通过实验理解和掌握原理;

(3)学习用行为级描述时序逻辑电路。

实验任务

设计一个右移

实验原理

将移位寄存器的输出非q0连接到触发器q3的输入,这样就构成了一个。初始化复位时,给q0一个初值0000,则在循环过程中依次为:000010001100111011110111001100010000。

建模描述

用行为级描述右移扭环形计数器

程序清单twist.v


module twist #

(

parameter CNT_SIZE = 8

)

(input clk,rst, //时钟和复位输入output reg [CNT_SIZE-1:0] cnt//计数器输出);always@(posedge clk)

if(!rst)

cnt <= 8'b0000_0001; //复位初值

else

cnt <= {~cnt[0],cnt[CNT_SIZE-1:1]}; //右移循环计数endmodule


仿真文件twist_tb.v


`timescale 1ns/100ps //仿真时间单位/时间精度module twist_tb;reg clk,rst;wire [7:0]q;initial

begin

clk =0;

rst =0;

#20

rst =1;

endalways#10 clk =~clk;twist u1 (

.clk(clk),

.rst(rst),

.cnt(q)

);endmodule

实验步骤

打开,建立工程。

新建设计文件,并键入设计代码。

根据仿真教程,实现对本工程的仿真,验证仿真结果是否与预期相符。

仿真结果和实验现象



评论


相关推荐

技术专区

关闭