2016-11-17 39 views
0

我有一個實體的行爲進行編程:真值表VHDL

library IEEE; 
use IEEE.std_logic_1164.all; 

entity truth_table is 
    port( A,B,C,D : in std_logic; 
      O  : out std_logic); 
end truth_table; 

這種實體與該代碼的文件中聲明:

library IEEE; 
use IEEE.std_logic_1164.all; 

architecture behavior of truth_table is 

begin 

end behavior; 

,並具有以下特性:

•輸入:A,B,C,D類型標準邏輯

•輸出:O類型標準邏輯

第一(代碼)實體應根據下列真值表表現:

enter image description here

與像卡諾威斯(KV圖)的優化算法在此之前的簡化受到鼓勵。

我做了什麼?

enter image description here

上午我在正確的方向前進?

+1

您是否已經完成了優化? –

+0

它總是說過程「Synthesize - XST」失敗@ A.Kieffer – Alena

+2

否。閱讀問題陳述的最後一行。採取提示。 –

回答

4

最好是將您的代碼發佈爲code而不是圖片。即使作爲一個圖像,我可以看到你已經得到:

0 <= A AND B AND C AND D; -- your output is O, not 0 

由於某種原因你重複了兩次相同的任務。

布爾方程與真值表不匹配。

+0

你能幫我怎麼形成布爾方程 – Alena

+0

@Azra在YouTube上有很多視頻與解釋和工作的4變量卡諾圖的例子,做得更好,幫助你理解如何使用它們比我能做的更好這裏有幾段。 –

+0

@Azra抱歉,我不明白'第一個區塊'是什麼意思。只需繪製4x4網格K-map並提取公式。沒有'第一塊'。 –