時序邏輯

計算機出現後的最初幾十年里,計算機實質上是一個巨大的計算器,數字被錄入,計算結果被輸出。直到20世紀70年代,科學家們才意識到需要正確地驗證這些計算結果。隨著電腦變得更強大,軟體更先進,多任務和變化的數據核查變得更加困難。

基本介紹

  • 中文名:時序邏輯
概念,被引入計算科學,時序邏輯電路,簡介,三種邏輯器件,特點,

概念

由多個觸發器和多個組合邏輯塊組成的網路。常用的有:計數器、複雜的數據流動控制邏輯、運算控制邏輯、指令分析和操作控制邏輯。同步時序邏輯是設計複雜的數字邏輯系統的核心。時序邏輯藉助於狀態暫存器記住它目前所處的狀態。在不同的狀態下,即使所有的輸入都相同,其輸出也不一定相同。

被引入計算科學

在計算機出現後的最初幾十年里,計算機實質上是一個巨大的計算器,數字被錄入,計算結果被輸出。直到20世紀70年代,科學家們才意識到需要正確地驗證這些計算結果。隨著電腦變得更強大,軟體更先進,多任務和筆畫的數據核查變得更加困難。因此,程式設計師不得不考慮到時間推移下系統的行為。在這個契機下,時序邏輯被引入計算科學,這是計算科學發展歷史的重要轉折點。
時序邏輯也叫時態邏輯(temporallogic),是計算機科學裡一個很專業很重要的領域。時序邏輯被用來描述為表現和推理關於時間限定的命題的規則和符號化的任何系統,主要用於形式驗證。20世紀60年代Arthur Prior提出介入的基於模態邏輯的特殊的時間邏輯系統,這一理論後來被艾米爾 伯努利等邏輯學家進一步發展。
後來,Pnueli在史丹福大學IBM Waston 研究中心從事博士後的研究工作,從這時開始,他將工作研究方向轉移到計算機科學領域。1973年,他創辦了特拉維夫大學計算機科學系,並擔任第一任院長。1977 年,Pnueli開創性地把時態邏輯引入計算機科學,他的時態邏輯是非經典邏輯中的一種,研究如何處理含有時間信息的事件的命題和謂詞。現在通常稱為時序邏輯的計算機系統,就出現在這一年,Pnueli 在子程式語言與系統驗證方面做出的傑出貢獻具有里程碑意義。
“Pnueli實現了這一邏輯,這是計算機科學的完美契合”,賴斯大學計算工程的摩西教授如是說。1996 年度圖靈獎頒獎典禮上,該獎項的題詞評價Pnueli 1977年的論文“引發了對系統的動態行為推理的基本模式轉變”。這個很傑出的技術誕生後即在軟體工程界引起轟動,掀起了軟體工程中的一場革命,目前已成為開發反應式系統和並髮式系統時進行規格說明和驗證的工具,在晶片、硬體的設計上已經廣泛運用。
1981年,Pnueli 回到魏茲曼成為計算機科學系的教授。1999年,Pnueli加入美國紐約大學計算機科學系並出任教授一職。此外,和國外絕大多數教授一樣,Pnueli 並不拘泥於純學術的研究和教學。Pnueli 成立了幾家軟體公司,1971年成立Mini-Systems ,1984年成立AdCad。他還和朋友一起在美國麻薩諸塞州創辦了另一家公司:iLogixInc,Pnueli 擔任iLogixInc 公司的首席科學家。
Pnueli為人謙遜隨和,與中國的淵源甚深。他和2008年去世的我國著名邏輯和軟體學家唐稚松是至交,二人均是時態邏輯方面是業界領跑人。唐稚松教授提出了世界上第一個可執行時序邏輯語言XYZ/E。如果說Pnueli獲1996年圖靈獎的最大貢獻,是因開創性地將時序邏輯引入計算科學,那么唐稚松則是第一次將這種時序邏輯形式化理論與最新軟體技術結合起來,套用該語言將狀態轉換的控制機制引入到邏輯系統之中的人。Pnueli 赴美接受圖靈獎前夕,在寫給唐稚松的信中說:“我完全相信,由於使時態邏輯成為具有‘深遠影響’的理念,你應該分享這一榮譽(指圖靈獎)中一個很有意義的部分。”
除了圖靈獎,Pnueli還曾獲得獎項無數,其中就包括以色列獎,這是以色列給出美國國家科學院外籍院士的成員的最高榮譽。

