專(zhuān)利名稱(chēng):多重微控制器管線(xiàn)式指令執(zhí)行方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種程序控制指令的執(zhí)行方法,尤其涉及一種一種多
重微控制器的管線(xiàn)式指令執(zhí)行方(Pipeline Instruction Execution Method)。
背景技術(shù):
為追求微控制器的執(zhí)行效率,現(xiàn)有技術(shù)中提出一種管線(xiàn)式指令執(zhí) 行方法,此種方法將一個(gè)指令切割成若干個(gè)子部分,因每個(gè)子部份的 執(zhí)行元件和執(zhí)行動(dòng)作不同,故可以在同一時(shí)間內(nèi),循序?qū)⒉煌噶畹?子部份交由不同的電路元件來(lái)執(zhí)行,盡量使電路元件不必閑置,以提 高執(zhí)行效率。此種執(zhí)行指令的方式類(lèi)似以多條生產(chǎn)線(xiàn)來(lái)生產(chǎn)產(chǎn)品,故 稱(chēng)為「管線(xiàn)式」指令執(zhí)行方法。
請(qǐng)參閱圖1,其中顯示已知的三級(jí)管線(xiàn)式指令執(zhí)行方法,此種指 令執(zhí)行方法將指令切割成三個(gè)子部份。圖中上方的方波波形代表指令 周期(instruction cycle),其中每一組正負(fù)脈沖代表一個(gè)指令周期。所 謂指令周期,指根據(jù)該微控制器的設(shè)計(jì),在該指令周期中,可完成一 個(gè)指令的某部份動(dòng)作。 一個(gè)指令周期未必恰是一個(gè)時(shí)鐘脈沖周期,而 可能是若干個(gè)時(shí)鐘脈沖周期。
在此種三級(jí)管線(xiàn)式指令執(zhí)行方法中,通常是將指令執(zhí)行分成取 回指令、執(zhí)行、寫(xiě)回三個(gè)子部份。如圖所示,由于這三個(gè)子部份由不 同的電路元件執(zhí)行,故可在第一個(gè)指令周期內(nèi)先取回第N個(gè)指令,接 著在第二個(gè)指令周期內(nèi)執(zhí)行第N個(gè)指令,并由于負(fù)責(zé)取回指令的電路
元件已經(jīng)空閑,故同時(shí)可令其依序取回下一個(gè)指令N+l;而在第三個(gè) 指令周期內(nèi),則同時(shí)進(jìn)行取回第N+2個(gè)指令、執(zhí)行第N+1個(gè)指令、
及寫(xiě)回第N個(gè)指令的動(dòng)作。微控制器以如此方式依次執(zhí)行各個(gè)指令。
圖1所示是上述三級(jí)管線(xiàn)式指令執(zhí)行方法的理想狀況,但實(shí)際應(yīng) 用上可能會(huì)出現(xiàn)圖2所示的非理想狀況。如圖2所示,程序指令未必 都是依序執(zhí)行;根據(jù)統(tǒng)計(jì),程序中約有12%的指令會(huì)進(jìn)行跳躍,例如 jump, call, interrupt, interrupt return等等。如果第N個(gè)指令為此種跳躍 指令,則所發(fā)生的執(zhí)行狀況將如圖所示,于第二個(gè)指令周期時(shí),微控 制器將自動(dòng)依序取回下一個(gè)指令N+1,但必須等到第N個(gè)指令的執(zhí)行 動(dòng)作完畢后,在第三個(gè)指令周期時(shí),才會(huì)發(fā)現(xiàn)此時(shí)應(yīng)該執(zhí)行的是第M 個(gè)指令、并非第N+1個(gè)指令,而必須取消與第N+1個(gè)指令相關(guān)的動(dòng)作 (取消的作法是不予執(zhí)行,或執(zhí)行但不將結(jié)果寫(xiě)回)。換言之,在第 二個(gè)指令周期時(shí)所作的自動(dòng)依序取回指令動(dòng)作,反而浪費(fèi)了一個(gè)指令 周期。
以上所述為較簡(jiǎn)單的三級(jí)管線(xiàn)式指令執(zhí)行方法,如果是較復(fù)雜的 更多級(jí)管線(xiàn)式指令執(zhí)行方法,則所面對(duì)的問(wèn)題將更加嚴(yán)重。
圖3顯示已知的五級(jí)管線(xiàn)式指令執(zhí)行方法,此種指令執(zhí)行方法將
指令切割成五個(gè)子部份取回指令、譯碼、取還暫存器資料、執(zhí)行、
寫(xiě)回。如圖所示,由于必須等到第N個(gè)指令的執(zhí)行動(dòng)作完畢后,才會(huì) 發(fā)現(xiàn)下一個(gè)應(yīng)該執(zhí)行的是第M個(gè)指令,因此所依序取回的第N+l、N+2、 N+3個(gè)指令全部必須取消,而所浪費(fèi)的指令周期高達(dá)三個(gè)。
圖4顯示已知的八級(jí)管線(xiàn)式指令執(zhí)行方法,此種指令執(zhí)行方法將 指令切割成八個(gè)子部份取回指令(l)、取回指令(2)、取還暫存器資料、 產(chǎn)生位址、執(zhí)行/存儲(chǔ)器存取(1)、執(zhí)行/存儲(chǔ)器存取(2)、例外狀況處 理、寫(xiě)回。如圖所示,由于必須等到執(zhí)行動(dòng)作(2)完畢后,才會(huì)發(fā)現(xiàn)下 一個(gè)應(yīng)該執(zhí)行的是第M個(gè)指令,因此所浪費(fèi)的指令周期高達(dá)五個(gè)。
如前所述,假設(shè)程序中有12%的指令非依序執(zhí)行,則在三級(jí)管線(xiàn)
式指令執(zhí)行方法中,大約有12%的指令會(huì)浪費(fèi)一個(gè)指令周期,故共有
12%的指令周期會(huì)被浪費(fèi)掉,或是,大約有12/(100+12)=10.7%的效率 損失。在五級(jí)管線(xiàn)式指令執(zhí)行方法中,大約有12%的指令會(huì)浪費(fèi)三個(gè) 指令周期,故共有36%的指令周期會(huì)被浪費(fèi)掉,或是,大約有 36/(100+36)=26.5%的效率損失。而在八級(jí)管線(xiàn)式指令執(zhí)行方法中,大 約有12%的指令會(huì)浪費(fèi)五個(gè)指令周期,故所浪費(fèi)的指令周期將超過(guò)一 半,或是,大約有60/(100+60)=37.5%的效率損失。而最高階的微控制 器,甚至可能將指令切割成高過(guò)二十個(gè)子部份,則所相應(yīng)產(chǎn)生的指令 周期浪費(fèi),可想象將是非常驚人。
針對(duì)以上問(wèn)題,現(xiàn)有技術(shù)的解決方法是另外設(shè)計(jì)一個(gè)「指令預(yù)測(cè) 電路」,以預(yù)測(cè)下一個(gè)指令是否會(huì)跳躍,若會(huì)跳躍,則可能跳躍至何 處。此種電路若要精準(zhǔn),則必須保存指令執(zhí)行的歷史紀(jì)錄,予以追蹤 分析,才能在發(fā)生類(lèi)似情況時(shí)準(zhǔn)確猜測(cè)下一個(gè)指令可能落在何處???想而知,不但電路設(shè)計(jì)相當(dāng)復(fù)雜,且因?yàn)樗柚鎯?chǔ)器龐大,電路所 占據(jù)的面積也相當(dāng)可觀。若顧及電路設(shè)計(jì)和整體微控制器的精簡(jiǎn)化, 則所設(shè)計(jì)的指令預(yù)測(cè)電路準(zhǔn)確度又勢(shì)必下降。且即使目前最精密的指 令預(yù)測(cè)電路,也有其不準(zhǔn)確的范圍,并不能100%精確。雖然就提高微 控制器執(zhí)行效率的角度而言,即使指令預(yù)測(cè)電路不能100%精確,也能 夠輔助提高微控制器的執(zhí)行效率,但問(wèn)題是某些程序設(shè)計(jì)需要在固定 的時(shí)間內(nèi)得到反應(yīng),例如引擎按時(shí)點(diǎn)火、秒針移動(dòng)等等。對(duì)于這些應(yīng) 用而言,其最需要的是「確定性」,亦卽程序設(shè)計(jì)者必須控制微控制 器在準(zhǔn)確的時(shí)點(diǎn)產(chǎn)出準(zhǔn)確的動(dòng)作。但程序設(shè)計(jì)者無(wú)法控制指令預(yù)測(cè)電 路,故指令預(yù)測(cè)電路即使有99%的準(zhǔn)確率,其1°/。的不確定性仍將造成 程序撰寫(xiě)上的困難。
以上所述問(wèn)題,在現(xiàn)有技術(shù)中的單微控制器或多重微控制器中都 同樣存在。
有鑒于此,本發(fā)明乃提出一種多重微控制器管線(xiàn)式指令執(zhí)行方法,
相較于現(xiàn)有技術(shù)而言,具有較佳的執(zhí)行效率,且可提供更穩(wěn)定的指令 執(zhí)行時(shí)程,免除程序設(shè)計(jì)者的困擾。
發(fā)明內(nèi)容
本發(fā)明的主要目的在提供一種多重微控制器管線(xiàn)式指令執(zhí)行方 法,藉由各微控制器依序輪流取回指令,以在執(zhí)行到跳躍指令時(shí),避 免大幅取消指令。
本發(fā)明的另一目的在提供一種多重微控制器管線(xiàn)式指令執(zhí)行方 法,其中確使至少一個(gè)微控制器可以準(zhǔn)確地執(zhí)行須精準(zhǔn)控制時(shí)程的程 序。
根據(jù)本發(fā)明的多重微控制器管線(xiàn)式指令執(zhí)行方法,當(dāng)多重微控制 器具有多個(gè)微控制器時(shí),在第一個(gè)指令周期中,由第一個(gè)微控制器取
回指令;并在緊接第一個(gè)指令周期的第二個(gè)指令周期中,由第二個(gè)微 控制器取回指令。
根據(jù)本發(fā)明的其中一個(gè)實(shí)施態(tài)樣,多個(gè)微控制器個(gè)別依序輪流于 一個(gè)對(duì)應(yīng)的指令周期中取回指令。根據(jù)本發(fā)明的另外一個(gè)實(shí)施態(tài)樣, 多個(gè)微控制器的一部份微控制器個(gè)別依序輪流于一個(gè)對(duì)應(yīng)的指令周期 中取回指令,而另一部分微控制器以不同的頻率取回指令。又根據(jù)本 發(fā)明的再一實(shí)施態(tài)樣,在所述多個(gè)微控制器中,至少有一個(gè)微控制器, 其每取回一個(gè)指令后,于完成該指令的執(zhí)行階段后,才取回下一個(gè)指令。
綜上所述,本發(fā)明對(duì)比現(xiàn)有技術(shù),有以下的優(yōu)點(diǎn)
一、 因?yàn)椴粫?huì)或較少出現(xiàn)需要取消指令的情形,故微控制器的
執(zhí)行效率較佳;
二、 不必設(shè)計(jì)使用既復(fù)雜又占面積的指令預(yù)測(cè)電路;
三、 執(zhí)行需要精準(zhǔn)控制時(shí)間的程序時(shí),對(duì)于執(zhí)行該程序的微控
制器而言,非依序的跳躍指令在一個(gè)個(gè)別指令周期內(nèi)即可完成,故可 以在準(zhǔn)確的時(shí)間點(diǎn)產(chǎn)生結(jié)果;
四、 程序設(shè)計(jì)者撰寫(xiě)程序時(shí)十分單純。
以下通過(guò)具體實(shí)施例配合所示附圖詳加說(shuō)明,當(dāng)更容易了解本發(fā) 明的目的、技術(shù)內(nèi)容、特點(diǎn)及其所達(dá)成的功效。
圖1顯示已知的三級(jí)管線(xiàn)式指令執(zhí)行方法。
圖2說(shuō)明己知的三級(jí)管線(xiàn)式指令執(zhí)行方法,遇到非依序指令時(shí), 必須取消指令而損失指令周期。
圖3說(shuō)明已知的五級(jí)管線(xiàn)式指令執(zhí)行方法,遇到非依序指令時(shí), 必須取消指令而損失指令周期。
圖4說(shuō)明已知的八級(jí)管線(xiàn)式指令執(zhí)行方法,遇到非依序指令時(shí), 必須取消指令而損失指令周期。
圖5顯示本發(fā)明的一個(gè)實(shí)施例,應(yīng)用于具有兩個(gè)微控制器的多重
微控制器中,且該多重微控制器使用三級(jí)管線(xiàn)式指令執(zhí)行方法。
圖6與圖7分別示出本發(fā)明的另外兩個(gè)實(shí)施例。
圖8與圖9分別示出本發(fā)明的又另外兩個(gè)實(shí)施例,顯示本發(fā)明的
執(zhí)行方法,即使未能完全避免取消指令,其指令執(zhí)行效率也遠(yuǎn)較已知
的技術(shù)為佳。
圖IO為本發(fā)明的又另一個(gè)實(shí)施例,顯示將指令周期不均勻分配給 各微控制器的情形。
圖中符號(hào)說(shuō)明 MCU-1第一微控制器 MCU-2 第二微控制器 MCU-3第三微控制器 MCU-4 第四微控制器 MCU-5 第五微控制器
MCU-6第六微控制器具體實(shí)施方式
請(qǐng)參閱圖5,其中顯示本發(fā)明的一個(gè)實(shí)施例。假設(shè)本發(fā)明應(yīng)用于具有兩個(gè)微控制器的多重微控制器中,且該多重微控制器使用三級(jí)管 線(xiàn)式指令執(zhí)行方法,則如圖所示,本發(fā)明的特點(diǎn)在于,各微控制器分 別錯(cuò)開(kāi)而依序輪流取回指令,亦卽在第一個(gè)指令周期內(nèi),由第一微控制器MCU-1取回屬于MCU-1的第A個(gè)指令,接著在第二個(gè)指令周期 內(nèi),由第二微控制器MCU-2取回屬于MCU-2的第T個(gè)指令。此時(shí), 第一微控制器MCU-1也同時(shí)執(zhí)行第A個(gè)指令,故在第三個(gè)指令周期時(shí), 已可獲知第一微控制器MCU-1的下一個(gè)指令為第B個(gè)指令,而此指令 可能是依序的下一個(gè)指令(B = A+1),或跳躍的指令。同理,當(dāng)?shù)竭_(dá) 第四個(gè)指令周期,第二微控制器MCU-2需要取回指令時(shí),也已經(jīng)得知 應(yīng)該取回第U個(gè)指令。請(qǐng)參閱圖5上方的三個(gè)指令周期示意波形,在上述安排方式中, 雖然就整體多重微控制器而言,依據(jù)第三個(gè)波形的指令周期來(lái)工作, 但就個(gè)別微控制器而言,可看作各微控制器在各自的個(gè)別指令周期中 工作,亦卽第一微控制器MCU-1依據(jù)MCU-1指令周期來(lái)工作,而第 二微控制器MCU-2依據(jù)MCU-2指令周期來(lái)工作。為便利區(qū)別起見(jiàn), 就整體多重微控制器而言的指令周期,單純稱(chēng)為「指令周期」;就個(gè) 別微控制器而言的指令周期,稱(chēng)為「?jìng)€(gè)別指令周期」。重要的是,就 任何一個(gè)微控制器而言,即使執(zhí)行非依序的跳躍指令,也能夠在一個(gè) 個(gè)別指令周期中,完成該指令的執(zhí)行步驟,而在下一個(gè)個(gè)別指令周期 時(shí),即可取回另一個(gè)指令并執(zhí)行。圖6與圖7分別示出本發(fā)明的另兩個(gè)實(shí)施例,在圖6的實(shí)施例中, 多重微控制器具有四個(gè)微控制器,并采用五級(jí)管線(xiàn)式指令執(zhí)行方法; 如圖所示,由于第一微控制器MCU-1取回第A個(gè)指令(第一個(gè)指令周 期)之后,直到第五個(gè)指令周期才再次需要取回下一個(gè)指令,而在此
之前,于第四個(gè)指令周期內(nèi),第一微控制器MCU-1已經(jīng)執(zhí)行完畢而得知下一個(gè)指令為第B個(gè)指令,故不會(huì)發(fā)生必須取消指令的情形。在圖7的實(shí)施例中,多重微控制器具有六個(gè)微控制器,并采用八 級(jí)管線(xiàn)式指令執(zhí)行方法;如圖所示,由于第一微控制器MCU-1取回第 A個(gè)指令(第一個(gè)指令周期)之后,直到第七個(gè)指令周期才再次需要 取回下一個(gè)指令,而在此之前,于第六個(gè)指令周期內(nèi),第一微控制器 MCU-1已經(jīng)執(zhí)行完畢而得知下一個(gè)指令為第B個(gè)指令,故同樣不會(huì)發(fā) 生必須取消指令的情形。由上可知,根據(jù)本發(fā)明的交錯(cuò)執(zhí)行方法,若多重微控制器具有n 個(gè)微控制器,并采用m級(jí)管線(xiàn)式指令執(zhí)行方法,且在第x個(gè)指令周期 之前,就可完成指令的執(zhí)行步驟,則當(dāng)n ^ x時(shí),必然不會(huì)發(fā)生必須 取消指令的情形。例如,若指令執(zhí)行步驟是在m級(jí)管線(xiàn)式指令執(zhí)行方 法的第m-l級(jí)執(zhí)行完畢,則在n ^ m-l,亦卽m ^ n+l時(shí),必然不 會(huì)發(fā)生必須取消指令的情形,如圖5 (n=2, m=3)、圖6 (n=4, m=5) 所示;又若指令執(zhí)行步驟是在m級(jí)管線(xiàn)式指令執(zhí)行方法的第m-2級(jí)執(zhí) 行完畢,則在n ^ m-2時(shí),亦卽m ^ n+2時(shí),必然不會(huì)發(fā)生必須取 消指令的情形,如圖7 (n=6,m=8)所示。若多重微控制器具有較少的微控制器數(shù)目,但欲以較精密的多級(jí) 管線(xiàn)方式來(lái)執(zhí)行指令,則仍然可能出現(xiàn)必須取消指令的情形,但所損 失的指令周期數(shù)目,顯然較己知的技術(shù)要少得多;以下詳細(xì)說(shuō)明之。請(qǐng)參閱圖8與圖9,并對(duì)照?qǐng)D4。本發(fā)明的執(zhí)行方法,相較已知的 技術(shù),即使未能完全避免取消指令,指令執(zhí)行效率也遠(yuǎn)較的為佳。例 如,假設(shè)使用八級(jí)管線(xiàn)式指令執(zhí)行方法,而多重微控制器具有兩個(gè)微 控制器(圖8),則圖4顯示的已知的技術(shù),每跳躍一次,卽需損失五 個(gè)指令周期,但使用本發(fā)明的執(zhí)行方法,每跳躍一次,僅需損失兩個(gè) 指令周期;若多重微控制器具有四個(gè)微控制器(圖9),則每跳躍一次,僅需損失一個(gè)指令周期。換言之,即使僅具有兩個(gè)微控制器,本發(fā)明 也非僅是微幅改善執(zhí)行效率而已。
上述效率對(duì)照,其通則如下。假設(shè)微控制器數(shù)目為II,指令執(zhí)行 步驟在第X個(gè)指令周期完成,則已知的技術(shù)損失的指令周期數(shù)目為 (x-l),而本發(fā)明的執(zhí)行方法所損失的指令周期數(shù)目為INTea y[(X/n)-l], INTe^y[]代表無(wú)條件進(jìn)位至下一位整數(shù)。當(dāng)x與n的數(shù)目越大時(shí),本發(fā) 明的效益更為顯著。例如,當(dāng)乂=15,11=3時(shí),已知的技術(shù)每跳躍一次, 卽需損失14個(gè)指令周期,但本發(fā)明每跳躍一次,僅需損失4個(gè)指令周 期。
在以上所述各實(shí)施例中,各微控制器依序輪流于一個(gè)對(duì)應(yīng)的指令 周期中取回指令,亦卽若多重微控制器包括n個(gè)微控制器,則在第一 個(gè)指令周期中,由第一個(gè)微控制器取回指令;在緊接第一個(gè)指令周期 的第二個(gè)指令周期中,由第二個(gè)微控制器取回指令;在緊接第二個(gè)指 令周期的第三個(gè)指令周期中,由第三個(gè)微控制器取回指令;......;在
緊接第n-l個(gè)指令周期的第n個(gè)指令周期中,由第ii個(gè)微控制器取回指 令;在緊接第n個(gè)指令周期的第n+l個(gè)指令周期中,由第一個(gè)微控制 器取回指令;......。
然而,除以上所述安排方式外,根據(jù)本發(fā)明,也未必一定須將指 令周期平均給不同的微控制器使用,來(lái)取回指令。請(qǐng)參閱圖10的實(shí)施 例,其中多重微控制器具有三個(gè)微控制器,所采用的是五級(jí)管線(xiàn)式指 令執(zhí)行方法。在本實(shí)施例中,第一和第二個(gè)指令周期均指派給第一微 控制器MCU-1來(lái)取回指令,第三個(gè)指令周期指派給第二微控制器 MCU-2,第四個(gè)指令周期指派給第三微控制器MCU-3。因此,各微控 制器的個(gè)別指令周期,可看作如圖IO上方的波形所示。在此種安排方 式下,對(duì)于第二微控制器MCU-2和第三微控制器MCU-3而言,也必 然不會(huì)發(fā)生必須取消指令的情形,因?yàn)榈诙⒖刂破鱉CU-2和第三微 控制器MCU-3會(huì)在完成相對(duì)應(yīng)指令的執(zhí)行階段后,才取回下一個(gè)指令。
因此,僅有第一微控制器MCU-I有可能必須取消指令,故程序設(shè)計(jì)者
可將需要精確控制時(shí)程的程序交給第二微控制器MCU-2和第三微控制 器MCU-3來(lái)執(zhí)行,而使用第一微控制器MCU-1來(lái)執(zhí)行不需要精確控 制時(shí)程的程序。而雖然第一微控制器MCU-1有可能必須取消指令,但 就整體多重微控制器的執(zhí)行效率而言,所可能損失的指令周期,仍遠(yuǎn) 較已知的技術(shù)為少。
圖IO所舉例說(shuō)明的安排方式,其概念為,假設(shè)微控制器數(shù)目為n, 指令執(zhí)行步驟在第x個(gè)指令周期完成,而n<x時(shí),可令其中一部分(通 常是大部分)微控制器以1/x (甚至1/ax, a為整數(shù))的頻率使用指令 周期(亦即其個(gè)別指令周期的頻率等于指令周期頻率的1/x,或1/ax), 而令其中一個(gè)或小部分微控制器使用其余的指令周期。如此,則以l/x
(或l/ax, a為整數(shù))的頻率使用指令周期的微控制器,卽不會(huì)發(fā)生必 須取消指令的情形。在圖IO所舉例中,n = 3, x = 4,第二微控制器 MCU-2和第三微控制器MCU-3以1/4的頻率使用指令周期,而第一微 控制器MCU-1以2/4的頻率使用指令周期。當(dāng)然,此種安排方式并非 唯一。例如,假設(shè)在八級(jí)管線(xiàn)式指令執(zhí)行方法中,n = 4,x = 6,則其分 派方式可為3/6, 1/6, 1/6, 1/6;或2/6, 2/6, 1/6, 1/6;甚至4/6, 1/6, 1/12,
1/12;又甚至可動(dòng)態(tài)改變其分派方式,例如在某一個(gè)微控制器閑置時(shí), 將屬于該微控制器的指令周期,指派給第一微控制器MCU-1來(lái)加速執(zhí) 行不需要精確控制時(shí)程的程序,等等。
以上所述的實(shí)施例僅為說(shuō)明本發(fā)明的技術(shù)思想及特點(diǎn),其目的在 使熟習(xí)此項(xiàng)技藝的人士能夠了解本發(fā)明之內(nèi)容并據(jù)以實(shí)施,當(dāng)不能以 的限定本發(fā)明的專(zhuān)利范圍,即大凡依本發(fā)明所揭示的精神所作的均等 變化或修飾,仍應(yīng)涵蓋在本發(fā)明的專(zhuān)利范圍內(nèi)。
權(quán)利要求
1.一種多重微控制器的管線(xiàn)式指令執(zhí)行方法,其中該多重微控制器具有多個(gè)微控制器,該方法包含在第一個(gè)指令周期中,由第一個(gè)微控制器取回指令;以及在緊接第一個(gè)指令周期的第二個(gè)指令周期中,由第二個(gè)微控制器取回指令。
2. 如權(quán)利要求1所述的多重微控制器的管線(xiàn)式指令執(zhí)行方法,其 中在所述多個(gè)微控制器中,至少有一個(gè)微控制器,其每取回一個(gè)指令 后,于完成該指令的執(zhí)行階段后,才取回下一個(gè)指令。
3. 如權(quán)利要求2所述的多重微控制器的管線(xiàn)式指令執(zhí)行方法,其 中所述多個(gè)微控制器的所有微控制器,皆于每取回一個(gè)指令后,在完 成該指令的執(zhí)行階段后,才取回下一個(gè)指令。
4. 如權(quán)利要求2所述的多重微控制器的管線(xiàn)式指令執(zhí)行方法,其 中所述多個(gè)微控制器中,有一部份微控制器,于每取回一個(gè)指令后, 在完成該指令的執(zhí)行階段后,才取回下一個(gè)指令;而另一部份微控制 器,于每取回一個(gè)指令后,在完成該指令的執(zhí)行階段之前,卽取回下 一個(gè)指令。
5. 如權(quán)利要求1所述的多重微控制器的管線(xiàn)式指令執(zhí)行方法,其 中所述多個(gè)微控制器個(gè)別依序輪流于一個(gè)對(duì)應(yīng)的指令周期中取回指 令。
6. 如權(quán)利要求1所述的多重微控制器的管線(xiàn)式指令執(zhí)行方法,其 中所述多個(gè)微控制器中的第一部份微控制器個(gè)別依序輪流于一個(gè)對(duì)應(yīng) 的指令周期中取回指令,而第二部分微控制器以不同的頻率取回指令。
7. 如權(quán)利要求6所述的多重微控制器的管線(xiàn)式指令執(zhí)行方法,其 中指令執(zhí)行步驟在每次指令的第X個(gè)指令周期中完成,且該第一部份 微控制器的個(gè)別指令周期頻率等于指令周期頻率除以x,或除以ax,其 中a為整數(shù)。
8. 如權(quán)利要求6所述的多重微控制器的管線(xiàn)式指令執(zhí)行方法,其 中該第二部分微控制器以較高的頻率取回指令。
9. 如權(quán)利要求l所述的多重微控制器的管線(xiàn)式指令執(zhí)行方法,其 中至少有一個(gè)微控制器,可在一個(gè)個(gè)別指令周期之內(nèi),完成非依序指 令的執(zhí)行階段。
10. 如權(quán)利要求9所述的多重微控制器的管線(xiàn)式指令執(zhí)行方法, 其中該至少一個(gè)微控制器供執(zhí)行需精準(zhǔn)控制時(shí)程的程序。
11. 一種多重微控制器,包含多個(gè)微控制器,各微控制器依據(jù)各 自的個(gè)別指令周期而工作,且其中至少有一個(gè)微控制器,可在一個(gè)個(gè) 別指令周期之內(nèi),完成非依序指令的執(zhí)行步驟。
12. 如權(quán)利要求11所述的多重微控制器,其中該至少一個(gè)微控制 器,可于取回非依序指令的緊接下一個(gè)別指令周期,取回另一個(gè)指令。
13. 如權(quán)利要求ll所述的多重微控制器,其中所述多個(gè)微控制器 的所有微控制器,皆可在一個(gè)別指令周期之內(nèi),完成非依序指令的執(zhí) 行步驟。
14. 如權(quán)利要求ll所述的多重微控制器,其中指令執(zhí)行步驟在每 次指令的第x個(gè)指令周期中完成,且其中該至少一個(gè)微控制器的個(gè)別 指令周期頻率等于多重微控制器的指令周期頻率除以x,或除以ax, 其中a為整數(shù)。
全文摘要
本發(fā)明揭露一種多重微控制器管線(xiàn)式指令執(zhí)行方法。當(dāng)該發(fā)明具有多個(gè)微控制器時(shí),在第一個(gè)指令周期中,由第一個(gè)微控制器取回指令;并在緊接第一個(gè)指令周期的第二個(gè)指令周期中,由第二個(gè)微控制器取回指令。在多個(gè)微控制器中,至少有一部份個(gè)別依序輪流于一個(gè)對(duì)應(yīng)的指令周期中取回指令,又或是,在所述多個(gè)微控制器中,至少有一個(gè)微控制器,其每取回一個(gè)指令后,于完成該指令的執(zhí)行階段后,才取回下一個(gè)指令。本發(fā)明具有較佳的執(zhí)行效率,且可提供更穩(wěn)定的指令執(zhí)行時(shí)程。
文檔編號(hào)G06F9/38GK101114219SQ20061010757
公開(kāi)日2008年1月30日 申請(qǐng)日期2006年7月26日 優(yōu)先權(quán)日2006年7月26日
發(fā)明者張榮麟 申請(qǐng)人:應(yīng)廣科技股份有限公司