System.ArgumentOutOfRangeException: 索引和長度必須引用該字符串內(nèi)的位置。 參數(shù)名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技術(shù)實(shí)現(xiàn)步驟摘要】
本專利技術(shù)涉及集成電路中數(shù)字芯片前端技術(shù),尤其涉及一種數(shù)據(jù)寫入方法、裝置、控制器、axi主機(jī)、ahb從機(jī)及soc。
技術(shù)介紹
1、隨著集成電路規(guī)模逐日增加,芯片的功能和復(fù)雜度提升,對(duì)片上系統(tǒng)(system?onchip,soc)的處理性能的要求越來越高。芯片內(nèi)部總線作為連接各個(gè)模塊的中樞橋梁,對(duì)soc系統(tǒng)的性能起到重要影響,特別是在多個(gè)主設(shè)備和多個(gè)從設(shè)備的系統(tǒng)中。
2、其中,高級(jí)可拓展接口(advanced?extensible?interface,axi)是高級(jí)微控制器總線架構(gòu)(advanced?microcontroller?bus?architecture,amba)總線體系中面向高性能、高帶寬、低延遲的片內(nèi)總線,它的地址/控制和數(shù)據(jù)相位是分離的,具備獨(dú)立的五個(gè)通道,分別是:寫地址通道、寫數(shù)據(jù)通道、寫回復(fù)通道、讀地址通道和讀數(shù)據(jù)通道。高級(jí)高性能總線(advanced?high-preformance?bus,ahb)作為axi總線的前一代總線,應(yīng)用于高性能、高時(shí)鐘頻率的系統(tǒng)模塊,支持?jǐn)?shù)據(jù)突發(fā)傳輸、分割傳輸、流水線方式等功能或特征,作為系統(tǒng)核心骨干總線,廣泛應(yīng)用于早期soc產(chǎn)品中。而新一代高性能soc在選擇axi總線進(jìn)行系統(tǒng)互聯(lián)時(shí),會(huì)選擇通過橋接控制器將axi總線和ahb、外圍總線(advanced?peripheral?bus,apb)等其他類型總線互聯(lián),以兼容早期產(chǎn)品。
3、在相關(guān)技術(shù)中,采用地址和數(shù)據(jù)分離的方式分別控制讀、寫訪問的接口時(shí)序,通過設(shè)立地址命令通道、數(shù)據(jù)緩沖區(qū)域來實(shí)現(xiàn)協(xié)議轉(zhuǎn)換,然而該
技術(shù)實(shí)現(xiàn)思路
1、本專利技術(shù)實(shí)施例提供一種數(shù)據(jù)寫入方法、裝置、控制器、axi主機(jī)、ahb從機(jī)及soc,能夠提高了axi轉(zhuǎn)ahb的適用性。
2、本專利技術(shù)的技術(shù)方案是這樣實(shí)現(xiàn)的:
3、本專利技術(shù)實(shí)施例提供一種數(shù)據(jù)寫入方法,所述方法應(yīng)用于控制器中,包括:
4、接收來自axi主機(jī)的寫指令;
5、當(dāng)所述寫指令對(duì)應(yīng)的寫地址范圍跨越預(yù)設(shè)邊界時(shí),將所述寫指令拆分成n條寫子指令;其中,所述預(yù)設(shè)邊界為以預(yù)設(shè)數(shù)量字節(jié)為基數(shù)的正整數(shù)倍的字節(jié)的地址,n為所述寫地址范圍跨越預(yù)設(shè)邊界的個(gè)數(shù)加1;
6、對(duì)所述n條寫子指令進(jìn)行ahb協(xié)議轉(zhuǎn)換,得到n條寫操作信息;
7、將所述n條寫操作信息發(fā)送至ahb從機(jī),以向所述axi主機(jī)返回寫入結(jié)果。
8、通過在確定寫地址范圍跨越預(yù)設(shè)邊界的情況下,拆分寫指令并轉(zhuǎn)換,使得得到的n條寫操作信息為ahb從機(jī)能夠處理的信息,從而得到寫入結(jié)果,使得axi轉(zhuǎn)ahb能夠適用于對(duì)跨越預(yù)設(shè)邊界的情況,從而提高了適用性,進(jìn)而提高了數(shù)據(jù)的吞吐量。
9、進(jìn)一步,所述方法還包括:
10、基于所述寫指令,確定所述寫地址范圍跨越預(yù)設(shè)邊界的個(gè)數(shù);
11、當(dāng)所述個(gè)數(shù)大于0時(shí),確定所述寫地址范圍跨越預(yù)設(shè)邊界;
12、當(dāng)所述個(gè)數(shù)等于0時(shí),確定所述寫地址范圍未跨越預(yù)設(shè)邊界。
13、通過寫指令確定的寫地址單位跨越預(yù)設(shè)邊界的個(gè)數(shù),可以確定出寫指令對(duì)應(yīng)的寫地址范圍是否跨越預(yù)設(shè)邊界,從而確定是否對(duì)寫指令進(jìn)行拆分,以使用更多種情況下的寫入,提高了適用性。
14、進(jìn)一步,所述方法還包括:
15、當(dāng)所述寫指令對(duì)應(yīng)的寫地址范圍未跨越預(yù)設(shè)邊界時(shí),將所述寫指令中的寫地址信息中的寫id與編碼字段0,重新確定為所述寫地址信息中的寫id,以重新得到寫指令;
16、對(duì)所述寫指令進(jìn)行ahb協(xié)議轉(zhuǎn)換,得到一條寫操作信息;
17、將所述一條寫操作信息發(fā)送至ahb從機(jī),以向所述axi主機(jī)返回寫入結(jié)果。
18、針對(duì)寫地址范圍未跨越預(yù)設(shè)邊界的情況,僅僅對(duì)寫指令中的寫地址信息中的寫id重新確定,加入編碼字段,重新構(gòu)成寫地址信息,以重新得到寫指令并進(jìn)行ahb協(xié)議轉(zhuǎn)換,以得到一條寫操作信息,以實(shí)現(xiàn)對(duì)未跨越預(yù)設(shè)邊界的寫指令的相應(yīng)寫入,從而提高了適用性。
19、進(jìn)一步,所述基于所述寫指令,確定所述寫地址范圍跨越預(yù)設(shè)邊界的個(gè)數(shù),包括:
20、基于所述寫指令中寫首地址、寫傳輸長度和寫傳輸寬度,確定寫末地址;
21、對(duì)所述寫末地址和所述寫首地址分別右移預(yù)設(shè)位數(shù),并計(jì)算移位后的寫末地址與移位后的寫首地址的差值;其中,預(yù)設(shè)位數(shù)等于預(yù)設(shè)數(shù)量字節(jié)對(duì)應(yīng)的最小位寬;
22、將所述差值,確定為所述寫地址范圍跨越預(yù)設(shè)邊界的個(gè)數(shù)。
23、通過寫地址信息確定寫末地址,在利用寫末地址和寫首地址進(jìn)行移位和差值計(jì)算來得到寫地址范圍跨越預(yù)設(shè)邊界的個(gè)數(shù),如此,可以確定出寫地址范圍是否跨越預(yù)設(shè)邊界,還可以在跨越的情況下確定出n的大小,有利于完成寫指令的拆分。
24、進(jìn)一步,所述當(dāng)所述寫指令對(duì)應(yīng)的寫地址范圍跨越預(yù)設(shè)邊界時(shí),將所述寫指令拆分成n條寫子指令,包括:
25、當(dāng)所述寫指令對(duì)應(yīng)的寫地址范圍跨越預(yù)設(shè)邊界時(shí),將所述寫指令中的寫地址信息和所述寫指令中的寫數(shù)據(jù)信息分別拆分成n條寫子指令;其中,n條寫子指令包括:n條寫地址子信息和n條寫數(shù)據(jù)子信息;
26、相應(yīng)地,所述對(duì)所述n條寫子指令進(jìn)行ahb協(xié)議轉(zhuǎn)換,得到n條寫操作信息,包括:
27、對(duì)所述n條寫地址子信息和n條寫數(shù)據(jù)子信息分別進(jìn)行ahb協(xié)議轉(zhuǎn)換,得到n條寫操作信息;其中,所述n條寫操作信息包括:轉(zhuǎn)換后的n條寫地址子信息和轉(zhuǎn)換后的n條寫數(shù)據(jù)子信息;且轉(zhuǎn)換后的n條寫地址子信息與轉(zhuǎn)換后的n條寫數(shù)據(jù)子信息一一對(duì)應(yīng)。
28、通過對(duì)寫地址信息和寫數(shù)據(jù)信息分別進(jìn)行拆分得到n條寫子指令,并對(duì)n條寫子指令進(jìn)行ahb協(xié)議轉(zhuǎn)換,得到轉(zhuǎn)換后的n條寫地址子信息和轉(zhuǎn)換后的轉(zhuǎn)換后的n條寫數(shù)據(jù)子信息,且之間一一對(duì)應(yīng),從而使得n條寫操作信息滿足ahb從機(jī)的要求,實(shí)現(xiàn)跨越預(yù)設(shè)邊界的寫指令的數(shù)據(jù)的寫入,提高了axi到ahb寫入的適用性。
29、進(jìn)一步,所述當(dāng)所述寫指令對(duì)應(yīng)的寫地址范圍跨越預(yù)設(shè)邊界時(shí),將所述寫指令中的寫地址信息和所述寫指令中的寫數(shù)據(jù)信息分別拆分成n條寫子指令,包括:
30、當(dāng)所述寫指令對(duì)應(yīng)的寫地址范圍跨越預(yù)設(shè)邊界時(shí),將所述寫地址信息中的寫id、寫首地址、寫傳輸長度和寫傳輸寬度分別拆分成n條寫地址子信息;
31、基于n條寫地址子信息,將所述寫數(shù)據(jù)信息拆分成每條寫地址信息對(duì)應(yīng)寫數(shù)據(jù)子信息,以得到n條寫數(shù)據(jù)子信息。
32、通過上述對(duì)寫地址信息中每個(gè)參數(shù)的拆分,得到n條寫地址子信息,在基于n條寫地址子信息對(duì)寫數(shù)據(jù)信息拆分,使得每條寫地址信息對(duì)應(yīng)一條寫數(shù)據(jù)子信息,從而使得得到的n條寫子指令能夠逐條寫入ahb從機(jī)中,保證了數(shù)據(jù)的正確寫入。
33、進(jìn)一步,所述當(dāng)所述寫指令對(duì)應(yīng)的寫地址范圍跨越預(yù)設(shè)邊界時(shí),將所述寫地址信息中的寫id、寫首地址、寫傳輸長度和寫傳輸寬度分別拆分成n條寫本文檔來自技高網(wǎng)...
【技術(shù)保護(hù)點(diǎn)】
1.一種數(shù)據(jù)寫入方法,其特征在于,所述方法應(yīng)用于控制器中,包括:
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述方法還包括:
3.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述基于所述寫指令,確定所述寫地址范圍跨越預(yù)設(shè)邊界的個(gè)數(shù),包括:
4.根據(jù)權(quán)利要求1至3任一項(xiàng)所述的方法,其特征在于,所述當(dāng)所述寫指令對(duì)應(yīng)的寫地址范圍跨越預(yù)設(shè)邊界時(shí),將所述寫指令拆分成N條寫子指令,包括:
5.根據(jù)權(quán)利要求4所述的方法,其特征在于,所述當(dāng)所述寫指令對(duì)應(yīng)的寫地址范圍跨越預(yù)設(shè)邊界時(shí),將所述寫指令中的寫地址信息和所述寫指令中的寫數(shù)據(jù)信息分別拆分成N條寫子指令,包括:
6.根據(jù)權(quán)利要求5所述的方法,其特征在于,所述當(dāng)所述寫指令對(duì)應(yīng)的寫地址范圍跨越預(yù)設(shè)邊界時(shí),將所述寫地址信息中的寫ID、寫首地址、寫傳輸長度和寫傳輸寬度分別拆分成N條寫地址子信息,包括:
7.根據(jù)權(quán)利要求6所述的方法,其特征在于,所述將所述N條寫操作信息發(fā)送至AHB從機(jī),以向所述AXI主機(jī)返回寫入結(jié)果,包括:
8.根據(jù)權(quán)利要求1至3任一項(xiàng)所述的方法,其特征在于,
9.根據(jù)權(quán)利要求1至3任一項(xiàng)所述的方法,其特征在于,所述當(dāng)所述寫指令對(duì)應(yīng)的寫地址范圍跨越預(yù)設(shè)邊界時(shí),將所述寫指令拆分得到N條寫子指令,包括:
10.根據(jù)權(quán)利要求1至3任一項(xiàng)所述的方法,其特征在于,所述方法還包括:
11.根據(jù)權(quán)利要求1至3任一項(xiàng)所述的方法,其特征在于,所述方法還包括:
12.一種數(shù)據(jù)寫入方法,其特征在于,所述方法應(yīng)用于AXI主機(jī)中,包括:
13.根據(jù)權(quán)利要求12所述的方法,其特征在于,所述寫入結(jié)果為:轉(zhuǎn)換后的寫成功信息或者轉(zhuǎn)換后的寫失敗信息;所述轉(zhuǎn)換后的寫成功信息或者轉(zhuǎn)換后的寫失敗信息是所述控制器基于來自所述AHB從機(jī)的N條寫響應(yīng)信息生成并轉(zhuǎn)換得到的。
14.一種數(shù)據(jù)寫入方法,其特征在于,所述方法應(yīng)用于AHB從機(jī)中,包括:
15.根據(jù)權(quán)利要求14所述的方法,其特征在于,所述N條寫操作信息為N條寫地址子信息和N條寫數(shù)據(jù)子信息,所述方法還包括:
16.一種數(shù)據(jù)寫入方法,其特征在于,所述方法應(yīng)用于系統(tǒng)級(jí)芯片SOC中,所述SOC包括:AXI主機(jī)、控制器和AHB從機(jī);所述方法包括:
17.一種數(shù)據(jù)寫入裝置,其特征在于,所述裝置應(yīng)用于控制器中,包括:
18.一種數(shù)據(jù)寫入裝置,其特征在于,所述裝置應(yīng)用于AXI主機(jī)中,包括:
19.一種數(shù)據(jù)寫入裝置,其特征在于,所述裝置應(yīng)用于AHB從機(jī)中,包括:
20.一種控制器,其特征在于,包括:處理器以及存儲(chǔ)有所述處理器可執(zhí)行指令的存儲(chǔ)介質(zhì),所述存儲(chǔ)介質(zhì)通過通信總線依賴所述處理器執(zhí)行操作,當(dāng)所述指令被所述處理器執(zhí)行時(shí),執(zhí)行上述的權(quán)利要求1至11任一項(xiàng)所述的數(shù)據(jù)寫入方法。
21.一種AXI主機(jī),其特征在于,包括:處理器以及存儲(chǔ)有所述處理器可執(zhí)行指令的存儲(chǔ)介質(zhì),所述存儲(chǔ)介質(zhì)通過通信總線依賴所述處理器執(zhí)行操作,當(dāng)所述指令被所述處理器執(zhí)行時(shí),執(zhí)行上述的權(quán)利要求12或13所述的數(shù)據(jù)寫入方法。
22.一種AHB從機(jī),其特征在于,包括:處理器以及存儲(chǔ)有所述處理器可執(zhí)行指令的存儲(chǔ)介質(zhì),所述存儲(chǔ)介質(zhì)通過通信總線依賴所述處理器執(zhí)行操作,當(dāng)所述指令被所述處理器執(zhí)行時(shí),執(zhí)行上述的權(quán)利要求14或15所述的數(shù)據(jù)寫入方法。
23.一種計(jì)算機(jī)存儲(chǔ)介質(zhì),其特征在于,存儲(chǔ)有可執(zhí)行指令,當(dāng)所述可執(zhí)行指令被處理器執(zhí)行時(shí),所述處理器執(zhí)行如權(quán)利要求1至11任一項(xiàng)所述的數(shù)據(jù)寫入方法,或者,執(zhí)行如權(quán)利要求12或13所述的數(shù)據(jù)寫入方法,或者,執(zhí)行如權(quán)利要求14或15所述的數(shù)據(jù)寫入方法。
24.一種SOC,其特征在于,包括:AXI主機(jī)、控制器和AHB從機(jī);其中,
...【技術(shù)特征摘要】
1.一種數(shù)據(jù)寫入方法,其特征在于,所述方法應(yīng)用于控制器中,包括:
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述方法還包括:
3.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述基于所述寫指令,確定所述寫地址范圍跨越預(yù)設(shè)邊界的個(gè)數(shù),包括:
4.根據(jù)權(quán)利要求1至3任一項(xiàng)所述的方法,其特征在于,所述當(dāng)所述寫指令對(duì)應(yīng)的寫地址范圍跨越預(yù)設(shè)邊界時(shí),將所述寫指令拆分成n條寫子指令,包括:
5.根據(jù)權(quán)利要求4所述的方法,其特征在于,所述當(dāng)所述寫指令對(duì)應(yīng)的寫地址范圍跨越預(yù)設(shè)邊界時(shí),將所述寫指令中的寫地址信息和所述寫指令中的寫數(shù)據(jù)信息分別拆分成n條寫子指令,包括:
6.根據(jù)權(quán)利要求5所述的方法,其特征在于,所述當(dāng)所述寫指令對(duì)應(yīng)的寫地址范圍跨越預(yù)設(shè)邊界時(shí),將所述寫地址信息中的寫id、寫首地址、寫傳輸長度和寫傳輸寬度分別拆分成n條寫地址子信息,包括:
7.根據(jù)權(quán)利要求6所述的方法,其特征在于,所述將所述n條寫操作信息發(fā)送至ahb從機(jī),以向所述axi主機(jī)返回寫入結(jié)果,包括:
8.根據(jù)權(quán)利要求1至3任一項(xiàng)所述的方法,其特征在于,所述接收來自axi主機(jī)的寫指令,包括:
9.根據(jù)權(quán)利要求1至3任一項(xiàng)所述的方法,其特征在于,所述當(dāng)所述寫指令對(duì)應(yīng)的寫地址范圍跨越預(yù)設(shè)邊界時(shí),將所述寫指令拆分得到n條寫子指令,包括:
10.根據(jù)權(quán)利要求1至3任一項(xiàng)所述的方法,其特征在于,所述方法還包括:
11.根據(jù)權(quán)利要求1至3任一項(xiàng)所述的方法,其特征在于,所述方法還包括:
12.一種數(shù)據(jù)寫入方法,其特征在于,所述方法應(yīng)用于axi主機(jī)中,包括:
13.根據(jù)權(quán)利要求12所述的方法,其特征在于,所述寫入結(jié)果為:轉(zhuǎn)換后的寫成功信息或者轉(zhuǎn)換后的寫失敗信息;所述轉(zhuǎn)換后的寫成功信息或者轉(zhuǎn)換后的寫失敗信息是所述控制器基于來自所述ahb從機(jī)的n條寫響應(yīng)信息生成并...
【專利技術(shù)屬性】
技術(shù)研發(fā)人員:李嶺,李德軍,李平原,
申請(qǐng)(專利權(quán))人:重慶長安汽車股份有限公司,
類型:發(fā)明
國別省市:
還沒有人留言評(píng)論。發(fā)表了對(duì)其他瀏覽者有用的留言會(huì)獲得科技券。