亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

中央處理單元啟動的方法及系統的制作方法

文檔序號:6364954閱讀:160來源:國知局
專利名稱:中央處理單元啟動的方法及系統的制作方法
技術領域
本發(fā)明涉及電數字數據處理,尤其涉及一種中央處理單元(CPU)啟動的方法及系統。
背景技術
現在中央處理單元(CPU)啟動都有單獨的啟動系統,特別是在多CPU系統中,每個CPU由各自的啟動芯片(BOOTROM)啟動,這樣的設計方式使用的器件數量多,而且不易實現BOOTROM軟件升級,造成系統維護和增強功能的困難。
如圖1所示,在現有技術方案中,各個CPU系統(如圖中CPU1系統和CPU2系統)都有獨立的BOOTROM,系統只能從該CPU對應的BOOTROM啟動。由于整個系統中,通常只以某個CPU為主,其他CPU協助處理業(yè)務,各CPU之間只進行簡單的通信,系統設計中為了降低成本,一般只實現主CPU的BOOTROM升級,而各個從CPU的BOOTROM不升級。如果實現所有BOOTROM的升級,則需要為每個BOOTROM設計加載電路,系統設計復雜度增加,成本上升。
現有技術方案的缺點為(1)在多CPU系統中,每個CPU通道由各自獨立的BOOTROM引導啟動,系統中需要使用多個BOOTROM存儲器,增加了系統成本。
(2)系統需要升級所有CPU的軟件時,為降低成本,只實現主CPU的升級,從CPU不升級。
(3)實現從CPU升級需要增加系統復雜度,增加系統成本。

發(fā)明內容
本發(fā)明所要解決的技術問題是克服現有技術各個CPU通過獨立的BOOTROM啟動所帶來的成本高、升級復雜等缺點,提供一種CPU啟動的方法和系統,從而降低系統成本,并方便實現CPU的升級。
本發(fā)明為解決上述技術問題所采用的技術方案為這種中央處理單元啟動的方法,其特征在于它包括以下步驟在多中央處理單元(CPU)系統中,利用同一個存儲器存放各個CPU的引導程序,各個CPU與該存儲器之間的數據/地址總線分別通過緩沖器(buffer)進行隔離;主CPU控制各個CPU對相應的buffer及存儲器的選通,使各個CPU按順序先后對存儲器進行訪問,從存儲器的相應區(qū)域讀取數據,實現各個CPU系統的啟動。
所述的多個CPU的引導程序和應用軟件在同一個flash中根據地址劃分存放在不同的空間。
CPU系統啟動流程如下1)上電或整個系統復位后,主CPU使得各從CPU處于復位狀態(tài)而無法啟動,主CPU給出片選信號選通與主CPU對應的buffer及flash,正常啟動;2)主CPU啟動完畢或啟動到某個步驟后,解除從CPU的復位,并調整CPU輸出的控制信號,使得從CPU可以訪問flash;3)從CPU給出片選信號選通該從CPU對應的buffer及flash,正常啟動。
從CPU已正常啟動或啟動到不需要flash后,主CPU通過調整其輸出的控制信號,取消從CPU選通該從CPU對應的buffer的權限,防止從CPU誤訪問flash。
所述的從CPU已正常啟動的信息通過CPU之間的通信通道獲得,也可以估算一定的時間,確保該從CPU已正常啟動或已啟動到不需要flash的階段。
在各CPU正常運行期間,如果從CPU需要訪問flash,必須通過CPU之間的通信通道向主CPU提出申請,得到允許后,主CPU調整其輸出的控制信號,使該從CPU可以選通讀取flash;讀取完畢后通知主CPU,主CPU調整其輸出的控制信號,取消該從CPU選通讀取flash的權限。
如果flash的空間較大,某些CPU的地址范圍不夠時,根據該CPU程序在flash中存放的地址,在buffer之前給對應的flash地址線做上、下拉處理,將其從外部強制成所需的固定電平,使得該CPU可以訪問到分配的flash空間。
與上述中央處理單元啟動方法相應的CPU啟動系統,其特征在于主、從CPU的數據/地址總線分別通過緩沖器(buffer)隔離后連接到同一儲存器;主CPU的片選信號直接輸入到與主CPU對應的buffer的使能信號管腳,同時該片選信號在與各從CPU的片選信號相與后輸入儲存器,控制儲存器的選通;從CPU的片選信號在與所述主CPU的片選信號相與之前,由上拉電阻拉高,并被與該從CPU對應的buffer隔離;主CPU復位信號經下拉電阻拉低后輸出到各從CPU的復位管腳,同時,該復位信號在進行非運算后,與經上拉電阻拉高的主CPU輸出的控制信號及從CPU的片選信號進行或運算,所產生的信號輸入該從CPU對應的buffer的使能信號管腳。
所述的儲存器為閃存(flash)器件。
所述的flash器件為具有塊保護功能的flash器件。
主、從CPU之間可通過通信通道相連進行通訊。
各CPU的數據/地址總線還分別連接同步動態(tài)存儲器(sdram)或其它存儲器件。
本發(fā)明的有益效果為本發(fā)明在多CPU系統中使用flash來放置各CPU的引導程序和應用軟件,所有CPU共用一個flash,從同一個flash啟動,相對于現有技術從不同的BOOTROM啟動而言節(jié)省了成本,由于各個CPU都可以訪問flash,可以很方便地實現對所有CPU的軟件進行升級。


