專利名稱:共享一片程序存儲器的雙處理器控制系統(tǒng)和方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種控制系統(tǒng)中微處理器與存儲器之間的架構(gòu)設(shè)計。具體指 的是兩片微處理器共享一片存儲器的架構(gòu)設(shè)計。
背景技術(shù):
在通用控制系統(tǒng)中, 一 片微處理器通常用 一 片存儲器存儲系統(tǒng)的應(yīng)用程 序,而兩片微處理器則需要兩片存儲器存儲各自的應(yīng)用程序,其結(jié)構(gòu)如圖1 所示。
圖1示出了傳統(tǒng)的雙處理器和雙存儲器的架構(gòu)設(shè)計。在圖1中,處理器
1和處理器2分別利用兩片存儲器1和2來存儲其各自的應(yīng)用程序。
由于處理器1和處理器2分別使用各自的存儲器。因此,成本較高,浪 費印制板空間,并且難于維護(hù)。
發(fā)明內(nèi)容
針對現(xiàn)有技術(shù)的上述問題提出本發(fā)明,本發(fā)明用兩片專用微處理器共享 一片帶SPI ( Serial Peripheral Interface )接口的存儲芯片,這樣,也可以實現(xiàn) 兩片微處理器使用同 一個應(yīng)用程序的設(shè)計。
本發(fā)明提供一種共享單存儲器的雙處理器控制系統(tǒng),包括復(fù)位單元, 用于向第一處理器發(fā)送第一復(fù)位信號以對其進(jìn)行復(fù)位;存儲器,存儲用于第 一處理器和第二處理器的程序;第一處理器,在接收到復(fù)位單元的第一復(fù)位 信號后,通過其串行外設(shè)接口 SPI對存儲器進(jìn)行存取以讀取程序,并在完成 對存儲器的存取之后,將串行外設(shè)接口置為高阻狀態(tài),并向第二處理器輸出 第二復(fù)位信號;以及第二處理器,響應(yīng)于來自第一處理器的第二復(fù)位信號,
本發(fā)明還提供一種共享單存儲器的雙處理器控制方法,包括向第一處 理器發(fā)送第一復(fù)位信號以對其進(jìn)行復(fù)位;在接收到第一復(fù)位信號后,第一處理器通過串行外設(shè)接口對存儲器進(jìn)行存取以讀取程序,并在完成對存儲器的 存取之后,將串行外設(shè)接口置為高阻狀態(tài),并向第二處理器輸出第二復(fù)位信
號;以及響應(yīng)于來自第一處理器的第二復(fù)位信號,通過第二處理器的串行外
設(shè)接口對存儲器進(jìn)行存取以讀取程序。
在根據(jù)本發(fā)明的共享單存儲器的雙處理器控制系統(tǒng)和方法中,由于兩片 處理器共享一片存儲器,因而能夠節(jié)省成本,節(jié)省所占用的印制板空間,利 于整個系統(tǒng)的小型化設(shè)計。此外,由于兩個處理器使用同一固件版本,因而 便于維護(hù),節(jié)約人力。
通過結(jié)合附圖對本發(fā)明的優(yōu)選實施例進(jìn)行詳細(xì)描述,本發(fā)明的上述和其 他目的、特性和優(yōu)點將會變得更加清楚,其中相同的標(biāo)號指定相同結(jié)構(gòu)的單
元,并且在其中
圖1示出了傳統(tǒng)的雙處理器和雙存儲器的構(gòu)架;
圖2示出了根據(jù)本發(fā)明的共享單存儲器的雙處理器控制系統(tǒng)的框圖3示出了根據(jù)本發(fā)明的共享單片EEPROM或FLASH存儲器的雙處理 器控制系統(tǒng)的具體電路圖;以及
圖4示出了根據(jù)本發(fā)明的共享單存儲器的雙處理器控制方法的流程圖。
具體實施例方式
下面將參照示出本發(fā)明實施例的附圖充分描述本發(fā)明。然而,本發(fā)明可 以以許多不同的形式實現(xiàn),而不應(yīng)當(dāng)認(rèn)為限于這里所述的實施例。相反,提 供這些實施例以便使本公開透徹且完整,并且將向本領(lǐng)域技術(shù)人員充分表達(dá) 本發(fā)明的范圍。在附圖中,為了清楚起見放大了組件。
應(yīng)當(dāng)理解,盡管這里可以使用術(shù)語第一、第二、第三等描述各個元件、
組件和/或部分,〗旦這些元件、組件和/或部分不受這些術(shù)語限制。這些術(shù)語4叉 僅用于將元件、組件或部分相互區(qū)分開來。因此,下面討論的第一元件、組 件或部分在不背離本發(fā)明教學(xué)的前提下可以稱為第二元件、組件或部分。
圖2示出了根據(jù)本發(fā)明的共享單存儲器的雙處理器控制系統(tǒng)的框圖。在 圖2中,兩片處理器共同使用一片存儲器來存儲程序,該處理器和該存儲器都具有SPI接口。
如圖2所示,該設(shè)計用一片存儲器來存儲系統(tǒng)執(zhí)行程序,存儲器與兩片 微處理器之間通過SPI總線通信。
本發(fā)明的控制系統(tǒng)包括復(fù)位單位l、處理器2、處理器3和存儲器4。 復(fù)位單元1與處理器2連接,復(fù)位單元1將復(fù)位信號輸出到處理器2,以對 處理器2執(zhí)行復(fù)位操作。而處理器3的復(fù)位由處理器2輸出的復(fù)位信號來控制。
在接收到復(fù)位單元1的復(fù)位信號之后,處理器2先通過SPI總線從存儲 器3中調(diào)入執(zhí)行程序進(jìn)入它的內(nèi)部RAM中,然后處理器2通過固件將它的 SPI接口置為高阻狀態(tài),釋放SPI總線,同時發(fā)出復(fù)位信號給處理器3使其復(fù)位。
在處理器3被復(fù)位后,處理器3啟動SPI總線與存儲器4之間的通信, 從存儲器4內(nèi)讀出系統(tǒng)執(zhí)行程序,并將程序代碼存儲在它的內(nèi)部RAM中, 存儲結(jié)束后,通過固件將SPI接口置為高阻,釋放出SPI總線。
這里,處理器2和處理器3可以調(diào)用存儲器4中的相同的系統(tǒng)執(zhí)行程序。 至此,兩片微處理器2和3將從各自的內(nèi)部RAM中讀取系統(tǒng)執(zhí)行程序 以執(zhí)行應(yīng)用。
下面,以兩片專用微處理器芯片XCEL為例進(jìn)行說明,但本領(lǐng)域技術(shù)人 員應(yīng)該明白,本發(fā)明也適用于其他帶有SPI接口的處理器芯片。
圖3示出了根據(jù)本發(fā)明的共享單片EEPROM或FLASH存儲器的雙處理 器控制系統(tǒng)的具體電路圖。這里,以例如EEPROM或者FLASH存儲器為例 進(jìn)行說明。但本領(lǐng)域技術(shù)人員應(yīng)該理解,其他帶有SPI接口的存儲器也可適 用于本發(fā)明。
如圖3所示,EEPROM或者FLASH 4的SPI接口由SDI(串行數(shù)據(jù)輸入), SDO (串行數(shù)據(jù)輸出),SCLK (串行移位時鐘),CS (從使能信號)四種信 號構(gòu)成。
處理器XCEL 2和處理器XCEL 3的SPI接口有4個信號MOSI:主出/ 從入、MISO:主入/從出、SCK:串行時鐘、和SCS:從屬選擇。
EEPROM或者FLASH 4的SDO端口向處理器XCEL的MISO端口輸出 信號,EEPROM或者FLASH 4的SDI端口接收來自處理器XCEL 2和3的 MOSI端口的輸入。處理器XCEL 2和3的SCK和SCS端口分別與EEPROM和CS端口進(jìn)行通信。
在處理器XCEL 2接收到上電復(fù)位單元1的復(fù)位信號時,啟動SPI接口 與EEPROM或者FLASH 4進(jìn)行通信。處理器XCEL 2從EEPROM或者FLASH 4讀取系統(tǒng)執(zhí)行程序,并將其存入內(nèi)部RAM。然后處理器XCEL2通過固件 將它的SPI接口置為高阻狀態(tài),釋放SPI總線,同時發(fā)出復(fù)位信號給處理器 XCEL3使其復(fù)位。
在處理器XCEL 3接收到來自處理器XCEL2的復(fù)位信號后,處理器 XCEL 3啟動SPI總線與EEPROM或者FLASH 4之間的通信,從EEPROM 或者FLASH 4內(nèi)讀出系統(tǒng)執(zhí)行程序,并將程序代碼存儲在它的內(nèi)部RAM中, 存儲結(jié)束后,通過固件將SPI接口置為高阻,釋放出SPI總線。
至此,兩片處理器XCEL 2和3將從各自的內(nèi)部RAM中讀取系統(tǒng)執(zhí)行 程序以執(zhí)行應(yīng)用。
圖4示出了根據(jù)本發(fā)明的共享單存儲器的雙處理器控制方法的流程圖。 如圖4所示,在步驟Sl,向第一處理器發(fā)送復(fù)位信號以對第一處理器進(jìn) 行復(fù)位。在步驟S2,該第一處理器通過SPI接口與存儲器進(jìn)行通信,以從存 儲器讀取程序。在步驟S3,該第一處理器將SPI置為高阻狀態(tài),并向第二處 理器發(fā)送復(fù)位信號。在步驟S4,在第二處理器接收到復(fù)位信號后,通過第二 處理器的串行外設(shè)接口對存儲器進(jìn)行存取以讀取程序。在步驟S5,將第二處 理器的SPI接口置為高阻,并釋放出SPI總線。
雖然結(jié)合目前被認(rèn)為是最實際和最優(yōu)的實施例描述了本發(fā)明,但本領(lǐng)域 技術(shù)人員應(yīng)當(dāng)理解本發(fā)明不限于所公開的實施例,相反,本發(fā)明旨在覆蓋所 附權(quán)利要求的精神和范疇之內(nèi)包括的各種各樣的修改和等價結(jié)構(gòu)。
權(quán)利要求
1. 一種共享單存儲器的雙處理器控制系統(tǒng),包括復(fù)位單元,用于向第一處理器發(fā)送第一復(fù)位信號以對其進(jìn)行復(fù)位;存儲器,存儲用于第一處理器和第二處理器的程序;第一處理器,在接收到復(fù)位單元的第一復(fù)位信號后,通過其串行外設(shè)接口SPI對存儲器進(jìn)行存取以讀取程序,并在完成對存儲器的存取之后,將串行外設(shè)接口置為高阻狀態(tài),并向第二處理器輸出第二復(fù)位信號;以及第二處理器,響應(yīng)于來自第一處理器的第二復(fù)位信號,通過其串行外設(shè)接口對存儲器進(jìn)行存取以讀取程序。
2. 如權(quán)利要求1所述的控制系統(tǒng),其中所述存儲器具有串行外設(shè)接口。
3. 如權(quán)利要求2所述的控制系統(tǒng),其中所述存儲器是EEPROM或 FLASH。
4. 如權(quán)利要求3所述的控制系統(tǒng),其中用于第一處理器和第二處理器的 程序可以是同 一 系統(tǒng)執(zhí)行程序。
5. 如權(quán)利要求4所述的控制系統(tǒng),其中第一處理器和第二處理器將從存 儲器讀取的所述系統(tǒng)執(zhí)行程序分別存儲在其各自的RAM中。
6. 如權(quán)利要求5所述的控制系統(tǒng),其中第一處理器和第二處理器從各自 的RAM中讀取系統(tǒng)執(zhí)行程序以執(zhí)行應(yīng)用。
7. —種共享單存儲器的雙處理器控制方法,包括 向第一處理器發(fā)送第一復(fù)位信號以對其進(jìn)行復(fù)位;在接收到第一復(fù)位信號后,第一處理器通過串行外設(shè)接口對存儲器進(jìn)行 存取以讀取程序,并在完成對存儲器的存取之后,將串行外設(shè)接口置為高阻 狀態(tài),并向第二處理器輸出第二復(fù)位信號;以及響應(yīng)于來自第一處理器的第二復(fù)位信號,通過第二處理器的串行外設(shè)接 口對存儲器進(jìn)行存取以讀取程序。
8. 如權(quán)利要求7所述的控制方法,其中所述存儲器具有串行外設(shè)接口。
9. 如權(quán)利要求8所述的控制方法,其中所述存儲器是EEPROM或 FLASH。
10. 如權(quán)利要求9所述的控制方法,其中用于第一處理器和第二處理器 的程序可以是同 一 系統(tǒng)執(zhí)行程序。
11. 如權(quán)利要求10所述的控制方法,其中從存儲器讀取的所述系統(tǒng)執(zhí) 行程序被分別存儲在第一處理器和第二處理器的RAM中。
12. 如權(quán)利要求11所述的控制方法,其中第一處理器和第二處理器從 各自的RAM中讀取系統(tǒng)執(zhí)行程序以執(zhí)行應(yīng)用。
全文摘要
本發(fā)明提供一種共享單存儲器的雙處理器控制系統(tǒng),包括復(fù)位單元,用于向第一處理器發(fā)送第一復(fù)位信號以對其進(jìn)行復(fù)位;存儲器,存儲用于第一處理器和第二處理器的程序;第一處理器,在接收到復(fù)位單元的第一復(fù)位信號后,通過其串行外設(shè)接口SPI對存儲器進(jìn)行存取以讀取程序,并在完成對存儲器的存取之后,將串行外設(shè)接口置為高阻狀態(tài),并向第二處理器輸出第二復(fù)位信號;以及第二處理器,響應(yīng)于來自第一處理器的第二復(fù)位信號,通過其串行外設(shè)接口對存儲器進(jìn)行存取以讀取程序。
文檔編號G06F9/445GK101533384SQ20081008533
公開日2009年9月16日 申請日期2008年3月14日 優(yōu)先權(quán)日2008年3月14日
發(fā)明者埃米莉·托里斯, 杰勒德·戈梅茲, 雪 梅, 陳振波 申請人:施耐德電器工業(yè)公司