我已經得到了通過對FPGA進行編程來製作2位加法器的任務。FPGA如下所示:
但是,我什至不知道如何開始這項任務,因為我不明白自己在看什麼。
這些綠線應該做什麼,那些綠色和紅色形狀又如何?
我希望有人能為我澄清這一點,因為我真的很想理解。
PS:我不知道這對於了解正在發生的事情是否必不可少,但此數字也包括在問題單中:
我已經得到了通過對FPGA進行編程來製作2位加法器的任務。FPGA如下所示:
但是,我什至不知道如何開始這項任務,因為我不明白自己在看什麼。
這些綠線應該做什麼,那些綠色和紅色形狀又如何?
我希望有人能為我澄清這一點,因為我真的很想理解。
PS:我不知道這對於了解正在發生的事情是否必不可少,但此數字也包括在問題單中:
綠色框是IO引腳,藍色線是電線,紅色框是配置位,灰色框是邏輯塊。紅框可以為所連接的任何內容提供恆定的邏輯0或邏輯1。
每個邏輯塊實現一個3輸入,1輸出查找表(三個輸入的邏輯電平的組合確定選擇了八個配置位中的哪一個),並具有一個可旁路的觸發器。您的帖子還顯示了LUT實現的真值表,指示為s0,s1和s2的每個組合選擇了哪個配置位。
例如,連接藍色導線交叉點處的紅色框以通過導線之間的通過門。將其中之一設置為1會將水平線和垂直線連接在一起,將其設置為0會使電線斷開連接。
您需要做的是在每個紅色框中寫一個1或0,以便使頂部綠色框中的輸入信號通過邏輯塊發送,您需要對其進行配置以實現必要的邏輯執行操作。看起來他們希望您將{a1,a0},{b1,b0}和ci加在一起。
以下是如何實現3輸入或門的示例:
所有空白框均假定為邏輯0。這需要3個輸入a0,b0和ci,計算邏輯或,並在自由引腳上輸出結果。需要注意的主要事情是配置位如何控制通過門將三個輸入信號連接到邏輯塊上的三個輸入並將輸出連接到自由輸出引腳,以及邏輯塊如何實現“或”功能-全部為0輸入為0,否則為1,並旁路了觸發器。
您發表了自己的解釋。仔細看看您自己的圖片:
紅色框是用來標記值或信號的標籤框,代表控制連接水平線和垂直線(綠線)的開關的信號。除非開關(由紅色框中的值控制的晶體管)執行此操作,否則水平導線和垂直導線交叉時不會在結點處連接
綠色線是電線,紅色框是連接,您可以使用開關將綠色線連接到塊。開關位於紅色方框中,如果啟用,它可以將兩條線連接在一起。
這是現代FPGA的工作量。但是,無需手動執行此操作,而是由硬件合成器為您解決。哎呀,當您完成這項作業時,您可以編寫自己的基本硬件合成器!