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

资源消耗

低电平复位

高电平复位

相关推荐
ALINX技术博客3 小时前
【黑金云课堂】FPGA技术教程Linux开发:NVMe/Qt/OpenCV人脸检测
linux·qt·fpga开发
第二层皮-合肥3 小时前
【数据采集专栏】触发模式的设计
fpga开发
第二层皮-合肥3 小时前
【数据采集专栏】通道触发设计要点
fpga开发
高速上的乌龟3 小时前
Lattice LFCPNX-100 HSB+Fpga开发详解:2.4 Hololink I2C外设控制深度全解析
fpga开发
Kent Gu4 小时前
MCU & FPGA调试
单片机·嵌入式硬件·fpga开发
浩子智控5 小时前
EtherCAT技术概述
嵌入式硬件·fpga开发·硬件工程·信号处理
我爱C编程6 小时前
【仿真测试】基于FPGA的8ASK扩频通信链路实现,包含帧同步,定时点,扩频伪码同步,信道,误码统计
fpga开发·帧同步·定时点·扩频通信·8ask·扩频伪码
德思特6 小时前
软件定义GNSS模拟器技术原理与优势深度解析
fpga开发
GateWorld7 小时前
LCD显示技术完全指南:原理·制造·驱动·FPGA实现之点屏四 LVDS
fpga开发·lcd显示·fpga点亮屏幕·minilvds