FPGA组合逻辑部件LUT的基本原理
數字邏輯電路一般都是時序部件(觸發器)+組合邏輯(與門,或門,異或門等)來完成一系列的功能。既然完成一個特定的功能可以通過組合邏輯來實現,為什么要引入時序邏輯呢?
??? 這是因為時序邏輯是基于時鐘沿(上升沿或者下降沿)觸發,只有在時鐘邊沿數據才會被鎖存,具有良好的去毛刺,抑制干擾作用,保證了數字電路功能的正確性和穩定性。(這方面原理將會在下一篇博文中說明)。既然構成數字邏輯最重要的部件是組合邏輯和時序邏輯,那么作為實現數字邏輯功能的FPGA的最重要組成部分就是組合邏輯和時序邏輯了。
??? FPGA一般都是基于查找表(Look Up Table)結構,查找表基本上等同于SRAM。假設在FPGA中要實現一個2輸入的與門,那么該與門的輸入輸出對應關系為:
?
| 輸入 | 輸出 |
| 0, 0 | 0 |
| 0, 1 | 0 |
| 1, 0 | 0 |
| 1, 1 | 1 |
??? 既然有了此對應邏輯關系,那么在SRAM對應的地址中只需存儲相應的輸出數值,而輸入數值作為地址來查表即可得到正確的輸出值即可。當輸入地址為0,0時,輸出0地址里存儲的值0,當輸入地址為0,1時,輸出1地址里存儲的值0,當輸入地址為1,0時,輸出2地址里存儲的值0,當輸入地址為1,1時,輸出3地址里存儲的值1,因此為什么說FPGA是可編程的,主要是表現在邏輯功能可以根據需要被重新編寫在SRAM里,實現不同的邏輯功能。這就是FPGA里實現組合邏輯功能里LUT的基本原理。下一篇博文將詳細講述CLB邏輯的基本原理和構成。?
總結
以上是生活随笔為你收集整理的FPGA组合逻辑部件LUT的基本原理的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: FPGA与MCU,DSP(如C6000,
- 下一篇: FPGA基础之逻辑单元(LE or LC