時序邏輯電路

數字電路根據邏輯功能的不同特點,可以分成兩大類,一類叫組合邏輯電路(簡稱組合電路),另一類叫做時序邏輯電路(簡稱時序電路)。組合邏輯電路在邏輯功能上的特點是任意時刻的輸出僅僅取決於該時刻的輸入,與電路原來的狀態無關。而時序邏輯電路在邏輯功能上的特點是任意時刻的輸出不僅取決於當時的輸入信號,而且還取決於電路原來的狀態,或者說,還與以前的輸入有關。

簡介

時序邏輯電路是數字邏輯電路的重要組成部分,時序邏輯電路又稱時序電路,主要由存儲電路和組合邏輯電路兩部分組成。它和我們熟悉的其他電路不同,其在任何一個時刻的輸出狀態由當時的輸入信號和電路原來的狀態共同決定,而它的狀態主要是由存儲電路來記憶和表示的。同時時序邏輯電路在結構以及功能上的特殊性,相較其他種類的數字邏輯電路而言,往往具有難度大、電路複雜並且套用範圍廣的特點[1]。
在數字電路通常分為組合邏輯電路和時序邏輯電路兩大類,組合邏輯電路的有關內容在前面的章節里已經作了介紹,組合邏輯電路的特點是輸入的變化直接反映了輸出的變化,其輸出的狀態僅取決於輸入的當前的狀態,與輸入、輸出的原始狀態無關,而時序電路是一種輸出不僅與當前的輸入有關,而且與其輸出狀態的原始狀態有關,其相當於在組合邏輯的輸入端加上了一個反饋輸入,在其電路中有一個存儲電路,其可以將輸出的狀態保持住,我們可以用下圖的框圖來描述時序電路的構成。
從上面的圖上可以看出,其輸出是輸入及輸出前一個時刻的狀態的函式,這時就無法用組合邏輯電路的函式表達式的方法來表示其輸出函式表達式了,在這裡引入了現態(Present state)和次態(Next State)的概念,當現態表示現在的狀態(通常用Qn來表示),而次態表示輸入發生變化後其輸出的狀態 (通常用Qn 1表示),那么輸入變化後的輸出狀態表示為
Qn 1=f(X,Qn)
其中:X為輸入變數。
下面通過兩個波形圖來幫助建立時序電路中存儲器的概念:
從上圖a圖中可以看出,其圖中有四段輸入RS都為0的情況,但其輸出Q的狀態不同,這取決於輸出的原始狀態;而b圖中的輸入與圖a相同,但多了一個CP,這時輸出Q不僅取決於輸入RS、輸出Q的原始狀態,而且取決CP的狀態,僅當CP為高電平時,輸入的狀態才能影響輸出的狀態。通常將上面的兩種類型分為兩種形式的存儲器電路:鎖存器(Latch)和觸發器(Flip-flop),其兩者的區別在於其輸出狀態的變化是否取決於CP(時鐘脈衝Clock Pulse)。將圖a所有的電路稱為鎖存器,而b圖所示的電路稱為觸發器電路。
時序邏輯電路的特點:任意時刻的輸出不僅取決於該時刻的輸入,而且還和電路原來的狀態有關,所以時序電路具有記憶功能。

三種邏輯器件

