[發(fā)明專利]一種適用于星載電子設(shè)備的多串口緩存復(fù)用方法有效
| 申請?zhí)枺?/td> | 201710178524.3 | 申請日: | 2017-03-23 |
| 公開(公告)號: | CN107092574B | 公開(公告)日: | 2019-07-12 |
| 發(fā)明(設(shè)計(jì))人: | 李雅瓊;王杰;曹薇華;關(guān)貴注;李涼海 | 申請(專利權(quán))人: | 北京遙測技術(shù)研究所;航天長征火箭技術(shù)有限公司 |
| 主分類號: | G06F13/42 | 分類號: | G06F13/42 |
| 代理公司: | 中國航天科技專利中心 11009 | 代理人: | 龐靜 |
| 地址: | 100076 北京市*** | 國省代碼: | 北京;11 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 適用于 電子設(shè)備 串口 緩存 方法 | ||
本發(fā)明提供了一種適用于星載電子設(shè)備的多串口緩存復(fù)用方法,星載綜合電子設(shè)備間為一主多從關(guān)系,主機(jī)根據(jù)上位機(jī)發(fā)送的指令向各從機(jī)發(fā)送數(shù)據(jù)內(nèi)部控制命令,從機(jī)響應(yīng)主機(jī)的內(nèi)部控制命令,向主機(jī)返回相應(yīng)的響應(yīng)信息;或者主機(jī)定時(shí)向從機(jī)發(fā)送遙測采集命令,從機(jī)定期向主機(jī)回傳遙測狀態(tài)信息,主機(jī)從機(jī)之間采用串口進(jìn)行信息交互,主機(jī)采用多時(shí)間片查詢的方式進(jìn)行數(shù)據(jù)收發(fā)處理,各從機(jī)時(shí)分復(fù)用主機(jī)的串口發(fā)送緩沖區(qū)和串口接收緩沖區(qū)。本發(fā)明解決了一主多從串口通信系統(tǒng)中主機(jī)資源有限無法滿足多從機(jī)數(shù)據(jù)接收存儲空間的問題,節(jié)約了系統(tǒng)資源,提高了代碼效率。
技術(shù)領(lǐng)域
本發(fā)明涉及一種適用于星載電子設(shè)備的多串口緩存復(fù)用方法,屬于衛(wèi)星有效載荷嵌入式軟件設(shè)計(jì)領(lǐng)域。
背景技術(shù)
星載電子設(shè)備主要是一類具有衛(wèi)星綜合管理控制單元功能的設(shè)備。該類星載電子設(shè)備主要功能是管理隸屬分系統(tǒng)內(nèi)部各個(gè)單機(jī)及模塊的工作流程,依據(jù)衛(wèi)星星務(wù)計(jì)算機(jī)發(fā)來的命令信息和工作參數(shù),綜合管理控制分系統(tǒng)內(nèi)部單機(jī)開機(jī)、執(zhí)行任務(wù)、關(guān)機(jī)、以及遙測遙控等。這一類電子設(shè)備屬于分系統(tǒng)對外的接口單機(jī),同時(shí)具備分系統(tǒng)任務(wù)管理綜合控制功能,經(jīng)常屬于在軌長加電設(shè)備,通常會選用宇航級的MCU+FPGA組成硬件運(yùn)行環(huán)境,所以形成了該類電子設(shè)備器件等級極高,硬件資源嚴(yán)重不足的特點(diǎn)。而要滿足星載軟件降額要求的條件下,完成分系統(tǒng)在軌工作任務(wù)執(zhí)行管理以及與內(nèi)部各個(gè)單機(jī)間的信息交互管理的任務(wù),需要設(shè)計(jì)一種MCU+FPGA多串口緩沖復(fù)用的軟件設(shè)計(jì)方法來彌補(bǔ)硬件資源不足的問題。
發(fā)明內(nèi)容
本發(fā)明的技術(shù)解決問題是:克服現(xiàn)有技術(shù)的不足,解決星載電子設(shè)備硬件資源不足的問題,通過主機(jī)MCU程序主循環(huán)時(shí)間片切換查詢結(jié)合FPGA開辟復(fù)用收發(fā)緩存區(qū)的方式,完成一對多的串口信息交互功能。
本發(fā)明的技術(shù)解決方案是:一種適用于星載電子設(shè)備的多串口緩存復(fù)用方法,所述復(fù)用方法包括如下步驟:
(1)、主機(jī)MCU程序進(jìn)入主循環(huán)時(shí)接收外部指令,根據(jù)外部指令和時(shí)序,為主循環(huán)每個(gè)相等的時(shí)間片設(shè)置相應(yīng)的發(fā)送數(shù)據(jù)標(biāo)志;
(2)、主機(jī)MCU程序在主循環(huán)的每個(gè)時(shí)間片到來時(shí),判斷相應(yīng)的發(fā)送數(shù)據(jù)標(biāo)志是否有效,如果有效,則將這個(gè)時(shí)間片區(qū)應(yīng)該向指定從機(jī)發(fā)送的數(shù)據(jù)內(nèi)容放到MCU發(fā)送緩沖區(qū)里,并將該指定從機(jī)對應(yīng)的發(fā)送片選地址寫入FPGA中;同時(shí),判斷MCU接收緩沖區(qū)里是否有新的數(shù)據(jù)幀,如果有,則從FPGA接收緩沖區(qū)中提取數(shù)據(jù)幀,并對數(shù)據(jù)幀進(jìn)行解析和處理,之后,將下一個(gè)時(shí)間片主機(jī)需要接收的數(shù)據(jù)幀對應(yīng)的從機(jī)接收片選地址寫入FPGA中;
(3)、主機(jī)就MCU中斷程序?qū)CU發(fā)送緩沖區(qū)發(fā)送至FPGA的發(fā)送緩沖區(qū),F(xiàn)PGA根據(jù)步驟(3)中MCU寫入的發(fā)送片選地址,選通相應(yīng)的從機(jī)接口將數(shù)據(jù)發(fā)送至相應(yīng)的從機(jī);
(4)、FPGA收到接收片選地址之后,根據(jù)步驟(3)中MCU寫入的接收片選地址,選通相應(yīng)的從機(jī)接口將相應(yīng)的從機(jī)發(fā)送的數(shù)據(jù)存入接收緩沖區(qū)中。
所述主機(jī)MCU程序主循環(huán)分為N個(gè)時(shí)間片,所述N為通信協(xié)議中主機(jī)向所有從機(jī)發(fā)送數(shù)據(jù)幀的總數(shù)與接收數(shù)據(jù)幀總數(shù)的最大值。
所述主機(jī)FPGA接收緩沖區(qū)容量不低于通信協(xié)議中主機(jī)接收數(shù)據(jù)幀中最大的數(shù)據(jù)幀對應(yīng)的字節(jié)數(shù)。
當(dāng)中斷周期為Ts、串口波特率Mbps、發(fā)送緩沖區(qū)寬度為W時(shí),所述發(fā)送緩沖區(qū)的深度大于等于為向上取整運(yùn)算。
所述FPGA包括接收緩沖區(qū)、發(fā)送緩沖區(qū)、接收選通模塊、發(fā)送選通模塊,在MCU發(fā)送的接收片選指令控制下,接收選通模塊選通一路從機(jī)串口發(fā)送的數(shù)據(jù)存入至接收緩沖區(qū)模塊;在MCU發(fā)送的發(fā)送片選指令控制下,發(fā)送選通模塊選通發(fā)送緩沖區(qū)模塊與某一從機(jī)串口接收信號相連接,將緩沖區(qū)模塊中的數(shù)據(jù)發(fā)送至某一個(gè)從機(jī)。
在MCU程序主循環(huán)中N個(gè)時(shí)間片內(nèi)的代碼段內(nèi)設(shè)置最多一段代碼用于向指定從機(jī)發(fā)送指定的一幀數(shù)據(jù)和/或一段代碼用于接收指定的從機(jī)發(fā)送的數(shù)據(jù)幀。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于北京遙測技術(shù)研究所;航天長征火箭技術(shù)有限公司,未經(jīng)北京遙測技術(shù)研究所;航天長征火箭技術(shù)有限公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201710178524.3/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。
- 逐出高速緩存的行的電路布置、數(shù)據(jù)處理系統(tǒng)和方法
- 共享緩存管理系統(tǒng)及方法
- 分布式緩存系統(tǒng)、數(shù)據(jù)的緩存方法及緩存數(shù)據(jù)的查詢方法
- 一種緩存替換方法;裝置和系統(tǒng)
- 加速引擎及處理器
- 一種日志緩存方法、系統(tǒng)、設(shè)備及計(jì)算機(jī)可讀存儲介質(zhì)
- 緩存控制方法、裝置和計(jì)算機(jī)可讀存儲介質(zhì)
- 至少具有三個(gè)緩存級別的緩存層級的混合低級緩存包含策略
- 基于雙緩存區(qū)的緩存方法、裝置、設(shè)備及存儲介質(zhì)
- 緩存預(yù)載方法、裝置、處理器芯片及服務(wù)器





