fpga复位电平与资源消耗对比测试

对fpga开发中使用低电平复位高电平复位消耗的资源情况进行对比测试。

测试代码

c 复制代码
module reg_test(
    input  wire       clk   ,
    input  wire       rst_n ,

    input  wire [3:0] in    ,
    input  wire [1:0] load  ,

    output wire [3:0] out
);

gnrl_dfflr  #(1) u_gnrl_dfflr (load[0],in[0],out[0],clk,rst_n);
gnrl_dfflrs #(1) u_gnrl_dfflrs(load[1],in[1],out[1],clk,rst_n);
gnrl_dffr   #(1) u_gnrl_dffr  (in[2],out[2],clk,rst_n);
gnrl_dffrs  #(1) u_gnrl_dffrs (in[3],out[3],clk,rst_n);

endmodule

gnrl_dff * 寄存器模块来自蜂鸟e203项目,gnrl_dfflrs.v如下:

verilog 复制代码
 module gnrl_dfflrs # (
    parameter DW = 32
  ) (
  
    input               lden, 
    input      [DW-1:0] dnxt,
    output     [DW-1:0] qout,
  
    input               clk,
    input               rst_n
  );
  
  reg [DW-1:0] qout_r;
  
//  always @(posedge clk or negedge rst_n) begin : DFFLRS_PROC
always @(posedge clk )  begin
//    if (rst_n == 1'b0) // 低电平复位
if (rst_n == 1'b1)       // 高电平复位
      qout_r <= {DW{1'b1}};
    else if (lden == 1'b1)
      qout_r <= dnxt;
  end
  
  assign qout = qout_r;
  
endmodule

资源消耗

低电平复位

高电平复位

相关推荐
FPGA小迷弟13 小时前
【无标题】
fpga开发·dsp开发·fpga·sdr·无线电
szxinmai主板定制专家14 小时前
【工控实战】RK3568/RK3588 8路隔离CAN/CANFD完整解决方案|多路总线并行通信、车载/工控量产落地
人工智能·fpga开发·zynq·mpsoc·半导体设备
郝旭帅电子设计团队18 小时前
Xilinx FPGA的BANK标号命令规则
fpga开发·郝旭帅电子设计团队·郝旭帅
威嵌神州1 天前
天脉 3 开发环境与 BSP 适配:IDE license、驱动开发、飞腾平台
ide·驱动开发·嵌入式硬件·fpga开发
FPGA小迷弟1 天前
FPGA 应用技术能力的完整闭环(5-8)
fpga开发·dsp开发·fpga·sdr·无线电
狂奔蜗牛(bradley)1 天前
搞定100ns抖动:ARM+FPGA混合EtherCAT主站实战方案
嵌入式硬件·fpga开发
free-elcmacom2 天前
FPGA学习笔记<2>Verilog输入
fpga开发·硬件工程
学习FPGA的电气小兴兴2 天前
基于FPGA的CORDIC向量模式实现arctan运算,Verilog HDL实现
嵌入式硬件·fpga开发·数字信号处理·verilog·fpga·cordic·arctan
FPGA小迷弟3 天前
FPGA 应用技术能力的完整闭环(1-4)
fpga开发·dsp开发·fpga·sdr·无线电
Eloudy3 天前
FPGA 开发与 IC 数字前端设计
fpga开发