欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

程序加載方法、芯片啟動方法、裝置及主控設(shè)備的制作方法

文檔序號:6625387閱讀:144來源:國知局
程序加載方法、芯片啟動方法、裝置及主控設(shè)備的制作方法
【專利摘要】本發(fā)明實(shí)施例公開了一種程序加載方法、芯片啟動方法、裝置及主控設(shè)備,主控設(shè)備和多處理器核心芯片預(yù)先進(jìn)行交互確定主控設(shè)備內(nèi)存空間與多處理器核心芯片的內(nèi)存空間和寄存器空間的映射關(guān)系,從而當(dāng)確定與每一個目標(biāo)處理器核心相對應(yīng)的待加載程序后,主控設(shè)備可以將與第i個目標(biāo)處理器核心相對應(yīng)的待加載程序?qū)懭攵嗵幚砥骱诵男酒信c第i個目標(biāo)處理器核心對應(yīng)的內(nèi)存中;并在確定與第i個目標(biāo)處理器核心相對應(yīng)的待加載程序在多處理器核心芯片的內(nèi)存中的第一入口地址后,可以將第一入口地址寫入與第i個目標(biāo)處理器核心相對應(yīng)的第二寄存器中。從而實(shí)現(xiàn)了獨(dú)立對每一個處理器核心進(jìn)行程序加載的過程,進(jìn)而可以對不同的處理器核心加載不同的程序。
【專利說明】程序加載方法、芯片啟動方法、裝置及主控設(shè)備

【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及電子【技術(shù)領(lǐng)域】,更具體地說,涉及一種程序加載方法、芯片啟動方法、裝置及主控設(shè)備。

【背景技術(shù)】
[0002]C66x系列的DSP芯片是德州儀器(TI)公司推出的基于Keystone架構(gòu)的多處理器核心DSP芯片(即多核DSP芯片,以下簡稱DSP芯片)。該種DSP芯片最多擁有8個C66x處理器核心,可與多種外部設(shè)備進(jìn)行通信。
[0003]C66x系列的DSP芯片在啟動過程中,根據(jù)實(shí)際需要會將DSP程序從主控設(shè)備加載到DSP芯片中。DSP程序的加載是在DSP芯片啟動的過程中完成的。DSP芯片的一種啟動方式為二次引導(dǎo)啟動方式,該啟動方式包括一級啟動引導(dǎo)過程和二級啟動引導(dǎo)過程。在二次引導(dǎo)啟動方式中,DSP程序的加載過程為:DSP芯片上電后,在一級啟動引導(dǎo)過程中第一處理器核心獲取一級啟動設(shè)備類型,然后從相應(yīng)類型的主控設(shè)備中讀取并執(zhí)行二級啟動引導(dǎo)程序以執(zhí)行二級啟動引導(dǎo)過程,在二級啟動引導(dǎo)過程中,第一處理器核心獲取二級啟動設(shè)備類型,然后等待主控設(shè)備以與該二級啟動設(shè)備類型相對應(yīng)的通信方式將待加載DSP程序?qū)懭隓SP芯片的內(nèi)存中,并將待加載DSP程序的入口地址寫入與第一處理器核心相對應(yīng)的寄存器中,實(shí)現(xiàn)DSP程序加載。
[0004]目前,在C66x系列的DSP芯片的二次引導(dǎo)啟動的過程中,只有一個處理器核心(即第一處理器核心)可以執(zhí)行一級啟動過程和二級啟動過程,其它的處理器核心只執(zhí)行一級啟動過程,且在執(zhí)行完一級啟動過程后,均處于空閑狀態(tài),而不參與DSP程序加載過程,如果需要為其它的處理器核心加載DSP程序,則需要由第一處理器核心將待加載DSP程序的入口地址寫入與其它處理器核心相對應(yīng)的寄存器中,實(shí)現(xiàn)其他處理器核心的DSP程序加載,然后第一處理器核心向其它處理器核心發(fā)送中斷信號以喚醒其它處理器核心,從而其它處理器可以跳轉(zhuǎn)至程序入口地址執(zhí)行所加載的DSP程序。
[0005]由此可知,目前的DSP加載過程中,由于只有第一處理器核心可以執(zhí)行DSP加載過程,其它的處理器核心的DSP程序加載則需要通過第一處理器核心引導(dǎo)加載方式實(shí)現(xiàn),SP由第一處理器核心將待加載DSP程序的入口地址寫入與其它處理器核心相對應(yīng)的寄存器中實(shí)現(xiàn)DSP程序加載,那么,這就意味著,目前的這種DSP程序加載方式,DSP芯片中的所有處理器核心只能加載同一套DSP程序,而在實(shí)際使用過程中,可能需要不同的處理器核心加載不同的DSP程序,因此,如何實(shí)現(xiàn)不同的處理器核心加載不同的DSP程序成為亟待解決的問題。


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

