FPGA之組合邏輯與時序邏輯、同步邏輯與異步邏輯的概念_第1頁
FPGA之組合邏輯與時序邏輯、同步邏輯與異步邏輯的概念_第2頁
FPGA之組合邏輯與時序邏輯、同步邏輯與異步邏輯的概念_第3頁
FPGA之組合邏輯與時序邏輯、同步邏輯與異步邏輯的概念_第4頁
全文預覽已結束

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

FPGA之組合邏輯與時序邏輯、同步邏輯與異步邏輯的概念組合邏輯電路與時序邏輯電路數(shù)字電路根據(jù)邏輯功能的不同特點,可以分成兩大類:一類叫做組合邏輯電路,簡稱組合電路或組合邏輯;另一類叫做時序邏輯電路,簡稱時序電路或時序邏輯。如果數(shù)字電路滿足任意時刻的輸出僅僅取決于該時刻的輸入,那么該數(shù)字電路為組合邏輯電路。相反,如果數(shù)字電路任意時刻的輸出不僅取決于當前時刻的輸入,而且還取決于數(shù)字電路原來的狀態(tài),那么該數(shù)字電路為時序邏輯電路。例如,下圖中只由一個與門組成的電路就是一個組合邏輯電路。對于上圖所示數(shù)字電路,無論在任何時刻,并且無論上次A、B輸入是什么情況,只要在當前時刻輸入端口A、B同時為邏輯1時,輸出端C才會輸出邏輯1,而其他情況下輸出端C都會輸出邏輯0。由此可見符合組合邏輯電路的定義。如果上圖中與門的兩個輸入端分別是來自一個寄存器的輸入和輸出,如下圖所示,那么這就肯定是一個時序電路。對于上圖所示數(shù)字電路,假設寄存器中目前保存的值是邏輯1,而此時輸入端B沒有從邏輯0到邏輯1的跳變(B相當于寄存器的時鐘信號),設此時B為邏輯0,那么如果輸入端A為邏輯1,則C輸出邏輯1;但是如果過了一段時間后,A變?yōu)?,且隨后B的上升沿到來,那么寄存器中保持的值變?yōu)檫壿?,那么在這之后,若令輸入端A為邏輯1,B為邏輯0,則由于寄存器中保存著邏輯0值,所以C輸出邏輯0。對比前后兩種情況,A、B兩端的輸入都是邏輯1,但是C的輸出卻不同。由此可見,該數(shù)字電路的輸出并不完全由輸入決定,因此它是一個時序邏輯電路。對比如上兩例我們可以看出,時序邏輯電路和組合邏輯電路并不是完全割裂開來的,而更像是一種包含關系,即時序邏輯電路中肯定有組合邏輯的成分存在,但組合邏輯電路中卻不可能有時序邏輯的成分存在。由此可見,只要加以恰當?shù)南拗?,時序邏輯電路甚至可以完全模擬組合邏輯電路的功能,例如查找表LUT。FPGA中用LUT來實現(xiàn)組合邏輯,但是LUT本身是不包含任何功能的,在FPGA上電或配置的時候?qū)ζ渲械拇鎯d體進行相關設定的賦值,然后LUT由于記住了這個賦值設定,才能模仿各種各樣的組合邏輯功能。由于FPGA一般都是基于SRAM工藝的,因此FPGA中的LUT不太可能是基于多路選擇器和一系列到電源和地的熔絲組成,如果該查找表是由ROM、RAM或者寄存器等實現(xiàn)的,那么它也是有記憶的,只不過在整個電路工作期間,它不會改變自己的記憶罷了。所以,我們可以認為時序邏輯電路是有記憶的,而組合邏輯電路是無記憶的。有記憶的可以模仿無記憶的,而無記憶的卻不能模仿有記憶的。同步邏輯電路與異步邏輯電路基于FPGA的設計幾乎都是時序邏輯電路,極少會有設計純組合邏輯電路的情況。記憶性賦予時序邏輯電路更多的功能和更豐富的表達,因此,時序邏輯電路在FPGA的設計中占有非常重要的地位。對于時序邏輯,按信號間關系來看,又可分為同步時序邏輯和異步時序邏輯,簡稱同步邏輯和異步邏輯。時序邏輯電路中最關鍵的就是驅(qū)動各個記憶元素(例如寄存器、RAM甚至鎖存器等)進行記憶動作的時鐘信號。通常,我們認為只被一個時鐘信號驅(qū)動的設計叫做同步時序邏輯。這是因為所有記憶元素都在被同一個時鐘信號驅(qū)動,那么它們的輸出都會同時變化,所以它們對數(shù)字電路的影響是同步的。例如下圖:不過這個定義還有些狹隘,廣義的同步時序邏輯概念中,允許數(shù)字電路中有多個時鐘存在,但是這些時鐘之間應該有著固定的因果關系,又或者它們所驅(qū)動的記憶單元在電路上是完全隔離的。對于第一種情況:如果多個時鐘信號之間有固定的因果關系的話,那么即使它們對電路的影響不是完全同時的,但可以根據(jù)時鐘之間的因果關系推斷出這種時間上的固定誤差,從而電路狀態(tài)的變化也是完全可預期的,因此可以認為是同步。例如如果多個時鐘驅(qū)動的記憶單元之間完全是隔離的,那么其實它們就是多個同步時序邏輯電路的簡單集合體,因此也是同步的。例如:那么從廣義同步時序邏輯電路的概念出發(fā),凡是不符合的即屬于異步時序邏輯電路。不過這樣的定義顯得太過偷懶,那么這里總結一下異步時序邏輯的特點,給出異步時序邏輯電路的概念:如果時序邏輯電路存在至少一個這樣的組合邏輯功能塊——它的輸入、輸出端口不全來自或?qū)胍粋€時鐘或若干個具有因果關系的時鐘所驅(qū)動的記憶元素,那么該電路為異步時序邏輯電路。例如,下圖組合邏輯(一根連線也是組合邏輯,可看成緩沖門)的輸入由clk1時鐘驅(qū)動的寄存器提供,輸出卻給了clk2驅(qū)動的寄存器?;蛳聢D,與門的輸入來自不同的時鐘所驅(qū)動的寄存器。或下圖,與門的兩個輸入一個來自時鐘驅(qū)動的寄存器,一個來自純組合的輸入端口。對比同步邏輯和異步邏輯的概念,我們可以了解到它們也

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論