圖1為現有的CPU啟動原理示意圖;圖2為本發(fā)明CPU啟動原理示意圖;圖3為本發(fā)明多個CPU從同一個flash啟動的控制電路圖;圖4為本發(fā)明CPU啟動流程圖;圖5為本發(fā)明CPU地址線范圍不足時的處理示意圖。
具體實施例方式
下面根據附圖和實施例對本發(fā)明作進一步詳細說明如圖2所示為本發(fā)明CPU啟動原理示意圖,本發(fā)明使用可讀寫的存儲器(如flash閃存器件)作為載體,取代現有的啟動芯片(bootrom),使用flash器件存放CPU軟件,所有CPU共用同一個flash,從同一個flash啟動。由于CPU啟動時讀取bootrom的時間很短,程序搬運到同步動態(tài)存儲器(sdram)后不再訪問bootrom,所以可以通過主CPU來控制各個CPU系統對bootrom按順序先后訪問,達到共享的目的。為防止各CPU隨意選取通flash以及隔離各個總線防止干擾,各個CPU系統與flash之間的數據/地址總線、及部分或所有片選信號通過緩沖器(buffer)進行隔離,由主CPU(圖中CPU1)對各buffer進行控制,實現各CPU對flash的先后訪問。同時主CPU可以在正常運行時選通flash,進行各個CPU軟件的升級加載。
如圖3所示,以兩個CPU系統為例說明本發(fā)明的技術方案,圖中CPU1為主CPU,CPU2為從CPU。CPU1、CPU2的數字地址總線接口(date_addr_bus)分別經buffer1、buffer2的隔離后與同一flash的數字地址總線接口(date_addr_bus)相接。在buffer和flash分別選通時,相應的CPU可以訪問flash,從flash的相應區(qū)域讀取數據和進行數據搬運到相應的SDRAM,從而啟動。
圖3中,緩沖器buffer1和buffer2的/G管腳為開關選通信號,低有效。該管腳為高時,相應的CPU和flash的數據/地址總線隔離;該管腳為低時,相應的CPU和flash的數據/地址總線連通。
各CPU之間的通信通道在不同的系統中可以不同,可以為RS232、RS485、I2C等串口;也可以為其他接口,如通用測試與操作接口(UTOPIA)等;也可以為自定義的通信接口。
CPU1的片選信號/CS1直接輸入buffer1的/G管腳,同時/CS1在與CPU2的片選信號/CS2相與(and)后形成flash的選通信號/CS3。
CPU2的片選信號/CS2在做與運算送給flash之前,通過buffer2隔離,防止CPU2不取得flash控制權時選通flash。/cs2_buf的上拉電阻保證上電期間和buffer2隔離時,該信號為高狀態(tài),不會誤選通flash。
CPU1的復位輸出信號/reset_out連到CPU2的復位管腳/reset,控制CPU2的復位狀態(tài)。如果有多個從CPU,每個從CPU各需要一個與主CPU相連的復位信號,不能共用,復位信號低有效。
CPU1的contro信號先和/reset_out的非(not)進行或運算(or)后產生信號CPU1_ctr,再將CPU1-ctr與/cs2進行或運算后輸出CPU2_OE信號到buffer2的/G管腳,CPU2_OE作為使能信號控制buffer2的通斷,防止CPU2隨意選通buffer2,訪問flash。平時由于上拉電阻的上拉,control信號為高,不允許CPU2選通buffer2。允許CPU2選通buffer2時,control信號為低。上拉電阻保證上電期間control信號為高狀態(tài)。
這樣,當系統啟動時,各CPU的啟動過程如下(假設以下器件的控制信號都為低有效)上電后或整個系統復位后,CPU1先正常啟動,CPU1的/reset_out管腳輸出低電平,使得CPU2的復位輸入為低(同時該管腳被拉低,保證CPU1啟動初期也能為低電平),CPU2處于復位狀態(tài),無法啟動;同時/reset_out經過非和或運算后使得CPU2_OE為高,關閉buffer2。CPU1正常啟動,給出/CS1低信號,/CS1輸入buffer1的/G管腳選通buffer1,同時/CS1與/CS2_buf相與產生低信號/CS3送入flash,選取通flash,取得flash的讀寫權限,從flash的相應區(qū)域讀取數據和進行數據搬運到SDRAM。
CPU1啟動完畢或者啟動到某個步驟后(根據實際情況決定),/reset_out管腳拉高,使得CPU2走出復位狀態(tài),正常啟動,同時control信號保持為低電平,使得CPU2可以控制buffer2的選通。CPU2正常啟動,給出/CS2低信號,輸入/G管腳的信號為低,buffer2選通,輸出/CS2_buf為低,從而選通flash,取得fash的讀寫權限,從flash的相應區(qū)域讀取數據和進行數據搬運到SDRAM。
在CPU2啟動期間,CPU1必須保證不訪問flash,以免發(fā)生沖突。CPU2啟動完畢的信息可以通過CPU之間的通信通道獲得,也可以估算一定的時間,確保CPU2已正常啟動或已啟動到不需要flash的階段(CPU從flash啟動的時間通常很短,幾秒鐘之內可以完成基本啟動,不再需要從flash讀取數據)。確保CPU2不再需要flash后,CPU1的control管腳拉高,取消CPU2選通buffer2的權限,防止兩個CPU同時訪問flash,造成沖突,損壞器件。
在正常運行期間,如果CPU2需要訪問flash,必須通過CPU之間的通信通道提出申請,得到允許后同時CPU1的control管腳拉低,CPU2可以選通讀取flash。讀取完畢后通知CPU1,CPU1的control管腳拉高,取消CPU2選通buffer2的權限。如果正常運行期間CPU2不需要訪問flash,沒有本操作。
圖3中只給出了三個片選信號/cs1為主CPU給flash的片選信號(輸出),/cs2為從CPU給flash的片選信號(輸出),/cs3為flash的選通信號(輸入)。
當從CPU不只CPU2一個時,同樣根據control、/reset_out和從CPU給出的片選信號作為使能信號輸入相應buffer的/G管腳來控制該buffer的通斷,并通過該從CPU給出的片選信號與主CPU給出的片選信號相與來控制flash的通斷,從而實現該從CPU對flash的訪問。為了安全起見,也可以增加主CPU的control信號來控制相應的從CPU,達到主CPU可以單獨控制各個從CPU的buffer通斷。
如圖4所示為本發(fā)明CPU啟動流程圖,啟動流程概括如下1)上電或整個系統復位后,主CPU使得各從CPU處于復位狀態(tài)而無法啟動,主CPU給出片選信號選通主CPU與flash之間的buffer及flash,正常啟動;2)主CPU啟動完畢或啟動到某個步驟后,解除從CPU的復位,并把control信號拉低,使得從CPU可以訪問flash;3)從CPU給出片選信號選通該從CPU與flash之間的buffer及flash,正常啟動,在此期間主CPU不能訪問flash;4)確保從CPU不再訪問flash后,主CPU把control信號拉高,防止從CPU誤訪問flash;5)主CPU和從CPU完成其它啟動操作;6)主CPU和從CPU正常運行。
本系統中的flash空間要進行劃分,給各個CPU劃分足夠的地址空間,放置軟件和其他信息。由于各個CPU都可以訪問flash,可以很方便的實現在線加載各個軟件,升級各個CPU的軟件。
如果flash的空間較大,某些CPU的地址范圍不夠時,可以采用在buffer之前給高位的flash地址線做上、下拉處理,通過上、下拉處理后,從外部將高位的地址線強制成所需的固定電平,使得該CPU可以訪問到分配的flash空間。如圖5所示,當CPU地址線為A0-A18,共19根,而flash地址線為A0-A20,共21根時,圖4圈中部分采用上、下拉處理,根據該CPU在flash中存儲的地址,在buffer之前將A19強制為低電平,A20強制為高電平,從而在buffer選通時,該CPU可以訪問到分配的flash空間(0x100000-0x17FFFF的512k空間分配給該從CPU使用)。
如果某些CPU的數據線寬不夠,比如flash為16bit的數據線,而從CPU1為8位的數據線時,則該CPU只能訪問8位對應的flash空間。
本發(fā)明節(jié)省了成本,降低了系統復雜度,同時可以很方便的實現對所有CPU的軟件進行升級,只要能訪問flash器件的CPU都能升級軟件。通常主CPU能夠訪問flash器件的所有空間,同時它能夠決定flash器件的使用權限,由它來升級軟件比較簡單方便。需要注意的是,由于基本輸入輸出系統(BIOS)軟件部分軟件比較重要,可選用具有塊保護功能的flash器件,從而可在平時使得各個CPU的BIOS軟件空間處于保護狀態(tài),防止誤操作。
權利要求
1.一種中央處理單元啟動的方法,其特征在于它包括以下步驟在多中央處理單元(CPU)系統中,利用同一個存儲器存放各個CPU的引導程序,各個CPU與該存儲器之間的數據/地址總線分別通過緩沖器(buffer)進行隔離;主CPU控制各個CPU對相應的buffer及存儲器的選通,使各個CPU按順序先后對存儲器進行訪問,從存儲器的相應區(qū)域讀取數據,實現各個CPU系統的啟動。
2.根據權利要求1所述的中央處理單元啟動的方法,其特征在于所述的多個CPU的引導程序和應用軟件在同一個flash中根據地址劃分存放在不同的空間。
3.根據權利要求2所述的中央處理單元啟動的方法,其特征在于CPU系統啟動流程如下1)上電或整個系統復位后,主CPU使得各從CPU處于復位狀態(tài)而無法啟動,主CPU給出片選信號選通與主CPU對應的buffer及flash,正常啟動;2)主CPU啟動完畢或啟動到某個步驟后,解除從CPU的復位,并調整CPU輸出的控制信號,使得從CPU可以訪問flash;3)從CPU給出片選信號選通該從CPU對應的buffer及flash,正常啟動。
4.根據權利要求3所述的中央處理單元啟動的方法,其特征在于從CPU已正常啟動或啟動到不需要flash后,主CPU通過調整其輸出的控制信號,取消從CPU選通該從CPU對應的buffer的權限,防止從CPU誤訪問flash。
5.根據權利要求4所述的中央處理單元啟動的方法,其特征在于所述的從CPU已正常啟動的信息通過CPU之間的通信通道獲得,也可以估算一定的時間,確保該從CPU已正常啟動或已啟動到不需要flash的階段。
6.根據權利要求3所述的中央處理單元啟動的方法,其特征在于在各CPU正常運行期間,如果從CPU需要訪問flash,必須通過CPU之間的通信通道向主CPU提出申請,得到允許后,主CPU調整其輸出的控制信號,使該從CPU可以選通讀取flash;讀取完畢后通知主CPU,主CPU調整其輸出的控制信號,取消該從CPU選通讀取flash的權限。
7.根據權利要求3所述的中央處理單元啟動的方法,其特征在于如果flash的空間較大,某些CPU的地址范圍不夠時,根據該CPU程序在flash中存放的地址,在buffer之前給高位的flash地址線做上、下拉處理,將其從外部強制成所需的固定電平,使得該CPU可以訪問到分配的flash空間。
8.一種中央處理單元啟動系統,其特征在于主、從CPU的數據/地址總線分別通過緩沖器(buffer)隔離后連接到同一儲存器;主CPU的片選信號直接輸入到與主CPU對應的buffer的使能信號管腳,同時該片選信號在與各從CPU的片選信號相與后輸入儲存器,控制儲存器的選通;從CPU的片選信號在與所述主CPU的片選信號相與之前,由上拉電阻拉高,并被與該從CPU對應的buffer隔離;主CPU復位信號經下拉電阻拉低后輸出到各從CPU的復位管腳,同時,該復位信號在進行非運算后,與經上拉電阻拉高的主CPU輸出的控制信號及從CPU的片選信號進行或運算,所產生的信號輸入該從CPU對應的buffer的使能信號管腳。
9.根據權利要求8所述的中央處理單元啟動系統,其特征在于所述的儲存器為閃存(flash)器件,所述的flash器件為具有塊保護功能的flash器件。
10.根據權利要求8或9所述的中央處理單元啟動系統,其特征在于主、從CPU之間可通過通信通道相連進行通訊。
11.根據權利要求8或9所述的中央處理單元啟動系統,其特征在于各CPU的數據/地址總線還分別連接同步動態(tài)存儲器(sdram)或其它存儲器件。
全文摘要
一種中央處理單元啟動的方法及系統,在多中央處理單元(CPU)系統中,利用同一個閃存(flash)器件存放各個CPU的引導程序,各個CPU與該flash之間的數據/地址總線分別通過緩沖器(buffer)進行隔離;主CPU控制各個CPU對相應的buffer及flash的選通,使各個CPU按順序先后對flash進行訪問,從flash的相應區(qū)域讀取數據,實現各個CPU系統的啟動。本發(fā)明相對于現有的從不同BOOTROM啟動而言節(jié)省了成本,由于各個CPU都可以訪問flash,可以很方便地實現對所有CPU的軟件進行升級。
文檔編號G06F12/00GK1553338SQ0313754
公開日2004年12月8日 申請日期2003年6月8日 優(yōu)先權日2003年6月8日
發(fā)明者李慶東 申請人:華為技術有限公司
網友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1