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