基于緩存一致性的控制系統(tǒng)和方法
【專利摘要】本發(fā)明提供一種基于緩存一致性的控制系統(tǒng)和方法,涉及裝置間的控制的技術(shù),所述基于緩存一致性的控制方法包括:當一第一電子裝置通過一緩存一致性接口耦接至一第二電子裝置時,通過所述第一電子裝置發(fā)送一連結(jié)請求至所述第二電子裝置;根據(jù)所述連結(jié)請求,通過所述緩存一致性接口,建立所述第一電子裝置和所述第二電子裝置的連結(jié);以及所述連結(jié)建立后,通過所述第二電子裝置的一第二處理單元經(jīng)由所述緩存一致性接口存取所述第一電子裝置的一第一高速緩存單元。
【專利說明】基于緩存一致性的控制系統(tǒng)和方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及裝置間的控制的技術(shù),特別涉及一種通過緩存一致性(CacheCoherency, CC)方法進行裝置間的控制的技術(shù)。
【背景技術(shù)】
[0002]近年來,由于通訊技術(shù)的快速發(fā)展,各式各樣的通訊裝置,例如:移動電話、智能型手機(smart phone)、個人數(shù)字助理(PDA)、平板計算機(Tablet PC)等電子商品不斷的在市場上被推出,且這些電子商品的功能也越來越多元化。此外,由于這些裝置的便利,也使得這些裝置成為人們的生活必需品之一。
[0003]當用戶在操作多個裝置時,想要利用一裝置協(xié)助另一裝置進行數(shù)據(jù)的處理,往往需要先透過數(shù)據(jù)的轉(zhuǎn)移將數(shù)據(jù)轉(zhuǎn)移到上述裝置,通過上述裝置的軟件和硬件處理完后再將數(shù)據(jù)轉(zhuǎn)移回另一裝置。用戶并無法直接就通過上述裝置的硬件直接協(xié)助另一裝置的軟件進行數(shù)據(jù)的處理。因而造成使用者使用的不方便。
【發(fā)明內(nèi)容】
[0004]有鑒于上述先前技術(shù)的問題,本發(fā)明提供了通過緩存一致性的技術(shù),來進行裝置間的控制的系統(tǒng)和方法。
[0005]根據(jù)本發(fā)明的一實施例提供了一種基于緩存一致性的控制方法。此控制方法包括:當一第一電子裝置通過一緩存一致性接口耦接至一第二電子裝置時,通過所述第一電子裝置發(fā)送一連結(jié)請求至所述第二電子裝置;根據(jù)所述連結(jié)請求,通過所述緩存一致性接口,建立所述第一電子裝置和所述第二電子裝置的連結(jié);以及所述連結(jié)建立后,通過所述第二電子裝置的一第二處理單元經(jīng)由所述緩存一致性接口存取所述第一電子裝置的一第一高速緩存單元。
[0006]根據(jù)本發(fā)明的一實施例提供了一種基于緩存一致性的控制系統(tǒng)。此控制系統(tǒng)包括--一第一電子裝置,用于發(fā)送一連結(jié)請求,以建立一連結(jié);一緩存一致性接口,用于根據(jù)所述連結(jié)請求,建立所述連結(jié);以及一第二電子裝置,包括一第二處理單元,其中,當所述第一電子裝置通過所述緩存一致性接口耦接至所述第二電子裝置時,所述第一電子裝置發(fā)送所述連結(jié)請求,以及當所述連結(jié)建立后,所述第二處理單元經(jīng)由所述緩存一致性接口存取所述第一電子裝置的一第一高速緩存單元。
[0007]關(guān)于本發(fā)明其他附加的特征與優(yōu)點,此領(lǐng)域的熟習技術(shù)人士,在不脫離本發(fā)明的精神和范圍內(nèi),當可根據(jù)本案實施方法中所揭露的執(zhí)行聯(lián)系程序的用戶裝置、系統(tǒng)、以及方法,做些許的更動與潤飾而得到。
【專利附圖】
【附圖說明】
[0008]圖1為根據(jù)本發(fā)明的實施例所述的基于緩存一致性的控制系統(tǒng)100的方塊圖;
[0009]圖2A為根據(jù)本發(fā)明的一實施例所述的一第一對稱多處理器模式的示意圖;
[0010]圖2B為根據(jù)本發(fā)明的一實施例所述的一第二對稱多處理器模式的示意圖;
[0011]圖2C為根據(jù)本發(fā)明的一實施例所述的一緩存一致性非均勻存儲器存取模式的示意圖;
[0012]圖3為根據(jù)本發(fā)明一實施例所述的基于緩存一致性的控制方法的流程圖300 ;
[0013]圖4為根據(jù)本發(fā)明另一實施例所述的基于緩存一致性的控制方法的流程圖400 ;
[0014]圖5A?5B為根據(jù)本發(fā)明一實施例所述的緩存一致性接口具體運作的流程圖500。
[0015]附圖標記:
[0016]100:控制系統(tǒng);
[0017]110:第一電子裝置;
[0018]111:第一處理單元;
[0019]112:第一高速緩存單元;
[0020]113:第一存儲器單元;
[0021]120:緩存一致性接口;
[0022]121:順序隊列;
[0023]130:第二電子裝置;
[0024]131:第二處理單元;
[0025]132:第二高速緩存單元;
[0026]133:第二存儲器單元。
【具體實施方式】
[0027]本章節(jié)所敘述的是實施本發(fā)明的最佳方式,目的在于說明本發(fā)明的精神而非用以限定本發(fā)明的保護范圍,本發(fā)明的保護范圍當視申請專利范圍所界定者為準。
[0028]圖1為根據(jù)本發(fā)明的一實施例所述的基于緩存一致性的控制系統(tǒng)100的方塊圖。如圖1所示,控制系統(tǒng)100中包括一第一電子裝置110、一緩存一致性接口 120以及一第二電子裝置130。第一電子裝置110中包括一第一處理單元111、一第一高速緩存單元112以及一第一存儲器單元113。第二電子裝置130中包括一第二處理單元131、一第二高速緩存單元132以及一第二存儲器單元133。圖1中的方塊圖,僅是為了方便說明本發(fā)明的實施例,但本發(fā)明并不以此為限。
[0029]根據(jù)本發(fā)明的一實施例,第一電子裝置110可用于連結(jié)至一運算裝置,例如便攜計算機或桌面計算機;或一自足式裝置(self-contained device),例如個人數(shù)字助理(Personal Digital Assistant, PDA)。第一電子裝置110又可稱為一系統(tǒng)、一用戶單元、一用戶臺、一行動臺、遠程臺、存取點、遠程終端、存取終端、用戶終端、用戶代理、或用戶裝置等。第一電子裝置110可以為一用戶臺、一無線裝置、手機、一個人通訊服務(PersonalCommunicat1n Service, PCS)電話、一無線式(cordless)電話、一對話起始協(xié)議(Sess1nInitiat1n Protocol, SIP)電話、一無線區(qū)域回路(wireless local loop,WLL)站、一個人數(shù)字助理、一具有無線連結(jié)能力的手持裝置、或可連結(jié)一無線調(diào)制解調(diào)器的處理裝置。
[0030]根據(jù)本發(fā)明的實施例,第二電子裝置130可以為一主端裝置(host device)、或一具有較高處理效能的電子裝置,例如:便攜計算機、桌面計算機或平板計算機。
[0031]根據(jù)本發(fā)明的實施例,緩存一致性接口 120可以為一支持緩存一致性(CC)的接口。緩存一致性是表示保留在高速緩存中的共享資源,可保持數(shù)據(jù)一致性的機制。特別注意的是,傳統(tǒng)上,緩存一致性(CC)通常是應用在一電子裝置的多核心處理器(Mult1-coreprocessor)中,通過緩存一致性(CC)的機制,可維持每一核心處理器在高速緩存中的共享資源的一致性。因此,有別于傳統(tǒng)上的應用,在本發(fā)明的實施例中是將緩存一致性(CC)應用在不同裝置間的數(shù)據(jù)處理上,并非僅限于單一裝置的多核心處理器的應用上。根據(jù)本發(fā)明一實施例,緩存一致性接口 120可通過一有線傳輸方式或一無線傳輸方式來建立第一電子裝置110和第二電子裝置130間的連結(jié)。根據(jù)本發(fā)明一實施例,緩存一致性接口 120的傳輸協(xié)議為分層協(xié)議,其中其物理層(physical layer)的傳輸協(xié)議為一有線傳輸協(xié)議或一無線傳輸協(xié)議。根據(jù)本發(fā)明一實施例,緩存一致性接口 120對于第一電子裝置110和第二電子裝置130來講,均為外部總線接口,其電氣接口會弓I出裝置外部。
[0032]根據(jù)本發(fā)明的一實施例,第一處理單元111和第二處理單元131可以為一通用處理器(general-purpose processor, GPP)、一微處理機控制單兀(Micro ControlUnit1MCU)或其它處理裝置、或一多核心的處理器。根據(jù)本發(fā)明的一實施例,第一高速緩存單元112和第二高速緩存單元132屬于一最后一級高速緩存(Last Level Cache,LLC),或一監(jiān)聽濾波器(snoop filter),或一芯片組(Chipset)。根據(jù)本發(fā)明的一實施例,第一存儲器單元113和第二存儲器單元133可以為一揮發(fā)性存儲器(volatile memory)(例如:隨機存取存儲器(Random Access Memory,RAM))實現(xiàn)的系統(tǒng)存儲器。在其它實施例中,第一存儲器單元113和第二存儲器單元133也可以為一非揮發(fā)性存儲器(non-volatile memory)(例如:閃存(flash memory)、只讀存儲器(Read Only Memory, ROM)),或上述裝置的組合。
[0033]根據(jù)本發(fā)明的一實施例,當用戶需要將第一電子裝置110(例如:一手持裝置)和第二電子裝置130(例如:一筆電)建立一連結(jié)時,將第一電子裝置110通過緩存一致性接口 120耦接至第二電子裝置130,此時第一電子裝置110(例如,第一處理單元111)會發(fā)送一連結(jié)請求至第二電子裝置130。特別說明的是,在本發(fā)明實施例中所述的連結(jié),是指第一電子裝置110和第二電子裝置130基于一緩存一致性(CC)的機制所建立的連結(jié),在上述連結(jié)建立后,可以直接使用第二電子裝置130的硬件組件來操作第一電子裝置110。具體而言,在一實施例中,上述連結(jié)建立后,第二電子裝置130的第二處理單元131可直接操作第一電子裝置110的第一操作系統(tǒng),且第二電子裝置130和第一電子裝置110均無需重新啟動(re-boot)。因此,在本發(fā)明所述的連結(jié),并非指一般的遠程操作(遠程操作仍是由第一電子裝置110來處理數(shù)據(jù)),或是指裝置間的聯(lián)機。如此一來,用戶可依靠第二電子裝置130 (例如:一筆電)的具備較強運算能力的第二處理單元131來協(xié)助第一電子裝置110的第一操作系統(tǒng)的運行。在其它實施例中,除了第二處理單元131,第二電子裝置130的其它硬件,包括第一存儲器單元113 (例如為系統(tǒng)存儲器)、鍵盤、鼠標及顯示設(shè)備等外圍設(shè)備均可以參與操作第一電子裝置110的第一操作系統(tǒng)。在使用者體驗效果上,當用戶將第一電子裝置110(例如:一手持裝置)通過緩存一致性接口 120耦接至第二電子裝置130(例如:一筆電)時,甚至即刻可在筆電的顯示設(shè)備上顯示手持裝置正在運行的操作系統(tǒng)畫面,并利用筆電的高效能的處理單元等硬件組件來操作手持裝置的操作系統(tǒng),以提高速度,同時筆電和手持裝置并無需重新啟動(re-boot),完善使用者體驗。
[0034]根據(jù)本發(fā)明的一實施例,若緩存一致性接口 120是通過一有線傳輸方式來傳輸,第一電子裝置110就需要先插入第二電子裝置130中,再經(jīng)由緩存一致性接口 120發(fā)送連結(jié)請求給第二電子裝置130,以建立和第二電子裝置130的連結(jié)。根據(jù)本發(fā)明的另一實施例,若緩存一致性接口 120是通過一無線傳輸方式來傳輸,第一電子裝置110就可直接經(jīng)由無線傳輸方式,經(jīng)由緩存一致性接口 120將連結(jié)請求發(fā)送給第二電子裝置130,以建立和第二電子裝置130的連結(jié)。舉例來說,當?shù)谝浑娮友b置110接近第二電子裝置130,透過無線傳輸?shù)姆绞?,即可透過緩存一致性接口 120建立雙方的連結(jié)??傊?,當?shù)谝浑娮友b置110通過緩存一致性接口 120耦接(有線或無線)至第二電子裝置130時,通過第一電子裝置110發(fā)送連結(jié)請求至第二電子裝置130。
[0035]當?shù)诙娮友b置130接收到第一電子裝置110的連結(jié)請求時,第二電子裝置130會進行一確認的動作,例如:發(fā)送一確認訊息(ACK)至第一電子裝置110。當?shù)诙娮友b置130確認第一電子裝置110的連結(jié)請求后,通過緩存一致性接口 120,建立第一電子裝置110和第二電子裝置130的連結(jié)。具體而言,第一電子裝置110和第二電子裝置130就會進入一同步模式(sync mode)。在同步模式中,第一電子裝置110的第一高速緩存單元112會經(jīng)由緩存一致性接口 120將其第一操作系統(tǒng)(OS)的內(nèi)容傳送給第二電子裝置130的第二高速緩存單元132。第二電子裝置130的第二處理單元131在讀取第二高速緩存單元132上的關(guān)于第一操作系統(tǒng)(OS)的內(nèi)容后,第二處理單元131就可獨立操作或與第一電子裝置110的第一處理單元111協(xié)同操作第一電子裝置110的第一操作系統(tǒng)(OS),以協(xié)助第一電子裝置110進行數(shù)據(jù)的處理。也就是說,用戶就可在第二電子裝置130上,通過第二電子裝置130的硬件執(zhí)行和操作第一電子裝置110的所有功能。在某些實施例(后面圖2A會詳述)中,在上述同步模式中,第一電子裝置I1除了將其第一高速緩存單元112的內(nèi)容傳遞給第二電子裝置130,還將其第一存儲器單元113中與正在運行的第一操作系統(tǒng)相關(guān)的內(nèi)容通過緩存一致性接口 120同步至第二電子裝置130,在這種實施例中,第二處理單元131僅需存取自身的第二高速緩存單元132及第二存儲器單元133即可接續(xù)操作第一操作系統(tǒng),第一存儲器單元113也可進入休眠狀態(tài);在另一些實施例中(后面圖2B和圖2C會詳述),在上述同步模式中,第一電子裝置110不將其第一存儲器單元113的內(nèi)容同步,在這種實施例中,第二處理單元131須經(jīng)由緩存一致性接口 120存取第一電子裝置110的第一存儲器單元 113。
[0036]此外,由于在第二電子裝置130進入同步模式前,第二電子裝置130也可能正在運行自身的操作系統(tǒng)。因此,在進入同步模式后,第二電子裝置130會先將自己目前運行的第二操作系統(tǒng)的狀態(tài)信息儲存到第二存儲器單元133中。因此,當?shù)诙娮友b置130在斷開和第一電子裝置110的連結(jié)后,第二電子裝置130恢復所儲存的第二操作系統(tǒng)的狀態(tài)信息,就可以繼續(xù)進行第二電子裝置130的第二操作系統(tǒng)原先所在進行的操作。
[0037]根據(jù)本發(fā)明的一實施例,完成第二操作系統(tǒng)的狀態(tài)信息的儲存后,第二電子裝置130的硬件組件會進行一重置(re-1nitiate)的操作,以使得第一電子裝置110的第一操作系統(tǒng)可以得知第二電子裝置130的硬件組件(例如:第二處理單元131、第二存儲器單元132、硬盤、網(wǎng)絡(luò)卡,或一外接硬件組件,例如:鼠標、鍵盤)的相關(guān)信息。在第一電子裝置I1的第一操作系統(tǒng)對第二電子裝置130的硬件組件逐個進行一枚舉(enumerat1n)操作以獲取第二電子裝置130的硬件組件的相關(guān)信息。在得知第二電子裝置130的硬件組件的相關(guān)信息后,上述第一操作系統(tǒng)便得以運行于第二電子裝置130的硬件組件中。根據(jù)本發(fā)明的一實施例,可經(jīng)由第二電子裝置130的一特定的驅(qū)動組件/程序(driver)重置(re-1nitiate)上述硬件組件以實現(xiàn)上述枚舉操作。根據(jù)本發(fā)明的另一實施例,可經(jīng)由第二處理單元131向其它硬件組件發(fā)送重置的指令,以實現(xiàn)上述枚舉操作。
[0038]第二電子裝置130進行完硬件組件重置的操作后,第二電子裝置130就可開始通過第二處理單元131 (和其他硬件組件)操作第一電子裝置110的第一操作系統(tǒng)(OS),以協(xié)助第一電子裝置110進行數(shù)據(jù)的處理。根據(jù)本發(fā)明的一實施例,當?shù)谝浑娮友b置110和第二電子裝置130的連結(jié)建立后,第一電子裝置110的第一處理單元111可與第二處理單元131共同工作(co-work),也就是共同處理第一電子裝置110的數(shù)據(jù)。根據(jù)本發(fā)明的另一實施例,當?shù)谝浑娮友b置110和第二電子裝置130的連結(jié)建立后,第一電子裝置110的第一處理單元111 (和其他硬件組件)則會進入休眠(sle印)狀態(tài),完全交由第二處理單元131處理第一電子裝置110的數(shù)據(jù)。
[0039]當用戶想要斷開第一電子裝置110和第二電子裝置130的連結(jié)時,第二電子裝置130會先發(fā)送一斷開連結(jié)請求至第一電子裝置110。根據(jù)本發(fā)明的一實施例,若此時第一電子裝置110是在一休眠狀態(tài),第二電子裝置130會先將第一電子裝置110喚醒。第一電子裝置110接收并確認第二電子裝置130發(fā)送的斷開連結(jié)請求后,第一電子裝置130會經(jīng)由緩存一致性接口 120同步(sync)第一操作系統(tǒng)更新的內(nèi)容,以使得第一高速緩存單元112 (甚至以及第一存儲器單元113)中與第一操作系統(tǒng)相關(guān)的數(shù)據(jù)會和經(jīng)由第二電子裝置130協(xié)助處理過后的數(shù)據(jù)一致。數(shù)據(jù)同步后,第一電子裝置110的第一處理單元111會先對硬件組件進行一重置的操作,以使得第一電子裝置110可以恢復成一正常操作模式,也就是由第一電子裝置110接續(xù)操作第一操作系統(tǒng)。
[0040]斷開連結(jié)后,第二電子裝置130的第二處理單元131也會恢復儲存在第二存儲器單元133的第二操作系統(tǒng)的狀態(tài)信息。接著,第二電子裝置130會進行一重置的操作,以使得第二電子裝置130可重新進行連結(jié)前第二電子裝置130的第二操作系統(tǒng)原先所在進行的操作。
[0041]根據(jù)本發(fā)明的一實施例,當?shù)谝浑娮友b置110和第二電子裝置130的連結(jié)建立后,第二電子裝置130的第二處理單元131與第一電子裝置110的第一處理單元111 (如果第一處理單元111不休眠的話)可在一對稱多處理器模式(SMP)或一非均勻存儲器存取(ccNUMA)模式上,協(xié)同操作第一電子裝置110的第一操作系統(tǒng)。圖2A為根據(jù)本發(fā)明的一實施例所述的一第一對稱多處理器模式的示意圖。如圖2A所示,在第一對稱多處理器模式中,第二電子裝置130的第二處理單元131和第二存儲器單元133均參與操作第一操作系統(tǒng),而第一電子裝置110的第一存儲器單元113不參與操作,可進入休眠狀態(tài)。S卩,在上述第一對稱多處理器模式下,第一存儲器單元113中在連結(jié)前與第一操作系統(tǒng)相關(guān)的內(nèi)容在連結(jié)建立時均被同步至第二電子裝置130,因此在操作過程中,第二處理單元131和第一處理單元111僅需存取第二存儲器單元133即可接續(xù)操作第一操作系統(tǒng),緩存一致性接口 120維持第一高速緩存單元112和第二高速緩存單元132的數(shù)據(jù)的一致性,如果第一高速緩存單元112/第二高速緩存單元132不命中(miss)或者寫滿,則進一步存取第二存儲器單元133。緩存一致性接口 120具體如何運作,參考后面圖5的描述。
[0042]圖2B為根據(jù)本發(fā)明的一實施例所述的一第二對稱多處理器模式的示意圖。如圖2B所示,在第二對稱多處理器模式中,第二電子裝置130的第二處理單元131參與操作第一操作系統(tǒng),但第二存儲器單元133不參與。即,在上述第二對稱多處理器模式下,第二處理單元131和第一處理單元111僅存取第一存儲器單元113即可接續(xù)操作第一操作系統(tǒng)。在此種實施方式中,在建立連結(jié)時,無需將第一存儲器單元113中關(guān)于第一操作系統(tǒng)的內(nèi)容同步至第二電子裝置130 ;在運行過程中,緩存一致性接口 120維持第一高速緩存單元112和第二高速緩存單元132的數(shù)據(jù)的一致性,如果第一高速緩存單元112/第二高速緩存單元132不命中(miss)或者寫滿,則進一步存取第一存儲器單元113。
[0043]圖2C為根據(jù)本發(fā)明的一實施例所述的一緩存一致性非均勻存儲器存取模式的示意圖。如圖2C所示,在緩存一致性非均勻存儲器存取模式中,第二電子裝置130的第二處理單元131和第二存儲器單元133均參與操作第一操作系統(tǒng),第一電子裝置110的第一存儲器單元113也不休眠。即,在上述緩存一致性非均勻存儲器存取模式下,在建立連結(jié)時,也無需將第一存儲器單元113中關(guān)于第一操作系統(tǒng)的內(nèi)容同步至第二電子裝置130 ;在操作過程中,緩存一致性接口 120維持第一高速緩存單元112和第二高速緩存單元132的數(shù)據(jù)的一致性,如果第一高速緩存單元112/第二高速緩存單元132不命中(miss)或者寫滿,則進一步存取第一存儲器單元113或第二存儲器單元133。
[0044]圖3為根據(jù)本發(fā)明一實施例所述的基于緩存一致性的控制方法的流程圖300,此傳輸方法適用于控制系統(tǒng)100。如圖3所示,在步驟S310,當?shù)谝浑娮友b置110通過緩存一致性接口 120耦接至第二電子裝置130時,通過第一電子裝置110發(fā)送一連結(jié)請求至第二電子裝置130。在步驟S320,通過第二電子裝置130確認第一電子裝置110所發(fā)送的連結(jié)請求。在步驟S330,進入一同步模式。在步驟S340,通過第二電子裝置130預先儲存自身的一第二操作系統(tǒng)的狀態(tài)信息。在步驟S350,通過第二電子裝置130經(jīng)由緩存一致性接口 120,同步(sync)第一電子裝置110中與第一操作系統(tǒng)(OS)相關(guān)的內(nèi)容,在一實施例中(例如圖2B及圖2C的實施例),僅將第一高速緩存單元112中與第一操作系統(tǒng)(OS)相關(guān)的內(nèi)容同步至第二電子裝置130 ;在其它實施例中(例如圖2A的實施例),將第一存儲器單元113中與第一操作系統(tǒng)(OS)相關(guān)的內(nèi)容也同步至第二電子裝置130。在步驟S360,通過第一操作系統(tǒng)對第二電子裝置130的硬件組件逐一進行一枚舉(enumerat1n)操作,使得上述第一操作系統(tǒng)得以運行于第二電子裝置130。在步驟370,通過第二電子裝置130的第二處理單元操作第一電子裝置110的第一操作系統(tǒng)(OS),以協(xié)助第一電子裝置110進行數(shù)據(jù)的處理。根據(jù)本發(fā)明的一實施例,上述連結(jié)建立后,第一電子裝置110可與第二電子裝置130共同操作上述第一操作系統(tǒng),也可進入一休眠狀態(tài)。值得注意的是,上述步驟S320?S360為通過緩存一致性接口 120建立第一電子裝置110和第二電子裝置130的連結(jié)的具體步驟。
[0045]圖4為根據(jù)本發(fā)明另一實施例所述的基于緩存一致性的控制方法的流程圖400,此傳輸方法適用于控制系統(tǒng)100。如圖4所示,在步驟S410,當要斷開連結(jié)時,通過第二電子裝置130發(fā)送一斷開連結(jié)請求至第一電子裝置110。在步驟S420,判斷是否喚醒第一電子裝置110。若需要喚醒第一電子裝置110,進行步驟S430。在步驟S430,喚醒第一電子裝置110。若不需要喚醒第一電子裝置110,直接進行步驟S440。在步驟S440,通過第一電子裝置110確認第二電子裝置130所發(fā)送的斷開連結(jié)請求。在步驟S450,通過第一電子裝置110經(jīng)由緩存一致性接口 120,同步(sync)第一操作系統(tǒng)更新的內(nèi)容。在步驟S460,通過第一電子裝置110進行一重置(re-1nitiate)的操作,以使得第一電子裝置110可重新獨立運行第一操作系統(tǒng)。在步驟S470,通過第二電子裝置130恢復預先存儲的第二操作系統(tǒng)的狀態(tài)信息。在步驟S480,通過第二電子裝置130進行一重置的操作,以使得第二電子裝置130可恢復運行第二操作系統(tǒng)。
[0046]圖5A?5B為根據(jù)本發(fā)明一實施例所述的緩存一致性接口具體運作的流程圖500,此傳輸方法適用于控制系統(tǒng)100。如圖5A?5B所示,在步驟S510,通過第二處理單元131發(fā)送一存儲器存取請求至緩存一致性接口 120。在步驟S520,通過緩存一致性接口 120記錄并排序上述存儲器存取請求。在一實施例中,如圖1所示,緩存一致性接口 120還包括一順序隊列(Order Queue) 121,上述順序隊列121記錄第二處理單元131以及第一處理單元111 (如果第一處理單元111未休眠)的存儲器存取請求;并按照這些存儲器存取請求被要求完成的先后順序來排序它們,例如,第一操作系統(tǒng)的應用程序代碼中規(guī)定了這些存儲器存取請求被要求完成的先后順序;并將排序結(jié)果返回至第二處理單元131。在一實施例中,如果同時第一電子裝置110發(fā)送另一存儲器存取請求至緩存一致性接口 120 (如果第一處理單元111與第二處理單元131共同工作,則上述另一存儲器存取請求可能由第一處理單元111發(fā)出;如果第一處理單元111休眠,則第一電子裝置110的第一存儲器單元113或其它外圍裝置,例如網(wǎng)絡(luò)模塊等,也可能發(fā)出上述另一存儲器存取請求。),本發(fā)明的緩存一致性接口 120排序這些存儲器存取請求,使得它們按照被程序代碼要求完成的先后順序完成,并將排序結(jié)果通知第一電子裝置110和第二電子裝置130。
[0047]接著,執(zhí)行步驟S530,判斷上述存儲器存取請求的地址是屬于第一電子裝置110或第二電子裝置130。通過本發(fā)明,第二處理單元131看到的存儲器地址范圍和第一處理單元111 一樣,本發(fā)明可以通過定義第二處理單元131能看到的存儲器地址范圍,使得第二處理單元131僅訪問第一存儲器單元113的地址范圍,或者第一存儲器單元113和第二存儲器單元133兩者的地址范圍皆能訪問。步驟S530可通過第二高速緩存單元132完成,在一實施例中,第一高速緩存單元112和第二高速緩存單元132位于一最后一級高速緩存(LastLevel Cache’LLC),或一監(jiān)聽濾波器(snoop filter),或一芯片組(Chipset)中。在另一實施例中,步驟S530可通過緩存一致性接口 120完成。
[0048]如果上述存儲器存取請求的地址是屬于第一電子裝置110,則執(zhí)行步驟S540:通過緩存一致性接口 120將上述存儲器存取請求發(fā)送至上述第一電子裝置110的第一高速緩存單元112。之后執(zhí)行步驟S550:判斷第一高速緩存單元112是否命中(hit)。如果不命中(miss),即上述第一高速緩存單元112不包括上述存儲器存取請求所要求的數(shù)據(jù),則執(zhí)行步驟S560:將上述存儲器存取請求發(fā)送至第一電子裝置110的第一存儲器單元113。之后執(zhí)行步驟S590:在第一存儲器單元113中存取相應的存儲器地址。如果步驟S550的判斷結(jié)果為命中(hit),則直接執(zhí)行步驟S590:在第一高速緩存單元112中存取相應的存儲器地址。
[0049]如果上述存儲器存取請求的地址是屬于第二電子裝置130,則執(zhí)行步驟S570:判斷第二高速緩存單元132是否命中(hit)。如果不命中(miss),即上述第二高速緩存單元132不包括上述存儲器存取請求所要求的數(shù)據(jù),則執(zhí)行步驟S580:將上述存儲器存取請求發(fā)送至第二電子裝置130的第二存儲器單元133。之后執(zhí)行步驟S590:在第二存儲器單元133中存取相應的存儲器地址。如果步驟S570的判斷結(jié)果為命中(hit),則直接執(zhí)行步驟S590:在第二高速緩存單元132中存取相應的存儲器地址。
[0050]在某些實施例中,執(zhí)行步驟S590之后繼續(xù)執(zhí)行步驟S5100:通過緩存一致性接口120維持第一高速緩存單元112和第二高速緩存單元132的數(shù)據(jù)的一致性。
[0051]值得注意的是,在圖2A的實施例中,第二處理單元131能訪問的存儲器地址范圍限于第二電子裝置130(即在步驟S530的判斷的結(jié)果一直為上述存儲器存取請求的地址是屬于第二電子裝置130的);在圖2B和圖2C的實施例中,第二處理單元131能訪問的存儲器地址范圍可能位于第一電子裝置110或第二電子裝置130,須通過緩存一致性接口 120將上述存儲器存取請求發(fā)送至相應的存儲器。
[0052]通過本發(fā)明所提出的基于緩存一致性的控制方法,當用戶同時使用多個裝置時,用戶即可直接在效能較高的電子裝置來處理效能較低的電子裝置的數(shù)據(jù)和使用效能較低的電子裝置的功能,使得在數(shù)據(jù)處理上更有效率且快速,且達到更加良好的用戶體驗。
[0053]本發(fā)明的說明書所揭露的方法和算法的步驟,可直接透過執(zhí)行一處理器直接應用在硬件以及軟件模塊或兩者的結(jié)合上。一軟件模塊(包括執(zhí)行指令和相關(guān)數(shù)據(jù))和其它數(shù)據(jù)可儲存在數(shù)據(jù)存儲器中,像是隨機存取存儲器(RAM)、閃存(flash memory)、只讀存儲器(ROM)、可抹除可規(guī)化只讀存儲器(EPROM)、電子可抹除可規(guī)劃只讀存儲器(EEPROM)、緩存器、硬盤、可攜式應碟、光盤只讀存儲器(CD-ROM)、DVD或在此領(lǐng)域習的技術(shù)中任何其它計算機可讀取的儲存媒體格式。一儲存媒體可耦接至一機器裝置,舉例來說,像是計算機/處理器(為了說明的方便,在本說明書以處理器來表示),上述處理器處理單元可透過來讀取信息(像是程序代碼),以及寫入信息至儲存媒體。一儲存媒體可整合一處理器。一特殊應用集成電路(ASIC)包括處理器和儲存媒體。一用戶設(shè)備則包括一特殊應用集成電路。換句話說,處理器和儲存媒體以不直接連接用戶設(shè)備的方式,包含于用戶設(shè)備中。此外,在一些實施例中,任何適合計算機程序的產(chǎn)品包括可讀取的儲存媒體,其中可讀取的儲存媒體包括和一或多個所揭露實施例相關(guān)的程序代碼。在一些實施例中,計算機程序的產(chǎn)品可包括封裝材料。
[0054]本說明書中所提到的“一實施例”或“實施例”,表示與實施例有關(guān)的所述特定的特征、結(jié)構(gòu)、或特性是包含根據(jù)本發(fā)明的至少一實施例中,但并不表示它們存在于每一個實施例中。因此,在本說明書中不同地方出現(xiàn)的“在一實施例中”或“在實施例中”詞組并不必然表不本發(fā)明的相同實施例。
[0055]以上段落使用多種層面描述。顯然的,本文的教示可以多種方式實現(xiàn),而在范例中揭露的任何特定架構(gòu)或功能僅為一代表性的狀況。根據(jù)本文的教示,任何熟知此技藝的人士應理解在本文揭露的各層面可獨立實作或兩種以上的層面可以合并實作。
[0056]雖然本發(fā)明已以較佳實施例揭露如上,然其并非用以限定本發(fā)明,任何熟習此技藝者,在不脫離本發(fā)明的精神和范圍內(nèi),當可作些許的更動與潤飾,因此本發(fā)明的保護范圍當視后附的申請專利范圍所界定者為準。
【權(quán)利要求】
1.一種基于緩存一致性的控制方法,其特征在于,包括: 當一第一電子裝置通過一緩存一致性接口耦接至一第二電子裝置時,通過所述第一電子裝置發(fā)送一連結(jié)請求至所述第二電子裝置; 根據(jù)所述連結(jié)請求,通過所述緩存一致性接口,建立所述第一電子裝置和所述第二電子裝置的連結(jié);以及 所述連結(jié)建立后,通過所述第二電子裝置的一第二處理單元經(jīng)由所述緩存一致性接口存取所述第一電子裝置的一第一高速緩存單元。
2.根據(jù)權(quán)利要求1所述的基于緩存一致性的控制方法,其特征在于,還包括: 當通過所述第二電子裝置的所述第二處理單元經(jīng)由所述緩存一致性接口存取所述第一高速緩存單元時,通過所述緩存一致性接口維持所述第一高速緩存單元和所述第二電子裝置的一第二高速緩存單元的數(shù)據(jù)的一致性。
3.根據(jù)權(quán)利要求2所述的基于緩存一致性的控制方法,其特征在于,還包括: 當通過所述第二電子裝置的所述第二處理單元經(jīng)由所述緩存一致性接口存取所述第一高速緩存單元時,當所述第一高速緩存單元不命中或?qū)憹M時,存取所述第一電子裝置的一第一存儲器單兀。
4.根據(jù)權(quán)利要求1所述的基于緩存一致性的控制方法,其特征在于,其中所述連結(jié)建立后,所述第一電子裝置的一第一處理單元與所述第二電子裝置的所述第二處理單元共同工作,或進入一休眠狀態(tài)。
5.根據(jù)權(quán)利要求1所述的基于緩存一致性的控制方法,其特征在于,其中通過所述第二電子裝置的所述第二處理單元經(jīng)由所述緩存一致性接口存取所述第一高速緩存單元的步驟還包括: 通過所述第二處理單元發(fā)送一存儲器存取請求至所述緩存一致性接口 ; 通過所述緩存一致性接口記錄并排序所述存儲器存取請求;以及 判斷所述存儲器存取請求的地址是屬于所述第一電子裝置或所述第二電子裝置。
6.根據(jù)權(quán)利要求5所述的基于緩存一致性的控制方法,其特征在于,其中通過所述第二電子裝置的所述第二處理單元經(jīng)由所述緩存一致性接口存取所述第一高速緩存單元的步驟還包括: 若所述存儲器存取請求的地址是屬于所述第一電子裝置,通過所述緩存一致性接口將所述存儲器存取請求發(fā)送至所述第一高速緩存單元; 若所述第一高速緩存單元不包括所述存儲器存取請求所要求的數(shù)據(jù),則將所述存儲器存取請求發(fā)送至所述第一電子裝置的一第一存儲器單元。
7.根據(jù)權(quán)利要求1所述的基于緩存一致性的控制方法,其特征在于,其中通過所述第二電子裝置的所述第二處理單元經(jīng)由所述緩存一致性接口存取所述第一高速緩存單元的步驟還包括: 通過所述第二處理單元發(fā)送一存儲器存取請求至所述緩存一致性接口 ; 通過所述第一電子裝置發(fā)送另一存儲器存取請求至所述緩存一致性接口 ;以及通過所述緩存一致性接口排序所述存儲器存取請求及所述另一存儲器存取請求,并將排序的結(jié)果通知所述第一電子裝置和第二電子裝置。
8.根據(jù)權(quán)利要求7所述的基于緩存一致性的控制方法,其特征在于,還包括: 其中所述緩存一致性接口依據(jù)所述存儲器存取請求及所述另一存儲器存取請求被要求完成的先后順序來排序。
9.根據(jù)權(quán)利要求7所述的基于緩存一致性的控制方法,其特征在于,所述另一存儲器存取請求是由所述第一電子裝置的一外圍裝置發(fā)送。
10.根據(jù)權(quán)利要求1所述的基于緩存一致性的控制方法,其特征在于,其中所述緩存一致性接口通過一有線傳輸方式或一無線傳輸方式來建立所述連結(jié)。
11.一種基于緩存一致性的控制系統(tǒng),其特征在于,包括: 一第一電子裝置,用于發(fā)送一連結(jié)請求,以建立一連結(jié); 一緩存一致性接口,用于根據(jù)所述連結(jié)請求,建立所述連結(jié);以及 一第二電子裝置,包括一第二處理單元, 其中,當所述第一電子裝置通過所述緩存一致性接口耦接至所述第二電子裝置時,所述第一電子裝置發(fā)送所述連結(jié)請求,以及當所述連結(jié)建立后,所述第二處理單元經(jīng)由所述緩存一致性接口存取所述第一電子裝置的一第一高速緩存單元。
12.根據(jù)權(quán)利要求11所述的基于緩存一致性的控制系統(tǒng),其特征在于,其中當所述第二處理單元經(jīng)由所述緩存一致性接口存取所述第一電子裝置的所述第一高速緩存單元時,通過所述緩存一致性接口,維持所述第一高速緩存單元和所述第二電子裝置的一第二高速緩存單元的數(shù)據(jù)的一致性。
13.根據(jù)權(quán)利要求11所述的基于緩存一致性的控制系統(tǒng),其特征在于,當所述第二處理單元經(jīng)由所述緩存一致性接口存取所述第一高速緩存單元時,當所述第一高速緩存單元不命中或?qū)憹M時,所述第二處理單元存取所述第一電子裝置的一第一存儲器單元。
14.根據(jù)權(quán)利要求11所述的基于緩存一致性的控制系統(tǒng),其特征在于,其中所述連結(jié)建立后,所述第一電子裝置的一第一處理單元與所述第二電子裝置的所述第二處理單元共同工作,或進入一休眠狀態(tài)。
15.根據(jù)權(quán)利要求11所述的基于緩存一致性的控制系統(tǒng),其特征在于,其中所述第二電子裝置通過所述第二處理單元發(fā)送一存儲器存取請求至所述緩存一致性接口,且所述緩存一致性接口記錄并排序所述存儲器存取請求,并判斷所述存儲器存取請求的地址是屬于所述第一電子裝置或所述第二電子裝置。
16.根據(jù)權(quán)利要求15所述的基于緩存一致性的控制系統(tǒng),其特征在于,其中若所述存儲器存取請求的地址是屬于所述第一電子裝置,所述緩存一致性接口將所述存儲器存取請求發(fā)送至所述第一高速緩存單元;以及若所述第一高速緩存單元不包括所述存儲器存取請求所要求的數(shù)據(jù),則將所述存儲器存取請求發(fā)送至所述第一電子裝置的一第一存儲器單J Li ο
17.根據(jù)權(quán)利要求11所述的基于緩存一致性的控制系統(tǒng),其特征在于,其中所述第二電子裝置通過所述第二處理單元發(fā)送一存儲器存取請求至所述緩存一致性接口,且所述第一電子裝置發(fā)送另一存儲器存取請求至所述緩存一致性接口,以及所述緩存一致性接口排序所述存儲器存取請求及所述另一存儲器存取請求,并將排序的結(jié)果通知所述第一電子裝置和第二電子裝置。
18.根據(jù)權(quán)利要求17所述的基于緩存一致性的控制系統(tǒng),其特征在于,其中所述緩存一致性接口依據(jù)所述存儲器存取請求及所述另一存儲器存取請求被要求完成的先后順序來排序。
19.根據(jù)權(quán)利要求11所述的基于緩存一致性的控制系統(tǒng),其特征在于,所述另一存儲器存取請求是由所述第一電子裝置的一外圍裝置發(fā)送。
20.根據(jù)權(quán)利要求11所述的基于緩存一致性的控制系統(tǒng),其特征在于,其中所述緩存一致性接口通過一有線傳輸方式或一無線傳輸方式來建立所述連結(jié)。
【文檔編號】G06F12/08GK104407995SQ201410728001
【公開日】2015年3月11日 申請日期:2014年11月28日 優(yōu)先權(quán)日:2014年11月28日
【發(fā)明者】賴瑾, 楊夢晨 申請人:上海兆芯集成電路有限公司