国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      寄存器堆緩存資源的動(dòng)態(tài)釋放方法、系統(tǒng)及一種處理器的制造方法

      文檔序號(hào):8430599閱讀:491來(lái)源:國(guó)知局
      寄存器堆緩存資源的動(dòng)態(tài)釋放方法、系統(tǒng)及一種處理器的制造方法
      【技術(shù)領(lǐng)域】
      [0001]本發(fā)明涉及多線(xiàn)程處理器設(shè)計(jì)的技術(shù)領(lǐng)域,具體是一種寄存器堆緩存資源的動(dòng)態(tài)釋放方法、系統(tǒng)及一種處理器。
      【背景技術(shù)】
      [0002]多線(xiàn)程處理器的寄存器堆通常采用多層次的寄存器堆結(jié)構(gòu)的設(shè)計(jì),包括主寄存器堆 MRF (Main Register File);和寄存器堆緩存 RFC (Register File Cache) ο
      [0003]主寄存器堆用于存放所有線(xiàn)程的通用寄存器,其容量大,但是端口有限,速度也比較慢。寄存器堆緩存端口較多,速度快,但是容量小,一般只為每個(gè)線(xiàn)程預(yù)留2-3個(gè)通用寄存器的存儲(chǔ)空間。當(dāng)某個(gè)線(xiàn)程需要讀取的寄存器不在寄存器堆緩存中而在主寄存器堆中時(shí),需要通過(guò)替換策略將該寄存器從主寄存器堆中取回到寄存器堆緩存使用,同時(shí)選取寄存器堆緩存的一個(gè)表項(xiàng)剔除出去,替換策略通常為最近最少使用(Least Recently Use) ?寄存器堆緩存為多線(xiàn)程共用,資源非常寶貴,在多線(xiàn)程處理器中,如何及時(shí)的將暫時(shí)掛起不運(yùn)行的線(xiàn)程所占用的寄存器堆緩存資源釋放回收,讓需要的線(xiàn)程來(lái)使用,是多層次的寄存器堆設(shè)計(jì)需要考慮的重要問(wèn)題。
      [0004]現(xiàn)有技術(shù)中,主要是由編譯器在靜態(tài)編譯階段查找出可能導(dǎo)致長(zhǎng)延時(shí)的指令,這些指令在執(zhí)行完成后的結(jié)果不寫(xiě)回寄存器堆緩存,直接寫(xiě)回主寄存器堆,這些可能導(dǎo)致長(zhǎng)延時(shí)的指令包括系統(tǒng)指令和共享數(shù)據(jù)的訪(fǎng)存指令,如ARMv8中的Exclusive Load。該方法存在以下技術(shù)問(wèn)題:
      [0005](I)編譯器在靜態(tài)編譯階段識(shí)別的指令過(guò)于泛泛,因?yàn)橄到y(tǒng)指令和訪(fǎng)存指令在指令流中經(jīng)常出現(xiàn),但并不一定會(huì)導(dǎo)致長(zhǎng)延時(shí)的停頓。如果所有這些指令的執(zhí)行結(jié)果均不寫(xiě)回寄存器堆緩存而直接寫(xiě)回主寄存器堆的話(huà)會(huì)嚴(yán)重影響線(xiàn)程的執(zhí)行效率且對(duì)寄存器堆緩存資源是一種浪費(fèi)。
      [0006](2)靜態(tài)編譯需要通過(guò)在指令中增加一些Hint類(lèi)型的比特來(lái)告訴硬件這些指令需要對(duì)寄存器堆緩存進(jìn)行Bypass的操作,相當(dāng)于增加了新的指令,也會(huì)對(duì)線(xiàn)程執(zhí)行效率帶來(lái)影響。

      【發(fā)明內(nèi)容】

      [0007]為此,本發(fā)明所要解決的技術(shù)問(wèn)題在于現(xiàn)有技術(shù)中釋放回收寄存器堆緩存資源的方法效率較低。
      [0008]為解決上述技術(shù)問(wèn)題,本發(fā)明提供一種寄存器堆緩存資源的動(dòng)態(tài)釋放方法,包括以下步驟:
      [0009]監(jiān)測(cè)每一線(xiàn)程是否有長(zhǎng)延時(shí)事件發(fā)生;
      [0010]若有,則判斷該長(zhǎng)延時(shí)事件所在線(xiàn)程是否占用有效的寄存器堆緩存表項(xiàng);
      [0011]若占用,則發(fā)送將被該長(zhǎng)延時(shí)事件所在線(xiàn)程占用的寄存器堆緩存表項(xiàng)標(biāo)記為優(yōu)先替換的請(qǐng)求。
      [0012]優(yōu)選地,所述寄存器堆緩存資源的動(dòng)態(tài)釋放方法,所述監(jiān)測(cè)是否有發(fā)生長(zhǎng)延時(shí)事件的線(xiàn)程的步驟包括:
      [0013]主動(dòng)監(jiān)測(cè)每一線(xiàn)程是否發(fā)生長(zhǎng)延時(shí)事件;和/或
      [0014]接收發(fā)生長(zhǎng)延時(shí)事件的線(xiàn)程發(fā)送的長(zhǎng)延時(shí)信號(hào)。
      [0015]優(yōu)選地,所述寄存器堆緩存資源的動(dòng)態(tài)釋放方法,發(fā)送將被該長(zhǎng)延時(shí)事件所在線(xiàn)程占用的寄存器堆緩存表項(xiàng)標(biāo)記為優(yōu)先替換的請(qǐng)求包括:
      [0016]表項(xiàng)在寄存器堆緩存中的索引號(hào)以及優(yōu)先替換指示信號(hào)。
      [0017]優(yōu)選地,所述寄存器堆緩存資源的動(dòng)態(tài)釋放方法,在發(fā)送將被該長(zhǎng)延時(shí)事件所在線(xiàn)程占用的寄存器堆緩存表項(xiàng)標(biāo)記為優(yōu)先替換的請(qǐng)求之后還包括:
      [0018]判斷該長(zhǎng)延時(shí)事件是否即將結(jié)束;
      [0019]若是,則發(fā)送恢復(fù)該長(zhǎng)延時(shí)事件所在線(xiàn)程對(duì)寄存器堆緩存表項(xiàng)的占用的請(qǐng)求。
      [0020]本發(fā)明還提供一種寄存器堆緩存資源的動(dòng)態(tài)釋放方法,包括以下步驟:
      [0021]接收將被長(zhǎng)延時(shí)事件所在線(xiàn)程占用的寄存器堆緩存表項(xiàng)標(biāo)記為優(yōu)先替換的請(qǐng)求;
      [0022]根據(jù)所述請(qǐng)求將長(zhǎng)延時(shí)事件所在線(xiàn)程占用的寄存器堆緩存表項(xiàng)標(biāo)記為優(yōu)先替換。
      [0023]優(yōu)選地,所述寄存器堆緩存資源的動(dòng)態(tài)釋放方法,在接收將被長(zhǎng)延時(shí)時(shí)間所在線(xiàn)程占用的寄存器堆緩存表項(xiàng)標(biāo)記為優(yōu)先替換的請(qǐng)求之前還包括:
      [0024]為寄存器堆緩存表項(xiàng)設(shè)置索引號(hào)和標(biāo)識(shí)位;
      [0025]接收將被長(zhǎng)延時(shí)事件所在線(xiàn)程占用的寄存器堆緩存表項(xiàng)標(biāo)記為優(yōu)先替換的請(qǐng)求中:所述請(qǐng)求包括表項(xiàng)的索引號(hào)和優(yōu)先替換指示信號(hào);
      [0026]根據(jù)所述請(qǐng)求將長(zhǎng)延時(shí)事件所在線(xiàn)程占用的寄存器堆緩存表項(xiàng)標(biāo)記為優(yōu)先替換中:根據(jù)索引號(hào)確定寄存器堆緩存表項(xiàng),將該表項(xiàng)的標(biāo)識(shí)位設(shè)置為優(yōu)先替換指示信號(hào)。
      [0027]優(yōu)選地,所述寄存器堆緩存資源的動(dòng)態(tài)釋放方法,在根據(jù)所述請(qǐng)求將長(zhǎng)延時(shí)事件所在線(xiàn)程占用的寄存器堆緩存表項(xiàng)標(biāo)記為優(yōu)先替換之后還包括:
      [0028]接收恢復(fù)該長(zhǎng)延時(shí)事件所在線(xiàn)程對(duì)寄存器堆緩存表項(xiàng)的占用的請(qǐng)求;
      [0029]恢復(fù)該長(zhǎng)延時(shí)事件所在線(xiàn)程對(duì)寄存器堆緩存表項(xiàng)的占用。
      [0030]本發(fā)明還提供一種寄存器堆緩存資源的動(dòng)態(tài)釋放系統(tǒng),包括:
      [0031]監(jiān)測(cè)單元,用于監(jiān)測(cè)每一線(xiàn)程是否有長(zhǎng)延時(shí)事件發(fā)生;
      [0032]判斷單元,與所述監(jiān)測(cè)單元相連,用于在所述監(jiān)測(cè)單元監(jiān)測(cè)到某一線(xiàn)程有長(zhǎng)延時(shí)事件發(fā)生時(shí),判斷該長(zhǎng)延時(shí)事件所在線(xiàn)程是否占用有效的寄存器堆緩存表項(xiàng);
      [0033]發(fā)送單元,與所述判斷單元相連,用于在所述判斷單元判斷該長(zhǎng)延時(shí)事件所在線(xiàn)程占用有效的寄存器堆緩存表項(xiàng)時(shí),發(fā)送將被該長(zhǎng)延時(shí)事件所在線(xiàn)程占用的寄存器堆緩存表項(xiàng)標(biāo)記為優(yōu)先替換的請(qǐng)求。
      [0034]優(yōu)選地,所述寄存器堆緩存資源的動(dòng)態(tài)釋放系統(tǒng)中,所述監(jiān)測(cè)單元,用于主動(dòng)監(jiān)測(cè)每一線(xiàn)程是否發(fā)生長(zhǎng)延時(shí)事件;和/或
      [0035]接收發(fā)生長(zhǎng)延時(shí)事件的線(xiàn)程發(fā)送的長(zhǎng)延時(shí)信號(hào)。
      [0036]優(yōu)選地,所述寄存器堆緩存資源的動(dòng)態(tài)釋放系統(tǒng)中,所述發(fā)送單元發(fā)送的請(qǐng)求包括表項(xiàng)在寄存器堆緩存中的索引號(hào)以及優(yōu)先替換指示信號(hào)。
      [0037]優(yōu)選地,所述寄存器堆緩存資源的動(dòng)態(tài)釋放系統(tǒng)中,所述判斷單元,還用于判斷該長(zhǎng)延時(shí)事件是否即將結(jié)束;
      [0038]所述發(fā)送單元,還用于在所述判斷單元判斷該長(zhǎng)延時(shí)事件即將結(jié)束時(shí),發(fā)送恢復(fù)該長(zhǎng)延時(shí)事件所在線(xiàn)程對(duì)寄存器堆緩存表項(xiàng)的占用的請(qǐng)求。
      [0039]本發(fā)明還提供一種寄存器堆緩存,包括:
      [0040]接收單元,用于接收將被長(zhǎng)延時(shí)事件所在線(xiàn)程占用的寄存器堆緩存表項(xiàng)標(biāo)記為優(yōu)先替換的請(qǐng)求;
      [0041]釋放單元,與所述接收單元相連,用于根據(jù)所述請(qǐng)求將長(zhǎng)延時(shí)事件所在線(xiàn)程占用的寄存器堆緩存表項(xiàng)標(biāo)記為優(yōu)先替換。
      [0042]優(yōu)選地,所述寄存器堆緩存,還包括設(shè)置單元:
      [0043]所述設(shè)置單元,用于為寄存器堆緩存表項(xiàng)設(shè)置索引號(hào)和標(biāo)識(shí)位;
      [0044]所述接收單元,接收到的將被長(zhǎng)延時(shí)事件所在線(xiàn)程占用的寄存器堆緩存表項(xiàng)標(biāo)記為優(yōu)先替換的請(qǐng)求包括表項(xiàng)的索引號(hào)和優(yōu)先替換指示信號(hào);
      [0045]所述釋放單元,根據(jù)索引號(hào)確定對(duì)應(yīng)的寄存器堆緩存表項(xiàng),將該表項(xiàng)的標(biāo)識(shí)位設(shè)置為優(yōu)先替換指示信號(hào)。
      [0046]優(yōu)選地,所述寄存器堆緩存,還包括恢復(fù)單元:
      [0047]所述接收單元,還用于接收恢復(fù)該長(zhǎng)延時(shí)事件所在線(xiàn)程對(duì)寄存器堆緩存表項(xiàng)的占用的請(qǐng)求;
      [0048]所述恢復(fù)單元,與所述接收單元相連,用于恢復(fù)該長(zhǎng)延時(shí)事件所在線(xiàn)程對(duì)寄存器堆緩存表項(xiàng)的占用。
      [0049]本發(fā)明還提供一種處理器,包括:
      [0050]
      當(dāng)前第1頁(yè)1 2 3 4 
      網(wǎng)友詢(xún)問(wèn)留言 已有0條留言
      • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
      1