數字系統各模塊之間的信息傳輸,以及模塊內部各子模塊之間的信息加工、存儲與傳輸操作,不能用組合電路和時序電路中采用的方法進行描述,必須采用更高級的描述方法,方法之一是寄存器傳輸語言RTL,并且這個表示法同硬件之間有著簡單的對應關系。這種寄存器傳輸語言適于描述功能部件級的數字系統,用RTL語言使系統要求與硬件電路間建立對應的關系。能簡明、精確地描述系統內信息的傳送和處理。 在寄存器傳輸語言中,一個語句標號對應于時序流程圖中的一個狀態框,條件轉移語句對應時序流程圖中的判斷框,用無條件轉移語句描述狀態之間的無條件轉移等等。數字系統中最常用到的操作有6類: 在寄存器傳輸語言中,用大寫英文字母表示寄存器,也可用圖形表示,如圖1左所示。還可以把寄存器的每一位都表示出來,如圖1右所示。其中方括號內是每一位的編號。 (1)無條件傳送語句 無條件傳送語句格式為:A←B,其中,箭頭表示傳送方向,B稱為源寄存器,A稱為目的寄存器。傳送操作是一個復制過程,不改變源寄存器的內容,無條件傳送操作一般與時鐘無關,而是在一定條件下發生。 (2)條件傳送語句 傳送條件常由控制器給出的邏輯函數規定,其中"!"和"*"是條件語句專用符,"!"稱為間隔符,其意義是間隔符左邊和右邊的數據之間沒有聯系。"*"是條件語句的連接符,"*"號右邊是傳送條件。 基本的算術操作是加、減、取反和移位。
3、邏輯操作 邏輯操作是兩個寄存器對應之間的操作,包括與、或、非,為了區別于算術運算符號,這里的與、或、非分別用符號∧、∨和字母上方加一橫表示。
4、移位操作 移位操作分為左移和右移兩種。 (1)左移操作語句:A←shlA,A[0]←0 (2)右移操作語句:A←shrA,A[3]←0 (3)循環左移操作語句: A←shlA,A[0]←A[3] (4)循環右移操作語句: A←shrA,A[3]←A[0] 5、輸入和輸出操作 寄存器傳輸語言還可以描述系統輸入、輸出操作,如果將輸入線X的數據傳送到A寄存器,則表示為 A←X 把寄存器A的各位傳送到輸出線時,則采用符號"="表示 Z=A該語句意味著寄存器輸入與輸出線Z直接相連。 6、無條件轉移和條件轉移 (1)無條件轉移語句 →(S) 表示下一步轉向編號為S的語句繼續執行。 (2)條件轉移語句 (f1,f2,fn)/(S1,S2,Sn) 其中f是系統變量的函數,取值為0或1,當fi=1時,執行Si標號的語句,當所有的fi均為0時,順序執行語句。 (3)空操作語句 →NULL表示不進行任何操作,而是利用它得到一個時鐘的延時時間,然后順序執行下一條語句。 |
電工學習網 ( )
GMT+8, 2021-12-6 21:08