時序邏輯電路套用很廣泛,根據所要求的邏輯功能不同進行劃分,它的種類也比較繁多。在具體的授課環節中,主要選取了套用較廣、具有典型時序邏輯電路特徵的三種邏輯器件進行比較詳細地介紹[1]。
1.計數器
一般來說,計數器主要由觸發器組成,用以統計輸入計數脈衝CP的個數。計數器的輸出通常為現態的函式。計數器累計輸入脈衝的最大數目稱為計數器的“模”,用M表示。如M=6計數器,又稱六進制計數器。所以,計數器的“模”實際上為電路的有效狀態數[1]。
同步七進制加法計數器的邏輯圖計數器的種類很多,特點各異。主要分類如下:按計數進制可分為:二進制計數器、十進制計數器、任意進制計數器。按計數增減可分為:加法計數器、減法計數器、加/減計數器,又稱可逆計數器。按計數器中觸發器翻轉是否同步可分為:異步計數器和同步計數器[1]。
2.暫存器
暫存器是存放數碼、運算結果或指令的電路,移位暫存器不但可存放數碼,而且在移位脈衝作用下,暫存器中的數碼可根據需要向左或向右移位。暫存器和移位暫存器是數字系統和計算機中常用的基本邏輯部件,套用很廣。一個觸發器可存儲一位二進制代碼, n個觸發器可存儲n位二進制代碼。因此,觸發器是暫存器和移位暫存器的重要組成部分。對暫存器中的觸發器只要求它們具有置0或者置1功能即可,無論是用同步結構的觸發器,還是用主從結構或者邊沿觸發的觸發器,都可以組成暫存器[1]。
3.順序脈衝發生器
順序脈衝是指在每個循環周期內,在時間上按一定先後順序排列的脈衝信號。產生順序脈衝信號的電路稱為順序脈衝發生器。在數字系統中,常用以控制某些設備按照事先規定的順序進行運算或操作[1]。

特點

時序邏輯電路其任一時刻的輸出不僅取決於該時刻的輸入,而且還與過去各時刻的輸入有關。常見的時序邏輯電路有觸發器計數器暫存器等。由於時序邏輯電路具有存儲或記憶的功能,檢修起來就比較複雜。
帶有時序邏輯電路的數字電路主要故障分析:
1. 時鐘:時鐘是整個系統的同步信號,當時鐘出現故障時會帶來整體的功能故障。時鐘脈衝丟失會導致系統數據匯流排、地址匯流排或控制匯流排沒有動作。時鐘脈衝的速率振幅寬度、形狀及相位發生變化均可能引發故障。
2. 復位:含有微處理器(MPU)的設備,即使是最小系統,一般都具有復位功能。復位脈衝在系統上電時載入到MPU上,或在特定情況下使程式回到最初狀態(例如,看門狗Watchdog程式)。當復位脈衝不能發生、信號過窄、信號幅度不對、轉換中有干擾或轉換太慢時,程式就可能在錯誤的地址啟動,導致程式混亂。
3. 匯流排:匯流排傳遞指令系列和控制事件,一般有地址匯流排、數據匯流排和控制匯流排。當匯流排即使只有一位發生錯誤時,也會嚴重影響系統功能,出現錯誤定址、錯誤數據或錯誤操作等。匯流排錯誤可能發生在匯流排驅動器中,也可能發生在接收數據位的其它元件中。
4. 中斷:帶微處理器(MPU)的系統一般都能夠回響中斷信號或設備請求,產生控制邏輯,以暫時中斷程式執行,轉到特殊程式,為中斷設備服務,然後自動回到主程式。中斷錯誤主要是中斷線路粘附(此時系統操作非常緩慢)或受到干擾(系統錯誤回響中斷請求)。
5. 信號衰減和畸變:長的並行匯流排和控制線可能會發生互動串擾和傳輸線故障,表現為相鄰的信號線出現尖峰脈衝(互動串擾),或驅動線上形成減幅振盪(相當於邏輯電平的多次轉換),從而可能加入錯誤數據或控制信號。發生信號衰減的可能原因比較多,常見的有高濕度環境、長的傳輸線、高速率轉換等。而大的電子干擾源會產生電磁干擾(EMI),導致信號畸變,引起電路的功能紊亂。

相關詞條

熱門詞條

聯絡我們