国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

一種基于軟件定義的可重構I/O控制器設計

2020-05-14 07:52周麗艷劉波馮丹高瑛珂
電子元器件與信息技術 2020年2期
關鍵詞:標志重構調(diào)度

周麗艷,劉波,馮丹,高瑛珂

(北京控制工程研究所,北京 100190)

0 引言

隨著航天任務復雜性的日益提高,控制系統(tǒng)的日益復雜,要實現(xiàn)高精度智能控制,需要各種異構多源的感知設備和操控機構,因此作為計算核心的高可靠星載片上系統(tǒng)芯片,除了具有高能效的計算能力外,還應具備豐富的高低速存儲和通信接口,以滿足數(shù)量和種類日益增長的敏感器和驅(qū)動機構接口通信需求。星載控制計算機是衛(wèi)星控制系統(tǒng)的核心,通常情況下,控制計算機數(shù)據(jù)采集、控制計算和控制輸出有一個共同的周期,稱為控制周期[1]。如圖1所示,在每個控制周期,控制計算機:(1)在采集任務中,采集各敏感器姿態(tài)與軌道狀態(tài);(2)在計算任務中,完成控制規(guī)律的計算;(3)在輸出任務中,發(fā)出控制指令給執(zhí)行機構,并根據(jù)軌道運行狀況實現(xiàn)控制模式轉換;(4)在遙測遙控任務中,從地面遙控指令或數(shù)管計算機注數(shù)中獲得軌道要求、工作狀態(tài)、系統(tǒng)參數(shù)修正等;采集部件和控制器自身信息,存儲并通過遙測通道下發(fā)到地面[2]。

控制周期T可表示為:

M為一個控制周期中采集信息的敏感器個數(shù)。ti1為控制計算機向第i個敏感器單機發(fā)送信息采集命令的發(fā)送時間,ti2為向第i個敏感器單機發(fā)送信息采集命令的傳輸時間;ti3為該敏感器單機的響應時間;ti4為該敏感器單機的信息傳送時間[3],ti5代表了控制算法的運行時間,N為一個控制周期中驅(qū)動的執(zhí)行機構個數(shù)。tj6為控制計算機向第j個執(zhí)行機構發(fā)送控制命令的發(fā)送時間,tj7為控制計算機向第j個執(zhí)行機構發(fā)送控制命令的傳輸時間,tj8為第j個執(zhí)行機構響應時間,tj9為CPU讀取第j個執(zhí)行機構運行狀態(tài)并對其進行狀態(tài)檢查的時間[4]。

可見,在一個控制周期內(nèi),CPU利用率為:

實際中,由于I/O速度很慢,因此CPU利用率非常低,大部分時間在等待I/O部件完成輸入/輸出;另一方面,目前I/O抗干擾能力和容錯性差,針對控制計算機的容錯設計一直是控制系統(tǒng)研究的重點和熱點[5]。因此,為了提升CPU利用率并提高I/O容錯性,本論文設計基于軟件定義的I/O控制器,下文稱為 SDRIOC(software-defined reconfigurable I/O controller),CPU將I/O控制權利下放給I/O控制器,只需對控制器進行配置,控制器可完全管理I/O過程,根據(jù)配置完成輸入輸出數(shù)據(jù)交換。

1 可重構I/O控制器設計

基于軟件定義的可重構I/O控制器的整體框圖如圖2所示。硬件部分由16KB雙口RAM、調(diào)度器、ROM指令存儲器、RAM數(shù)據(jù)存儲器、硬件邏輯組成。雙口RAM用于主機CPU與控制器進行數(shù)據(jù)傳遞和信息交換。調(diào)度器負責配置信息的解析和I/O任務的處理,通過雙口RAM獲取需要執(zhí)行收發(fā)操作的接口相關信息和要發(fā)送的數(shù)據(jù)。ROM是指令存儲器,RAM是數(shù)據(jù)存儲器。硬件邏輯基于北京控制工程研究所電子中心開發(fā)的IO_ASIC實現(xiàn),其集成了多種外設接口,包括同步串口、SPI、CAN控制器、UART等。

雙口RAM存儲區(qū)域分成三部分:標志位區(qū)、配置區(qū)和數(shù)據(jù)區(qū)。標志位區(qū)存放:各接口的接收和發(fā)送使能標志位,是主機CPU“通知”調(diào)度器進行收發(fā)的重要配置位,調(diào)度器檢測到某一位使能標志位置1后,立即根據(jù)配置區(qū)的相關接口配置信息對對應的接口進行配置。控制器忙標志代表控制器正在執(zhí)行前一次配置的收/發(fā)操作,主CPU暫時無法寫入新的接收使能或發(fā)送使能標志位。接口接收完成標志代表控制器完成了對應接口的收數(shù)據(jù)過程,主CPU可從數(shù)據(jù)區(qū)對應地址處讀取收到的數(shù)據(jù)了。配置區(qū)存放了對接口的配置信息,256B可以同時存放32個接口的配置信息,每個接口占8Bytes。接口類型包括UART/SPI/CAN/同步串口,調(diào)度器會根據(jù)接口類型解析其余的配置信息。

