System.ArgumentOutOfRangeException: 索引和長(zhǎng)度必須引用該字符串內(nèi)的位置。 參數(shù)名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技術(shù)實(shí)現(xiàn)步驟摘要】
本申請(qǐng)涉及計(jì)算機(jī)數(shù)據(jù),具體地,涉及一種浮點(diǎn)數(shù)據(jù)處理方法、裝置、計(jì)算機(jī)設(shè)備和存儲(chǔ)介質(zhì)。
技術(shù)介紹
1、反正切函數(shù)主要實(shí)現(xiàn)浮點(diǎn)的arctan(反正切函數(shù))/arctan2(arctangentfunctionof?two?arguments,反正切變體函數(shù))硬件加速功能,在電流電壓相位計(jì)算、角度控制、飛行器姿態(tài)調(diào)整以及數(shù)字信號(hào)處理等應(yīng)用廣泛。反正切函數(shù)多采用cordic算法(coordinaterotation?digital?computer,坐標(biāo)旋轉(zhuǎn)數(shù)字計(jì)算方法)實(shí)現(xiàn),經(jīng)過多次迭代達(dá)到預(yù)定的精度值。cordic算法包含簡(jiǎn)單的移位和加法運(yùn)算,顯著降低運(yùn)算設(shè)計(jì)的復(fù)雜性。傳統(tǒng)反正切函數(shù)arctan在三維笛卡爾坐標(biāo)系中實(shí)現(xiàn),同時(shí)采用查表的方式來獲得反正切函數(shù)值。當(dāng)精度要求較高時(shí),查表方式難以滿足,且每次都需要通過指令進(jìn)行讀取,效率較慢。
2、因此,目前亟需一種針對(duì)反正切函數(shù)效率更高的浮點(diǎn)數(shù)據(jù)處理方法。
技術(shù)實(shí)現(xiàn)思路
1、本申請(qǐng)實(shí)施例中提供了一種浮點(diǎn)數(shù)據(jù)處理方法、裝置、計(jì)算機(jī)設(shè)備和存儲(chǔ)介質(zhì)。
2、本申請(qǐng)實(shí)施例的第一個(gè)方面,提供了一種浮點(diǎn)數(shù)據(jù)處理方法,應(yīng)用于主處理器,所述主處理器嵌入有由反三角函數(shù)模塊構(gòu)成的協(xié)處理器,所述方法用于對(duì)反三角函數(shù)進(jìn)行數(shù)據(jù)處理,所述方法包括:
3、根據(jù)預(yù)設(shè)浮點(diǎn)指令從協(xié)處理器中獲取所述反三角函數(shù)的待處理浮點(diǎn)變量,以及所述待處理浮點(diǎn)變量對(duì)應(yīng)的數(shù)據(jù)處理信息;
4、將所述待處理浮點(diǎn)變量轉(zhuǎn)換為待處理定點(diǎn)變量,并根據(jù)所述待處理浮點(diǎn)變
5、將所述目標(biāo)定點(diǎn)變量映射至預(yù)設(shè)坐標(biāo)空間,得到所述目標(biāo)定點(diǎn)變量在所述預(yù)設(shè)坐標(biāo)空間中的映射定點(diǎn)變量;
6、根據(jù)所述數(shù)據(jù)處理信息對(duì)所述映射定點(diǎn)變量進(jìn)行向量迭代,得到迭代后的初始輸出結(jié)果;
7、基于所述預(yù)設(shè)坐標(biāo)空間對(duì)所述初始輸出結(jié)果進(jìn)行反映射,得到反映射后的目標(biāo)輸出結(jié)果;
8、對(duì)所述目標(biāo)輸出結(jié)果進(jìn)行浮點(diǎn)轉(zhuǎn)換,得到所述反三角函數(shù)目標(biāo)浮點(diǎn)量。
9、在本申請(qǐng)一個(gè)可選實(shí)施例中,所述處理信息包括所述反三角函數(shù)的函數(shù)計(jì)算類型和迭代次數(shù)中的至少一種。
10、在本申請(qǐng)一個(gè)可選實(shí)施例中,所述處理信息至少包括所述反三角函數(shù)的函數(shù)計(jì)算類型,對(duì)應(yīng)的,所述函數(shù)計(jì)算類型包括反正切函數(shù)和反正切變體函數(shù)中的至少一種。
11、在本申請(qǐng)一個(gè)可選實(shí)施例中,若所述函數(shù)計(jì)算類型包括反正切函數(shù),則所述將所述目標(biāo)定點(diǎn)變量映射至預(yù)設(shè)坐標(biāo)空間,得到所述目標(biāo)定點(diǎn)變量在所述預(yù)設(shè)坐標(biāo)空間中的映射定點(diǎn)變量,包括:
12、若所述反正切函數(shù)的所述待處理浮點(diǎn)變量位于所述預(yù)設(shè)坐標(biāo)空間的第三象限,則將所述目標(biāo)定點(diǎn)變量映射至所述預(yù)設(shè)坐標(biāo)空間的第一象限,得到所述目標(biāo)定點(diǎn)變量在所述第一象限中的所述映射定點(diǎn)變量;
13、對(duì)應(yīng)的,所述基于所述預(yù)設(shè)坐標(biāo)空間對(duì)所述初始輸出結(jié)果進(jìn)行反映射,得到反映射后的目標(biāo)輸出結(jié)果,包括:
14、若所述反正切函數(shù)的所述待處理浮點(diǎn)變量位于所述預(yù)設(shè)坐標(biāo)空間的第三象限,則將所述目標(biāo)輸出結(jié)果確定為負(fù)弧度值。
15、在本申請(qǐng)一個(gè)可選實(shí)施例中,若所述函數(shù)計(jì)算類型包括反正切變體函數(shù),則所述將所述目標(biāo)定點(diǎn)變量映射至預(yù)設(shè)坐標(biāo)空間,得到所述目標(biāo)定點(diǎn)變量在所述預(yù)設(shè)坐標(biāo)空間中的映射定點(diǎn)變量,包括:
16、若反正切變體函數(shù)的所述待處理浮點(diǎn)變量位于所述預(yù)設(shè)坐標(biāo)空間的第二象限或第三象限,則將所述目標(biāo)定點(diǎn)變量映射至所述預(yù)設(shè)坐標(biāo)空間的第一象限或第四象限,得到所述目標(biāo)定點(diǎn)變量在所述第一象限或所述第四象限中的所述映射定點(diǎn)變量;
17、對(duì)應(yīng)的,所述基于所述預(yù)設(shè)坐標(biāo)空間對(duì)所述初始輸出結(jié)果進(jìn)行反映射,得到反映射后的目標(biāo)輸出結(jié)果,包括:
18、若所述反正切變體函數(shù)的所述待處理浮點(diǎn)變量位于所述預(yù)設(shè)坐標(biāo)空間的第二象限,則將所述目標(biāo)輸出結(jié)果確定為正弧度值且大于90°;
19、若所述反正切變體函數(shù)的所述待處理浮點(diǎn)變量位于所述預(yù)設(shè)坐標(biāo)空間的第三象限,則將所述目標(biāo)輸出結(jié)果確定為負(fù)弧度值且小于-90°。
20、在本申請(qǐng)一個(gè)可選實(shí)施例中,所述將所述待處理浮點(diǎn)變量轉(zhuǎn)換為待處理定點(diǎn)變量,并根據(jù)所述待處理浮點(diǎn)變量的指數(shù)部分和尾數(shù)部分進(jìn)行移位處理,得到移位后的目標(biāo)定點(diǎn)變量,包括:
21、將所述待處理浮點(diǎn)變量轉(zhuǎn)換為所述待處理定點(diǎn)變量;
22、根據(jù)所述待處理浮點(diǎn)變量的指數(shù)部分計(jì)算所述待處理定點(diǎn)變量在第一方向的第一移位量;
23、基于所述第一移位量對(duì)所述待處理浮點(diǎn)變量的尾數(shù)部分進(jìn)行第一方向的移位操作,得到移位后的所述目標(biāo)定點(diǎn)變量。
24、在本申請(qǐng)一個(gè)可選實(shí)施例中,所述對(duì)所述目標(biāo)輸出結(jié)果進(jìn)行浮點(diǎn)轉(zhuǎn)換,得到所述反三角函數(shù)目標(biāo)浮點(diǎn)量,包括:
25、對(duì)所述目標(biāo)輸出結(jié)果進(jìn)行浮點(diǎn)轉(zhuǎn)換,得到轉(zhuǎn)換后的浮點(diǎn)輸出結(jié)果;
26、根據(jù)所述第一移位量對(duì)所述浮點(diǎn)輸出結(jié)果進(jìn)行第二方向的移位操作,得到移位后的所述反三角函數(shù)的所述目標(biāo)浮點(diǎn)量;其中,所述第二方向與所述第一方向相反。
27、本申請(qǐng)實(shí)施例的第二個(gè)方面,提供了一種浮點(diǎn)數(shù)據(jù)處理裝置,應(yīng)用于主處理器,所述主處理器嵌入有由反三角函數(shù)模塊構(gòu)成的協(xié)處理器,所述裝置用于對(duì)反三角函數(shù)進(jìn)行數(shù)據(jù)處理,所述裝置包括:
28、獲取模塊,用于根據(jù)預(yù)設(shè)浮點(diǎn)指令從協(xié)處理器中獲取所述反三角函數(shù)的待處理浮點(diǎn)變量,以及所述待處理浮點(diǎn)變量對(duì)應(yīng)的數(shù)據(jù)處理信息;
29、第一移位模塊,用于將所述待處理浮點(diǎn)變量轉(zhuǎn)換為待處理定點(diǎn)變量,并根據(jù)所述待處理浮點(diǎn)變量的指數(shù)部分和尾數(shù)部分進(jìn)行移位處理,得到移位后的目標(biāo)定點(diǎn)變量;
30、第一映射模塊,用于將所述目標(biāo)定點(diǎn)變量映射至預(yù)設(shè)坐標(biāo)空間,得到所述目標(biāo)定點(diǎn)變量在所述預(yù)設(shè)坐標(biāo)空間中的映射定點(diǎn)變量;
31、迭代模塊,用于根據(jù)所述數(shù)據(jù)處理信息對(duì)所述映射定點(diǎn)變量進(jìn)行向量迭代,得到迭代后的初始輸出結(jié)果;
32、第二映射模塊,基于所述預(yù)設(shè)坐標(biāo)空間對(duì)所述初始輸出結(jié)果進(jìn)行反映射,得到反映射后的目標(biāo)輸出結(jié)果;
33、第二移位模塊,用于對(duì)所述目標(biāo)輸出結(jié)果進(jìn)行浮點(diǎn)轉(zhuǎn)換,得到所述反三角函數(shù)目標(biāo)浮點(diǎn)量。
34、本申請(qǐng)實(shí)施例的第三個(gè)方面,提供了一種計(jì)算機(jī)設(shè)備,包括:包括存儲(chǔ)器和處理器,存儲(chǔ)器存儲(chǔ)有計(jì)算機(jī)程序,處理器執(zhí)行計(jì)算機(jī)程序時(shí)實(shí)現(xiàn)如上任一項(xiàng)方法的步驟。
35、本申請(qǐng)實(shí)施例的第四個(gè)方面,提供了一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),其上存儲(chǔ)有計(jì)算機(jī)程序,其特征在于,計(jì)算機(jī)程序被處理器執(zhí)行時(shí)實(shí)現(xiàn)如上任一項(xiàng)的方法的步驟。
36、本申請(qǐng)實(shí)施例提供的浮點(diǎn)數(shù)據(jù)處理方法,第一方面,傳統(tǒng)中反三角函數(shù)模塊是掛在主處理器的總線下面,主處理器取指令后執(zhí)行指令,將獲取待處理浮點(diǎn)變量通過amba總線下發(fā)到反三角函數(shù)模塊,然后等反三角函數(shù)模塊計(jì)算完,再將計(jì)算的結(jié)果通過amba總線傳回主處理器,多次交互路徑長(zhǎng),對(duì)應(yīng)延時(shí)更久。本申請(qǐng)實(shí)施例主處理器根據(jù)預(yù)設(shè)浮點(diǎn)指令直接可以從協(xié)本文檔來自技高網(wǎng)...
【技術(shù)保護(hù)點(diǎn)】
1.一種浮點(diǎn)數(shù)據(jù)處理方法,其特征在于,應(yīng)用于主處理器,所述主處理器嵌入有由反三角函數(shù)模塊構(gòu)成的協(xié)處理器,所述方法用于對(duì)反三角函數(shù)進(jìn)行數(shù)據(jù)處理,所述方法包括:
2.根據(jù)權(quán)利要求1所述的浮點(diǎn)數(shù)據(jù)處理方法,其特征在于,所述處理信息包括所述反三角函數(shù)的函數(shù)計(jì)算類型和迭代次數(shù)中的至少一種。
3.根據(jù)權(quán)利要求2所述的浮點(diǎn)數(shù)據(jù)處理方法,其特征在于,所述處理信息至少包括所述反三角函數(shù)的函數(shù)計(jì)算類型,對(duì)應(yīng)的,所述函數(shù)計(jì)算類型包括反正切函數(shù)和反正切變體函數(shù)中的至少一種。
4.根據(jù)權(quán)利要求3所述的浮點(diǎn)數(shù)據(jù)處理方法,其特征在于,若所述函數(shù)計(jì)算類型包括反正切函數(shù),則所述將所述目標(biāo)定點(diǎn)變量映射至預(yù)設(shè)坐標(biāo)空間,得到所述目標(biāo)定點(diǎn)變量在所述預(yù)設(shè)坐標(biāo)空間中的映射定點(diǎn)變量,包括:
5.根據(jù)權(quán)利要求3所述的浮點(diǎn)數(shù)據(jù)處理方法,其特征在于,若所述函數(shù)計(jì)算類型包括反正切變體函數(shù),則所述將所述目標(biāo)定點(diǎn)變量映射至預(yù)設(shè)坐標(biāo)空間,得到所述目標(biāo)定點(diǎn)變量在所述預(yù)設(shè)坐標(biāo)空間中的映射定點(diǎn)變量,包括:
6.根據(jù)權(quán)利要求1所述的浮點(diǎn)數(shù)據(jù)處理方法,其特征在于,所述將所述待處理浮點(diǎn)變量轉(zhuǎn)換
7.根據(jù)權(quán)利要求6所述的浮點(diǎn)數(shù)據(jù)處理方法,其特征在于,所述對(duì)所述目標(biāo)輸出結(jié)果進(jìn)行浮點(diǎn)轉(zhuǎn)換,得到所述反三角函數(shù)目標(biāo)浮點(diǎn)量,包括:
8.一種浮點(diǎn)數(shù)據(jù)處理裝置,其特征在于,應(yīng)用于主處理器,所述主處理器嵌入有由反三角函數(shù)模塊構(gòu)成的協(xié)處理器,所述裝置用于對(duì)反三角函數(shù)進(jìn)行數(shù)據(jù)處理,所述裝置包括:
9.一種計(jì)算機(jī)設(shè)備,包括:包括存儲(chǔ)器和處理器,所述存儲(chǔ)器存儲(chǔ)有計(jì)算機(jī)程序,其特征在于,所述處理器執(zhí)行所述計(jì)算機(jī)程序時(shí)實(shí)現(xiàn)權(quán)利要求1至7中任一項(xiàng)所述方法的步驟。
10.一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),其上存儲(chǔ)有計(jì)算機(jī)程序,其特征在于,所述計(jì)算機(jī)程序被處理器執(zhí)行時(shí)實(shí)現(xiàn)權(quán)利要求1至7中任一項(xiàng)所述的方法的步驟。
...【技術(shù)特征摘要】
1.一種浮點(diǎn)數(shù)據(jù)處理方法,其特征在于,應(yīng)用于主處理器,所述主處理器嵌入有由反三角函數(shù)模塊構(gòu)成的協(xié)處理器,所述方法用于對(duì)反三角函數(shù)進(jìn)行數(shù)據(jù)處理,所述方法包括:
2.根據(jù)權(quán)利要求1所述的浮點(diǎn)數(shù)據(jù)處理方法,其特征在于,所述處理信息包括所述反三角函數(shù)的函數(shù)計(jì)算類型和迭代次數(shù)中的至少一種。
3.根據(jù)權(quán)利要求2所述的浮點(diǎn)數(shù)據(jù)處理方法,其特征在于,所述處理信息至少包括所述反三角函數(shù)的函數(shù)計(jì)算類型,對(duì)應(yīng)的,所述函數(shù)計(jì)算類型包括反正切函數(shù)和反正切變體函數(shù)中的至少一種。
4.根據(jù)權(quán)利要求3所述的浮點(diǎn)數(shù)據(jù)處理方法,其特征在于,若所述函數(shù)計(jì)算類型包括反正切函數(shù),則所述將所述目標(biāo)定點(diǎn)變量映射至預(yù)設(shè)坐標(biāo)空間,得到所述目標(biāo)定點(diǎn)變量在所述預(yù)設(shè)坐標(biāo)空間中的映射定點(diǎn)變量,包括:
5.根據(jù)權(quán)利要求3所述的浮點(diǎn)數(shù)據(jù)處理方法,其特征在于,若所述函數(shù)計(jì)算類型包括反正切變體函數(shù),則所述將所述目標(biāo)定點(diǎn)變量映射至預(yù)設(shè)坐標(biāo)空間,得到所述目標(biāo)定點(diǎn)變量在所述預(yù)設(shè)坐...
【專利技術(shù)屬性】
技術(shù)研發(fā)人員:阮弘文,
申請(qǐng)(專利權(quán))人:蘇州華太電子技術(shù)股份有限公司,
類型:發(fā)明
國(guó)別省市:
還沒有人留言評(píng)論。發(fā)表了對(duì)其他瀏覽者有用的留言會(huì)獲得科技券。