專(zhuān)利名稱(chēng):用于基于處理器的控制器設(shè)計(jì)中的冗余方法的方法和裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種用于更新過(guò)程控制系統(tǒng)中的冗余處理器的次級(jí)數(shù)據(jù) 庫(kù)的方法和裝置,更具體而言,涉及一種用于追蹤初級(jí)數(shù)據(jù)庫(kù)的預(yù)定數(shù) 據(jù)變化以便隨后更新次級(jí)數(shù)據(jù)庫(kù)的裝置。
背景技術(shù):
冗余過(guò)程控制系統(tǒng)通常包括一個(gè)或多個(gè)冗余控制器節(jié)點(diǎn),這些節(jié)點(diǎn) 監(jiān)測(cè)信號(hào)或者提供控制信號(hào)給過(guò)程控制系統(tǒng)。冗余控制器節(jié)點(diǎn)包括初級(jí) 控制器和次級(jí)控制器。初級(jí)控制器包括初級(jí)處理器、初級(jí)數(shù)據(jù)庫(kù)和初級(jí) 追蹤單元,而次級(jí)控制器包括次級(jí)控制器、次級(jí)數(shù)據(jù)庫(kù)和次級(jí)追蹤單元。 當(dāng)激活初級(jí)控制器從而監(jiān)測(cè)信號(hào)和/或提供控制信號(hào)給過(guò)程控制系統(tǒng) 時(shí),次級(jí)控制器空閑,反之亦然。初級(jí)追蹤單元追蹤由初級(jí)控制器處理 的過(guò)程數(shù)據(jù),以及周期性將數(shù)據(jù)變化情況提供給次級(jí)控制器。當(dāng)發(fā)生需 要變更的事件時(shí),次級(jí)數(shù)據(jù)庫(kù)包含更新的過(guò)程數(shù)據(jù)。因此,次級(jí)控制器 接管以及用作該節(jié)點(diǎn)的初級(jí)控制器。然后修復(fù)出現(xiàn)故障的控制器,然后 備用為次級(jí)控制器。在某些公知的初級(jí)控制器(例如,美國(guó)專(zhuān)利No.6170044 )中,初級(jí) 追蹤單元連接到初級(jí)處理器用于訪(fǎng)問(wèn)初級(jí)數(shù)據(jù)庫(kù)的總線(xiàn)。這需要利用初 級(jí)處理器的標(biāo)準(zhǔn)過(guò)程數(shù)據(jù)處理功能以及利用追蹤單元功能來(lái)共享該總 線(xiàn)。這會(huì)影響到總線(xiàn)流量,以及減小初級(jí)處理器的其它處理活動(dòng)可占用 的帶寬。該物理封裝包需要將這些功能分到兩個(gè)印刷電路板中。電路板 之間的昂貴的、高引腳數(shù)連接器利用每個(gè)電路板上的復(fù)制接口邏輯來(lái)承 載初級(jí)總線(xiàn)信號(hào)的全部補(bǔ)碼和初級(jí)總線(xiàn)。因此,希望提供一種不需要設(shè)置昂貴的大連接器的改進(jìn)的帶寬處理控制器。發(fā)明內(nèi)容根據(jù)本發(fā)明用于控制或監(jiān)測(cè)過(guò)程的系統(tǒng)包括初級(jí)控制器和冗余控制 器。該初級(jí)控制器包括初級(jí)處理器、初級(jí)存儲(chǔ)器、追蹤器控制器和追蹤 存儲(chǔ)器。第一總線(xiàn)使該初級(jí)處理器和該追蹤器控制器互連。初級(jí)處理器 執(zhí)行追蹤數(shù)據(jù)的任務(wù),以及利用該笫 一總線(xiàn)來(lái)協(xié)同該追蹤器控制器將該 追蹤數(shù)據(jù)存儲(chǔ)到該追蹤存儲(chǔ)器中以及將該追蹤數(shù)據(jù)傳送到該冗余控制 器。第二總線(xiàn)使該初級(jí)處理器和該初級(jí)存儲(chǔ)器互連。該初級(jí)處理器還利 用該第二總線(xiàn)和該初級(jí)存儲(chǔ)器來(lái)執(zhí)行除了該追蹤數(shù)據(jù)任務(wù)之外的其它任 務(wù)。優(yōu)選的,所述其它的任務(wù)為以下任務(wù)運(yùn)行系統(tǒng)、涉及計(jì)算的一個(gè) 或多個(gè)算法、通信應(yīng)用、輸入/輸出應(yīng)用、產(chǎn)生警報(bào)和事件、診斷以及它 們的任何組合。優(yōu)選的,該第二總線(xiàn)的運(yùn)行速率高于該笫一總線(xiàn)的運(yùn)行速率。更優(yōu) 選的,第二總線(xiàn)的運(yùn)行速率是第一總線(xiàn)的運(yùn)行速率2倍或更高。在本發(fā)明的該系統(tǒng)的另一個(gè)實(shí)施例中,該初級(jí)處理器、該第二總線(xiàn) 和該初級(jí)存儲(chǔ)器設(shè)置在第一印刷布線(xiàn)板上。該追蹤器控制器和該追蹤存儲(chǔ)器設(shè)置在第二印刷布線(xiàn)板上。該笫一總線(xiàn)具有分別設(shè)置在該第一和該 第二印刷布線(xiàn)板上的笫一部分和第二部分。低成本低引腳數(shù)連接器連接該第一和第二部分。本發(fā)明的方法運(yùn)行由冗余控制器支持的初級(jí)控制器。該方法利用初 級(jí)處理器追蹤數(shù)據(jù)任務(wù),其中該初級(jí)處理器經(jīng)第一總線(xiàn)協(xié)同追蹤控制器 將追蹤數(shù)據(jù)存儲(chǔ)到追蹤存儲(chǔ)器中以及將追蹤數(shù)據(jù)傳送到該冗余控制器。 利用經(jīng)第二總線(xiàn)協(xié)同初級(jí)存儲(chǔ)器的初級(jí)處理器執(zhí)行其它任務(wù)。優(yōu)選的,所述其它的任務(wù)為以下任務(wù)運(yùn)行系統(tǒng)、涉及計(jì)算的一個(gè) 或多個(gè)算法、通信應(yīng)用、輸入/輸出應(yīng)用、產(chǎn)生警報(bào)和事件、診斷以及它 們的任何組合。優(yōu)選的,該第二總線(xiàn)的運(yùn)行速率高于該第一總線(xiàn)的運(yùn)行速率。更優(yōu) 選的,第二總線(xiàn)的運(yùn)行速率是第一總線(xiàn)的運(yùn)行速率2倍或更高。在該方法的一個(gè)實(shí)施例中,利用信息報(bào)頭來(lái)格式化該追蹤數(shù)據(jù),以 及在將該追蹤數(shù)據(jù)傳送到該冗余控制器之前改變?cè)撟粉檾?shù)據(jù)的大小以用 作以太網(wǎng)冗余專(zhuān)用鏈路幀。
結(jié)合附圖,參照下面的具體實(shí)施方式
部分,將便于理解本發(fā)明的其 它和另一些目的、優(yōu)點(diǎn)和特性,其中相同的附圖標(biāo)記表示相同的結(jié)構(gòu)部 件,其中圖l是包括本發(fā)明的冗余控制器的過(guò)程控制系統(tǒng)的方塊圖; 圖2是圖1所示系統(tǒng)的冗余控制器的初級(jí)追蹤器控制器的方塊圖; 圖3示出圖2所示初級(jí)追蹤器控制器的緩沖器的格式;以及 圖4和5是圖1所示系統(tǒng)的冗余控制器的運(yùn)行過(guò)程流程圖。
具體實(shí)施方式
參照?qǐng)D1,過(guò)程控制系統(tǒng)20包括工廠控制網(wǎng)絡(luò)22,該工廠控制網(wǎng)絡(luò) 互連到一個(gè)或多個(gè)冗余控制器26。通過(guò)示例方式示出僅一個(gè)冗余控制器 26。對(duì)于本領(lǐng)域技術(shù)人員而言顯而易見(jiàn)的是,多個(gè)冗余控制器26可以連 接到根據(jù)本發(fā)明的工廠控制網(wǎng)絡(luò)22。冗余控制器26包括初級(jí)控制器30 和次級(jí)控制器40??刂破?0和40基本相同,除了作用不同之外。為了 說(shuō)明,假設(shè)初級(jí)控制器30激活而次級(jí)控制器40未激活或空閑。對(duì)于本 領(lǐng)域技術(shù)人員而言顯而易見(jiàn)的是,當(dāng)控制器30和40的作用顛倒分別是 空閑和激活時(shí),控制器40變成初級(jí)控制器,而控制器30變成次級(jí)控制 器。初級(jí)控制器30和次級(jí)控制器40經(jīng)專(zhuān)用鏈路28互連。初級(jí)控制器30包括通信處理器29 (它提供以太網(wǎng)媒介訪(fǎng)問(wèn)層)、 初級(jí)處理器31、初級(jí)存儲(chǔ)器32、初級(jí)追蹤器控制器33、初級(jí)追蹤存儲(chǔ) 器34、 一個(gè)或多個(gè)以太網(wǎng)接口單元35和專(zhuān)用以太網(wǎng)冗余鏈路36。高速 總線(xiàn)37使初級(jí)處理器31和初級(jí)存儲(chǔ)器32互連。低速總線(xiàn)38例如外設(shè) 部件互連(PCI)總線(xiàn)(工業(yè)標(biāo)準(zhǔn))互連初級(jí)處理器31到初級(jí)追蹤器控 制器33,該初級(jí)追蹤器控制器運(yùn)行初級(jí)追蹤存儲(chǔ)器34。除了如上所述內(nèi) 容之外,初級(jí)追蹤存儲(chǔ)器34用作普通讀/寫(xiě)存儲(chǔ)器。通信總線(xiàn)39采用媒 介獨(dú)立接口 (工業(yè)標(biāo)準(zhǔn))將初級(jí)處理器31連接到以太網(wǎng)接口單元35以 及以太網(wǎng)冗余專(zhuān)用鏈路36。高速總線(xiàn)37的運(yùn)行速率是低速總線(xiàn)38的運(yùn) 行速率至少2倍,更優(yōu)選為3倍以及最優(yōu)選為6倍。以太網(wǎng)接口單元35 連接到工廠控制網(wǎng)絡(luò)22。專(zhuān)用冗余鏈路36連接到專(zhuān)用鏈路28。初級(jí)追 蹤存儲(chǔ)器34優(yōu)選為用于在供電故障時(shí)保存數(shù)據(jù)的電池。在一個(gè)示例中, 低速總線(xiàn)38需要高速總線(xiàn)37的信號(hào)數(shù)的三分之一,因此可以采用低成 本低引腳數(shù)的板間連接器。
次級(jí)控制器40包括次級(jí)通信處理器50 (它提供以太網(wǎng)媒介訪(fǎng)問(wèn) 層)、次級(jí)處理器41、次級(jí)存儲(chǔ)器42、次級(jí)追蹤器控制器43、次級(jí)追 蹤存儲(chǔ)器44、 一個(gè)或多個(gè)以太網(wǎng)接口單元45和專(zhuān)用以太網(wǎng)冗余鏈路46。 高速總線(xiàn)47使次級(jí)處理器41和次,儲(chǔ)器42互連。低速總線(xiàn)38例如 外設(shè)部件互連(PCI)總線(xiàn)(工業(yè)標(biāo)準(zhǔn))互連次級(jí)處理器41到次級(jí)追蹤 器控制器43,該次級(jí)追蹤器控制器運(yùn)行次級(jí)追蹤存儲(chǔ)器44。次級(jí)追蹤存 儲(chǔ)器44用作普通讀/寫(xiě)存儲(chǔ)器。通信總線(xiàn)49采用媒介獨(dú)立接口 (工業(yè)標(biāo) 準(zhǔn))將通信處理器50連接到以太網(wǎng)接口單元45以及以太網(wǎng)冗余專(zhuān)用鏈 路46。高速總線(xiàn)47的運(yùn)行速率是低速總線(xiàn)48的運(yùn)行速率至少2倍,更 優(yōu)選為3倍以及最優(yōu)選為6倍。以太網(wǎng)接口單元45連接到工廠控制網(wǎng)絡(luò) 22。專(zhuān)用冗余鏈路46連接到專(zhuān)用鏈路28。次級(jí)追蹤存儲(chǔ)器44優(yōu)選為用 于在供電故障時(shí)保存數(shù)據(jù)的電池。低速總線(xiàn)48需要高速總線(xiàn)47的信號(hào) 數(shù)的三分之一,因此可以采用低成本低引腳數(shù)的板間連接器。多個(gè)輸入和輸出偶連到冗余控制器26,包括模擬輸入(A/I)、模 擬輸出(A/0)、數(shù)字輸入(D/I)以及數(shù)字輸出(D/0),它們連接到用 于指示當(dāng)前信息或者狀態(tài)以及控制過(guò)程控制系統(tǒng)10的處理的多個(gè)閥、壓 力開(kāi)關(guān)、壓力計(jì)、熱電偶。工廠控制網(wǎng)絡(luò)22例如可以是美國(guó)專(zhuān)利申請(qǐng) No.US2002/00046357中公開(kāi)的類(lèi)型。雖然沒(méi)有示出,但是可以理解的 是,多個(gè)模擬和數(shù)字輸入和輸出經(jīng)一個(gè)或多個(gè)合適的接口單元例如1/0 鏈路連接到初級(jí)處理器31和次級(jí)處理器41。在初始化冗余控制器26期間,通過(guò)從工廠控制網(wǎng)絡(luò)22下載控制特 定信息(也就是指令信息)來(lái)決定控制器30或40哪一個(gè)作為初級(jí)或次 級(jí)控制器。那時(shí),控制器30或40之一作為初級(jí)控制器,而另一個(gè)作為 次級(jí)控制器40。初級(jí)控制器30執(zhí)行控制處理算法,其包括從閥、壓力計(jì) 讀取輸入數(shù)據(jù),然后執(zhí)行預(yù)定計(jì)算以及輸出結(jié)果。初級(jí)處理器31經(jīng)低速 總線(xiàn)38將這些運(yùn)行數(shù)據(jù)存儲(chǔ)到位于初級(jí)追蹤存儲(chǔ)器34中的過(guò)程數(shù)據(jù)庫(kù) 80 (圖2 )。初級(jí)追蹤器控制器33還檢測(cè)寫(xiě)入到過(guò)程數(shù)據(jù)庫(kù)80中的數(shù) 據(jù)的變化情況,然后在位于初級(jí)追蹤存儲(chǔ)器34中的一個(gè)或多個(gè)追蹤器緩 沖器82 (圖2 )中建立這些變化情況的記錄。以及,在初始化冗余控制器26時(shí),通過(guò)美國(guó)專(zhuān)利No. 6170044中公 開(kāi)的設(shè)備,將初級(jí)追蹤存儲(chǔ)器34的指定范圍內(nèi)的內(nèi)容拷貝下載到次級(jí)追 蹤存儲(chǔ)器44,其中上述美國(guó)專(zhuān)利的內(nèi)容在此被結(jié)合作為參考。
在初始化之后,初級(jí)追蹤控制器33利用所追蹤的數(shù)據(jù)變化情況更新 初級(jí)追蹤存儲(chǔ)器34。也就是,初級(jí)處理器31通過(guò)將所追蹤的數(shù)據(jù)(追蹤 數(shù)據(jù))放置到低速總線(xiàn)38上來(lái)執(zhí)行追蹤數(shù)據(jù)任務(wù)。初級(jí)追蹤器控制器33 捕獲該數(shù)據(jù)以存儲(chǔ)到初級(jí)追蹤存儲(chǔ)器34中。如果所捕獲的數(shù)據(jù)要求對(duì)當(dāng) 前存儲(chǔ)在過(guò)程數(shù)據(jù)庫(kù)80中的數(shù)據(jù)進(jìn)行變化,則該數(shù)據(jù)也存儲(chǔ)到追蹤器緩 沖器82中。當(dāng)在追蹤器緩沖器82中累積預(yù)定量的數(shù)據(jù)時(shí),初級(jí)追蹤器 控制器33會(huì)提供中斷。初級(jí)處理器31響應(yīng)于該中斷,然后將數(shù)據(jù)從追 蹤器緩沖器82經(jīng)以太網(wǎng)冗余專(zhuān)用鏈路36和鏈路28傳送到次級(jí)控制器 40。在初級(jí)控制器控制執(zhí)行的每次遞增結(jié)束時(shí),初級(jí)控制器采用太網(wǎng)冗 余專(zhuān)用鏈路36應(yīng)用到次級(jí)控制器40,從而同一組數(shù)據(jù)被發(fā)送。次級(jí)控制 器40驗(yàn)證所有數(shù)據(jù)都已經(jīng)被接收,然后采用所傳送的數(shù)據(jù)來(lái)更新次級(jí)追 蹤器存儲(chǔ)器44和次級(jí)存儲(chǔ)器42。初級(jí)控制器然后能夠執(zhí)行控制處理的下 一次遞增。初級(jí)處理器31還通過(guò)采用高速總線(xiàn)37結(jié)合初級(jí)存儲(chǔ)器32來(lái)執(zhí)行除 追蹤數(shù)據(jù)任務(wù)之外的其它任務(wù)。這些其它任務(wù)例如包括運(yùn)行系統(tǒng)、涉及 計(jì)算的一個(gè)或多個(gè)算法、通信應(yīng)用、輸入/輸出應(yīng)用、產(chǎn)生警報(bào)和事件、 診斷以及它們的任何組合。通過(guò)采用高速總線(xiàn)37而非現(xiàn)有技術(shù)過(guò)程控制 器中的低速總線(xiàn)38,能夠增強(qiáng)初級(jí)控制器30的性能。高速總線(xiàn)37的帶 寬不受追蹤數(shù)據(jù)任務(wù)的限制。初級(jí)和次級(jí)控制器30和40能夠經(jīng)三種媒介進(jìn)行相互通信,也就是 工廠控制網(wǎng)絡(luò)22、專(zhuān)用鏈路28和1/0鏈路(未示出)。該I/0鏈路是 初級(jí)處理器31和次級(jí)處理器41所連接到的路徑,從而可以與A/I, A/0, D/I和D/0輸入/輸出接口。經(jīng)這些通信路徑,初級(jí)控制器30能夠確保 次級(jí)控制器40存在以及處于運(yùn)行狀態(tài)。以及,經(jīng)這些路徑,次級(jí)控制器 40能夠測(cè)試出初級(jí)控制器30處于運(yùn)行狀態(tài),從而測(cè)定何時(shí)將采用該初級(jí) 狀態(tài)(或者模式)。初級(jí)處理器31管理模擬輸入和輸出A/I和A/0以及數(shù)字輸入和輸出 D/I和D/0,根據(jù)控制算法來(lái)處理這些輸入和輸出,然后基于這些活動(dòng)和 其它活動(dòng)根據(jù)需要來(lái)更新初級(jí)追蹤存儲(chǔ)器34。初級(jí)處理器31將所追蹤的 數(shù)據(jù)以初級(jí)追蹤存儲(chǔ)器32中的地址以及存儲(chǔ)到該地址中的數(shù)據(jù)的形式放 置到低速總線(xiàn)38上。參照?qǐng)D2,初級(jí)追蹤器控制器33包括同步動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器 總線(xiàn)控制器62、追蹤器邏輯64、追蹤器緩沖 器指針式寄存器66、追蹤器控制寄存器68、追蹤器起始范圍寄存器70 和追蹤器結(jié)束范圍寄存器72。初級(jí)追蹤存儲(chǔ)器34優(yōu)選為SDRAM,它包括存儲(chǔ)追蹤數(shù)據(jù)的過(guò)程數(shù)據(jù) 庫(kù)80以及存儲(chǔ)過(guò)程數(shù)據(jù)庫(kù)80的變化記錄的一個(gè)或多個(gè)追蹤器緩沖器 82。SDRAM控制器60控制讀寫(xiě)周期中對(duì)初級(jí)追蹤存儲(chǔ)器34的訪(fǎng)問(wèn)。SDRAM 控制器60優(yōu)選將每個(gè)寫(xiě)入周期作為讀取-修改-寫(xiě)入周期執(zhí)行。追蹤器起始范圍寄存器70和追蹤器結(jié)束范圍寄存器72用于限定初 級(jí)追蹤存儲(chǔ)器34的過(guò)程數(shù)據(jù)庫(kù)80中的(追蹤存儲(chǔ)器)的追蹤地址范圍。 通過(guò)寫(xiě)入到追蹤器起始范圍寄存器70來(lái)確定追蹤地址范圍的開(kāi)始。通過(guò) 寫(xiě)入到追蹤器結(jié)束范圍寄存器72來(lái)確定地址范圍的結(jié)束。追蹤器緩沖器 指針式寄存器66用于限定用于存儲(chǔ)追蹤信息的追蹤器緩沖器82(緩沖器 存儲(chǔ)器)中的地址。追蹤器控制寄存器68用于構(gòu)造和控制追蹤邏輯64 的運(yùn)行。追蹤器緩沖器82用于存儲(chǔ)在追蹤總線(xiàn)周期中捕獲的信息。初級(jí)追蹤器控制器33通過(guò)執(zhí)行由初級(jí)處理器31和以太網(wǎng)冗余專(zhuān)用 鏈路36在低速總線(xiàn)38上請(qǐng)求的讀取和寫(xiě)入來(lái)操作。由SDRAM控制器60 來(lái)控制對(duì)初級(jí)追蹤存儲(chǔ)器34中的任何地址進(jìn)行讀取和寫(xiě)入。初級(jí)追蹤器 控制器33還創(chuàng)建信息包以便寫(xiě)入到落入追蹤地址范圍內(nèi)的低速總線(xiàn)38 上。信息包包括地址和32比特位的數(shù)據(jù)。在SDRAM控制器60的控制下,捕獲的信息包被寫(xiě)入到追蹤器緩沖器 82。追蹤器緩沖器指針式寄存器66結(jié)合追蹤器邏輯64在存儲(chǔ)信息包到 追蹤器緩沖器82的周期期間用作為地址發(fā)生器。為了保存帶寬以及提高傳送更新數(shù)據(jù)到次級(jí)控制器40的速度,在追 蹤器緩沖器82中僅存儲(chǔ)包含過(guò)程數(shù)據(jù)庫(kù)80的變化情況的信息包。當(dāng)僅 僅一部分?jǐn)?shù)據(jù)結(jié)構(gòu)被修改或者通過(guò)控制算法重復(fù)存儲(chǔ)相同值時(shí),這可以 減少傳送到次級(jí)控制器40的數(shù)據(jù)量。在過(guò)程數(shù)據(jù)庫(kù)80的讀取-修改-寫(xiě) 入周期的讀取部分之后,利用寫(xiě)入數(shù)據(jù)的指定字節(jié)來(lái)替代讀取數(shù)據(jù)的一 個(gè)或多個(gè)字節(jié)。寫(xiě)入的該復(fù)合數(shù)據(jù)和數(shù)據(jù)讀取值進(jìn)行比較。如果復(fù)合寫(xiě) 入數(shù)據(jù)和讀取數(shù)據(jù)相同,則將所捕獲的數(shù)據(jù)寫(xiě)入到過(guò)程數(shù)據(jù)庫(kù)80,但是 不寫(xiě)入到追蹤器緩沖器82中。另一方面,如果該復(fù)合寫(xiě)入數(shù)據(jù)和讀取數(shù) 據(jù)不相同,則該復(fù)合寫(xiě)入數(shù)據(jù)寫(xiě)入到過(guò)程數(shù)據(jù)庫(kù)80和追蹤器緩沖器82 中。
由SDRAM控制器60使用追蹤器緩沖器指針式寄存器66作為地址寄 存器,用于將數(shù)據(jù)的變化寫(xiě)入到追蹤器緩沖器82。每當(dāng)緩沖器指針式寄 存器66翻轉(zhuǎn)一個(gè)緩沖器結(jié)束地址(例如,1496字節(jié),它表示32字節(jié)的 信息報(bào)頭和183字節(jié)的信息包)時(shí),追蹤器邏輯64產(chǎn)生一個(gè)追蹤器中斷 116。追蹤器中斷116使得初級(jí)處理器31啟動(dòng)將追蹤器緩沖器82的內(nèi)容 傳送到次級(jí)控制器40。然后追蹤器緩沖器指針式寄存器66增加32個(gè)字 節(jié),以便容納信息報(bào)頭。在這一點(diǎn)上,初級(jí)追蹤器控制器33準(zhǔn)備處理低 速總線(xiàn)38的其它操作。PCI總線(xiàn)控制器62包含邏輯,以便接口連接到低速總線(xiàn)38以及通 過(guò)初級(jí)處理器31響應(yīng)于放置在低速總線(xiàn)38上的數(shù)據(jù)和指令。在初始化 期間,初級(jí)處理器31放置初級(jí)存儲(chǔ)器32的指定范圍的內(nèi)容的拷貝以及 該范圍的起始和結(jié)束地址到低速總線(xiàn)38上。PCI總線(xiàn)控制器62通過(guò)解 碼低速總線(xiàn)38的指令來(lái)發(fā)生響應(yīng)。PCI總線(xiàn)控制器62結(jié)合追蹤器邏輯 64來(lái)檢查當(dāng)前低速總線(xiàn)周期是否是寫(xiě)入周期,以及它是否處于由追蹤器 起始范圍寄存器70和追蹤器結(jié)束范圍寄存器72的內(nèi)容所限定的地址范 圍內(nèi)。如果當(dāng)前低速總線(xiàn)周期被解碼為寫(xiě)入周期以及處于追蹤器地址范 圍內(nèi),則追蹤器邏輯64和SDRAM控制器60啟動(dòng)更新初級(jí)追蹤存儲(chǔ)器34 中的過(guò)程數(shù)據(jù)庫(kù)80和追蹤器緩沖器82的過(guò)程。追蹤器邏輯64和SDRAM 控制器60將低速總線(xiàn)38上的數(shù)據(jù)寫(xiě)入到過(guò)程數(shù)據(jù)庫(kù)80,以及將所追蹤 的數(shù)據(jù)寫(xiě)入到追蹤器緩沖器82。參照?qǐng)D3,所追蹤的數(shù)據(jù)以追蹤器緩沖器SDRAM格式51存儲(chǔ)到緩沖 器82中,該追蹤器緩沖器SDRAM格式51包括地址域52和數(shù)據(jù)域53, 它們均通過(guò)示例方式示出為具有四個(gè)字節(jié),每個(gè)字節(jié)具有八個(gè)比特。當(dāng) 在SDRAM讀取-修改-寫(xiě)入時(shí)序的寫(xiě)入部分期間發(fā)生部分寫(xiě)入字的數(shù)據(jù)捕 獲時(shí),無(wú)論初級(jí)處理器31實(shí)際寫(xiě)入了多少字節(jié),數(shù)據(jù)域53的所有四個(gè) 字節(jié)是有效的。參照?qǐng)D2、 4和5,追蹤器邏輯64包括地址比較器74、追蹤器截獲 器75、追蹤器數(shù)據(jù)比較器76、追蹤器SDRAM機(jī)構(gòu)77、追蹤器計(jì)數(shù)器增 量78、追蹤器標(biāo)記92、追蹤信息更新標(biāo)記98以及追蹤器中斷116。追 蹤器邏輯64還包括為方塊90、 94、 96、 100、 102和104的邏輯。參照?qǐng)D4和5,將說(shuō)明用于追蹤器運(yùn)行的初級(jí)追蹤器控制器33的運(yùn) 行。初級(jí)處理器31利用初級(jí)存儲(chǔ)器32和高速總線(xiàn)37運(yùn)行關(guān)于與工廠控
制網(wǎng)絡(luò)22通信的軟件應(yīng)用、數(shù)據(jù)收集、裝置控制及其處理結(jié)果。初級(jí)處 理器31時(shí)時(shí)地將信息包放置到低速總線(xiàn)38上,該信息包包括要寫(xiě)入的 數(shù)據(jù)和相關(guān)地址,以及表示該周期是讀取還是寫(xiě)入周期的指示。該數(shù)據(jù) 在低速總線(xiàn)38上呈現(xiàn)為一至四個(gè)字節(jié)的寫(xiě)入數(shù)據(jù)。在方塊90,低速總線(xiàn)38上的當(dāng)前信息寫(xiě)入包的地址在地址比較器 74中和追蹤器起始范圍寄存器70和追蹤器結(jié)束范圍寄存器72中的起始 和結(jié)束地址進(jìn)行比較,從而確定當(dāng)前地址是否落入指定范圍內(nèi)。如果讀 取數(shù)據(jù)而非寫(xiě)入數(shù)據(jù)落入指定范圍內(nèi),則繞過(guò)該追蹤邏輯,以及通過(guò) SDRAM控制器60執(zhí)行所請(qǐng)求的操作。追蹤器邏輯64忽略讀取周期以及在寫(xiě)入周期上啟動(dòng)地址比較。如果 當(dāng)前PCI總線(xiàn)周期是寫(xiě)入周期并且落入由追蹤器起始范圍寄存器70和追 蹤器結(jié)束范圍寄存器72指定的給定地址范圍內(nèi),則設(shè)置追蹤器標(biāo)記92, 以表示該周期應(yīng)當(dāng)啟動(dòng)追蹤過(guò)程。如果沒(méi)有設(shè)置追蹤器標(biāo)記92,則忽略 該地址和數(shù)據(jù)。如果是,則PCI總線(xiàn)控制器62以及追蹤器邏輯64在方 塊94捕獲當(dāng)前信息包。在方塊96,追蹤器數(shù)據(jù)比較器比較當(dāng)前信息包的新數(shù)據(jù)或者當(dāng)前數(shù) 據(jù)和來(lái)自過(guò)程數(shù)據(jù)庫(kù)80的讀取數(shù)據(jù)。追蹤邏輯64響應(yīng)于該比較結(jié)果, 從而控制追蹤信息更新標(biāo)記98的設(shè)置。如果當(dāng)前數(shù)據(jù)和讀取數(shù)據(jù)相同, 則追蹤信息更新標(biāo)記98設(shè)置為否。對(duì)于這種情況,當(dāng)前數(shù)據(jù)不寫(xiě)入到追 蹤器緩沖器82。如果當(dāng)前數(shù)據(jù)和讀取數(shù)據(jù)不相同,則追蹤信息更新標(biāo)記98設(shè)置為 是。對(duì)于這種情況,如方塊100所示,當(dāng)前信息包存儲(chǔ)到追蹤器緩沖器 82中由追蹤器緩沖器指針式寄存器66指定的地址。然后追蹤器邏輯64 更新(例如,遞增)追蹤器緩沖器指針式寄存器66,如方塊102所示。 以及,追蹤器邏輯64確定追蹤器緩沖器指針式寄存器66是否翻轉(zhuǎn)1496 字節(jié)地址邊界,如果是,則產(chǎn)生追蹤器中斷116,如方塊104所示。如 果沒(méi)有產(chǎn)生追蹤器中斷116,則完成當(dāng)前信息包的操作。如果產(chǎn)生追蹤器中斷116,則初級(jí)處理器31設(shè)立經(jīng)通信總線(xiàn)39傳 送追蹤器緩沖器82中的追蹤數(shù)據(jù)至以太網(wǎng)冗余鏈路36的以太網(wǎng)傳送路 徑,如方塊106所示。初級(jí)處理器31然后發(fā)出指令,指示經(jīng)專(zhuān)用冗余路 徑28將追蹤數(shù)據(jù)傳送到次級(jí)控制器40,如方塊108所示。初級(jí)處理器 31然后指令次級(jí)控制器40將所傳送的追蹤器數(shù)據(jù)存儲(chǔ)到次級(jí)追蹤存儲(chǔ)器44的臨時(shí)緩沖器(未示出)中,如方塊110所示。隨后,初級(jí)處理器 31指令次級(jí)控制器40處理所存儲(chǔ)的追蹤器數(shù)據(jù),如方塊112所示。當(dāng) 次級(jí)控制器已經(jīng)處理所傳送的追蹤器數(shù)據(jù)時(shí),初級(jí)和次級(jí)控制器30和40 使數(shù)據(jù)同步。過(guò)程控制器冗余不依賴(lài)于專(zhuān)用鏈路28而保持運(yùn)行狀態(tài)。如果專(zhuān)用鏈 路28變成失效鏈路,則被格式化以用作為以太網(wǎng)信息包的追蹤緩沖器80 中的追蹤信息能夠由初級(jí)控制器30經(jīng)工廠控制網(wǎng)絡(luò)22發(fā)送到次級(jí)控制 器40。因?yàn)楣S控制網(wǎng)絡(luò)22的可用帶寬小于冗余專(zhuān)用鏈路28的帶寬, 所以該應(yīng)用被限制到初級(jí)冗余專(zhuān)用鏈落接口 36變成失效的情況??梢灾?令一次同步,接著進(jìn)行轉(zhuǎn)換。然后次級(jí)控制器40的作用從次級(jí)變換成初 級(jí)。然后老的初級(jí)控制器30被功能單元替代。本發(fā)明已經(jīng)利用優(yōu)選形式的具體參照來(lái)進(jìn)行說(shuō)明,在不脫離由權(quán)利 要求限定的本發(fā)明的精神和范圍的情況下,可以作出多種變化和變型, 這是顯而易見(jiàn)的。
權(quán)利要求
1.一種用于控制或者監(jiān)測(cè)過(guò)程的系統(tǒng)(20),包括初級(jí)控制器(30)和冗余控制器(40);所述初級(jí)控制器(30)包括初級(jí)處理器、初級(jí)存儲(chǔ)器(32)、追蹤器控制器(32)和追蹤存儲(chǔ)器(34);第一總線(xiàn)(38)和第二總線(xiàn)(37),該第一總線(xiàn)使所述初級(jí)處理器和所述追蹤器控制器(32)互連,其中所述初級(jí)處理器執(zhí)行追蹤數(shù)據(jù)的任務(wù),以及利用所述第一總線(xiàn)(38)來(lái)協(xié)同所述追蹤器控制器(32)將所述追蹤數(shù)據(jù)存儲(chǔ)到所述追蹤存儲(chǔ)器(34)中以及將所述追蹤數(shù)據(jù)傳送到所述冗余控制器(40),以及所述第二總線(xiàn)(37)使所述初級(jí)處理器和所述初級(jí)存儲(chǔ)器(32)互連,其中所述初級(jí)處理器還利用所述第二總線(xiàn)(37)和所述初級(jí)存儲(chǔ)器(32)來(lái)執(zhí)行除了所述追蹤數(shù)據(jù)任務(wù)之外的其它任務(wù)。
2. 根據(jù)權(quán)利要求l所述的系統(tǒng)(20),其中所述初級(jí)處理器、所述 第二總線(xiàn)(37)和所述初級(jí)存儲(chǔ)器(32)設(shè)置在笫一印刷布線(xiàn)板上,其 中所述追蹤器控制器(32)和所述追蹤存儲(chǔ)器(34)設(shè)置在第二印刷布 線(xiàn)板上,其中所述第一總線(xiàn)(38)具有分別設(shè)置在所述第一和第二印刷 布線(xiàn)板上的笫一部分和笫二部分,以及其中低成本低引腳數(shù)連接器連接 所述第一和第二部分。
3. —種用于運(yùn)行初級(jí)控制器(30)的方法,其中該初級(jí)控制器由冗 余控制器(40)支持,所述方法包括利用初級(jí)處理器執(zhí)行追蹤數(shù)據(jù)任務(wù),該初級(jí)處理器經(jīng)第一總線(xiàn)(38 ) 協(xié)同追蹤控制器(32)將追蹤數(shù)據(jù)存儲(chǔ)到追蹤存儲(chǔ)器(34)中以及將所 述追蹤數(shù)據(jù)傳送到所述冗余控制器(40);以及利用經(jīng)第二總線(xiàn)(37)與初級(jí)存儲(chǔ)器(32)協(xié)作的所述初級(jí)處理器 來(lái)執(zhí)行其它任務(wù)。
4. 根據(jù)權(quán)利要求3所述的方法,其中利用信息報(bào)頭來(lái)格式化所述追 蹤數(shù)據(jù),以及在將該追蹤數(shù)據(jù)傳送到所述冗余控制器(40)之前改變?cè)?追蹤數(shù)據(jù)的大小以用作為以太網(wǎng)冗余專(zhuān)用鏈路幀。
全文摘要
一種系統(tǒng)(20),利用初級(jí)控制器(30)和冗余控制器(40)來(lái)處理過(guò)程數(shù)據(jù)。初級(jí)控制器(30)包括初級(jí)處理器,該初級(jí)處理器通過(guò)利用低速總線(xiàn)協(xié)同追蹤器控制器(32)執(zhí)行追蹤數(shù)據(jù)任務(wù),以便將追蹤數(shù)據(jù)存儲(chǔ)到追蹤器存儲(chǔ)器中。該初級(jí)處理器還通過(guò)利用高速總線(xiàn)協(xié)同初級(jí)存儲(chǔ)器(32)來(lái)執(zhí)行其它任務(wù)。第二總線(xiàn)(37)的運(yùn)行速率遠(yuǎn)遠(yuǎn)大于第一總線(xiàn)(38)的運(yùn)行速率(例如,2倍或更大)。
文檔編號(hào)G05B19/042GK101156116SQ200680011164
公開(kāi)日2008年4月2日 申請(qǐng)日期2006年1月31日 優(yōu)先權(quán)日2005年2月2日
發(fā)明者A·L·羅爾迪, J·W·格斯廷, M·W·拉塞爾, P·格哈特 申請(qǐng)人:霍尼韋爾國(guó)際公司