testbench中inout型別埠的處理方式

2021-05-25 12:03:35 字數 491 閱讀 3567

測試平台中需要宣告與待測模組輸入輸出埠對應的變數。與輸入埠相連線的變數定義為reg

,與輸出埠相連線的變數定義為

wire。雙向埠inout在測試中需要進行簡單的處理。方法如下:

為雙向埠設定中間變數inout_reg作為該inout的輸出寄存,inout埠在testbench中要定義為wire型變數,然後用輸出使能控制傳輸方向。

eg:inout [0:0]  bi_dir_port;

在testbench中處理方式如下:

wire  [0:0]  bi_dir_port;

reg   [0:0]  bi_dir_port_reg;

reg   bi_dir_port_oe;

assign bi_dir_port=bi_dir_port_oe?bi_dir_port_reg:1'bz;

用bi_dir_port_oe控制埠資料方向,並利用中間變數暫存器改變其值。等於兩個模組之間用inout雙向口互連。

關於巨集IN OUT和INOUT的說明

define out define in define inout include define out define in define inout void function1 out int p void function2 in int p void function3 inout int ...

testbench的檔案讀寫

reg 7 0 data mem 0 255 定義乙個8bit x 256的陣列 initial begin readmemh sin.txt data mem 將sin.txt中的資料讀入儲存器data mem end後面就可以用 data mem 作為你的測試資料了。例如可以通過以下 將 dat...

Oracle 中in out引數實現數字交換

in out引數 in引數可以接收乙個值,但是不能在儲存過程中修改這個值,而對於out引數,它在呼叫過程時為空,在過程執行中將為為這個引數指定乙個值,並在執行後返回.而in out引數同時具有了in引數和out引數的特性,在過程中可以讀取和寫入該型別的引數。比如下面是乙個典型的案例交換兩個數 sql...