天天看點

(16)verilog 條件編譯(FPGA不積跬步101)

名言:不為失敗找借口!

1 什麼是條件編譯?

一般情況下,Verilog HDL源程式中所有的行都将參加編譯。調試中希望隻對一部分内容指定編譯的條件,這就是“條件編譯”。

2 為什麼要使用條件編譯?

在FPGA設計中,可能有的子產品是不使用的,但某時候可能需要使用。這種情況下,就可以發揮條件編譯的優勢。

使用建議:條件編譯一般在調試中使用,調試結束可以去掉條件編譯。

3 條件編譯格式是什麼?

條件格式一:

`ifdef 宏名稱

  程式1

`else

  程式2

`endif

條件格式二:

`ifdef 宏名稱

  程式1

`endif

4 條件編譯示例

條件編譯verilog代碼如下:

`timescale 1ns / 1ps

//`define  ABCD  //定義ABCD,如果取消定義,注釋此句即可

module test_ifdef(

  sys_clk       ,

  sys_reset     ,

  o_data        );

input        sys_clk  ;

input        sys_reset;

output [7:0] o_data   ;

wire  [7:0] o_data