[0006]本發(fā)明的目的是提供一種DSP程序加載方法、芯片啟動方法、裝置及主控設(shè)備,以實(shí)現(xiàn)不同的處理器核心加載不同的DSP程序。
[0007]為實(shí)現(xiàn)上述目的,本發(fā)明提供了如下技術(shù)方案:
[0008]一種程序加載方法,應(yīng)用于主控設(shè)備,所述主控設(shè)備可以與多處理器核心芯片進(jìn)行通信,所述主控設(shè)備在接收到所述多處理器核心芯片在二級啟動引導(dǎo)過程中發(fā)送的內(nèi)存分配請求時,從所述主控設(shè)備的內(nèi)存空間中分配與所述多處理器核心芯片中的內(nèi)存空間和寄存器空間相對應(yīng)的內(nèi)存空間,并將為所述多處理器核心芯片分配的內(nèi)存空間和寄存器空間的起始地址寫入所述多處理器核心芯片中的第一寄存器中,以便于所述主控設(shè)備通過訪問為所述多處理器核心芯片分配的內(nèi)存空間實(shí)現(xiàn)對所述多處理器核心芯片的內(nèi)存空間和寄存器空間的訪問;所述程序加載方法包括:
[0009]確定至少一個目標(biāo)處理器核心;
[0010]確定與每一個目標(biāo)處理器核心相對應(yīng)的待加載程序;
[0011]將與第i個目標(biāo)處理器核心相對應(yīng)的待加載程序?qū)懭攵嗵幚砥骱诵男酒信c所述第i個目標(biāo)處理器核心對應(yīng)的內(nèi)存中;
[0012]確定所述與第i個目標(biāo)處理器核心相對應(yīng)的待加載程序在所述多處理器核心芯片的內(nèi)存中的第一入口地址;
[0013]將所述第一入口地址寫入與所述第i個目標(biāo)處理器核心相對應(yīng)的第二寄存器中。
[0014]上述方法,優(yōu)選的,在將所述第一入口地址寫入與所述第i個目標(biāo)處理器核心相對應(yīng)的第二寄存器中之后,還包括:
[0015]寫與所述第i個目標(biāo)處理器核心相對應(yīng)的第三寄存器,以向所述第i個目標(biāo)處理器核心發(fā)送中斷信號,以指示所述第i個目標(biāo)處理器核心從所述第一入口地址處開始執(zhí)行加載至與所述第i個處理器核心相對應(yīng)的內(nèi)存中的程序。
[0016]上述方法,優(yōu)選的,在確定至少一個目標(biāo)處理器核心之后,將與第i個目標(biāo)處理器核心相對應(yīng)的待加載程序?qū)懭攵嗵幚砥骱诵男酒信c所述第i個目標(biāo)處理器核心對應(yīng)的內(nèi)存中之前還包括:
[0017]寫與所述第i個目標(biāo)處理器核心相對應(yīng)的第四寄存器,以指示所述目標(biāo)處理器核心在所述第i個目標(biāo)處理器核心重新啟動后進(jìn)入空閑狀態(tài);
[0018]寫與所述第i個目標(biāo)處理器核心相對應(yīng)的第五寄存器,以指示所述第i個目標(biāo)處理器核心重新啟動。
[0019]一種芯片啟動方法,應(yīng)用于多處理器核心芯片,所述多處理器核心芯片可以與主控設(shè)備進(jìn)行通信,所述啟動方法包括:
[0020]在一級啟動引導(dǎo)過程中,第一處理器核心獲取一級啟動設(shè)備類型;
[0021]第一處理器核心從相應(yīng)一級啟動設(shè)備類型的主控設(shè)備中讀取并執(zhí)行二級啟動引導(dǎo)程序以執(zhí)行二級啟動引導(dǎo)過程;
[0022]在二級啟動引導(dǎo)過程中,第一處理器核心獲取二級啟動設(shè)備類型,并以與所述二級啟動設(shè)備類型相對應(yīng)的通信方式向所述主控設(shè)備發(fā)送內(nèi)存分配請求,所述分配請求用于指示所述主控設(shè)備分配與所述多處理器核心芯片中的內(nèi)存空間和寄存器空間對應(yīng)的主控設(shè)備內(nèi)存空間,并將為所述多處理器核心芯片分配的內(nèi)存空間的起始地址寫入所述多處理器核心芯片中的第一寄存器中,以便于所述主控設(shè)備可以通過訪問為所述多處理器核心芯片分配的內(nèi)存空間實(shí)現(xiàn)對所述多處理器核心芯片的內(nèi)存空間和寄存器空間的訪問;
[0023]在所述二級啟動引導(dǎo)過程完成后,控制所述多處理器核心芯片中的各個處理器核心進(jìn)入空閑狀態(tài)。
[0024]當(dāng)?shù)趇個處理器核心接收到中斷信號時,所述第i個處理器核心從與所述第i個處理器核心相對應(yīng)的第二寄存器中讀取第一入口地址;
[0025]所述第i個處理器核心從所述第一入口地址處開始執(zhí)行加載至所述多處理器核心芯片的內(nèi)存中的程序;
[0026]其中,所述第一入口地址為所述主控設(shè)備在將與第i個處理器核心相對應(yīng)的待加載程序?qū)懭攵嗵幚砥骱诵男酒信c所述第i個處理器核心對應(yīng)的內(nèi)存中后,所述待加載程序在所述多處理器核心芯片的內(nèi)存中的入口地址,所述第一入口地址由所述主控設(shè)備寫入與所述第i個處理器核心相對應(yīng)的第二寄存器中。
[0027]上述方法,優(yōu)選的,所述多處理器核心芯片中的寄存器空間包括與每一個處理器核心相對應(yīng)的寄存器空間。
[0028]一種程序加載裝置,應(yīng)用于主控設(shè)備,所述主控設(shè)備可以與多處理器核心芯片進(jìn)行通信,所述主控設(shè)備包括配置模塊,用于在接收到所述多處理器核心芯片在二級啟動引導(dǎo)過程中發(fā)送的內(nèi)存分配請求時,從所述主控設(shè)備的內(nèi)存空間中分配與所述多處理器核心芯片中的內(nèi)存空間和寄存器空間相對應(yīng)的內(nèi)存空間,并將為所述多處理器核心芯片分配的內(nèi)存空間的起始地址寫入所述多處理器核心芯片中的第一寄存器中,以便于所述主控設(shè)備通過訪問為所述多處理器核心芯片分配的內(nèi)存空間實(shí)現(xiàn)對所述多處理器核心芯片的內(nèi)存空間和寄存器空間的訪問;所述程序加載裝置包括:
[0029]第一確定模塊,用于確定至少一個目標(biāo)處理器核心;
[0030]第二確定模塊,用于確定與每一個目標(biāo)處理器核心相對應(yīng)的待加載程序;
[0031]第一寫模塊,用于將與第i個目標(biāo)處理器核心相對應(yīng)的待加載程序?qū)懭攵嗵幚砥骱诵男酒信c所述第i個目標(biāo)處理器核心對應(yīng)的內(nèi)存中;
[0032]第三確定模塊,用于確定所述與第i個目標(biāo)處理器核心相對應(yīng)的待加載程序在所述多處理器核心芯片的內(nèi)存中的第一入口地址;
[0033]第二寫模塊,用于將所述第一入口地址寫入與所述第i個目標(biāo)處理器核心相對應(yīng)的第二寄存器中。
[0034]上述裝置,優(yōu)選的,還包括:
[0035]第三寫模塊,用于寫與所述第i個目標(biāo)處理器核心相對應(yīng)的第三寄存器,以向所述第i個目標(biāo)處理器核心發(fā)送中斷信號,以指示所述第i個目標(biāo)處理器核心從所述第一入口地址處開始執(zhí)行加載至所述多處理器核心芯片的內(nèi)存中的程序。
[0036]上述裝置,優(yōu)選的,還包括:
[0037]第四寫模塊,用于在所述第一確定模塊確定至少一個目標(biāo)處理器核心后,寫與第i個目標(biāo)處理器核心相對應(yīng)的第四寄存器,以指示所述目標(biāo)處理器核心在所述第i個目標(biāo)處理器核心重啟后進(jìn)入空閑狀態(tài);
[0038]第五寫模塊,用于寫與所述第i個目標(biāo)處理器核心相對應(yīng)的第五寄存器,以指示所述第i個目標(biāo)處理器核心重新啟動;
[0039]所述第一寫模塊具體用于在所述第五寫模塊寫與所述第i個目標(biāo)處理器核心相對應(yīng)的第五寄存器后,將與第i個目標(biāo)處理器核心相對應(yīng)的待加載程序?qū)懭攵嗵幚砥骱诵男酒信c所述第i個目標(biāo)處理器核心對應(yīng)的內(nèi)存中。
[0040]一種主控設(shè)備,包括如上任意一項所述的程序加載裝置。
[0041]通過以上方案可知,本申請實(shí)施例提供的一種程序加載方法、芯片啟動方法、裝置及主控設(shè)備,主控設(shè)備和多處理器核心芯片預(yù)先進(jìn)行交互確定主控設(shè)備內(nèi)存空間與多處理器核心芯片的內(nèi)存空間和寄存器空間的映射關(guān)系,從而所述主控設(shè)備通過訪問為所述多處理器核心芯片分配的內(nèi)存空間實(shí)現(xiàn)對所述多處理器核心芯片的內(nèi)存空間和寄存器空間的訪問,因此,當(dāng)確定與每一個目標(biāo)處理器核心相對應(yīng)的待加載程序后,主控設(shè)備可以將與第i個目標(biāo)處理器核心相對應(yīng)的待加載程序?qū)懭攵嗵幚砥骱诵男酒信c所述第i個目標(biāo)處理器核心對應(yīng)的內(nèi)存中;并在確定所述與第i個目標(biāo)處理器核心相對應(yīng)的待加載程序在所述多處理器核心芯片的內(nèi)存中的第一入口地址后,可以將所述第一入口地址寫入與所述第i個目標(biāo)處理器核心相對應(yīng)的第二寄存器中。從而實(shí)現(xiàn)了獨(dú)立對每一個處理器核心進(jìn)行程序加載的過程,進(jìn)而可以對不同的處理器核心加載不同的程序。

