Verilog学习笔记(4)Modelsim仿真_计数器_伪随机码发生器

这篇博客主要介绍了如何使用Verilog进行时序逻辑设计,包括计数器和伪随机码发生器的代码实现与Modelsim仿真。在计数器部分,展示了组合逻辑与触发器结合的时序逻辑应用。而在伪随机码发生器部分,探讨了其不能产生全0序列以及最大重复周期的理论。文中还提到了GPS和BDS系统中采用的伪随机码等级。
摘要由CSDN通过智能技术生成

1. 时序逻辑代码设计和仿真

组合逻辑+触发器=时序逻辑

1.1 计数器

 代码:

module con( clk , res , y);

input         clk;
input         res;
output[7:0]   y;

reg[7:0]      y;//触发器,register。触发器定义成reg型变量,才能在awalys里面赋值
wire[7:0]     sum;//+1运算的结果;assign赋值,wire型变量
assign        sum=y+1;//组合逻辑部分

always@(posedge clk or negedge res)//敏感变量为时钟和复位沿
if(~res) begin 
    y<=0;//res为低时y寄存器复位;触发器复位时动作
end
else begin
    y<=sum;//触发器正常工作时的动作,可以不定义sum,直接用y<=y+1
end

endmodule

Test bench:

//Test bench of counter
`timescale 1ns/10ps

module con;

reg        clk,res;
wire[7:0]  y;

con con(
        .clk(clk),
        .res(res),
        .y(y)
        );

initial begin
              clk<=0;res<=0;
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值