一種cpu及cpu的啟動(dòng)方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及通信技術(shù)領(lǐng)域,尤其涉及一種CPU啟動(dòng)的方法及CPU。
【背景技術(shù)】
[0002] 隨著數(shù)字通信技術(shù)的高速發(fā)展,相對(duì)于單片微型計(jì)算機(jī)(MCU,Micro Controller Unit)來說,中央處理器(central processing unit,CPU)在嵌入式智能系統(tǒng)中的應(yīng)用越 來越普遍。
[0003] 在單板上電時(shí),通過運(yùn)行用于存放啟動(dòng)代碼的閃存(Flash Used To Store Boot Code,BOOT FLASH)中的版本軟件來引導(dǎo)CPU系統(tǒng)啟動(dòng),目前CPU啟動(dòng)的方式有多種,可以 通過啟動(dòng)硬件管腳的不同電平時(shí),設(shè)置跳線選擇不同的啟動(dòng)模式,常用的啟動(dòng)模式有并口 閃存(Flash)啟動(dòng)、串口外圍設(shè)備接口(Serial Peripheral interface,SPI)啟動(dòng)、旁路 啟動(dòng)、調(diào)測(cè)啟動(dòng)等。比如,通常將CPU與外部電阻連接,利用電阻焊接在電路板(Printed Circuit Board,PCB)上的不同位置時(shí),通過硬件管腳輸出不同的電平,從而確定CPU啟動(dòng) 模式,常用的方式還有,將CPU與復(fù)雜可編程邏輯器件(complex programmable logical device,CPLD)進(jìn)行連接,該CPLD也可以通過硬件管腳輸出不同的電平,從而確定CPU的啟 動(dòng)模式,使該CPU可以按該啟動(dòng)模式方式進(jìn)行啟動(dòng)。
[0004] 然而,在現(xiàn)有技術(shù)中,由于用外部電阻和CPLD需要占用PCB的使用空間,不利于 PCB朝向高集成化、小型化的發(fā)展需求,并且過多的依賴外部元器件啟動(dòng),將影響CPU的使 用穩(wěn)定性能。
【發(fā)明內(nèi)容】
[0005] 本發(fā)明實(shí)施例提供了一種CPU及CPU的啟動(dòng)方法,用于降低電路板的使用空間,適 用于PCB朝向高集成化、小型化的發(fā)展,提高CPU的使用穩(wěn)定性能。
[0006] 本發(fā)明實(shí)施例第一方面提供的一種CPU包括:
[0007] 獲取模塊,用于當(dāng)單板上電時(shí),獲取計(jì)數(shù)器模塊記錄的時(shí)鐘發(fā)生模塊產(chǎn)生時(shí)鐘信 號(hào)的次數(shù);
[0008] 寄存器模塊,用于當(dāng)所述次數(shù)達(dá)到閾值時(shí),確定目標(biāo)啟動(dòng)模式;
[0009] 啟動(dòng)模塊,用于按照所述目標(biāo)啟動(dòng)模式啟動(dòng)。
[0010] 結(jié)合本發(fā)明實(shí)施例的第一方面,在本發(fā)明實(shí)施例第一方面的第一種實(shí)現(xiàn)方式中, 所述寄存器模塊具體用于根據(jù)預(yù)置的啟動(dòng)模式的優(yōu)選級(jí)順序,確定優(yōu)先級(jí)最高的啟動(dòng)模式 作為目標(biāo)啟動(dòng)模式。
[0011] 結(jié)合本發(fā)明實(shí)施例的第一方面的一種實(shí)現(xiàn)方式,在本發(fā)明實(shí)施例第一方面的第二 種實(shí)現(xiàn)方式中,還包括:
[0012] 第一控制模塊,用于判斷所述啟動(dòng)模塊是否啟動(dòng)成功,若是,則向所述計(jì)數(shù)器模塊 發(fā)送第一控制信號(hào),以使所述計(jì)數(shù)器模塊停止記錄,若否,則向所述計(jì)數(shù)器模塊發(fā)送第二控 制信號(hào),以使所述計(jì)數(shù)器模塊將所述次數(shù)重置為初始值,當(dāng)所述次數(shù)達(dá)到所述閾值時(shí),確定 次優(yōu)先級(jí)啟動(dòng)模式作為目標(biāo)啟動(dòng)模式,并使所述寄存器模塊和啟動(dòng)模塊執(zhí)行相應(yīng)操作。
[0013] 結(jié)合本發(fā)明實(shí)施例第一方面,在本發(fā)明實(shí)施例第一方面的第三種實(shí)現(xiàn)方式中,所 述寄存器模塊具體用于根據(jù)預(yù)置的閾值與啟動(dòng)模式的對(duì)應(yīng)關(guān)系,確定所述目標(biāo)啟動(dòng)模式。
[0014] 結(jié)合本發(fā)明實(shí)施例的第一方面的第三種實(shí)現(xiàn)方式,在本發(fā)明實(shí)施例第一方面的第 四種實(shí)現(xiàn)方式中,第二控制模塊,用于判斷所述啟動(dòng)模塊是否啟動(dòng)成功,若是,則向所述計(jì) 數(shù)器模塊發(fā)送第三控制信號(hào),以使所述計(jì)數(shù)器模塊將所述次數(shù)重置為初始值,若否,則向所 述寄存器模塊發(fā)送第四控制信號(hào),以使所述寄存器模塊更新閾值,當(dāng)所述次數(shù)達(dá)到更新后 的閾值時(shí),根據(jù)所述次數(shù)確定目標(biāo)啟動(dòng)模式。
[0015] 結(jié)合本發(fā)明實(shí)施例的第一方面的第四種實(shí)現(xiàn)方式,在本發(fā)明實(shí)施例第一方面的第 五種實(shí)現(xiàn)方式中,所述第二控制模塊具體用于當(dāng)接收所述計(jì)數(shù)器模塊發(fā)送的復(fù)位信號(hào),并 根據(jù)所述復(fù)位信號(hào)控制所述寄存器模塊更新所述閾值。
[0016] 本發(fā)明實(shí)施例第二方面提供一種CPU的啟動(dòng)方法,包括:
[0017] 1)當(dāng)單板上電時(shí),CPU獲取計(jì)數(shù)器模塊記錄的時(shí)鐘發(fā)送模塊產(chǎn)生時(shí)鐘信號(hào)的次 數(shù);
[0018] 2)當(dāng)所述次數(shù)達(dá)到閾值時(shí),所述CPU確定目標(biāo)啟動(dòng)模式;
[0019] 3)所述CPU按照所述目標(biāo)啟動(dòng)模式啟動(dòng)。
[0020] 結(jié)合本發(fā)明實(shí)施例的第二方面,在本發(fā)明實(shí)施例的第二方面的第一種實(shí)現(xiàn)方式 中,所述步驟2)具體包括:
[0021] 所述CPU根據(jù)預(yù)置的啟動(dòng)模式的優(yōu)選級(jí)順序,確定優(yōu)先級(jí)最高的啟動(dòng)模式作為目 標(biāo)啟動(dòng)模式。
[0022] 結(jié)合本發(fā)明實(shí)施例的第二方面的第一種實(shí)現(xiàn)方式,在本發(fā)明實(shí)施例的第二方面的 第二種實(shí)現(xiàn)方式中,在步驟3)之后還包括步驟:
[0023] 4)所述CPU判斷所述啟動(dòng)模塊是否啟動(dòng)成功,若是,則向所述計(jì)數(shù)器模塊發(fā)送第 一控制信號(hào),以使所述計(jì)數(shù)器模塊停止記錄,若否,則向所述計(jì)數(shù)器模塊發(fā)送第二控制信 號(hào),以使所述計(jì)數(shù)器模塊將所述次數(shù)重置為初始值,當(dāng)所述次數(shù)達(dá)到所述閾值時(shí),確定次優(yōu) 先級(jí)啟動(dòng)模式作為目標(biāo)啟動(dòng)模式,并重復(fù)執(zhí)行步驟3)和步驟4)。
[0024] 結(jié)合本發(fā)明實(shí)施例的第二方面,在本發(fā)明實(shí)施例的第二方面的第三種實(shí)現(xiàn)方式 中,當(dāng)所述次數(shù)達(dá)到閾值時(shí),所述CPU根據(jù)預(yù)置的閾值與啟動(dòng)模式的對(duì)應(yīng)關(guān)系,確定所述目 標(biāo)啟動(dòng)模式
[0025] 結(jié)合本發(fā)明實(shí)施例的第二方面的第三種實(shí)現(xiàn)方式,在本發(fā)明實(shí)施例第二方面的第 四種實(shí)現(xiàn)方式中,在步驟3)之后還包括步驟:
[0026] 4)判斷所述CPU是否啟動(dòng)成功,若是,則向所述計(jì)數(shù)器模塊發(fā)送第三控制信號(hào),以 使所述計(jì)數(shù)器模塊將所述次數(shù)重置為初始值,若否,則更新閾值,當(dāng)所述次數(shù)達(dá)到更新后的 閾值時(shí),根據(jù)所述次數(shù)確定目標(biāo)啟動(dòng)模式。
[0027] 結(jié)合本發(fā)明實(shí)施例第二方面的第四種實(shí)現(xiàn)方式,在本發(fā)明實(shí)施例第二方面的第五 種實(shí)現(xiàn)方式中,所述步驟4)中,更新閾值包括:
[0028] 41)所述CPU接收所述計(jì)數(shù)器模塊發(fā)送的復(fù)位信號(hào);
[0029] 42)所述CPU根據(jù)所述復(fù)位信號(hào)更新所述閾值。
[0030] 本發(fā)明實(shí)施例具有如下有益效果:
[0031] 通過獲取計(jì)數(shù)器模塊記錄的時(shí)鐘信號(hào)發(fā)送次數(shù),當(dāng)次數(shù)達(dá)到閾值時(shí),CPU的寄存器 模塊可以根據(jù)次數(shù)確定最優(yōu)啟動(dòng)模式,使CPU按照該模式進(jìn)行啟動(dòng),相對(duì)于現(xiàn)有技術(shù),無需 額外增加CPLD、外部電阻路等,即可實(shí)現(xiàn)CPU的啟動(dòng),從而降低電路板的使用空間,并提高 CPU的使用穩(wěn)定性能。
【附圖說明】
[0032] 圖1為本發(fā)明實(shí)施例中一種CPU的一個(gè)實(shí)施例示意圖;
[0033] 圖2為本發(fā)明實(shí)施例中一種CPU的另一個(gè)實(shí)施例示意圖;
[0034] 圖3為本發(fā)明實(shí)施例中一種CPU的另一個(gè)實(shí)施例示意圖;
[0035] 圖4為本發(fā)明實(shí)施例中一種CPU啟動(dòng)方法的一個(gè)實(shí)施例示意圖;
[0036]