verilog 参数用法

=========================================================================

=========================================================================

参数比较运算

    localparam QPLL_FBDIV_IN  =  (QPLL_FBDIV_TOP == 16)  ? 10'b0000100000 : 
				(QPLL_FBDIV_TOP == 20)  ? 10'b0000110000 :
				(QPLL_FBDIV_TOP == 32)  ? 10'b0001100000 :
				(QPLL_FBDIV_TOP == 40)  ? 10'b0010000000 :
				(QPLL_FBDIV_TOP == 64)  ? 10'b0011100000 :
				(QPLL_FBDIV_TOP == 66)  ? 10'b0101000000 :
				(QPLL_FBDIV_TOP == 80)  ? 10'b0100100000 :
				(QPLL_FBDIV_TOP == 100) ? 10'b0101110000 : 10'b0000000000;

=========================================================================

参数选择编译

generate  
    if(C_CLK_IN_TYPE==0)begin: IBUF_U  
        IBUF    IBUF_u(
            .I(clk_in_p  ),
            .O(clk_in_buf)
        );
    end 
    if(C_CLK_IN_TYPE==1)begin: IBUFDS_U  
        IBUFDS  IBUFDS_u(
            .I (clk_in_p  ),
            .IB(clk_in_n  ),
            .O (clk_in_buf)
        );
    end 
    if(C_CLK_IN_TYPE==2)begin: IBUFDS_GTE2_U  
        IBUFDS_GTE2 IBUFDS_GTE2_u(
            .I (clk_in_p  ),.ODIV2(    ),
            .IB(clk_in_n  ),.CEB  (1'b0),
            .O (clk_in_buf)
        );
    end 
endgenerate
相关推荐
神仙约架7 天前
【FPGA】Verilog 中的 genvar 和 generate 语句教程
fpga开发·verilog·generate·genvar
吾尹先森7 天前
关于FPGA对 DDR4 (MT40A256M16)的读写控制 4
经验分享·fpga开发·verilog
吾尹先森11 天前
军用FPGA软件 Verilog语言的编码准测之三态缓冲器和运算符
经验分享·fpga开发·verilog
吾尹先森17 天前
军用FPGA软件 Verilog语言的编码准测之触发器、锁存器
经验分享·fpga开发·verilog
吾尹先森18 天前
关于FPGA对 DDR4 (MT40A256M16)的读写控制 I
经验分享·fpga开发·verilog
吾尹先森25 天前
基于FPGA的AD5753(DAC数模转换器)的控制 II(SPI驱动)
经验分享·fpga开发·verilog
吾尹先森1 个月前
解决VIvado编程中遇到的bug 4
经验分享·fpga开发·bug·verilog
吾尹先森1 个月前
解决VIvado编程中遇到的bug 5
经验分享·fpga开发·bug·verilog
吾尹先森1 个月前
Verilog HDL中如何控制模块的调用与否
经验分享·fpga开发·verilog·ifdef·generate语句