【專利附圖】

【附圖說明】
[0042]為了更清楚地說明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
[0043]圖1為本申請實(shí)施例提供的程序加載方法的一種實(shí)現(xiàn)流程圖;
[0044]圖2為本申請實(shí)施例提供的程序加載方法的另一種實(shí)現(xiàn)流程圖;
[0045]圖3為本申請實(shí)施例提供的芯片啟動方法的一種實(shí)現(xiàn)流程圖;
[0046]圖4為本申請實(shí)施例提供的程序加載裝置的一種結(jié)構(gòu)示意圖;
[0047]圖5為本申請實(shí)施例提供的程序加載裝置的另一種結(jié)構(gòu)示意圖;
[0048]圖6為本申請實(shí)施例提供的主控設(shè)備與多處理器核心芯片的通信系統(tǒng)圖。
[0049]說明書和權(quán)利要求書及上述附圖中的術(shù)語“第一”、“第二”、“第三” “第四”等(如果存在)是用于區(qū)別類似的部分,而不必用于描述特定的順序或先后次序。應(yīng)該理解這樣使用的數(shù)據(jù)在適當(dāng)情況下可以互換,以便這里描述的本申請的實(shí)施例能夠以除了在這里圖示的以外的順序?qū)嵤?br>
【具體實(shí)施方式】
[0050]下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
[0051]本申請實(shí)施例提供的程序加載方法的主要思想是通過主控設(shè)備實(shí)現(xiàn)獨(dú)立向每一個處理器核心加載程序。本申請實(shí)施例中,主控設(shè)備和多處理器核心芯片預(yù)先進(jìn)行交互確定主控設(shè)備內(nèi)存空間(即主控設(shè)備的全局地址空間)與多處理器核心芯片的內(nèi)存空間和寄存器空間的映射關(guān)系,從而所述主控設(shè)備通過訪問為所述多處理器核心芯片分配的內(nèi)存空間實(shí)現(xiàn)對所述多處理器核心芯片的內(nèi)存空間和寄存器空間的訪問。
[0052]在主控設(shè)備側(cè)確定主控設(shè)備內(nèi)存空間與多處理器核心芯片的內(nèi)存空間和寄存器空間的映射關(guān)系的具體實(shí)現(xiàn)過程可以為:
[0053]主控設(shè)備在接收到所述多處理器核心芯片發(fā)送的內(nèi)存分配請求時,從所述主控設(shè)備的內(nèi)存空間中分配與所述多處理器核心芯片中的內(nèi)存空間和寄存器空間相對應(yīng)的內(nèi)存空間,并將為所述多處理器核心芯片分配的內(nèi)存空間的起始地址寫入所述多處理器核心芯片中的第一寄存器中,以便于所述主控設(shè)備通過訪問為所述多處理器核心芯片分配的內(nèi)存空間實(shí)現(xiàn)對所述多處理器核心芯片的內(nèi)存空間和寄存器空間的訪問;
[0054]其中,所述內(nèi)存分配請求由所述多處理器核心芯片在二級啟動引導(dǎo)過程中向主控設(shè)備發(fā)送;
[0055]具體主控設(shè)備如何通過訪問為所述多處理器核心芯片分配的內(nèi)存空間實(shí)現(xiàn)對所述多處理器核心芯片的內(nèi)存空間和寄存器空間的訪問屬于本領(lǐng)域的公知常識,這里不再贅述。
[0056]本申請實(shí)施例提供的程序加載方法及裝置可以應(yīng)用于基于PCIE總線的主控設(shè)備中。
[0057]本申請實(shí)施例提供的程序加載方法應(yīng)用于主控設(shè)備側(cè),請參閱圖1,圖1為本申請實(shí)施例提供的程序加載方法的一種實(shí)現(xiàn)流程圖,可以包括:
[0058]步驟Sll:確定至少一個目標(biāo)處理器核心;
[0059]本申請實(shí)施例中,可以選擇兩個或更多個處理器核心進(jìn)行程序加載。
[0060]步驟S12:確定與每一個目標(biāo)處理器核心相對應(yīng)的待加載程序;
[0061]與各個目標(biāo)處理器核心相對應(yīng)的待加載程序可以為同一套待加載程序,也可以為不同的待加載程序。
[0062]步驟S13:將與第i個目標(biāo)處理器核心相對應(yīng)的待加載程序?qū)懭攵嗵幚砥骱诵男酒信c所述第i個目標(biāo)處理器核心對應(yīng)的內(nèi)存中;其中,i = 1,2,3,……
[0063]本申請實(shí)施例中,與第i個處理器核心相對應(yīng)的內(nèi)存可以是第i個目標(biāo)處理器核心可以獨(dú)立訪問的內(nèi)存,也可以是多處理器核心芯片中所有處理器核心的共享內(nèi)存。
[0064]可以預(yù)先建立主控設(shè)備的第一內(nèi)存空間以及與所述第i個目標(biāo)處理器核心對應(yīng)的內(nèi)存空間之間的映射關(guān)系,從而,主控設(shè)備可以通過訪問所述主控設(shè)備的第一內(nèi)存空間訪問與所述第i個目標(biāo)處理器核心對應(yīng)的內(nèi)存空間,從而主控設(shè)備可以將與第i個目標(biāo)處理器核心相對應(yīng)的待加載程序?qū)懭攵嗵幚砥骱诵男酒信c所述第i個目標(biāo)處理器核心對應(yīng)的內(nèi)存中。
[0065]步驟S14:確定所述與第i個目標(biāo)處理器核心相對應(yīng)的待加載程序在所述多處理器核心芯片的內(nèi)存中的第一入口地址;
[0066]在將與第i個目標(biāo)處理器核心相對應(yīng)的待加載程序?qū)懭攵嗵幚砥骱诵男酒信c所述第i個目標(biāo)處理器核心對應(yīng)的內(nèi)存中后,確定該待加載程序在與所述第i個目標(biāo)處理器核心對應(yīng)的內(nèi)存中的入口地址。
[0067]步驟S15:將所述第一入口地址寫入與所述第i個目標(biāo)處理器核心相對應(yīng)的第二寄存器中。
[0068]將所述確定的第一入口地址寫入所述第i個目標(biāo)處理器核心相對應(yīng)的第二寄存器中,以便于第i個目標(biāo)處理器核心可以從該第一入口地址處開始執(zhí)行所加載的程序。
[0069]同理,可以預(yù)先建立主控設(shè)備的第二內(nèi)存空間以及與所述第i個目標(biāo)處理器核心相對應(yīng)的第二寄存器之間的映射關(guān)系,從而,主控設(shè)備可以通過訪問主控設(shè)備的第二內(nèi)存空間訪問與所述第i個目標(biāo)處理器核心相對應(yīng)的第二寄存器,從而主控設(shè)備可以將所述第一入口地址寫入與所述第i個目標(biāo)處理器核心相對應(yīng)的第二寄存器中。
[0070]本申請實(shí)施例提供的程序加載方法,主控設(shè)備和多處理器核心芯片預(yù)先進(jìn)行交互確定主控設(shè)備內(nèi)存空間與多處理器核心芯片的內(nèi)存空間和寄存器空間的映射關(guān)系,從而所述主控設(shè)備通過訪問為所述多處理器核心芯片分配的內(nèi)存空間實(shí)現(xiàn)對所述多處理器核心芯片的內(nèi)存空間和寄存器空間的訪問,因此,當(dāng)確定與每一個目標(biāo)處理器核心相對應(yīng)的待加載程序后,主控設(shè)備可以將與第i個目標(biāo)處理器核心相對應(yīng)的待加載程序?qū)懭攵嗵幚砥骱诵男酒信c所述第i個目標(biāo)處理器核心對應(yīng)的內(nèi)存中;并在確定所述與第i個目標(biāo)處理器核心相對應(yīng)的待加載程序在所述多處理器核心芯片的內(nèi)存中的第一入口地址后,可以將所述第一入口地址寫入與所述第i個目標(biāo)處理器核心相對應(yīng)的第二寄存器中。從而實(shí)現(xiàn)了獨(dú)立對每一個處理器核心進(jìn)行程序加載的過程,進(jìn)而可以對不同的處理器核心加載不同的程序。
[0071]在圖1所示實(shí)施例的基礎(chǔ)上,本申請實(shí)施例提供的程序加載方法的另一種實(shí)現(xiàn)流程圖如圖2所示,還可以包括:
[0072]步驟S21:寫與所述第i個目標(biāo)處理器核心相對應(yīng)的第三寄存器,以向所述第i個目標(biāo)處理器核心發(fā)送中斷信號,以指示所述第i個目標(biāo)處理器核心從所述第一入口地址處開始執(zhí)行加載至與所述第i個處理器核心相對應(yīng)的內(nèi)存中的程序。
[0073]可以預(yù)先建立主控設(shè)備的第三內(nèi)存空間以及與所述第i個目標(biāo)處理器核心相對應(yīng)的第三寄存器之間的映射關(guān)系,從而主控設(shè)備可以通過訪問主控設(shè)備的第三內(nèi)存空間訪問與所述第i個目標(biāo)處理器核心相對應(yīng)的第三寄存器,從而主控設(shè)備可以在與所述第i個目標(biāo)處理器核心相對應(yīng)的第三寄存器中寫中斷信息。
[0074]本申請實(shí)施例中,在將待加載程序加載至與所述第i個處理器核心相對應(yīng)的內(nèi)存中后,寫與所述第i個目標(biāo)處理器核心相對應(yīng)的第三寄存器,從而喚醒處于空閑狀態(tài)的處理器核心,從而喚醒后的處理器核心可以從所述第一入口地址處開始執(zhí)行加載至與所述第i個處理器核心相對應(yīng)的內(nèi)存中的程序。
[0075]上述實(shí)施例中,優(yōu)選的,在一次程序加載完成后,當(dāng)需要再次向多處理器核心芯片加載程序時(例如,在需要頻繁在線切換DSP應(yīng)用程序的應(yīng)用場合,則需要重復(fù)向多處理器核心芯片加載程序),在確定至少一個目標(biāo)處理器核心之后,將與第i個目標(biāo)處理器核心相對應(yīng)的待加載程序?qū)懭攵嗵幚砥骱诵男酒信c所述第i個目標(biāo)處理器核心對應(yīng)的內(nèi)存中之前所述方法還可以包括:
[0076]寫與所述第i個目標(biāo)處理器核心相對應(yīng)的第四寄存器,以指示所述目標(biāo)處理器核心在所述第i個目標(biāo)處理器核心重新啟動后進(jìn)入空閑狀態(tài);
[0077]寫與所述第i個目標(biāo)處理器核心相對應(yīng)的第五寄存器,以指示所述第i個目標(biāo)處理器核心重新啟動。
[0078]同理,可以預(yù)先建立主控設(shè)備的第四內(nèi)存空間以及與所述第i個目標(biāo)處理器核心相對應(yīng)的第四寄存器之間的映射關(guān)系,并預(yù)先建立主控設(shè)備的第五內(nèi)存空間以及與所述第i個目標(biāo)處理器核心相對應(yīng)的第五寄存器之間的映射關(guān)系,主控設(shè)備可以通過訪問主控設(shè)備的第四內(nèi)存空間訪問與所述第i個目標(biāo)處理器核心相對應(yīng)的第四寄存器,可以通過訪問主控設(shè)備的第五內(nèi)存空間訪問與所述第i個目標(biāo)處理器核心相對應(yīng)的第五寄存器,從而主控設(shè)備可以寫與所述第i個目標(biāo)處理器核心相對應(yīng)的第四寄存器,并可以寫與所述第i個目標(biāo)處理器核心相對應(yīng)的第五寄存器。
[0079]本申請實(shí)施例中,當(dāng)需要再次向多處理器核心芯片加載程序時,只重新啟動待加載程序的處理器核心,而非重新啟動多處理器核心芯片,并且處理器核心芯片在重新啟動后進(jìn)入空閑狀態(tài),從而可以在不重新啟動多處理器核心芯片和主控設(shè)備的情況下實(shí)現(xiàn)程序的多次重復(fù)加載。而現(xiàn)有技術(shù)中的程序加載方法在多處理器核心芯片啟動后只能進(jìn)行一次程序加載,當(dāng)需要重新為多處理器核心芯片加載程序時,需要重新啟動多處理器核心芯片和主控設(shè)備才能實(shí)現(xiàn)再次向多處理器核心芯片加載程序。
[0080]本申請實(shí)施例還提供一種芯片啟動方法,應(yīng)用于多處理器核心芯片,所述多處理器核心芯片可以與主控設(shè)備進(jìn)行通信,本申請實(shí)施例提供的芯片啟動方法的一種實(shí)現(xiàn)流程圖如圖3所示,可以包括:
[0081]步驟S31:在一級啟動引導(dǎo)過程中,第一處理器核心獲取一級啟動設(shè)備類型;
[0082]步驟S32:第一處理器核心從相應(yīng)一級啟動設(shè)備類型的主控設(shè)備中讀取并執(zhí)行二級啟動引導(dǎo)程序以執(zhí)行二級啟動引導(dǎo)過程;
[0083]步驟S33:在二級啟動引導(dǎo)過程中,第一處理器核心獲取二級啟動設(shè)備類型,并以與所述二級啟動設(shè)備類型相對應(yīng)的通信方式向所述主控設(shè)備發(fā)送內(nèi)存分配請求,所述分配請求用于指示所述主控設(shè)備分配與所述多處理器核心芯片中的內(nèi)存空間和寄存器空間對應(yīng)的主控設(shè)備內(nèi)存空間,并將為所述多處理器核心芯片分配的內(nèi)存空間的起始地址寫入所述多處理器核心芯片中的第一寄存器中,以便于所述主控設(shè)備可以通過訪問為所述多處理器核心芯片分配的內(nèi)存空間實(shí)現(xiàn)對所述多處理器核心芯片的內(nèi)存空間和寄存器空間的訪問;
[0084]本申請實(shí)施例中,在二級啟動引導(dǎo)過程中除了獲取二級啟動設(shè)備類型外,還向主控設(shè)備發(fā)送內(nèi)存分配請求,以建立主控設(shè)備的內(nèi)存空間與多處理器核心芯片的內(nèi)存空間與寄存器空間的映射關(guān)系,更進(jìn)一步的,在建立映射關(guān)系時,除了將多處理器核心芯片的內(nèi)存空間與主控設(shè)備的內(nèi)存空間建立映射關(guān)系外,還將多處理器核心芯片中的寄存器空間與主控設(shè)備的內(nèi)存空間建立映射關(guān)系,從而主控設(shè)備可以訪問多處理器核心芯片中的寄存器空間實(shí)現(xiàn)對多處理器核心芯片的控制。
[0085]具體的,所述內(nèi)存分配請求中可以包括多處理器核心芯片的本地內(nèi)存空間和寄存器空間的配置信息。以便于主控設(shè)備根據(jù)多處理器核心芯片的本地內(nèi)存空間和寄存器空間的配置信息為多處理器核心芯片的本地內(nèi)存空間和寄存器空間分配主控設(shè)備的內(nèi)存空間。
[0086]例如,當(dāng)多處理器芯片與主控設(shè)備通過PCIE總線進(jìn)行通信時,多處理器核心芯片的本地內(nèi)存空間和寄存器空間的配置信息可以通過BAR寄存器實(shí)現(xiàn),下面表I給出一個通過BAR寄存器實(shí)現(xiàn)多處理器核心芯片的本地內(nèi)存空間和寄存器空間的配置方式的一個具體實(shí)例,當(dāng)然,本申請實(shí)施例中,并不限于表I所示的配置方式,還可以根據(jù)需要改變各個BAR寄存器中起始地址以及空間的大小信息。
[0087]表I
[0088]

