2015-05-26 75 views
0

我對VHDL世界有點新鮮,需要一些對許多人來說可能看起來微不足道的指導。VHDL雙向測試平臺 - UUT模塊

我想要的是構建一個雙向的Testbench-UUT模塊,在那裏我將能夠從我的主模塊中控制testbench給出的輸入流。

實際上,當我準備好處理新的輸入時,我需要對我的測試平臺說。

類似於,從我的'main'模塊中引發一個標誌,它將使測試臺能夠推入新的輸入。這可能由if語句控制,如果該標誌'up'允許下一個輸入在流動。

我與INOUT港口擺弄周圍,但沒有那種管理它這樣...

可否請你幫助我,如果可能的話給出一些簡短的示例代碼?這樣做的

回答

1

一個非常簡單的方法就是在你的測試平臺使用wait until在刺激過程。如果你從你正在測試的模塊輸出數據就緒信號,它只是看起來像:

STIMULUS_PROCESS: process 
    while (not loopCondition) loop 
     -- Apply stimulus to the inputs 
     wait until dataReady = '1'; 
     -- Read the outputs and repeat. 
    end loop; 
end process; 
+0

你好,非常感謝你的回覆!恐怕這就是我想要做的......但是如果沒有靈敏度列表來觸發不同事件的過程,那麼你提到的'loopCondition'doesn因爲loopCondition參數「不會進入」,因此粗略地講, –

+0

在仿真中,沒有靈敏度列表的過程「連續運行」。如果沒有靈敏度列表,則必須在該過程中有一個等待語句。 – Ian

0

最後,我不得不包括我測試平臺過程中的靈敏度列表中,將包含任何標誌將是有益的用於觸發下一個輸入。 G