專利名稱:一種龍芯cpu的smp功能展示的設(shè)備的制作方法
技術(shù)領(lǐng)域:
本實(shí)用新型涉及龍芯主板功能展示,具體來說,涉及一種龍芯CPU的SMP功能展示的設(shè)備。
背景技術(shù):
在目前市場(chǎng)銷售及實(shí)際使用中的主板基本上都是X86架構(gòu)的,使用的BIOS程序都是采購(gòu)的二進(jìn)制程序,無法定制多核CPU的配置。而基于MIPS架構(gòu)龍芯CPU研發(fā)的刀片及主板等使用了完全具有源代碼的BIOS程序和Linux內(nèi)核程序,并且刀片及主板是雙路的。另外,X86架構(gòu)與MIPS架構(gòu)本身就有很大不同。所以,在CPU初始化、SMP功能實(shí)現(xiàn)上等方面存在差異,也就不難理解了。
實(shí)用新型內(nèi)容為解決基于龍芯CPU刀片的SMP功能各種方式的配置和展示。本實(shí)用新型提供了一種龍芯CPU的SMP功能展示的設(shè)備。一種龍芯CPU的SMP功能展示的設(shè)備,包括主CPU,從CPU和主板跳線帽,其中,所述主CPU為多核心CPU中的一個(gè)核心,從CPU為除主CPU的其余核心,龍芯CPU之間通過HT 總線相連接,0號(hào)龍芯CPU與北橋芯片相連接,跳線帽通過主板電路與北橋芯片相連接。優(yōu)選的,所述龍芯CPU個(gè)數(shù)為2個(gè),每個(gè)龍芯CPU包含4個(gè)核心。優(yōu)選的,在單路情況下,必須有一個(gè)CPU核心為主核心。優(yōu)選的,在雙路情況下,必須在0號(hào)CPU上選定主核心。較優(yōu)選的,所述0號(hào)CPU為通過HT總線與南北橋相連接的CPU。優(yōu)選的,所述龍芯CPU每個(gè)核心包含一個(gè)寄存器用以存儲(chǔ)處理器號(hào)。較優(yōu)選的,寄存器的低兩位表示CPU核心號(hào),高兩位表示CPU號(hào)。優(yōu)選的,關(guān)閉所述龍芯CPU內(nèi)核是屏蔽其中斷緩存寄存器,使其循環(huán)等待。通過本實(shí)用新型提供的的設(shè)備,可以非常清楚地了解SMP工作原理及配置方法。
圖1是本發(fā)明系統(tǒng)結(jié)構(gòu)圖具體實(shí)施方式
每個(gè)龍芯CPU包含了四個(gè)核,這四個(gè)核即可以做為AP CPU,也可以作為BSP CPU。 每個(gè)核都可以通過程序進(jìn)行屏蔽設(shè)置,但在單路情況下,必須有一個(gè)核作為BSP CPU ;在雙路情況下,必須在0號(hào)CPU上有一個(gè)核作為BSP CPU。否則,每個(gè)核或者被屏蔽,或者循環(huán)等待BSP CPU喚醒,BIOS程序就無法繼續(xù)執(zhí)行了。通過對(duì)刀片及主板使用的BIOS、Linux內(nèi)核程序進(jìn)行設(shè)置,可以實(shí)現(xiàn)單CPU 1、2、3、4核功能,雙CPU 1、2、3、4、5、6、7、8核功能。通過在BIOS中進(jìn)行CPU號(hào)和核號(hào)的檢測(cè),可以控制CPU內(nèi)部需要啟動(dòng)的核的位置和數(shù)量。每個(gè)核內(nèi)部的0號(hào)協(xié)處理器中包含的EBase寄存器在多核系統(tǒng)中,用于指明處理器號(hào)。寄存器的最低兩位,即0和1位表示CPU的核號(hào),寄存器的2和3位表示CPU號(hào)。這樣,通過此寄存器,不僅可以確定此核處在哪個(gè)CPU中,也可以確定在此CPU中,CPU為此核分配的核號(hào)。在單路情況下,此CPU無疑應(yīng)該做為0號(hào)CPU。在雙路情況下,通過HT總線連接南北橋芯片的CPU無疑應(yīng)該做為0號(hào)CPU,另一個(gè)與此CPU相連的CPU應(yīng)該作為1號(hào) CPU。 可以在主板上通過跳帽的方式在CPU外部進(jìn)行相應(yīng)的設(shè)置。如果決定不啟動(dòng)某個(gè)核,則可以讓此核一直在BIOS循環(huán)運(yùn)行,不再運(yùn)行其他功能程序。如果決定啟動(dòng)此核, 則可以讓此核循環(huán)檢測(cè)處理器核間中斷緩存寄存器,當(dāng)此寄存器為零時(shí),此核在BIOS循環(huán)等待;當(dāng)Linux內(nèi)核中SMP功能代碼決定啟動(dòng)此核時(shí),會(huì)對(duì)此寄存器進(jìn)行設(shè)置,這樣此核在 BIOS中退出循環(huán)等待,繼續(xù)執(zhí)行其它的功能。Linux內(nèi)核中的SMP功能代碼對(duì)核間中斷緩存寄存器設(shè)置了什么內(nèi)容,使這些循環(huán)等待的CPU又可以正常工作了呢? SMP功能代碼通過寄存器向每個(gè)核傳遞了四個(gè)參數(shù),第一個(gè)參數(shù)為核退出循環(huán)后即將執(zhí)行的函數(shù)首地址; 第二個(gè)參數(shù)為sp首地址,用于初始化sp寄存器;第三個(gè)參數(shù)為gp首地址,用于初始化gp 寄存器;第四個(gè)參數(shù)為即將執(zhí)行的函數(shù)所需參數(shù)首地址,用于初始化al寄存器。這樣,當(dāng)這四個(gè)參數(shù)分別存儲(chǔ)到相應(yīng)的寄存器后,就可以使用跳轉(zhuǎn)指令去執(zhí)行其它的功能了。
權(quán)利要求1.一種龍芯CPU的SMP功能展示的設(shè)備,其特征在于包括主CPU,從CPU和主板跳線帽,其中,所述主CPU為多核心CPU中的一個(gè)核心,從CPU為除主CPU的其余核心,龍芯CPU 之間通過HT總線相連接,0號(hào)龍芯CPU與北橋芯片相連接,跳線帽通過主板電路與北橋芯片相連接。
2.如權(quán)利要求1所述的設(shè)備,其特征在于所述龍芯CPU個(gè)數(shù)為2個(gè),每個(gè)龍芯CPU包含4個(gè)核心。
3.如權(quán)利要求1所述的設(shè)備,其特征在于在單路情況下,必須有一個(gè)CPU核心為主核心。
4.如權(quán)利要求1所述的設(shè)備,其特征在于在雙路情況下,必須在0號(hào)CPU上選定主核心。
5.如權(quán)利要求4所述的設(shè)備,其特征在于所述0號(hào)CPU為通過HT總線與南北橋相連接的CPU。
6.如權(quán)利要求1所述的設(shè)備,其特征在于所述龍芯CPU每個(gè)核心包含一個(gè)寄存器用以存儲(chǔ)處理器號(hào)。
7.如權(quán)利要求6所述的設(shè)備,其特征在于寄存器的低兩位表示CPU核心號(hào),高兩位表示CPU號(hào)。
8.如權(quán)利要求1所述的設(shè)備,其特征在于關(guān)閉所述龍芯CPU內(nèi)核是屏蔽其中斷緩存寄存器,使其循環(huán)等待。
專利摘要本實(shí)用新型提供了一種龍芯CPU的SMP功能展示的設(shè)備,包括主CPU,從CPU和主板跳線帽,其中,所述主CPU為多核心CPU中的一個(gè)核心,從CPU為除主CPU的其余核心,龍芯CPU之間通過HT總線相連接,0號(hào)龍芯CPU與北橋芯片相連接,跳線帽通過主板電路與北橋芯片相連接。通過本實(shí)用新型提供的設(shè)備,可以非常清楚地了解SMP工作原理及配置方法。
文檔編號(hào)G06F1/16GK202126650SQ20112023704
公開日2012年1月25日 申請(qǐng)日期2011年7月7日 優(yōu)先權(quán)日2011年7月7日
發(fā)明者劉新春, 尹寧寧, 李豐旺, 李永成, 楊曉君, 邵宗有, 鄭臣明 申請(qǐng)人:曙光信息產(chǎn)業(yè)股份有限公司