【權(quán)利要求】
1.一種程序加載方法,應(yīng)用于主控設(shè)備,所述主控設(shè)備可以與多處理器核心芯片進(jìn)行通信,其特征在于,所述主控設(shè)備在接收到所述多處理器核心芯片在二級啟動引導(dǎo)過程中發(fā)送的內(nèi)存分配請求時,從所述主控設(shè)備的內(nèi)存空間中分配與所述多處理器核心芯片中的內(nèi)存空間和寄存器空間相對應(yīng)的內(nèi)存空間,并將為所述多處理器核心芯片分配的內(nèi)存空間和寄存器空間的起始地址寫入所述多處理器核心芯片中的第一寄存器中,以便于所述主控設(shè)備通過訪問為所述多處理器核心芯片分配的內(nèi)存空間實(shí)現(xiàn)對所述多處理器核心芯片的內(nèi)存空間和寄存器空間的訪問;所述程序加載方法包括: 確定至少一個目標(biāo)處理器核心; 確定與每一個目標(biāo)處理器核心相對應(yīng)的待加載程序; 將與第i個目標(biāo)處理器核心相對應(yīng)的待加載程序?qū)懭攵嗵幚砥骱诵男酒信c所述第i個目標(biāo)處理器核心對應(yīng)的內(nèi)存中; 確定所述與第i個目標(biāo)處理器核心相對應(yīng)的待加載程序在所述多處理器核心芯片的內(nèi)存中的第一入口地址; 將所述第一入口地址寫入與所述第i個目標(biāo)處理器核心相對應(yīng)的第二寄存器中。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,在將所述第一入口地址寫入與所述第i個目標(biāo)處理器核心相對應(yīng)的第二寄存器中之后,還包括: 寫與所述第i個目標(biāo)處理器核心相對應(yīng)的第三寄存器,以向所述第i個目標(biāo)處理器核心發(fā)送中斷信號,以指示所述第i個目標(biāo)處理器核心從所述第一入口地址處開始執(zhí)行加載至與所述第i個處理器核心相對應(yīng)的內(nèi)存中的程序。
3.根據(jù)權(quán)利要求1或2所述的方法,其特征在于,在確定至少一個目標(biāo)處理器核心之后,將與第i個目標(biāo)處理器核心相對應(yīng)的待加載程序?qū)懭攵嗵幚砥骱诵男酒信c所述第i個目標(biāo)處理器核心對應(yīng)的內(nèi)存中之前還包括: 寫與所述第i個目標(biāo)處理器核心相對應(yīng)的第四寄存器,以指示所述目標(biāo)處理器核心在所述第i個目標(biāo)處理器核心重新啟動后進(jìn)入空閑狀態(tài); 寫與所述第i個目標(biāo)處理器核心相對應(yīng)的第五寄存器,以指示所述第i個目標(biāo)處理器核心重新啟動。
4.一種芯片啟動方法,應(yīng)用于多處理器核心芯片,所述多處理器核心芯片可以與主控設(shè)備進(jìn)行通信,其特征在于,所述啟動方法包括: 在一級啟動引導(dǎo)過程中,第一處理器核心獲取一級啟動設(shè)備類型; 第一處理器核心從相應(yīng)一級啟動設(shè)備類型的主控設(shè)備中讀取并執(zhí)行二級啟動引導(dǎo)程序以執(zhí)行二級啟動引導(dǎo)過程; 在二級啟動引導(dǎo)過程中,第一處理器核心獲取二級啟動設(shè)備類型,并以與所述二級啟動設(shè)備類型相對應(yīng)的通信方式向所述主控設(shè)備發(fā)送內(nèi)存分配請求,所述分配請求用于指示所述主控設(shè)備分配與所述多處理器核心芯片中的內(nèi)存空間和寄存器空間對應(yīng)的主控設(shè)備內(nèi)存空間,并將為所述多處理器核心芯片分配的內(nèi)存空間的起始地址寫入所述多處理器核心芯片中的第一寄存器中,以便于所述主控設(shè)備可以通過訪問為所述多處理器核心芯片分配的內(nèi)存空間實(shí)現(xiàn)對所述多處理器核心芯片的內(nèi)存空間和寄存器空間的訪問; 在所述二級啟動引導(dǎo)過程完成后,控制所述多處理器核心芯片中的各個處理器核心進(jìn)入空閑狀態(tài); 當(dāng)?shù)趇個處理器核心接收到中斷信號時,所述第i個處理器核心從與所述第i個處理器核心相對應(yīng)的第二寄存器中讀取第一入口地址; 所述第i個處理器核心從所述第一入口地址處開始執(zhí)行加載至所述多處理器核心芯片的內(nèi)存中的程序; 其中,所述第一入口地址為所述主控設(shè)備在將與第i個處理器核心相對應(yīng)的待加載程序?qū)懭攵嗵幚砥骱诵男酒信c所述第i個處理器核心對應(yīng)的內(nèi)存中后,所述待加載程序在所述多處理器核心芯片的內(nèi)存中的入口地址,所述第一入口地址由所述主控設(shè)備寫入與所述第i個處理器核心相對應(yīng)的第二寄存器中。
5.根據(jù)權(quán)利要求4所述的方法,其特征在于,所述多處理器核心芯片中的寄存器空間包括與每一個處理器核心相對應(yīng)的寄存器空間。
6.一種程序加載裝置,應(yīng)用于主控設(shè)備,所述主控設(shè)備可以與多處理器核心芯片進(jìn)行通信,其特征在于,所述主控設(shè)備包括配置模塊,用于在接收到所述多處理器核心芯片在二級啟動引導(dǎo)過程中發(fā)送的內(nèi)存分配請求時,從所述主控設(shè)備的內(nèi)存空間中分配與所述多處理器核心芯片中的內(nèi)存空間和寄存器空間相對應(yīng)的內(nèi)存空間,并將為所述多處理器核心芯片分配的內(nèi)存空間的起始地址寫入所述多處理器核心芯片中的第一寄存器中,以便于所述主控設(shè)備通過訪問為所述多處理器核心芯片分配的內(nèi)存空間實(shí)現(xiàn)對所述多處理器核心芯片的內(nèi)存空間和寄存器空間的訪問;所述程序加載裝置包括: 第一確定模塊,用于確定至少一個目標(biāo)處理器核心; 第二確定模塊,用于確定與每一個目標(biāo)處理器核心相對應(yīng)的待加載程序; 第一寫模塊,用于將與第i個目標(biāo)處理器核心相對應(yīng)的待加載程序?qū)懭攵嗵幚砥骱诵男酒信c所述第i個目標(biāo)處理器核心對應(yīng)的內(nèi)存中; 第三確定模塊,用于確定所述與第i個目標(biāo)處理器核心相對應(yīng)的待加載程序在所述多處理器核心芯片的內(nèi)存中的第一入口地址; 第二寫模塊,用于將所述第一入口地址寫入與所述第i個目標(biāo)處理器核心相對應(yīng)的第二寄存器中。
7.根據(jù)權(quán)利要求6所述的裝置,其特征在于,還包括: 第三寫模塊,用于寫與所述第i個目標(biāo)處理器核心相對應(yīng)的第三寄存器,以向所述第i個目標(biāo)處理器核心發(fā)送中斷信號,以指示所述第i個目標(biāo)處理器核心從所述第一入口地址處開始執(zhí)行加載至所述多處理器核心芯片的內(nèi)存中的程序。
8.根據(jù)權(quán)利要求6或7所述的裝置,其特征在于,還包括: 第四寫模塊,用于在所述第一確定模塊確定至少一個目標(biāo)處理器核心后,寫與第i個目標(biāo)處理器核心相對應(yīng)的第四寄存器,以指示所述目標(biāo)處理器核心在所述第i個目標(biāo)處理器核心重啟后進(jìn)入空閑狀態(tài); 第五寫模塊,用于寫與所述第i個目標(biāo)處理器核心相對應(yīng)的第五寄存器,以指示所述第i個目標(biāo)處理器核心重新啟動; 所述第一寫模塊具體用于在所述第五寫模塊寫與所述第i個目標(biāo)處理器核心相對應(yīng)的第五寄存器后,將與第i個目標(biāo)處理器核心相對應(yīng)的待加載程序?qū)懭攵嗵幚砥骱诵男酒信c所述第i個目標(biāo)處理器核心對應(yīng)的內(nèi)存中。
9.一種主控設(shè)備,其特征在于,包括如權(quán)利要求6-8任意一項所述的程序加載裝置。
【文檔編號】G06F9/445GK104199699SQ201410437192
【公開日】2014年12月10日 申請日期:2014年8月29日 優(yōu)先權(quán)日:2014年8月29日
【發(fā)明者】吳磊 申請人:北京經(jīng)緯恒潤科技有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1
枞阳县| 老河口市| 岳池县| 嘉义市| 宁夏| 县级市| 巴林左旗| 中卫市| 获嘉县| 手机| 靖西县| 鹰潭市| 金塔县| 林周县| 巴塘县| 扶沟县| 乾安县| 镇江市| 读书| 张家口市| 甘南县| 枣强县| 申扎县| 嘉义县| 德阳市| 宜宾市| 河间市| 哈尔滨市| 深圳市| 金坛市| 台北市| 名山县| 河源市| 金湖县| 遵义市| 那坡县| 华坪县| 江阴市| 五河县| 财经| 米泉市|