本發(fā)明涉及多核處理器,特別是涉及一種事務(wù)的協(xié)議轉(zhuǎn)換方法、裝置、設(shè)備和存儲介質(zhì)。
背景技術(shù):
1、隨著算力需求越來越高,單核處理器的性能已經(jīng)無法滿足運算需求,多核處理器系統(tǒng)的并行運算能力可以提供更高運算能力,已成為當今處理器的發(fā)展趨勢??偩€協(xié)議(advanced?extensible?interface,axi)是高級微控制器總線架構(gòu)(advancedmicrocontroller?bus?architecture,amba)3.0協(xié)議中最重要的部分,是一種面向高性能、高帶寬、低延遲的片內(nèi)總線。axi一致性擴展(axi?coherency?extensions,ace)和一致性集線器接口(coherent?hub?interface,chi)協(xié)議是一種支持緩存一致性的協(xié)議,用以維護多核處理器系統(tǒng)的緩存一致性。
2、chi協(xié)議作為ace協(xié)議的進化版,是目前較為流行的用于多核處理器緩存一致性的協(xié)議,具有更廣泛的應(yīng)用。目前只有基于chi協(xié)議進行緩存一致性的實現(xiàn)方案,并不涉及ace與chi轉(zhuǎn)換的處理方式,導致ace處理器核產(chǎn)生的事務(wù)無法接入chi架構(gòu)的多核cpu系統(tǒng)。
3、可見,如何實現(xiàn)事務(wù)在不同協(xié)議下的轉(zhuǎn)換,是本領(lǐng)域技術(shù)人員需要解決的問題。
技術(shù)實現(xiàn)思路
1、本發(fā)明實施例的目的是提供一種事務(wù)的協(xié)議轉(zhuǎn)換方法、裝置、設(shè)備和存儲介質(zhì),可以解決ace處理器核產(chǎn)生的事務(wù)無法接入chi架構(gòu)的多核cpu系統(tǒng)的問題。
2、為解決上述技術(shù)問題,本發(fā)明實施例提供一種事務(wù)的協(xié)議轉(zhuǎn)換方法,適用于事務(wù)協(xié)議轉(zhuǎn)換部件,所述事務(wù)協(xié)議轉(zhuǎn)換部件一端與第一總線協(xié)議的處理器連接,另一端與第二總線協(xié)議的主節(jié)點連接,所述方法包括:
3、接收所述處理器傳輸?shù)氖聞?wù);
4、根據(jù)所述第二總線協(xié)議的報文格式,將所述事務(wù)轉(zhuǎn)換為符合第二總線協(xié)議的事務(wù)報文;
5、向所述主節(jié)點傳輸所述事務(wù)報文;其中,所述事務(wù)報文中攜帶重發(fā)標識;
6、在接收到所述主節(jié)點反饋的重發(fā)響應(yīng)后,進入等待階段;
7、在接收到所述主節(jié)點反饋的重發(fā)通知后,向所述主節(jié)點重新傳輸所述事務(wù)報文。
8、一方面,在接收到所述主節(jié)點反饋的重發(fā)通知后,向所述主節(jié)點重新傳輸所述事務(wù)報文包括:
9、在接收到所述主節(jié)點反饋的重發(fā)通知后,判斷所述重發(fā)通知中攜帶的事務(wù)標識信息和所述重發(fā)響應(yīng)中攜帶的事務(wù)標識信息是否相同;其中,所述事務(wù)標識信息包括事務(wù)編號和信用編號;
10、在所述重發(fā)通知中攜帶的事務(wù)標識信息和所述重發(fā)響應(yīng)中攜帶的事務(wù)標識信息相同的情況下,向所述主節(jié)點傳輸攜帶所述事務(wù)標識信息的事務(wù)報文,以便于所述主節(jié)點在接收到所述事務(wù)報文后,在所述事務(wù)報文攜帶的事務(wù)標識信息與其反饋的重發(fā)通知中攜帶的事務(wù)標識信息一致的情況下,對所述事務(wù)報文進行處理。
11、一方面,在將所述事務(wù)轉(zhuǎn)換為符合第二總線協(xié)議的事務(wù)報文之后還包括:
12、將符合第二總線協(xié)議的事務(wù)報文保存至寄存器中;
13、在接收到所述主節(jié)點反饋的重發(fā)通知后,向所述主節(jié)點重新傳輸所述事務(wù)報文包括:
14、在接收到所述主節(jié)點反饋的重發(fā)通知后,從所述寄存器中讀取所述事務(wù)報文,向所述主節(jié)點傳輸所述事務(wù)報文。
15、一方面,還包括:
16、在接收到所述主節(jié)點反饋的響應(yīng)信息后,將所述事務(wù)報文從所述寄存器中刪除。
17、一方面,所述事務(wù)包括讀通道事務(wù);
18、根據(jù)所述第二總線協(xié)議的報文格式,將所述事務(wù)轉(zhuǎn)換為符合第二總線協(xié)議的事務(wù)報文包括:
19、將讀通道事務(wù)中攜帶的讀地址、讀通道事務(wù)編號和讀通道事務(wù)類型作為交易管理信號發(fā)送至交易管理部件,以便于所述交易管理部件存儲所述讀通道事務(wù)對應(yīng)的讀地址、讀通道事務(wù)編號和讀通道事務(wù)類型;
20、根據(jù)所述讀通道事務(wù)中攜帶的數(shù)據(jù)位寬和位寬個數(shù),確定出滿足第二總線協(xié)議數(shù)據(jù)傳輸總量的讀通道事務(wù);
21、將滿足第二總線協(xié)議數(shù)據(jù)傳輸總量的讀通道事務(wù)所對應(yīng)的各字段信息轉(zhuǎn)換為符合第二總線協(xié)議的事務(wù)報文;其中,各字段信息包括第二總線協(xié)議數(shù)據(jù)傳輸總量、所述讀地址、所述讀通道事務(wù)編號、所述讀通道事務(wù)類型以及共享域。
22、一方面,所述事務(wù)包括寫通道事務(wù);
23、接收所述處理器傳輸?shù)氖聞?wù)包括:
24、接收寫請求通道傳輸?shù)姆系谝豢偩€協(xié)議的寫請求信號;
25、根據(jù)所述第二總線協(xié)議的報文格式,將所述事務(wù)轉(zhuǎn)換為符合第二總線協(xié)議的事務(wù)報文包括:
26、將寫請求信號中攜帶的寫地址、寫通道事務(wù)編號和寫通道事務(wù)類型作為交易管理信號發(fā)送至交易管理部件,以便于所述交易管理部件存儲所述寫請求信號對應(yīng)的寫地址、寫通道事務(wù)編號和寫通道事務(wù)類型;
27、根據(jù)所述寫請求信號中攜帶的數(shù)據(jù)位寬和位寬個數(shù),確定出滿足第二總線協(xié)議數(shù)據(jù)傳輸總量的寫請求信號的數(shù)據(jù)總量;
28、接收寫數(shù)據(jù)通道傳輸?shù)臐M足所述寫請求信號的數(shù)據(jù)總量的寫數(shù)據(jù);
29、將所述寫數(shù)據(jù)緩存至靜態(tài)隨機存儲器;
30、在所述寫數(shù)據(jù)通道對應(yīng)的寫數(shù)據(jù)傳輸信號拉高時,根據(jù)寫數(shù)據(jù)總線的單次數(shù)據(jù)傳輸量以及所述寫請求信號的數(shù)據(jù)總量,確定出所述寫數(shù)據(jù)的拆分個數(shù);
31、從所述靜態(tài)隨機存儲器中讀取所述寫數(shù)據(jù),并按照所述拆分個數(shù)將所述寫數(shù)據(jù)拆分為多個子數(shù)據(jù);
32、按照所述第二總線協(xié)議的報文格式,將各子數(shù)據(jù)轉(zhuǎn)換為符合第二總線協(xié)議的子數(shù)據(jù)報文;
33、向所述主節(jié)點傳輸所述事務(wù)報文包括:
34、將各子數(shù)據(jù)報文傳輸至所述主節(jié)點。
35、一方面,根據(jù)寫數(shù)據(jù)總線的單次數(shù)據(jù)傳輸量以及所述寫請求信號的數(shù)據(jù)總量,確定出所述寫數(shù)據(jù)的拆分個數(shù)包括:
36、將所述寫請求信號的數(shù)據(jù)總量除以所述寫數(shù)據(jù)總線的單次數(shù)據(jù)傳輸量,得到的商值作為所述寫數(shù)據(jù)的拆分個數(shù)。
37、本發(fā)明實施例還提供了一種事務(wù)的協(xié)議轉(zhuǎn)換裝置,適用于事務(wù)協(xié)議轉(zhuǎn)換部件,所述事務(wù)協(xié)議轉(zhuǎn)換部件一端與第一總線協(xié)議的處理器連接,另一端與第二總線協(xié)議的主節(jié)點連接,所述裝置包括接收單元、轉(zhuǎn)換單元、傳輸單元、等待單元和重傳單元;
38、所述接收單元,用于接收所述處理器傳輸?shù)氖聞?wù);
39、所述轉(zhuǎn)換單元,用于根據(jù)所述第二總線協(xié)議的報文格式,將所述事務(wù)轉(zhuǎn)換為符合第二總線協(xié)議的事務(wù)報文;
40、所述傳輸單元,用于向所述主節(jié)點傳輸所述事務(wù)報文;其中,所述事務(wù)報文中攜帶重發(fā)標識;
41、所述等待單元,用于在接收到所述主節(jié)點反饋的重發(fā)響應(yīng)后,進入等待階段;
42、所述重傳單元,用于在接收到所述主節(jié)點反饋的重發(fā)通知后,向所述主節(jié)點重新傳輸所述事務(wù)報文。
43、一方面,所述重傳單元用于在接收到所述主節(jié)點反饋的重發(fā)通知后,判斷所述重發(fā)通知中攜帶的事務(wù)標識信息和所述重發(fā)響應(yīng)中攜帶的事務(wù)標識信息是否相同;其中,所述事務(wù)標識信息包括事務(wù)編號和信用編號;
44、在所述重發(fā)通知中攜帶的事務(wù)標識信息和所述重發(fā)響應(yīng)中攜帶的事務(wù)標識信息相同的情況下,向所述主節(jié)點傳輸攜帶所述事務(wù)標識信息的事務(wù)報文,以便于所述主節(jié)點在接收到所述事務(wù)報文后,在所述事務(wù)報文攜帶的事務(wù)標識信息與其反饋的重發(fā)通知中攜帶的事務(wù)標識信息一致的情況下,對所述事務(wù)報文進行處理。
45、一方面,還包括保存單元;
46、所述保存單元,用于將符合第二總線協(xié)議的事務(wù)報文保存至寄存器中;
47、所述重傳單元用于在接收到所述主節(jié)點反饋的重發(fā)通知后,從所述寄存器中讀取所述事務(wù)報文,向所述主節(jié)點傳輸所述事務(wù)報文。
48、一方面,還包括刪除單元;
49、所述刪除單元,用于在接收到所述主節(jié)點反饋的響應(yīng)信息后,將所述事務(wù)報文從所述寄存器中刪除。
50、一方面,所述事務(wù)包括讀通道事務(wù);
51、所述轉(zhuǎn)換單元包括第一發(fā)送子單元、第一確定子單元和信息轉(zhuǎn)換子單元;
52、所述第一發(fā)送子單元,用于將讀通道事務(wù)中攜帶的讀地址、讀通道事務(wù)編號和讀通道事務(wù)類型作為交易管理信號發(fā)送至交易管理部件,以便于所述交易管理部件存儲所述讀通道事務(wù)對應(yīng)的讀地址、讀通道事務(wù)編號和讀通道事務(wù)類型;
53、所述第一確定子單元,用于根據(jù)所述讀通道事務(wù)中攜帶的數(shù)據(jù)位寬和位寬個數(shù),確定出滿足第二總線協(xié)議數(shù)據(jù)傳輸總量的讀通道事務(wù);
54、所述信息轉(zhuǎn)換子單元,用于將滿足第二總線協(xié)議數(shù)據(jù)傳輸總量的讀通道事務(wù)所對應(yīng)的各字段信息轉(zhuǎn)換為符合第二總線協(xié)議的事務(wù)報文;其中,各字段信息包括第二總線協(xié)議數(shù)據(jù)傳輸總量、所述讀地址、所述讀通道事務(wù)編號、所述讀通道事務(wù)類型以及共享域。
55、一方面,所述事務(wù)包括寫通道事務(wù);
56、接收單元用于接收寫請求通道傳輸?shù)姆系谝豢偩€協(xié)議的寫請求信號;
57、轉(zhuǎn)換單元包括第二發(fā)送子單元、第二確定子單元、接收子單元、緩存子單元、第三確定子單元、讀取子單元、拆分子單元、子數(shù)據(jù)轉(zhuǎn)換子單元;
58、所述第二發(fā)送子單元,用于將寫請求信號中攜帶的寫地址、寫通道事務(wù)編號和寫通道事務(wù)類型作為交易管理信號發(fā)送至交易管理部件,以便于所述交易管理部件存儲所述寫請求信號對應(yīng)的寫地址、寫通道事務(wù)編號和寫通道事務(wù)類型;
59、所述第二確定子單元,用于根據(jù)所述寫請求信號中攜帶的數(shù)據(jù)位寬和位寬個數(shù),確定出滿足第二總線協(xié)議數(shù)據(jù)傳輸總量的寫請求信號的數(shù)據(jù)總量;
60、所述接收子單元,用于接收寫數(shù)據(jù)通道傳輸?shù)臐M足所述寫請求信號的數(shù)據(jù)總量的寫數(shù)據(jù);
61、所述緩存子單元,用于將所述寫數(shù)據(jù)緩存至靜態(tài)隨機存儲器;
62、所述第三確定子單元,用于在所述寫數(shù)據(jù)通道對應(yīng)的寫數(shù)據(jù)傳輸信號拉高時,根據(jù)寫數(shù)據(jù)總線的單次數(shù)據(jù)傳輸量以及所述寫請求信號的數(shù)據(jù)總量,確定出所述寫數(shù)據(jù)的拆分個數(shù);
63、所述讀取子單元,用于從所述靜態(tài)隨機存儲器中讀取所述寫數(shù)據(jù);
64、所述拆分子單元,用于按照所述拆分個數(shù)將所述寫數(shù)據(jù)拆分為多個子數(shù)據(jù);
65、所述子數(shù)據(jù)轉(zhuǎn)換子單元,用于按照所述第二總線協(xié)議的報文格式,將各子數(shù)據(jù)轉(zhuǎn)換為符合第二總線協(xié)議的子數(shù)據(jù)報文;
66、所述傳輸單元用于將各子數(shù)據(jù)報文傳輸至所述主節(jié)點。
67、一方面,所述第三確定子單元用于將所述寫請求信號的數(shù)據(jù)總量除以所述寫數(shù)據(jù)總線的單次數(shù)據(jù)傳輸量,得到的商值作為所述寫數(shù)據(jù)的拆分個數(shù)。
68、本發(fā)明實施例還提供了一種事務(wù)的協(xié)議轉(zhuǎn)換設(shè)備,包括:
69、存儲器,用于存儲計算機程序;
70、處理器,用于執(zhí)行所述計算機程序以實現(xiàn)如上述事務(wù)的協(xié)議轉(zhuǎn)換方法的步驟。
71、本發(fā)明實施例還提供了一種計算機可讀存儲介質(zhì),所述計算機可讀存儲介質(zhì)上存儲有計算機程序,所述計算機程序被處理器執(zhí)行時實現(xiàn)如上述事務(wù)的協(xié)議轉(zhuǎn)換方法的步驟。
72、本發(fā)明實施例還提供了一種計算機程序產(chǎn)品,包括計算機程序/指令,該計算機程序/指令被處理器執(zhí)行時實現(xiàn)上述事務(wù)的協(xié)議轉(zhuǎn)換方法的步驟。
73、由上述技術(shù)方案可以看出,事務(wù)協(xié)議轉(zhuǎn)換部件的一端與第一總線協(xié)議的處理器連接,另一端與第二總線協(xié)議的主節(jié)點連接,事務(wù)協(xié)議轉(zhuǎn)換部件接收處理器傳輸?shù)氖聞?wù);根據(jù)第二總線協(xié)議的報文格式,將事務(wù)轉(zhuǎn)換為符合第二總線協(xié)議的事務(wù)報文。向主節(jié)點傳輸事務(wù)報文;其中,事務(wù)報文中攜帶重發(fā)標識,表示當前事務(wù)報文支持重發(fā)功能。主節(jié)點在接收到事務(wù)報文之后,如果無法第一時間對該事務(wù)報文進行處理,則可以通過事務(wù)協(xié)議轉(zhuǎn)換部件向處理器反饋重發(fā)響應(yīng)。事務(wù)協(xié)議轉(zhuǎn)換部件在接收到主節(jié)點反饋的重發(fā)響應(yīng)后,進入等待階段。在接收到主節(jié)點反饋的重發(fā)通知后,說明當前主節(jié)點可以對事務(wù)報文進行及時的處理,此時事務(wù)協(xié)議轉(zhuǎn)換部件可以向主節(jié)點重新傳輸事務(wù)報文。本發(fā)明的有益效果在于,事務(wù)協(xié)議轉(zhuǎn)換部件實現(xiàn)了兩種不同總線協(xié)議的請求通道轉(zhuǎn)換功能,使處理器內(nèi)核發(fā)出的符合第一總線協(xié)議的各類事務(wù)能夠準確及時轉(zhuǎn)換為符合第二總線協(xié)議的事務(wù)發(fā)送給主節(jié)點進行處理??紤]到主節(jié)點的處理性能,設(shè)置了重發(fā)功能,保證了主節(jié)點對各類事務(wù)的有序處理,避免了事務(wù)報文不能及時處理導致報文丟失的情況發(fā)生。