雙口RAM的配置由主機CPU進行,寫入先后順序為配置區(qū)→數(shù)據(jù)區(qū)→標志位區(qū)。在一個控制周期內(nèi),主機CPU首先查詢控制器的忙標志是否未置位,如被置位則進行數(shù)據(jù)解碼和計算[6],以及其他控制算法所需的其它計算任務[7],否則向雙口RAM配置區(qū)寫入一個控制周期中要進行收發(fā)的所有接口的相關配置信息。對于要發(fā)送數(shù)據(jù)的接口,向數(shù)據(jù)區(qū)寫入要發(fā)送的數(shù)據(jù),必須小于8KB。然后將所需接口的發(fā)送/接收使能標志位置1。若有接口配置為接收,則不斷查詢接收完成標志位是否置位,期間可進行計算任務。當接收完成標志置位且所有計算任務都完成后,清除接收標志位,從雙口RAM中讀取接收到的數(shù)據(jù)。

調(diào)度器負責I/O任務的調(diào)度。調(diào)度器有三種模式:發(fā)送、接收、自回環(huán)。調(diào)度器會按順序處理接口的發(fā)送、接收、自回環(huán)。優(yōu)先檢查發(fā)送標志,其次檢查接收標志,最后檢查自回環(huán)標志。調(diào)度器如果檢測到接口被配置為發(fā)送后,則立即配置相關接口,并從雙口RAM搬運數(shù)據(jù)到接口;若未檢測到接口配置為發(fā)送,則檢查是否有接口配置為接收,若有,則配置接口并將數(shù)據(jù)從接口搬運到雙口RAM;最后檢查接口是否被配置為自回環(huán),該模式僅用于測試,令接口發(fā)送的數(shù)據(jù)由它自身接收,若接口被配置為自回環(huán),則將接口配置為發(fā)送和接收,每發(fā)送FIFO_DEPTH數(shù)據(jù)后從接收FIFO讀出FIFO_DEPTH個字節(jié),避免由于發(fā)送數(shù)據(jù)超出FIFO容量而導致FIFO溢出[8-9]。

2 實驗與數(shù)據(jù)分析

如圖3所示是實驗使用的驗證板。實驗用到了驗證板上的SiP2115處理器與一片CYCLONEⅢFPGA器件。基于軟件定義的可重構I/O控制器設計下載到CYCLONEⅢ中,用SiP2115處理器模擬主機CPU。

如圖4所示是SignalTypeⅡ中抓取的CPU向雙口RAM寫入配置信息的波形。

實驗結果表明,增設I/O控制器后,CPU用于處理I/O的時間大大減少。如圖5所示為波特率9600時,發(fā)送(接收)數(shù)據(jù)量隨時間變化關系。從圖中可看出,不帶控制器時,隨發(fā)送數(shù)據(jù)量增加,時間線性增長。這是由于發(fā)送數(shù)據(jù)的工作全部由CPU完成,因此發(fā)送數(shù)據(jù)越多,CPU所需時間越長。帶控制器時,隨發(fā)送數(shù)據(jù)量增加時間只有0.003的增長,這是因為CPU對雙口RAM寫速度很快,因此當數(shù)據(jù)量增大時CPU時間會增長但增長量非常小。當波特率921600時,發(fā)送(接收)數(shù)據(jù)量隨時間變化關系。折線走勢與波特率9600相同,但由于波特率較大,因此發(fā)送相同數(shù)據(jù)量時時間更短。

3 結論

本文設計一種基于軟件定義的可重構I/O控制器,CPU將I/O處理任務全權交給控制器處理,從而有更多的時間執(zhí)行其他計算任務。實驗結果表明,將可重構I/O控制器加入整機后,有效提高了CPU的利用率,提升了整機的性能和容錯性。

猜你喜歡
標志重構調(diào)度
基于智慧高速的應急指揮調(diào)度系統(tǒng)
多功能標志桿的使用
“雙減”能否重構教育生態(tài)?
長城敘事的重構
基于增益調(diào)度與光滑切換的傾轉旋翼機最優(yōu)控制
高鹽肥胖心肌重構防治有新策略
基于強化學習的時間觸發(fā)通信調(diào)度方法
基于動態(tài)窗口的虛擬信道通用調(diào)度算法
首都的標志是只熊
用四維的理念重構當代詩歌
澜沧| 海宁市| 西安市| 如东县| 高淳县| 界首市| 曲沃县| 交城县| 扶风县| 宁化县| 苏尼特左旗| 洪泽县| 潼关县| 饶阳县| 亳州市| 沙坪坝区| 朝阳市| 界首市| 安仁县| 隆回县| 普宁市| 北海市| 名山县| 息烽县| 永福县| 江西省| 西宁市| 阳东县| 法库县| 祁连县| 孝昌县| 克拉玛依市| 平遥县| 和田市| 东阳市| 犍为县| 朝阳区| 谷城县| 隆昌县| 洛川县| 玉门市|