数字IC设计校招笔试题精选

1、实现一个可以1-7分频任意切换的分频器,要求无论是奇数分频还是偶数分频,分频后的时钟的duty cycle都是50%,请用Verilog语言描述或者画架构图并配合文字加以解释说明。
Verilog HDL程序如下所示:

module fre_div(
    input clk_50m,
    input rst,
    input[2:0] div_sel,  //输入分频数,范围为1-8
    output clk_div
    );

reg rst_o;
reg aa;
reg odd_sel;
reg even_sel;


///异步复位,同步释放///
always @(posedge clk_50m or posedge rst)
    if(rst)begin
       aa <= 1'b1;
       rst_o <= 1'b1;
    end
    else begin
       aa <= 1'b0;
       rst_o <= aa;
    end

///判断是奇数分频还是偶数分频///
always @(posedge clk_50m)
    if(rst_o)begin   
        odd_sel <= 1'b0;
        even_sel <= 1'b0;
    end
    else begin
        if((div_sel != 1'b0) && (div_sel != 1'b1))begin //判断当分频数为0或1时为无效
           if(div_sel[0])begin
               odd_sel <= 1'b1;
               even_sel <= 1'b0;
            end
           else begin
     
  • 5
    点赞
  • 52
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值