本技術(shù)涉及計算機控制領(lǐng)域,特別是涉及雙cpu數(shù)據(jù)同步系統(tǒng)及方法。
背景技術(shù):
1、為了提高產(chǎn)品的安全性能,在處理過程中單一cpu已無法滿足運算需要。
2、在現(xiàn)有技術(shù)中,公開了一種cpu系統(tǒng)及其協(xié)同軟復位方法,其中,雙cpu系統(tǒng)包括兩個均帶有通信串口的cpu,且兩個cpu同時連接至少一個gpio,雙cpu系統(tǒng)首先利用同一gpio狀態(tài)自動識別主從cpu,然后通過主cpu上的第一通信串口以及從cpu上的第二通信串口實現(xiàn)軟復位控制信令通信。
3、目前針對相關(guān)技術(shù)中只能將兩個cpu分為主從cpu進行信息處理,而無法將兩個cpu調(diào)整為同一狀態(tài),這樣有可能出現(xiàn)信息處理產(chǎn)生延遲,信息處理效率低的問題。
技術(shù)實現(xiàn)思路
1、本技術(shù)實施例提供了一種雙cpu數(shù)據(jù)同步系統(tǒng)及方法,以至少解決相關(guān)技術(shù)中信息處理產(chǎn)生延遲,信息處理效率低的問題。
2、第一方面,本技術(shù)實施例提供了一種雙cpu數(shù)據(jù)同步系統(tǒng),包括:
3、cpu1,包括第一信號單元、第一傳輸單元和第一狀態(tài)設(shè)定單元,其中第一信號單元包括引腳組,每個引腳組包括一個cpu1發(fā)送引腳和一個cpu1接收引腳;第一狀態(tài)設(shè)定單元用于設(shè)定cpu1發(fā)送引腳的狀態(tài);
4、cpu2,包括第二信號單元、第二傳輸單元和第二狀態(tài)設(shè)定單元,其中第二信號單元包括引腳組,每個引腳組包括一個cpu2發(fā)送引腳和一個cpu2接收引腳;第二狀態(tài)設(shè)定單元用于設(shè)定cpu2發(fā)送引腳的狀態(tài);
5、其中,一個cpu1發(fā)送引腳與一個cpu2接收引腳相匹配,一個cpu1接收引腳與一個cpu2發(fā)送引腳相匹配;
6、信息同步模塊,被配置為通過第一狀態(tài)設(shè)定單元調(diào)整cpu1發(fā)送引腳的引腳狀態(tài),通過第二狀態(tài)設(shè)定單元調(diào)整cpu2發(fā)送引腳的引腳狀態(tài),判斷在第一預(yù)設(shè)時間內(nèi),cpu1接收引腳的狀態(tài)是否轉(zhuǎn)換為與該引腳匹配的cpu2發(fā)送引腳相同的狀態(tài),以及cpu2接收引腳的狀態(tài)是否轉(zhuǎn)換為與該引腳匹配的cpu1發(fā)送引腳相同的狀態(tài);
7、數(shù)據(jù)傳輸模塊,被配置通過第一傳輸單元向cpu2發(fā)送一待同步數(shù)據(jù),通過第二傳輸單元向cpu1發(fā)送另一待同步數(shù)據(jù),判斷cpu1和cpu2是否已完成發(fā)送,以及接收對方發(fā)送的數(shù)據(jù)。
8、通過調(diào)整cpu1和cpu2的引腳狀態(tài),并且實現(xiàn)cpu1和cpu2對一系列的調(diào)整產(chǎn)生相應(yīng)的反應(yīng),能夠?qū)pu1和cpu2調(diào)整至同一工作狀態(tài)。通過數(shù)據(jù)傳輸實現(xiàn)信息同步。cpu1和cpu2同時處理任務(wù),使得處理速度加快,工作效率提高。
9、在其中一些實施例中,信息同步模塊進一步被配置為:
10、通過第一狀態(tài)設(shè)定單元調(diào)整cpu1發(fā)送引腳的至第一引腳狀態(tài),通過第二狀態(tài)設(shè)定單元調(diào)整cpu2發(fā)送引腳的至第一引腳狀態(tài),判斷在第一預(yù)設(shè)時間內(nèi),cpu1接收引腳的狀態(tài)是否轉(zhuǎn)換為與該引腳匹配的cpu2發(fā)送引腳相同的狀態(tài),以及cpu2接收引腳的狀態(tài)是否轉(zhuǎn)換為與該引腳匹配的cpu1發(fā)送引腳相同的狀態(tài);
11、若是,通過第一狀態(tài)設(shè)定單元調(diào)整cpu1發(fā)送引腳的至第二引腳狀態(tài),通過第二狀態(tài)設(shè)定單元調(diào)整cpu2發(fā)送引腳的至第二引腳狀態(tài),判斷在第一預(yù)設(shè)時間內(nèi),cpu1接收引腳的狀態(tài)是否轉(zhuǎn)換為與該引腳匹配的cpu2發(fā)送引腳相同的狀態(tài),以及cpu2接收引腳的狀態(tài)是否轉(zhuǎn)換為與該引腳匹配的cpu1發(fā)送引腳相同的狀態(tài)。
12、信息同步模塊能夠多次校準執(zhí)行任務(wù)的時間,經(jīng)過多次校準后,兩個cpu信息同步的時間差將越來越小。cpu1和cpu2實現(xiàn)同步的效率越來越高,便于雙cpu進行工作,執(zhí)行任務(wù)。
13、在其中一些實施例中,數(shù)據(jù)傳輸模塊還包括:
14、第一判斷單元,被配置為判斷在第二預(yù)設(shè)時間內(nèi)cpu1的發(fā)送寄存器和cpu2的發(fā)送寄存器是否均清空;
15、第二判斷單元,被配置為判斷在第二預(yù)設(shè)時間內(nèi)cpu1的dma接收完成標識和cpu2的dma接收完成標識是否均被置位。
16、通過判斷cpu1的發(fā)送寄存器和cpu2的發(fā)送寄存器是否清空和cpu1的dma接收完成標識和cpu2的dma接收完成標識是否均被置位,來確定cpu1和cpu2是否已經(jīng)完成信息發(fā)送和信息接收,從而實現(xiàn)雙cpu數(shù)據(jù)同步。
17、在其中一些實施例中,第一傳輸單元和第二傳輸單元均包括:
18、一個數(shù)據(jù)發(fā)送引腳,以及,一個數(shù)據(jù)接收引腳;
19、第一傳輸單元的數(shù)據(jù)發(fā)送引腳對應(yīng)第二傳輸單元的數(shù)據(jù)接收引腳;
20、第一傳輸單元的數(shù)據(jù)接收引腳對應(yīng)第二傳輸單元的數(shù)據(jù)發(fā)送引腳。
21、兩個cpu中設(shè)置了各自用于數(shù)據(jù)傳輸?shù)臄?shù)據(jù)發(fā)送引腳和數(shù)據(jù)接收引腳,便于進行數(shù)據(jù)傳輸工作,使得信息流暢發(fā)送和接收,避免信息遺漏。
22、在其中一些實施例中,cpu1和cpu2均包括多個引腳組,每個cpu1的一個引腳組均對應(yīng)一個cpu2的引腳組;
23、信息同步模塊被配置為調(diào)整對應(yīng)cpu1引腳組和cpu2引腳組的引腳狀態(tài),包括:
24、調(diào)整一個cpu1引腳組的cpu1發(fā)送引腳的狀態(tài),以及與該cpu1引腳組對應(yīng)的cpu2引腳組中cpu2發(fā)送引腳的狀態(tài);判斷在第一預(yù)設(shè)時間內(nèi),cpu2引腳組的cpu2接收引腳的狀態(tài)是否調(diào)整至與該cpu1引腳組中的cpu1發(fā)送引腳的狀態(tài)相同,以及,該cpu1引腳組中的cpu1接收引腳的狀態(tài)是否調(diào)整至與cpu2引腳組的cpu2發(fā)送引腳的狀態(tài)相同;
25、若是,則調(diào)整下一對應(yīng)cpu1引腳組和cpu2引腳組的狀態(tài),直至所有對應(yīng)cpu1引腳組和cpu2引腳組的狀態(tài)調(diào)整完成。
26、cpu1和cpu2均包括多個引腳組,將多個引腳組都調(diào)整到合適的狀態(tài),實現(xiàn)cpu1和cpu2信號同步,為后續(xù)數(shù)據(jù)同步提供基礎(chǔ)支撐。
27、在其中一些實施例中,信息同步模塊進一步被配置為:
28、調(diào)整一個cpu1引腳組的cpu1發(fā)送引腳的狀態(tài)至第一引腳狀態(tài),以及與該cpu1引腳組對應(yīng)的cpu2引腳組中cpu2發(fā)送引腳的狀態(tài)至第一引腳狀態(tài);判斷在第一預(yù)設(shè)時間內(nèi),cpu2引腳組的cpu2接收引腳的狀態(tài)是否調(diào)整至與該cpu1引腳組中的cpu1發(fā)送引腳的狀態(tài)相同,以及,該cpu1引腳組中的cpu1接收引腳的狀態(tài)是否調(diào)整至與cpu2引腳組的cpu2發(fā)送引腳的狀態(tài)相同;
29、若是,則調(diào)整下一對應(yīng)cpu1引腳組和cpu2引腳組的狀態(tài),直至所有對應(yīng)cpu1引腳組和cpu2引腳組的狀態(tài)在第一引腳狀態(tài)調(diào)整完成;
30、進一步調(diào)整一個cpu1引腳組的cpu1發(fā)送引腳的狀態(tài)至第二引腳狀態(tài),以及與該cpu1引腳組對應(yīng)的cpu2引腳組中cpu2發(fā)送引腳的狀態(tài)至第二引腳狀態(tài);判斷在第一預(yù)設(shè)時間內(nèi),cpu2引腳組的cpu2接收引腳的狀態(tài)是否調(diào)整至與該cpu1引腳組中的cpu1發(fā)送引腳的狀態(tài)相同,以及,該cpu1引腳組中的cpu1接收引腳的狀態(tài)是否調(diào)整至與cpu2引腳組的cpu2發(fā)送引腳的狀態(tài)相同;
31、若是,則調(diào)整下一對應(yīng)cpu1引腳組和cpu2引腳組的狀態(tài),直至所有對應(yīng)cpu1引腳組和cpu2引腳組的狀態(tài)在第二引腳狀態(tài)調(diào)整完成。
32、在信號同步過程中,依次調(diào)整雙cpu引腳組的狀態(tài),實現(xiàn)將兩個cpu拉至同一狀態(tài),減少延遲。通過多次調(diào)整cpu1和cpu2的引腳狀態(tài),能夠減少兩個cpu之間反應(yīng)的時間差。
33、在其中一些實施例中,第一引腳狀態(tài)為高電平,第二引腳狀態(tài)為低電平。
34、第二方面,本技術(shù)實施例提供了一種雙cpu數(shù)據(jù)同步方法,包括:
35、信息同步步驟,調(diào)整cpu1發(fā)送引腳的引腳狀態(tài),調(diào)整cpu2發(fā)送引腳的引腳狀態(tài),判斷在第一預(yù)設(shè)時間內(nèi),cpu1接收引腳的狀態(tài)是否轉(zhuǎn)換為與該接腳匹配的cpu2發(fā)送引腳相同的狀態(tài),以及cpu2接收引腳的狀態(tài)是否轉(zhuǎn)換為與該引腳匹配的cpu1發(fā)送引腳相同的狀態(tài);
36、數(shù)據(jù)傳輸步驟,cpu1向cpu2發(fā)送一待同步數(shù)據(jù),cpu2向cpu1發(fā)送另一待同步數(shù)據(jù),判斷cpu1和cpu2是否已完成發(fā)送,以及接收對方發(fā)送的數(shù)據(jù)。
37、通過上述步驟,調(diào)整引腳狀態(tài)實現(xiàn)雙cpu的狀態(tài)同步,數(shù)據(jù)傳輸實現(xiàn)雙cpu的數(shù)據(jù)同步。將cpu1和cpu2調(diào)整到相同的工作狀態(tài),使得處理工作速度更快,效率更高。
38、在其中一些實施例中,信息同步步驟進一步包括:
39、s11,調(diào)整第一個cpu1發(fā)送引腳的狀態(tài)至第一引腳狀態(tài),以及第一個cpu2發(fā)送引腳的狀態(tài)至第一引腳狀態(tài);判斷在第一預(yù)設(shè)時間內(nèi),與第一個cpu1發(fā)送引腳相匹配的第一個cpu2接收引腳的狀態(tài)是否調(diào)整至與第一個cpu1發(fā)送引腳的狀態(tài)相同,以及,第一個cpu1接收引腳的狀態(tài)是否調(diào)整至與第一個cpu2發(fā)送引腳的狀態(tài)相同,若是,則調(diào)整下一個cpu1發(fā)送引腳和下一個cpu2發(fā)送的狀態(tài)至第一引腳狀態(tài),并再次判斷對應(yīng)的cpu2接收引腳和cpu1接收引腳的狀態(tài)是否均調(diào)整至第一引腳狀態(tài);重復執(zhí)行,直至所有相匹配的cpu1引腳組中的引腳和cpu2引腳組中的引腳的狀態(tài)均在第一引腳狀態(tài);
40、s12,調(diào)整第一個cpu1發(fā)送引腳的狀態(tài)至第二引腳狀態(tài),以及第一個cpu2發(fā)送引腳的狀態(tài)至第二引腳狀態(tài);判斷在第一預(yù)設(shè)時間內(nèi),與第一個cpu1發(fā)送引腳相匹配的第一個cpu2接收引腳的狀態(tài)是否調(diào)整至與第一個cpu1發(fā)送引腳的狀態(tài)相同,以及,第一個cpu1接收引腳的狀態(tài)是否調(diào)整至與第一個cpu2發(fā)送引腳的狀態(tài)相同,若是,則調(diào)整下一個cpu1發(fā)送引腳和下一個cpu2發(fā)送的狀態(tài)至第二引腳狀態(tài),并進行判斷對應(yīng)的cpu2接收引腳和cpu1接收引腳的狀態(tài)是否均調(diào)整至第一引腳狀態(tài);重復執(zhí)行,直至所有相匹配的cpu1引腳組中的引腳和cpu2引腳組中的引腳的狀態(tài)均在第二引腳狀態(tài)。
41、以上信息同步步驟,第一個cpu1發(fā)送引腳和第一個cpu1接收引腳對應(yīng)為一個cpu1引腳組中的引腳,第一個cpu2接收引腳和第一個cpu2發(fā)送引腳對應(yīng)位一個cpu2引腳組中的引腳。
42、cpu1和cpu2內(nèi)存在多個引腳,想要實現(xiàn)信號同步,需將多個引腳匹配調(diào)整到相同狀態(tài)。經(jīng)過多次調(diào)整,cpu1和cpu2實現(xiàn)同步,能夠更好地處理任務(wù),增加運行的安全性。
43、在其中一些實施例中,數(shù)據(jù)傳輸步驟包括:
44、s21,cpu1發(fā)送第一待同步數(shù)據(jù),cpu1發(fā)送第二待同步數(shù)據(jù);
45、s22,在第二預(yù)設(shè)時間內(nèi),cpu1和cpu2判斷各自的sci發(fā)送寄存器是否清空;
46、s23,在第二預(yù)設(shè)時間內(nèi),cpu1和cpu2判斷各自的scidma接收完成標識是否被置位;
47、s24,cpu1讀取第二待同步數(shù)據(jù),cpu2讀取第一待同步數(shù)據(jù)。
48、通過判斷sci發(fā)送寄存器是否清空和scidma接收完成標識是否被置位,確定cpu1和cpu2是否已經(jīng)將數(shù)據(jù)發(fā)送給對方。進一步的,cpu1和cpu2讀取數(shù)據(jù),實現(xiàn)數(shù)據(jù)同步。這樣有利于雙cpu同步處理任務(wù),提高工作效率。
49、相比于相關(guān)技術(shù),本技術(shù)實施例提供的雙cpu數(shù)據(jù)同步系統(tǒng)及方法,通過調(diào)整兩個cpu的引腳狀態(tài),將兩個cpu調(diào)整至同一工作狀態(tài),校準執(zhí)行任務(wù)的時間,提高cpu的工作效率,降低延遲。
50、本技術(shù)的一個或多個實施例的細節(jié)在以下附圖和描述中提出,以使本技術(shù)的其他特征、目的和優(yōu)點更加簡明易懂。