概述
1553B總線組成包括總線控制端(BC:Bus Control)、遠程終端(RT:Remote Terminal)和總線監視端(MT:Monitor Terminal)。
總線控制端(BC:Bus Control)
BC作為總線通訊的發起者和組織者,負責總線調度、管理。
遠程終端(RT:Remote Terminal)
RT表示總線網絡中的各個通訊節點,最多支持31個RT。
總線監視端(MT:Monitor Terminal)
MT用於監視總線的運行。
消息結構
1553B協議規定消息組成的最小單位為字,即在總線上傳輸的消息都是由一個個的字組成,按照種類可分為指令字,數據字和狀態字。這里的字和計算機中常見的字並不一致,一個字由連續的20bits組成,包括3bits的同步頭,1bit的奇偶校驗位和16bits的特定位段,每種字的特定位段定義在下面詳細介紹。
指令字
bit | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 |
同步頭 | 遠程終端地址段 | 發送/接收位 | 子地址/方式字段 | 數據字計數/方式代碼字段 | 奇偶校驗位 |
同步頭
數據字同步頭應是一個無效的曼徹斯特波形,其寬度為三個位時,前1.5位時的波形為負,后1.5位時的波形為正。如果該同步頭的前后位為邏輯 1,那么同步頭的表觀寬度將增加到四個位時。
遠程終端地址段
緊跟在同步頭后面的5位為遠程終端地址段,每個遠程終端都被指定一個專有的地址,最多可標識31個,地址范圍為00000B(0)到11110B(30)。二進制11111為所有遠程終端的公用地址,供系統采用廣播操作時使用。
發送/接收位
緊接遠程終端地址后的一位應為發送/接收位。它應表示BC要求RT做的操作,邏輯0指定遠程終端做接收操作,邏輯1指定遠程終端做發送操作。
子地址/方式字段
緊接發送/接收位后的五位,用來區分遠程終端的子地址,或者用作總線系統進行方式控制時的標記。如果該字段為00000B或11111B時的,表示此指令字為方式控制指令,若該字段不為00000或11111則表示為RT終端的子地址。所以BC可以通過配置該段來決定指令字的方式,能訪問對應RT0x01—0x1E子地址的數據。
奇偶校驗位
1553B采用奇校驗的方式,即前面19位的數據用二進制表示,1的個數如果為偶數,則該位設置為1保證一個字二進制表示中1的個數為奇數個,相反如果前面19位的數據二進制表示后,1的個數為奇數,則該位設置為0,保證整個字二進制表示后1的個數為奇數。
數據字
bit | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 |
同步頭 | 數據字段 | 奇偶校驗位 |
數據字由3bits的同步頭、16bits的數據字段和1bit的奇偶校驗位組成。數據字用於BC或RT實現具體的數據傳輸。
狀態字
bit | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 |
同步頭 | 遠程終端地址段 | 消息出錯位 | 測試手段位 | 服務請求位 | 備用字段 | 廣播指令接收位 |
忙位 | 子系統 標識位 |
動態總線 控制接收位 |
終端標志位 | 奇偶校驗位 |
消息出錯位
該位在狀態字的第8位,用來表示RT在已收到的消息中,是否存在一個字或多個字沒有通過規定的有效性測試。邏輯1表示消息有差錯,邏輯0表示消息無差錯。所有的終端應提供消息差錯位。
測試手段位
狀態字的第9位作為測試手段位。它在所有條件下總置為邏輯0。該位為可選位,如果使用,指令字中的相應位置為邏輯1,用來區分指令字和狀態字。
服務請求位
狀態字的第10位置是服務請求位。表示本RT需要服務。要求BC啟動與本RT或子系統有關的預定操作。當與單一RT相連的多個子系統分別請求服務時,RT應將它們各自的服務請求信號邏輯“或”成狀態字中的單一服務請求。邏輯“或”完成后設計者必須准備好一個數據字,並以相應位置1來標志具體的請求服務子系統。狀態字中的“服務請求位”,應維持到幾個請求信號都處理完為止。該位僅用來激發隨機發生的數據傳輸操作。
備用字段
狀態字的第11、12、13位是備用的狀態位。應將它們置為邏輯0,這些位留作今后使用。
廣播指令接收位
狀態位的第14位置為邏輯1,表示本RT接收到的上一有效指令字是廣播指令字。當系統中未采用廣播方式,置該位為邏輯0。
忙位
狀態字的第15位時置位為邏輯1表示遠程終端處於忙狀態,表示它不能按照總線控制器的指令要求將數據移入子系統或從子系統取數據。如果遠程終端在響應發送、指令時置忙位,那么只發出它的狀態字。該位為可選位,邏輯0表示空閑狀態或者非忙狀態。
子系統標識位
狀態字的第16位用來向總線控制器指出子系統故障狀態,且警告總線控制器本遠程終端提供的數據可能無效。如果與一個遠程終端相連的幾個子系統都呈現故障狀態時,應將它們各自的信號邏輯“或”,形成狀態字中的子系統標志位,並將事先准備好的一個數據字中的相應位置1,記錄它們的故障報告,用於進一步檢測、分析。該位為可選位。邏輯1表示有標志,邏輯0表示無標志。
動態總線控制接收位
狀態字的第17位時若置為邏輯 1,用來表示本RT接受符合協議本身規定的動態總線控制的授命。邏輯 0 表示不接受。該位為可選位。
終端標志位
狀態字的第18位時留作終端標志功能。邏輯1表示本RT內部存在故障,請求總線控制器干預。邏輯0表示不存在故障。該位為可選位。
通訊方式
1553B消息傳輸為半雙工通信,采用指令應答方式實現系統通訊,消息傳輸形式有10種,但對於應用層常用的就3種,即BC向RT消息傳輸,RT向BC消息傳輸和RT之間的消息傳輸。
BC向RT消息傳輸
BC向RT發送一個表示發送數據的控制字和數據字,指令字與數據字連續發送。RT回送一個狀態字。
RT向BC消息傳輸
BC向RT發送一個表示接收數據的控制字,RT回送一個狀態字后,緊接着連續發送指定數據的數據字。
RT向RT消息傳輸
BC向RT1發送一個表示接收數據的控制字,緊接着向RT2發送一個表示發送數據的控制字,隨后RT2發出狀態字和對應的數據字,RT1接收到數據字后,給BC回送一個狀態字。