[發(fā)明專利]一種多層循環(huán)程序的運(yùn)行系統(tǒng)和方法有效
| 申請(qǐng)?zhí)枺?/td> | 201811314496.4 | 申請(qǐng)日: | 2018-11-06 |
| 公開(公告)號(hào): | CN109656641B | 公開(公告)日: | 2021-03-02 |
| 發(fā)明(設(shè)計(jì))人: | 劉大可;苗志東;楊兵強(qiáng) | 申請(qǐng)(專利權(quán))人: | 極芯通訊技術(shù)(南京)有限公司 |
| 主分類號(hào): | G06F9/448 | 分類號(hào): | G06F9/448 |
| 代理公司: | 北京路浩知識(shí)產(chǎn)權(quán)代理有限公司 11002 | 代理人: | 王瑩;吳歡燕 |
| 地址: | 211800 江蘇省南京市江蘇自貿(mào)區(qū)南*** | 國(guó)省代碼: | 江蘇;32 |
| 權(quán)利要求書: | 查看更多 | 說(shuō)明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 多層 循環(huán) 程序 運(yùn)行 系統(tǒng) 方法 | ||
本發(fā)明實(shí)施例提供一種多層循環(huán)程序的運(yùn)行系統(tǒng)和方法,通過(guò)將多層循環(huán)程序按程序代碼的方式逐條存儲(chǔ),并且程序代碼的類型包括數(shù)據(jù)運(yùn)算程序代碼和循環(huán)體描述代碼,并根據(jù)當(dāng)前輸入的存儲(chǔ)地址獲取當(dāng)前運(yùn)行代碼,再根據(jù)當(dāng)前運(yùn)行代碼對(duì)每一循環(huán)體的循環(huán)次數(shù)和對(duì)每一循環(huán)體內(nèi)數(shù)據(jù)運(yùn)算程序代碼的運(yùn)行數(shù)量進(jìn)行計(jì)數(shù),根據(jù)當(dāng)前運(yùn)行代碼和每一計(jì)數(shù)結(jié)果進(jìn)行狀態(tài)跳轉(zhuǎn),根據(jù)跳轉(zhuǎn)后的狀態(tài)獲取下一運(yùn)行代碼的存儲(chǔ)地址。該系統(tǒng)和方法僅根據(jù)當(dāng)前運(yùn)行代碼并通過(guò)計(jì)數(shù)器計(jì)數(shù)的方式就能獲取下一運(yùn)行代碼的存儲(chǔ)地址,從而避免了現(xiàn)有技術(shù)中各種循環(huán)條件的復(fù)雜判斷,簡(jiǎn)化了多層循環(huán)程序的運(yùn)行過(guò)程,提高了多層循環(huán)程序的運(yùn)行效率。
技術(shù)領(lǐng)域
本發(fā)明實(shí)施例涉及計(jì)算機(jī)電路技術(shù)領(lǐng)域,更具體地,涉及一種多層循環(huán)程序的運(yùn)行系統(tǒng)和方法。
背景技術(shù)
計(jì)算機(jī)軟件算法中不可避免的會(huì)有很多多層循環(huán)程序,這些多層循環(huán)程序?qū)崿F(xiàn)的時(shí)候常常需要多種額外操作來(lái)實(shí)現(xiàn):包括循環(huán)變量賦初值,循環(huán)變量自增,循環(huán)變量是否達(dá)到循環(huán)總數(shù)判斷,條件跳轉(zhuǎn),指令跳轉(zhuǎn)等。這些額外操作會(huì)占用處理器的執(zhí)行時(shí)間,降低處理器的運(yùn)行速度。
為了提高處理器在處理多層循環(huán)程序時(shí)的速度,現(xiàn)有處理器通常是通過(guò)提高條件跳轉(zhuǎn)指令的效率來(lái)實(shí)現(xiàn),有兩種解決方案:1、在需要執(zhí)行跳轉(zhuǎn)指令的時(shí)候,在得到跳轉(zhuǎn)判斷條件之前,用兩組硬件同時(shí)對(duì)兩種可能的情況進(jìn)行運(yùn)算,最后根據(jù)跳轉(zhuǎn)判斷條件選擇最終結(jié)果;2、使用分支預(yù)測(cè)技術(shù),在需要執(zhí)行跳轉(zhuǎn)指令的時(shí)候,在得到跳轉(zhuǎn)判斷條件之前,通過(guò)分支預(yù)測(cè)硬件得到預(yù)測(cè)結(jié)果,并按該結(jié)果運(yùn)算,如果實(shí)際的跳轉(zhuǎn)條件與預(yù)測(cè)的相同,則輸出結(jié)果,如果不同,則重新計(jì)算。
以上對(duì)多層循環(huán)程序的處理,仍存在多層循環(huán)程序的運(yùn)行效率低下的問(wèn)題。
發(fā)明內(nèi)容
為了克服上述問(wèn)題或者至少部分地解決上述問(wèn)題,本發(fā)明實(shí)施例提供一種多層循環(huán)程序的運(yùn)行系統(tǒng)和方法。
本發(fā)明實(shí)施例提供一種多層循環(huán)程序的運(yùn)行系統(tǒng),包括:相互連接的程序存儲(chǔ)器模塊、循環(huán)計(jì)數(shù)器模塊和指令狀態(tài)機(jī)模塊;程序存儲(chǔ)器模塊存儲(chǔ)有多層循環(huán)程序?qū)?yīng)的若干條程序代碼,其中,每一程序代碼對(duì)應(yīng)一個(gè)存儲(chǔ)地址,程序代碼的類型包括數(shù)據(jù)運(yùn)算程序代碼和循環(huán)體描述代碼,循環(huán)體描述代碼包括預(yù)設(shè)前綴代碼、所描述的循環(huán)體的循環(huán)層級(jí)數(shù)、所描述的循環(huán)體的循環(huán)總次數(shù)和所描述的循環(huán)體內(nèi)的數(shù)據(jù)運(yùn)算程序代碼的總數(shù)量,程序存儲(chǔ)器模塊,用于根據(jù)當(dāng)前輸入的存儲(chǔ)地址獲取當(dāng)前運(yùn)行代碼,并將當(dāng)前運(yùn)行代碼傳輸至循環(huán)計(jì)數(shù)器模塊和指令狀態(tài)機(jī)模塊;循環(huán)計(jì)數(shù)器模塊,用于根據(jù)當(dāng)前運(yùn)行代碼中包含的預(yù)設(shè)前綴代碼確定當(dāng)前運(yùn)行代碼的類型為循環(huán)體描述代碼,根據(jù)當(dāng)前運(yùn)行代碼中所描述的循環(huán)體的循環(huán)層級(jí)數(shù)和所描述的循環(huán)體的循環(huán)總次數(shù)和所描述的循環(huán)體內(nèi)的數(shù)據(jù)運(yùn)算程序代碼的總數(shù)量,對(duì)每一循環(huán)體的循環(huán)次數(shù)和對(duì)每一循環(huán)體內(nèi)數(shù)據(jù)運(yùn)算程序代碼的運(yùn)行數(shù)量進(jìn)行計(jì)數(shù),并將每一計(jì)數(shù)結(jié)果輸出至指令狀態(tài)機(jī)模塊;指令狀態(tài)機(jī)模塊,用于根據(jù)當(dāng)前運(yùn)行代碼和每一計(jì)數(shù)結(jié)果進(jìn)行狀態(tài)跳轉(zhuǎn),根據(jù)跳轉(zhuǎn)后的狀態(tài)獲取下一運(yùn)行代碼的存儲(chǔ)地址,并將下一運(yùn)行代碼的存儲(chǔ)地址傳輸至程序存儲(chǔ)器模塊。
其中,循環(huán)計(jì)數(shù)器模塊包括多個(gè)循環(huán)計(jì)數(shù)器和使能信號(hào)生成子模塊;循環(huán)計(jì)數(shù)器的數(shù)量至少為多層循環(huán)程序的循環(huán)體的總數(shù)量的兩倍;使能信號(hào)生成子模塊,用于根據(jù)當(dāng)前運(yùn)行代碼生成使能信號(hào),并輸入至對(duì)應(yīng)的循環(huán)計(jì)數(shù)器,以使每一循環(huán)計(jì)數(shù)器輸出對(duì)應(yīng)的計(jì)數(shù)結(jié)果。
其中,循環(huán)計(jì)數(shù)器模塊還包括計(jì)數(shù)步長(zhǎng)控制子模塊,計(jì)數(shù)步長(zhǎng)控制子模塊包括多個(gè)多路選擇器;每一多路選擇器連接至一個(gè)循環(huán)計(jì)數(shù)器,每一多路選擇器,用于根據(jù)當(dāng)前運(yùn)行代碼選擇計(jì)數(shù)步長(zhǎng),并將每一計(jì)數(shù)步長(zhǎng)輸入到對(duì)應(yīng)的循環(huán)計(jì)數(shù)器,以使每一循環(huán)計(jì)數(shù)器以對(duì)應(yīng)的計(jì)數(shù)步長(zhǎng)進(jìn)行計(jì)數(shù)。
其中,指令狀態(tài)機(jī)模塊包括狀態(tài)寄存器和狀態(tài)跳轉(zhuǎn)子模塊;狀態(tài)寄存器,用于存儲(chǔ)前一狀態(tài);狀態(tài)跳轉(zhuǎn)子模塊,用于根據(jù)當(dāng)前運(yùn)行代碼、前一狀態(tài)和每一計(jì)數(shù)結(jié)果獲取當(dāng)前狀態(tài)。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于極芯通訊技術(shù)(南京)有限公司,未經(jīng)極芯通訊技術(shù)(南京)有限公司許可,擅自商用是侵權(quán)行為。如果您想購(gòu)買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201811314496.4/2.html,轉(zhuǎn)載請(qǐng)聲明來(lái)源鉆瓜專利網(wǎng)。
- 循環(huán)貨倉(cāng)的錯(cuò)列循環(huán)鏈
- 循環(huán)貨倉(cāng)的錯(cuò)列循環(huán)鏈
- 球循環(huán)機(jī)和球循環(huán)方法
- 循環(huán)扇葉輪及循環(huán)扇
- 循環(huán)過(guò)濾式熱風(fēng)循環(huán)烘箱
- 循環(huán)泵(微循環(huán)泵)
- 機(jī)內(nèi)循環(huán)油循環(huán)系統(tǒng)
- 循環(huán)用水機(jī)與循環(huán)系統(tǒng)
- 自動(dòng)熱能循環(huán)利用熱風(fēng)循環(huán)烘箱
- 高溫循環(huán)風(fēng)扇自循環(huán)降溫裝置
- 功能限制程序、安裝程序生成程序和程序存儲(chǔ)介質(zhì)
- 程序生成系統(tǒng)、程序生成程序和程序生成模塊
- 程序生成系統(tǒng)、程序生成程序和程序生成模塊
- 程序創(chuàng)建裝置,程序創(chuàng)建方法和程序
- 程序生成裝置、程序生產(chǎn)方法及程序
- 程序生成裝置、程序生成程序以及程序生成方法
- 程序生成裝置、程序生成方法及程序生成程序
- 程序開發(fā)支持裝置、程序開發(fā)支持方法以及存儲(chǔ)介質(zhì)
- 程序執(zhí)行輔助裝置、程序執(zhí)行輔助方法及程序執(zhí)行輔助程序
- 程序?qū)φ昭b置、程序?qū)φ辗椒俺绦驅(qū)φ粘绦?/a>
- 運(yùn)行控制裝置及運(yùn)行控制方法
- 運(yùn)行支援裝置、運(yùn)行支援系統(tǒng)以及運(yùn)行支援程序
- 列車運(yùn)行處理方法、運(yùn)行處理裝置和運(yùn)行調(diào)度系統(tǒng)
- 運(yùn)行監(jiān)測(cè)系統(tǒng)及運(yùn)行監(jiān)測(cè)方法
- 運(yùn)行控制裝置及運(yùn)行控制方法
- 運(yùn)行曲線制作裝置、運(yùn)行輔助裝置以及運(yùn)行控制裝置
- 運(yùn)行支持裝置、車輛、運(yùn)行管理裝置和運(yùn)行支持方法
- 運(yùn)行計(jì)劃方法、運(yùn)行控制裝置和運(yùn)行計(jì)劃系統(tǒng)
- 運(yùn)行控制裝置、運(yùn)行管理系統(tǒng)、運(yùn)行控制方法以及車輛
- 自動(dòng)建模運(yùn)行系統(tǒng)及運(yùn)行方法





