'什麼是LUT原理,看完這篇文章你就知道了'

Flash 軟件 文章 與非門 電子工程師小李 2019-08-27
"

查找表(Look-Up-Table)簡稱為LUT,其本質就是一個RAM。目前FPGA中多使用4輸入的LUT,所以每一個LUT可以看成一個有4位地址線的16×1的RAM。當用戶通過原理圖或HDL語言描述了一個邏輯電路以後,PLD/FPGA開發軟件會自動計算邏輯電路的所有可能的結果,並把結果事先寫入RAM。這樣,每輸入一個信號進行邏輯運算就相當於輸入一個地址進行查表,找出地址對應的內容,然後將其輸出即可。

我們知道,一個n輸入的邏輯運算,不管是與或非運算還是異或運算,最多隻可能存在2 n 種結果,如表1-1的4輸入與門共有16種輸出結果。這樣就將實際邏輯電路轉換成了LUT結構。

表1-1 4輸入與門的真值表

"

查找表(Look-Up-Table)簡稱為LUT,其本質就是一個RAM。目前FPGA中多使用4輸入的LUT,所以每一個LUT可以看成一個有4位地址線的16×1的RAM。當用戶通過原理圖或HDL語言描述了一個邏輯電路以後,PLD/FPGA開發軟件會自動計算邏輯電路的所有可能的結果,並把結果事先寫入RAM。這樣,每輸入一個信號進行邏輯運算就相當於輸入一個地址進行查表,找出地址對應的內容,然後將其輸出即可。

我們知道,一個n輸入的邏輯運算,不管是與或非運算還是異或運算,最多隻可能存在2 n 種結果,如表1-1的4輸入與門共有16種輸出結果。這樣就將實際邏輯電路轉換成了LUT結構。

表1-1 4輸入與門的真值表

什麼是LUT原理,看完這篇文章你就知道了

A,B,C,D由FPGA芯片的引腳輸入後進入可編程連線,然後作為地址線連到LUT。LUT中已經事先寫入了所有可能的邏輯結果,通過地址查找到相應的數據,然後將其輸出,這樣就實現了組合邏輯。該電路中 D 觸發器是直接利用 LUT 後面的 D觸發器來實現的。時鐘信號CLK由I/O腳輸入後進入芯片內部的時鐘專用通道,直接連接到觸發器的時鐘端。觸發器的輸出端與 I/O 腳相連,把結果輸出到芯片引腳,這樣PLD就完成了圖1-7所示電路的功能(以上步驟都是由軟件自動完成的,不需要人為干預)。

"

查找表(Look-Up-Table)簡稱為LUT,其本質就是一個RAM。目前FPGA中多使用4輸入的LUT,所以每一個LUT可以看成一個有4位地址線的16×1的RAM。當用戶通過原理圖或HDL語言描述了一個邏輯電路以後,PLD/FPGA開發軟件會自動計算邏輯電路的所有可能的結果,並把結果事先寫入RAM。這樣,每輸入一個信號進行邏輯運算就相當於輸入一個地址進行查表,找出地址對應的內容,然後將其輸出即可。

我們知道,一個n輸入的邏輯運算,不管是與或非運算還是異或運算,最多隻可能存在2 n 種結果,如表1-1的4輸入與門共有16種輸出結果。這樣就將實際邏輯電路轉換成了LUT結構。

表1-1 4輸入與門的真值表

什麼是LUT原理,看完這篇文章你就知道了

A,B,C,D由FPGA芯片的引腳輸入後進入可編程連線,然後作為地址線連到LUT。LUT中已經事先寫入了所有可能的邏輯結果,通過地址查找到相應的數據,然後將其輸出,這樣就實現了組合邏輯。該電路中 D 觸發器是直接利用 LUT 後面的 D觸發器來實現的。時鐘信號CLK由I/O腳輸入後進入芯片內部的時鐘專用通道,直接連接到觸發器的時鐘端。觸發器的輸出端與 I/O 腳相連,把結果輸出到芯片引腳,這樣PLD就完成了圖1-7所示電路的功能(以上步驟都是由軟件自動完成的,不需要人為干預)。

什麼是LUT原理,看完這篇文章你就知道了

圖1-7 4輸入與門的邏輯實現

這個電路是一個很簡單的例子,只需要一個LUT加一個觸發器就可以完成。對於一個LUT無法完成的電路,需要通過進位邏輯將多個單元相連,這樣就可以用FPGA實現複雜的邏輯。

由於LUT主要適於SRAM工藝生產,所以目前大部分FPGA都是基於SRAM工藝的,而SRAM工藝的芯片在掉電後就會信息丟失,因此一定需要外加一片專用配置芯片,在上電的時候,由這個專用配置芯片把數據加載到FPGA中,然後FPGA就可以正常工作,由於配置時間很短,這不會影響系統正常工作。也有少數FPGA採用反熔絲或Flash工藝,這種FPGA就不需要外加專用的配置芯片。

由於需要反覆燒寫,FPGA實現組合邏輯的基本結構不可能像ASIC那樣通過固定的與非門來完成,而只能採用一種易於反覆配置的結構。查找表可以很好地滿足這一要求,目前主流FPGA都採用了基於SRAM工藝或基於FLASH工藝的查找表結構,通過每次燒寫改變查找表內容的方法實現對FPGA的重複配置。

"

相關推薦

推薦中...