電轉(zhuǎn)換器的多核實(shí)現(xiàn)的基于權(quán)函數(shù)的預(yù)測(cè)控制的制作方法
【專利摘要】一種用于控制電氣轉(zhuǎn)換器12的方法包括下列步驟:接收電氣轉(zhuǎn)換器12的實(shí)際切換狀態(tài)uk-1;基于實(shí)際切換狀態(tài)uk-1來確定電氣轉(zhuǎn)換器12可能的將來切換狀態(tài)的方案樹50,方案樹50定義多個(gè)可能的將來切換序列,切換序列U通過從方案樹50的根節(jié)點(diǎn)52到方案樹50的葉節(jié)點(diǎn)58的路徑來定義;通過評(píng)估方案樹50的節(jié)點(diǎn)60來計(jì)算切換序列的權(quán)重w;以及從具有最佳權(quán)重的開關(guān)序列來確定要應(yīng)用于電氣轉(zhuǎn)換器12的下一個(gè)切換狀態(tài)uk。節(jié)點(diǎn)(60)的評(píng)估由至少兩個(gè)處理器核30a、30b、30c、30d來執(zhí)行。
【專利說明】電轉(zhuǎn)換器的多核實(shí)現(xiàn)的基于權(quán)函數(shù)的預(yù)測(cè)控制
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及電氣轉(zhuǎn)換器的控制領(lǐng)域。具體來說,本發(fā)明涉及用于控制電氣轉(zhuǎn)換器 的方法、計(jì)算機(jī)程序和計(jì)算機(jī)可讀介質(zhì)以及涉及電氣轉(zhuǎn)換器的控制器和轉(zhuǎn)換器系統(tǒng)。
【背景技術(shù)】
[0002] 直接轉(zhuǎn)矩控制(DTC)是一種用于控制中壓驅(qū)動(dòng)應(yīng)用中的電動(dòng)機(jī)的轉(zhuǎn)矩和通量的 方法。但是,DTC的缺陷之一可能是如下事實(shí):轉(zhuǎn)換器的平均切換頻率無法直接控制。由 于切換頻率通常成比例地與作為驅(qū)動(dòng)的總損耗的主要部分的轉(zhuǎn)換器的切換損耗相關(guān),所以 切換頻率的任何降低可對(duì)驅(qū)動(dòng)的操作成本具有顯著影響,并且增加總體系統(tǒng)健壯性和可靠 性。
[0003] 這種降低已經(jīng)表明經(jīng)過模型預(yù)測(cè)直接轉(zhuǎn)矩控制(MPDTC)方法是可能的,MPDTC方 法包括兩種基于模型的最佳控制算法。MPDTC的計(jì)算復(fù)雜度要求基于FPGA的實(shí)現(xiàn)和大量工 程工作以滿足所需取樣時(shí)間。
[0004] MPDTC算法已經(jīng)擴(kuò)展到"廣義模型預(yù)測(cè)直接轉(zhuǎn)矩控制"(GMPDTC)(參見例如EP 2348631 A1))。如同MPDTC -樣,GMPDTC的計(jì)算復(fù)雜度隨控制時(shí)域(control horizon)的 長(zhǎng)度而以指數(shù)增加,從而僅使短時(shí)域是易處理的。
[0005] GMPDTC可被看作是用于感應(yīng)機(jī)器的轉(zhuǎn)矩控制的專門模型預(yù)測(cè)控制(MPC)算法。控 制目標(biāo)可以是將機(jī)器轉(zhuǎn)矩、通量和轉(zhuǎn)換器的中性點(diǎn)電位保持在所指定范圍之內(nèi),同時(shí)使轉(zhuǎn) 換器切換頻率和功率損耗為最小。不是使用基于調(diào)制的技術(shù)、例如PWM,該方法直接操縱轉(zhuǎn) 換器的切換過渡(switching transition)。
【發(fā)明內(nèi)容】
[0006] 本發(fā)明的目的是加速GMPDTC算法的執(zhí)行。
[0007] 這個(gè)目的通過獨(dú)立權(quán)利要求的主題來實(shí)現(xiàn)。通過從屬權(quán)利要求和以下描述,其它 示范實(shí)施例是顯而易見的。
[0008] 本發(fā)明的第一方面涉及一種用于控制電氣轉(zhuǎn)換器的方法。
[0009] 按照本發(fā)明的一個(gè)實(shí)施例,該方法包括下列步驟:接收電氣轉(zhuǎn)換器的實(shí)際切換狀 態(tài);基于實(shí)際切換狀態(tài)來確定電氣轉(zhuǎn)換器可能的將來切換狀態(tài)的方案樹,方案樹定義多個(gè) 可能的將來切換序列,切換序列通過從方案樹的根節(jié)點(diǎn)到方案樹的葉節(jié)點(diǎn)的路徑來定義; 通過評(píng)估方案樹的節(jié)點(diǎn)來計(jì)算切換序列的權(quán)重和/或成本;以及從具有最佳權(quán)重和/或最 佳成本的切換序列來確定要應(yīng)用于電氣轉(zhuǎn)換器的下一個(gè)切換狀態(tài)。
[0010] 換言之,該方法可以是GMPDTC方法。
[0011] 權(quán)重和/或成本可相對(duì)電氣轉(zhuǎn)換器的控制目標(biāo)來計(jì)算。例如,權(quán)重和/或成本可 相對(duì)切換序列的預(yù)計(jì)切換損耗來計(jì)算。
[0012] 按照本發(fā)明的一實(shí)施例,節(jié)點(diǎn)的評(píng)估由至少兩個(gè)處理器核來執(zhí)行。
[0013] 通過將方案樹的節(jié)點(diǎn)的評(píng)估分配給至少兩個(gè)不同的處理器核,GMPDTC可并行化, 并且因而可適合多核處理器平臺(tái)。使用由這些平臺(tái)所提供的附加計(jì)算能力可允許解決較大 控制時(shí)域的問題,并且因此可產(chǎn)生改進(jìn)應(yīng)用性能、例如具有進(jìn)一步降低的切換損耗。
[0014] 此外,要由多核處理器所運(yùn)行的GMPDTC可避免定制硬件實(shí)現(xiàn)(例如基于FPGA的 解決方案)的需要,并且因此可降低開發(fā)時(shí)間和成本。
[0015] 本發(fā)明的其它方面涉及:一種用于控制轉(zhuǎn)換器的計(jì)算機(jī)程序,其在由至少兩個(gè)處 理器核所運(yùn)行時(shí)適合執(zhí)行如以上和以下所述的方法的步驟;以及計(jì)算機(jī)可讀介質(zhì),其中存 儲(chǔ)這種計(jì)算機(jī)程序。計(jì)算機(jī)可讀介質(zhì)可以是軟盤、硬盤、USB(通用串行總線)存儲(chǔ)裝置、 RAM (隨機(jī)存取存儲(chǔ)器)、ROM (只讀存儲(chǔ)器)和EPROM (電可擦可編程只讀存儲(chǔ)器)。
[0016] 本發(fā)明的一個(gè)方面涉及一種用于電氣轉(zhuǎn)換器的控制器。
[0017] 按照本發(fā)明的一實(shí)施例,控制器包括多核處理器,其中包括至少兩個(gè)處理器核。多 核處理器適合于運(yùn)行如以上和以下所述的方法。例如,控制器還包括存儲(chǔ)器,其中存儲(chǔ)上述 計(jì)算機(jī)程序。
[0018] 本發(fā)明的一個(gè)方面涉及一種轉(zhuǎn)換器系統(tǒng)、例如中壓驅(qū)動(dòng)系統(tǒng)。
[0019] 按照本發(fā)明的一實(shí)施例,轉(zhuǎn)換器系統(tǒng)包括用于生成可變AC輸出電流的轉(zhuǎn)換器以 及如以上和以下所述的用于切換轉(zhuǎn)換器的半導(dǎo)體開關(guān)的控制器。
[0020] 通過參照以下所述實(shí)施例進(jìn)行的說明,本發(fā)明的這些方面及其它方面將會(huì)顯而易 見。
【專利附圖】
【附圖說明】
[0021] 下文中參照附圖示出的示范實(shí)施例更詳細(xì)地說明本發(fā)明的主題。
[0022] 圖1示意示出按照本發(fā)明的一實(shí)施例的轉(zhuǎn)換器系統(tǒng)。
[0023] 圖2示出按照本發(fā)明的一實(shí)施例、用于控制轉(zhuǎn)換器的方法的流程圖。
[0024] 圖3示出按照本發(fā)明的一實(shí)施例的方案樹。
[0025] 大體上,附圖中,相同部件提供有相同參考標(biāo)號(hào)。
【具體實(shí)施方式】
[0026] 圖1不出轉(zhuǎn)換器系統(tǒng)10,其中包括轉(zhuǎn)換器12、電氣負(fù)載14和控制器16。
[0027] 轉(zhuǎn)換器12包括三個(gè)半橋18&、1813、18(3,其適合于通過將相應(yīng)相20 &、2013、20(3連接 至|J電位+V、負(fù)電位-V或中性點(diǎn)電位NP (其例如可由DC環(huán)節(jié)來提供),在負(fù)載14的相應(yīng)相 20a、20b、20c生成三級(jí)輸出電壓。為了將相應(yīng)相20a、20b、20c連接到電位+V、-V或NP,各 半橋包括可控半導(dǎo)體開關(guān)22 &、2213、22(:。功率半導(dǎo)體開關(guān)22&、2213、22(3可包括晶閘管、16(^ 和/或IGBT。
[0028] 按照本發(fā)明的一實(shí)施例,轉(zhuǎn)換器12可包括用于將DC輸入電壓切換到AC輸出電壓 中的至少一個(gè)半橋18a、18b、18c。
[0029] 按照本發(fā)明的一實(shí)施例,轉(zhuǎn)換器系統(tǒng)12可包括至少一相,例如三相20a、20b、20c。
[0030] 電氣負(fù)載14可包括電動(dòng)機(jī)14、例如中壓驅(qū)動(dòng)器14或者電力網(wǎng)14,其可由轉(zhuǎn)換器 12來供電。
[0031] 適合于確定轉(zhuǎn)換器系統(tǒng)10的測(cè)量值并且用于起動(dòng)開關(guān)22a、22b、22c的轉(zhuǎn)換器12 的控制器16可包括通信(和/或測(cè)量)單元24、多核處理器26和共同共享主存儲(chǔ)器28。 通信單元24和多核處理器26可對(duì)主存儲(chǔ)器28讀取和寫入數(shù)據(jù)。
[0032] 通信單元24可從轉(zhuǎn)換器12和/或負(fù)載14接收測(cè)量值,并且可將這些值寫入主存 儲(chǔ)器28中。此外,通信單元24可從主存儲(chǔ)器28讀取下一個(gè)切換狀態(tài),并且可起動(dòng)(即,控 制)開關(guān)22a、22b、22c,使得它們切換到這種切換狀態(tài)。
[0033] 多核處理器26可從主存儲(chǔ)器28來讀取測(cè)量值和實(shí)際切換狀態(tài),并且可從這些數(shù) 據(jù)來確定下一個(gè)切換狀態(tài),如下面將詳細(xì)說明。
[0034] 多核處理器26具有至少兩個(gè)處理器核30a、30b、30c、30d,例如4、8或16個(gè)處理器 核。可同樣地設(shè)計(jì)處理器核30a、30b、30c、30d。處理器核30a、30b、30c、30d的每個(gè)可適合 對(duì)主存儲(chǔ)器28讀取和寫入數(shù)據(jù)。例如,核之間的通信可經(jīng)由主存儲(chǔ)器28來執(zhí)行。
[0035] 各處理器核30a、30b、30c、30d可包括高速緩沖存儲(chǔ)器32a、32b、32c、32d,其可比 主存儲(chǔ)器28要小許多、例如64 kB。
[0036] 處理器核30a、30b、30c、30d和/或其相應(yīng)高速緩存32a、32b、32c、32d可位于一個(gè) 芯片上。但是,其它配置也是可能的,例如一個(gè)主板上各具有一個(gè)核的4個(gè)單獨(dú)處理器。
[0037] GMPDTC 方法 圖2示出GMPDTC方法的流程圖。
[0038] GMPDTC利用:電氣狀態(tài)(例如轉(zhuǎn)矩、通量和/或中性點(diǎn)電位)的輸出值無需盡可 能保持為接近其參考,而是只是保持在可通過特定界限來限制的特定范圍之內(nèi)。在每一個(gè) 取樣時(shí)刻,控制算法通過數(shù)學(xué)預(yù)測(cè)模型來檢查前一計(jì)算電氣狀態(tài)是否能夠再次應(yīng)用而無需 驅(qū)動(dòng)其范圍外部的輸出值中的一個(gè)(或多個(gè))。如果情況不是這樣,則該算法通過解決MPC 問題(其使用負(fù)載14的離散時(shí)間模型、根據(jù)轉(zhuǎn)換器開關(guān)22a、22b、22c來預(yù)測(cè)電氣狀態(tài)的演 進(jìn)),來確定下一個(gè)控制移動(dòng)。
[0039] 要取得長(zhǎng)預(yù)測(cè)時(shí)域(與切換時(shí)域加以區(qū)分),引入控制策略,其將預(yù)測(cè)時(shí)域劃分為 其中允許切換的期間以及其中將開關(guān)凍結(jié)到預(yù)測(cè)輸出之一將違反其范圍的期間。切換步驟 S和移動(dòng)阻塞步驟(又稱作擴(kuò)展步驟)E的切換序列(其將針對(duì)圖3來更詳細(xì)地說明)可以 是算法的參數(shù),并且可用來代替固定預(yù)測(cè)時(shí)域,即,預(yù)測(cè)時(shí)域的長(zhǎng)度因擴(kuò)展步驟的可變長(zhǎng)度 而改變。
[0040] 針對(duì)圖2,在步驟100,通信單元24確定轉(zhuǎn)換器系統(tǒng)10的實(shí)際電狀態(tài)xk。
[0041] 實(shí)際電狀態(tài)xk可包括電氣負(fù)載14中和/或轉(zhuǎn)換器12與其連接的DC環(huán)節(jié)中的測(cè) 量電流和/或電壓。實(shí)際電狀態(tài)Xk還可包括輸出值,例如負(fù)載14的轉(zhuǎn)矩和/或通量和/或 轉(zhuǎn)換器10的中性點(diǎn)電位。
[0042] 實(shí)際電狀態(tài)xk可寫到主存儲(chǔ)器28。
[0043] 此外,可確定轉(zhuǎn)換器12的實(shí)際切換狀態(tài)&_7。通常,轉(zhuǎn)換器12的實(shí)際切換狀態(tài)可 包括開關(guān)22a、22b、22c的實(shí)際切換狀態(tài)。實(shí)際切換狀態(tài)七_(dá)7可以是由通信單元24應(yīng)用于 轉(zhuǎn)換器12的最后一個(gè)切換狀態(tài)。
[0044] -般來說,轉(zhuǎn)換器12的切換狀態(tài)?可包括轉(zhuǎn)換器12的開關(guān)22a、22b、22c的切換 狀態(tài)(例如開關(guān)是接通還是斷開),或者更一般地包括半橋18a、18b、18c的狀態(tài)(例如,半 橋是將相連接到可表不為+1、0、-1的+V、NP還是-V)。
[0045] 按照本發(fā)明的一實(shí)施例,在處理器16中接收電氣轉(zhuǎn)換器12的實(shí)際切換狀態(tài)七_(dá)7。
[0046] 在步驟102,生成方案樹50 (參見圖3)。
[0047] 根節(jié)點(diǎn)52可包括轉(zhuǎn)換器12的實(shí)際電狀態(tài)xk和/或?qū)嶋H切換狀態(tài)&_ 7。
[0048] 方案樹50的其它節(jié)點(diǎn)可通過將控制策略應(yīng)用于根節(jié)點(diǎn)52來生成??刂撇呗钥赏?過與切換和擴(kuò)展動(dòng)作對(duì)應(yīng)的符號(hào)S和E的序列來表示。圖3示范地示出控制策略SSESE的 切換方案樹50。通過迭代地將節(jié)點(diǎn)附連到已經(jīng)通過控制策略的符號(hào)所生成的所有中間葉節(jié) 點(diǎn),來生成方案樹50。
[0049] 對(duì)于切換動(dòng)作S,可跟隨父節(jié)點(diǎn)(例如52)的切換狀態(tài)的每種可能切換狀態(tài)的切換 節(jié)點(diǎn)(例如54)附連到每一個(gè)中間葉節(jié)點(diǎn)??赡芮袚Q狀態(tài)可以是全部不同的切換狀態(tài),例 如三相三級(jí)逆變器的9種不同切換狀態(tài)。一般來說,3級(jí)3相逆變器具有27個(gè)不同開關(guān)配 置。取決于前一切換狀態(tài),可行新開關(guān)配置的數(shù)量可以較低,例如8或12。
[0050] 對(duì)于擴(kuò)展動(dòng)作E,擴(kuò)展節(jié)點(diǎn)(例如56)附連到每一個(gè)中間葉節(jié)點(diǎn)。
[0051] 這樣,生成切換序列V的方案樹50。各切換序列經(jīng)由從根節(jié)點(diǎn)52到葉節(jié)點(diǎn)58的 路徑的節(jié)點(diǎn)來定義。切換序列可通過向量"=[&+ %,...,(其中#是切換序列" 的切換時(shí)域)并且通過特定切換狀態(tài)之間所定義的擴(kuò)展時(shí)間來定義。
[0052] 因此,采用三相三級(jí)轉(zhuǎn)換器12的控制策略SSESE所生成的方案樹50可定義至少 27個(gè)不同切換序列仏不同切換序列的數(shù)量可等于葉節(jié)點(diǎn)的數(shù)量,并且通常可比27要高許 多。如果僅考慮這些序列的第一元素,則對(duì)3級(jí)3相轉(zhuǎn)換器存在27種可能性。
[0053] 按照本發(fā)明的一實(shí)施例,電氣轉(zhuǎn)換器12的可能將來切換狀態(tài)的方案樹50可基于 實(shí)際切換狀態(tài)《η來確定。
[0054] 按照本發(fā)明的一實(shí)施例,方案樹50可定義多個(gè)可能將來切換序列。
[0055] 按照本發(fā)明的一實(shí)施例,切換序列V可通過從方案樹50的根節(jié)點(diǎn)52到方案樹50 的葉節(jié)點(diǎn)58的路徑來定義。
[0056] 在步驟104,切換序列V采用成本或權(quán)重#來加權(quán)。在這個(gè)步驟期間,控制算法遍 歷方案樹50,并且計(jì)算樹50的各節(jié)點(diǎn)的權(quán)重r。切換序列V的權(quán)重#可以是其關(guān)聯(lián)葉節(jié)點(diǎn) 58的權(quán)重。
[0057] 節(jié)點(diǎn)的權(quán)重#可基于可在從父節(jié)點(diǎn)的切換狀態(tài)到節(jié)點(diǎn)的下一個(gè)切換狀態(tài)進(jìn)行切 換時(shí)對(duì)各切換過渡來計(jì)算的切換成本。對(duì)于切換成本的計(jì)算,可使用系統(tǒng)10的數(shù)學(xué)模型。
[0058] 按照本發(fā)明的一實(shí)施例,可通過評(píng)估方案樹50的節(jié)點(diǎn)60,針對(duì)控制目標(biāo)、對(duì)切換 序列計(jì)算權(quán)重I例如以便使切換損耗為最小。不同權(quán)重和/或成本可對(duì)不同控制目標(biāo)進(jìn)行 編碼。雖然切換損耗的降低可以是GMPDTC中的主要優(yōu)化目標(biāo),但是不同轉(zhuǎn)換器應(yīng)用可具有 不同控制目標(biāo),例如將電氣狀態(tài)保持為盡可能接近預(yù)期參考值(例如,跟蹤參考轉(zhuǎn)矩)。 [0059] 按照本發(fā)明的一實(shí)施例,可通過計(jì)算與節(jié)點(diǎn)60關(guān)聯(lián)的切換過渡的切換損耗、即當(dāng) 從父節(jié)點(diǎn)的切換狀態(tài)到節(jié)點(diǎn)本身的切換狀態(tài)進(jìn)行切換時(shí)發(fā)生的切換過渡,來確定節(jié)點(diǎn)60 的權(quán)重I權(quán)重w還可基于系統(tǒng)的狀態(tài)xk、例如電壓或電流來計(jì)算。
[0060] 按照本發(fā)明的一實(shí)施例,切換序列"的權(quán)重可基于節(jié)點(diǎn)60的權(quán)重和節(jié)點(diǎn)的父節(jié)點(diǎn) 54的權(quán)重來計(jì)算。
[0061] 此外,在步驟104期間,對(duì)于各切換序列A系統(tǒng)10的電氣狀態(tài)xk在將來外推。在 遍歷方案樹40時(shí),控制算法可從其父節(jié)點(diǎn)的電氣狀態(tài)來計(jì)算節(jié)點(diǎn)的電氣狀態(tài)。
[0062] 對(duì)于S節(jié)點(diǎn),計(jì)算切換成本,并且電氣狀態(tài)在將來外推一個(gè)取樣實(shí)例。
[0063] 對(duì)于E節(jié)點(diǎn),電氣狀態(tài)在將來外推,直到違反對(duì)外推狀態(tài)的界限。
[0064] 按照本發(fā)明的一實(shí)施例,方案樹50包括切換節(jié)點(diǎn)S和/或擴(kuò)展節(jié)點(diǎn)E。
[0065] 按照本發(fā)明的一實(shí)施例,評(píng)估切換節(jié)點(diǎn)S包括基于切換節(jié)點(diǎn)所定義的切換過渡的 切換損耗來計(jì)算切換節(jié)點(diǎn)的權(quán)重。
[0066] 按照本發(fā)明的一實(shí)施例,評(píng)估擴(kuò)展節(jié)點(diǎn)E包括通過外推轉(zhuǎn)換器12的電氣狀態(tài),直 到電氣狀態(tài)留下預(yù)定義間隔,來計(jì)算擴(kuò)展節(jié)點(diǎn)的擴(kuò)展時(shí)間。
[0067] 切換序列V連同其外推電氣狀態(tài)xk -起可被看作是轉(zhuǎn)換器系統(tǒng)10的將來方案。 這樣,每一個(gè)葉節(jié)點(diǎn)58與方案關(guān)聯(lián)。各方案具有權(quán)重#,從而在執(zhí)行方案時(shí)進(jìn)行與轉(zhuǎn)換器 12的損耗有關(guān)的預(yù)測(cè)。
[0068] 最后,樹50的第一個(gè)葉節(jié)點(diǎn)58可根據(jù)切換序列V期間發(fā)生的切換過渡和范圍違 反的數(shù)量來與特定權(quán)重以或成本)關(guān)聯(lián)。
[0069] 在步驟106,從具有最低(或最佳)權(quán)重r的切換序列A跟隨根節(jié)點(diǎn)的切換狀態(tài) "η的切換狀態(tài)uk選擇為轉(zhuǎn)換器12的下一個(gè)切換狀態(tài)&,并且寫入存儲(chǔ)器28中。該算法 可選擇與具有最小成本的葉節(jié)點(diǎn)58關(guān)聯(lián)的控制律,并且按照移動(dòng)時(shí)域策略、僅將第一控制 移動(dòng)%應(yīng)用到逆變器。
[0070] 按照本發(fā)明的一實(shí)施例,要應(yīng)用于電氣轉(zhuǎn)換器12的下一個(gè)切換狀態(tài)4可從具有 最佳權(quán)重的切換序列來確定。
[0071] 在步驟108,通信單元24從存儲(chǔ)器28來讀取下一個(gè)切換狀態(tài)4,并且控制轉(zhuǎn)換器 12的開關(guān)22a、22b、22c,使得轉(zhuǎn)換器12切換到這種切換狀態(tài)。
[0072] 步驟100至108可在轉(zhuǎn)換器12的各切換循環(huán)中執(zhí)行。
[0073] 必須注意,GMPDTC可按照不同方式執(zhí)行。例如,步驟104和106可以是步驟102的 一部分。
[0074] -般來說,GMPDTC應(yīng)用特殊移動(dòng)阻塞策略,以便以較低數(shù)量的切換方案來取得長(zhǎng) 預(yù)測(cè)時(shí)域。對(duì)于計(jì)算時(shí)間極受限制的應(yīng)用(例如在DTC中),這是有利的,因?yàn)樵跇?biāo)準(zhǔn)MPC 問題公式化中,要考慮的切換序列V的數(shù)量隨預(yù)測(cè)時(shí)域而指數(shù)地增長(zhǎng),并且因此將該方法 限制到極短時(shí)域。
[0075] 下面給出可如何在多個(gè)處理器核30a、30b、30c、30d上運(yùn)行GMPDTC算法的實(shí)施例。
[0076] 按照本發(fā)明的一實(shí)施例,節(jié)點(diǎn)60的評(píng)估由至少兩個(gè)處理器核30&、3015、30(3、30(1來 執(zhí)行。
[0077] GMPDTC可被看作是樹遍歷問題,其中方案樹50的各節(jié)點(diǎn)60 (注意,參考標(biāo)號(hào)60用 于一般樹節(jié)點(diǎn))必須正好訪問一次。依次實(shí)現(xiàn)可已經(jīng)具有與數(shù)據(jù)布局和代碼組織極大相關(guān) 的執(zhí)行時(shí)間。對(duì)于并行實(shí)現(xiàn),這些效果可預(yù)計(jì)得到擴(kuò)大。例如,訪問節(jié)點(diǎn)的順序(例如深度 優(yōu)先或?qū)挾葍?yōu)先)可直到重要作用。有效并行化策略可極大地取決于計(jì)算單個(gè)節(jié)點(diǎn)60所 需的時(shí)間、用于在處理器核30a、30b、30c、30d之間傳遞相干節(jié)點(diǎn)數(shù)據(jù)所花費(fèi)的時(shí)間和/或 處理器核30a、30b、30c、30d的數(shù)量。GMPDTC的有效并行化可必須不僅考慮對(duì)節(jié)點(diǎn)評(píng)估和核 間通信所花費(fèi)的時(shí)間,而且還可必須采用有效數(shù)據(jù)結(jié)構(gòu),并且考慮架構(gòu)相關(guān)特性、例如存儲(chǔ) 器高速緩存大小32a、32b、32c、32d。
[0078] 例如,如果通信與評(píng)估節(jié)點(diǎn)60相比是高費(fèi)用的,則解決方案可以是將樹50分為若 干子樹62,其然后在不同處理器核30a、30b、30c、30d上并行地計(jì)算。
[0079] 在方案樹50的全面分析中,GMPDTC可削減與會(huì)引起具有增加范圍違反的輸出的 切換序列V對(duì)應(yīng)的樹分支。在削減之后沒有留下可行切換方案的情況下,該算法可將不可 行退出(infeasible-exit)策略用于選擇下一個(gè)切換命令,以保證故障安全操作。
[0080] 集中節(jié)點(diǎn)池管理 并行執(zhí)行的第一示例可以是步驟102至106期間的集中節(jié)點(diǎn)池管理。
[0081] 如果核30a、30b、30c、30d之間的核間通信與計(jì)算節(jié)點(diǎn)60所需的時(shí)間相比是較低 費(fèi)用的,則可使用待決樹節(jié)點(diǎn)60的集中池,其然后由主過程分配給各種核。
[0082] 具體來說,在步驟102,例如由處理器核30a來運(yùn)行的主過程生成樹50、具體來說 是樹50的樹節(jié)點(diǎn)60。樹節(jié)點(diǎn)60可存儲(chǔ)在主存儲(chǔ)器28的集中節(jié)點(diǎn)池中。
[0083] 按照本發(fā)明的一實(shí)施例,必須評(píng)估的方案樹50的節(jié)點(diǎn)60的中央節(jié)點(diǎn)池 (central node pool)可例如在主存儲(chǔ)器中生成。
[0084] 在步驟104,主過程將待決樹節(jié)點(diǎn)600分配給從過程,其例如可在其它處理器核 30b、30c、30d 中運(yùn)行。
[0085] 按照本發(fā)明的一實(shí)施例,將中央節(jié)點(diǎn)池的節(jié)點(diǎn)60分配給處理器核30a、30b、30c、 30d。
[0086] 從過程然后對(duì)所接收的待決樹節(jié)點(diǎn)60執(zhí)行必要操作,并且將結(jié)果返回到主過程, 其可保持全局知識(shí)。
[0087] 按照本發(fā)明的一實(shí)施例,分配給處理器核的節(jié)點(diǎn)60在處理器核來評(píng)估。
[0088] 可使用用于從池中選擇下一個(gè)待決節(jié)點(diǎn)的寬度優(yōu)先方式。這會(huì)是有利的,因?yàn)樗?快速產(chǎn)生大量節(jié)點(diǎn),從而防止對(duì)處理器核的供應(yīng)不足。但是,集中節(jié)點(diǎn)池所需的存儲(chǔ)可比深 度優(yōu)先策略明顯要高。
[0089] 在步驟106,主過程選擇具有最低權(quán)重的切換序列。
[0090] 分布節(jié)點(diǎn)池管理 并行執(zhí)行的第二示例可以是步驟102至106期間的分布節(jié)點(diǎn)池管理。
[0091] 如果核30a、30b、30c、30d之間的核間通信與節(jié)點(diǎn)評(píng)估相比是高費(fèi)用的,則可使用 分布節(jié)點(diǎn)池管理。
[0092] 具體來說,在步驟102,例如由處理器核30a來運(yùn)行的主過程僅生成方案樹50的 (一個(gè)或多個(gè))級(jí)。將這個(gè)不完全方案樹的各分支分配給并行過程,其例如可在處理器核 30a、30b、30c、20d 中運(yùn)行。
[0093] 在步驟104,每一個(gè)從過程對(duì)于它存儲(chǔ)在其自己的本地節(jié)點(diǎn)池中、例如其本地存儲(chǔ) 器高速緩存32a、32b、32c、32d中的待決樹節(jié)點(diǎn)60的子集進(jìn)行工作。
[0094] 按照本發(fā)明的一實(shí)施例,方案樹50的節(jié)點(diǎn)60的至少兩個(gè)本地節(jié)點(diǎn)池采用至少兩 個(gè)處理器核30a、30b、30c、30d來生成。
[0095] 按照本發(fā)明的一實(shí)施例,本地節(jié)點(diǎn)池的節(jié)點(diǎn)60采用已經(jīng)生成相應(yīng)本地節(jié)點(diǎn)池的 處理器核來評(píng)估。
[0096] 要避免不均勻工作負(fù)荷,可使用負(fù)荷平衡策略,其接管待決節(jié)點(diǎn)60的再分配,并 且更新全局變量(例如當(dāng)前節(jié)點(diǎn)的值)。負(fù)荷平衡可由主過程來執(zhí)行。
[0097] 在步驟106,主過程選擇具有最低權(quán)重的切換序列。
[0098] 雖然分布節(jié)點(diǎn)池策略可需要比集中方式要少的通信,但是對(duì)于要求微秒范圍中的 循環(huán)時(shí)間的應(yīng)用,甚至適度核間通信也能夠使總體性能顯著退化。
[0099] 分為子樹 并行執(zhí)行的第三示例可在步驟102至106期間分為子樹或者子路徑。將全局方案樹50 分為子樹62 (其然后被指配給用于并行計(jì)算的核)可被認(rèn)為是上述分布節(jié)點(diǎn)池管理的特殊 變體。
[0100] 在步驟102,方案樹50被生成,并且分為子樹62。
[0101] 例如,例如由處理器核30a來運(yùn)行的主過程在主存儲(chǔ)器28中生成樹50,并且按照 一般規(guī)則將它分為子樹62。但是,主過程在主存儲(chǔ)器28中生成滿樹不是必要的,因?yàn)閺倪^ 程可即時(shí)生成其單獨(dú)子樹(在其本地高速緩沖存儲(chǔ)器32a、32b、32c、32d中)。
[0102] 例如,在第一級(jí)的節(jié)點(diǎn)54來分割全局方案樹50。即,子樹62具有根節(jié)點(diǎn)54,其是 全局方案樹50的第一級(jí)節(jié)點(diǎn)。子樹62然后分配給處理器核30 &、3015、30(3、30(1。例如,每個(gè) 子樹62存儲(chǔ)在相應(yīng)本地高速緩沖存儲(chǔ)器32a、32b、32c、32d中。
[0103] 但是,有可能的是,可在處理器核30a、30b、30c、30d中運(yùn)行的并行過程例如在讀 取輸入X k和之后、在其本地高速緩沖存儲(chǔ)器32a、32b、32c、32d中生成樹50。還有可能 的是,并行過程可以僅生成它們感興趣的小子樹,即,滿樹50的一部分。
[0104] 此后,并行過程可分割方案樹50本身。在這種情況下,可以不需要主過程。
[0105] 取決于控制器16所提供的處理器核的數(shù)量,可在不同級(jí)分割方案樹50,以便得到 充分多的子樹62,以將所有處理器核30a、30b、30c、30d保持為忙。
[0106] 如果只有幾個(gè)處理器核是可用的,并且核間通信應(yīng)當(dāng)保持在最小等級(jí),則可使用 分為(實(shí)際)子樹62的方式。
[0107] 按照本發(fā)明的一實(shí)施例,方案樹50分為子樹62,并且將子樹62分配給至少兩個(gè)處 理器核 30a、30b、30c、30d。
[0108] 按照本發(fā)明的一實(shí)施例,第一子樹62的切換序列的權(quán)重采用第一處理器核30a來 計(jì)算,以及第二子樹62的切換序列的權(quán)重采用第二處理器核30b來計(jì)算。
[0109] 在控制器16提供與方案樹50中存在的葉節(jié)點(diǎn)58同樣多的處理器核的情況下,第 一個(gè)處理器核30a、30b、30c、30d可需要僅計(jì)算一種方案。單獨(dú)路徑(切換序列)由處理器 核30a、30b、30c、30d來計(jì)算,從而接受在樹上級(jí)所執(zhí)行的計(jì)算的冗余度。這種策略的一個(gè) 有效實(shí)現(xiàn)可要求方案結(jié)果的快速聚合。例如,特定處理器核可運(yùn)行主過程,其為一組處理器 核確定具有最低權(quán)重的方案。該方式可特別適合于在GPU架構(gòu)(其專用于對(duì)多個(gè)數(shù)據(jù)運(yùn)行 相同指令)上的執(zhí)行。
[0110] 按照本發(fā)明的一實(shí)施例,方案樹50分為單切換序列A并且將切換序列V分配給多 個(gè)處理器核 30a、30b、30c、30d。
[0111] 按照本發(fā)明的一實(shí)施例,切換序列V的權(quán)重采用向其分配切換序列V的處理器核 來計(jì)算。
[0112] 全局方案樹50被分為的子樹62的數(shù)量可以是設(shè)計(jì)參數(shù),可根據(jù)可用處理器核 30a、30b、30c、30d的數(shù)量來選擇。解決方案可以是將第一級(jí)的全局方案樹50劃分為子幀 62,其根節(jié)點(diǎn)54是全局樹50的第一級(jí)節(jié)點(diǎn)54。
[0113] 由于轉(zhuǎn)換器12的硬件(具體來說是開關(guān)22a、22b、22c)所施加的切換限制,子樹 62可具有不同大小。因此,全面分析特定子樹62所花費(fèi)的時(shí)間也可不同。
[0114] 對(duì)于各實(shí)際切換狀態(tài),查找表70可存儲(chǔ)在控制器16中,其對(duì)特定控制策略 (例如SSESE)已經(jīng)預(yù)先計(jì)算。
[0115] 各查找表70可包括特定切換狀態(tài)的方案樹50。查找表70可存儲(chǔ)在全局存儲(chǔ) 器28中或者各高速緩沖存儲(chǔ)器32a、32b、32c、32d中。
[0116] 此外,查找表70可包括全局方案樹50應(yīng)當(dāng)被分為哪些子樹62的信息和/或相應(yīng) 子樹62的估計(jì)處理時(shí)間(參見圖3)。
[0117] 例如,在圖3的方案樹50的情況下,查找表70可包括子樹62,并且以下(假定) 表包括處理子樹62所需的估計(jì)時(shí)間:
【權(quán)利要求】
1. 一種用于控制電氣轉(zhuǎn)換器(12)的方法,所述方法包括下列步驟: 接收所述電氣轉(zhuǎn)換器(12)的實(shí)際切換狀態(tài)(&_7); 基于所述實(shí)際切換狀態(tài)(《η)來確定所述電氣轉(zhuǎn)換器(12)的可能將來切換狀態(tài)的方 案樹(50),所述方案樹(50)定義多個(gè)可能將來切換序列,切換序列〇/)通過從所述方案樹 (50)的根節(jié)點(diǎn)(52)到所述方案樹(50)的葉節(jié)點(diǎn)(58)的路徑來定義; 通過評(píng)估所述方案樹(50)的節(jié)點(diǎn)¢0),相對(duì)所述電氣轉(zhuǎn)換器(12)的控制目標(biāo)來計(jì)算 切換序列的權(quán)重; 從具有最佳權(quán)重的切換序列來確定要應(yīng)用于所述電氣轉(zhuǎn)換器(12)的下一個(gè)切換狀態(tài) (?); 其中所述節(jié)點(diǎn)(60)的所述評(píng)估由至少兩個(gè)處理器核(30a,30b,30c,30d)來執(zhí)行。
2. 如權(quán)利要求1所述的方法,還包括下列步驟: 將所述方案樹(50)分為子樹(62); 將所述子樹(62)分配給至少兩個(gè)處理器核(30a,30b,30c,30d)。
3. 如權(quán)利要求2所述的方法,還包括下列步驟: 采用第一處理器核來計(jì)算第一子樹的切換序列的權(quán)重; 采用第二處理器核來計(jì)算第二子樹的切換序列的權(quán)重。
4. 如以上權(quán)利要求中的一項(xiàng)所述的方法,還包括下列步驟: 將所述方案樹(50)分為切換序列(仍; 將所述切換序列(仍分配給多個(gè)處理器核(30a,30b,30c,30d); 采用向其分配了所述切換序列的處理器核來計(jì)算切換序列的權(quán)重。
5. 如以上權(quán)利要求中的一項(xiàng)所述的方法,還包括下列步驟: 通過計(jì)算與節(jié)點(diǎn)(60)關(guān)聯(lián)的切換過渡的切換損耗,來確定所述節(jié)點(diǎn)(60)的權(quán)重(r); 基于所述節(jié)點(diǎn)(60)的所述權(quán)重和所述節(jié)點(diǎn)的父節(jié)點(diǎn)(54)的權(quán)重來計(jì)算切換序列(的 的權(quán)重。
6. 如以上權(quán)利要求中的一項(xiàng)所述的方法,還包括下列步驟: 生成必須評(píng)估的所述方案樹(50)的節(jié)點(diǎn)(60)的中央節(jié)點(diǎn)池; 向處理器核(30a,30b,30c,30d)分配所述中央節(jié)點(diǎn)池的節(jié)點(diǎn)(60); 在所述處理器核來計(jì)算所述節(jié)點(diǎn)(60)。
7. 如以上權(quán)利要求中的一項(xiàng)所述的方法,還包括下列步驟: 采用至少兩個(gè)處理器核(30a,30b,30c,30d)來生成所述方案樹(50)的節(jié)點(diǎn)¢0)的至 少兩個(gè)本地節(jié)點(diǎn)池; 采用已經(jīng)生成所述本地節(jié)點(diǎn)池的處理器核來評(píng)估本地節(jié)點(diǎn)池的節(jié)點(diǎn)。
8. 如以上權(quán)利要求中的一項(xiàng)所述的方法,還包括下列步驟: 通過從預(yù)先計(jì)算表(70)加載所述方案樹(50)的至少部分,來確定所述方案樹(50)。
9. 如權(quán)利要求8所述的方法, 其中,分為所述方案樹(50)的子樹(62)在所述表(70)中預(yù)先定義;和/或 所述方案樹(50)的子樹(62)的計(jì)算時(shí)間在所述表(70)中預(yù)先定義;和/或 向處理器核(30a,30b,30c,30d)分配子樹(62)在所述表(70)中預(yù)先定義。
10. 如以上權(quán)利要求中的一項(xiàng)所述的方法, 其中,所述方案樹(50)包括切換節(jié)點(diǎn)(S); 評(píng)估切換節(jié)點(diǎn)(S)包括基于切換節(jié)點(diǎn)所定義的切換過渡的切換損耗來計(jì)算所述切換 節(jié)點(diǎn)的權(quán)重。
11. 如以上權(quán)利要求中的一項(xiàng)所述的方法, 其中,所述方案樹(50)包括擴(kuò)展節(jié)點(diǎn)(E); 評(píng)估擴(kuò)展節(jié)點(diǎn)(E)包括通過外推所述轉(zhuǎn)換器的電氣狀態(tài)直到所述電氣狀態(tài)留下預(yù)定 義間隔,來計(jì)算擴(kuò)展節(jié)點(diǎn)的擴(kuò)展時(shí)間。
12. -種用于控制轉(zhuǎn)換器(12)的計(jì)算機(jī)程序,其在由至少兩個(gè)處理器核(30a,30b, 30c,30d)所運(yùn)行時(shí)適合執(zhí)行權(quán)利要求1至11中的一項(xiàng)所述的方法的步驟。
13. -種計(jì)算機(jī)可讀介質(zhì),其中存儲(chǔ)了如權(quán)利要求12所述的計(jì)算機(jī)程序。
14. 一種用于電氣轉(zhuǎn)換器(12)的控制器,包括 包括至少兩個(gè)處理器核(30a,30b,30c,30d)的多核處理器(26); 其中所述多核處理器(26)適合于運(yùn)行權(quán)利要求1至11中的一項(xiàng)所述的方法。
15. -種轉(zhuǎn)換器系統(tǒng)(10),包括: 用于生成可變AC輸出電流的轉(zhuǎn)換器(12); 如權(quán)利要求14所述的用于切換所述轉(zhuǎn)換器(12)的半導(dǎo)體開關(guān)(22a,22b,22c)的控制 器(16)。
【文檔編號(hào)】H02M7/487GK104054254SQ201380006498
【公開日】2014年9月17日 申請(qǐng)日期:2013年1月16日 優(yōu)先權(quán)日:2012年1月24日
【發(fā)明者】H.派爾, S.里希特 申請(qǐng)人:Abb研究有限公司