本發(fā)明的實施例涉及用于視頻處理的集成電路領(lǐng)域,并且更具體地涉及用于對集成電路執(zhí)行雙精度高速算術(shù)運算的系統(tǒng)和方法。
背景技術(shù):
1、隨著數(shù)字生成更多媒體內(nèi)容,諸如超高清(8k)視頻,需要改進用于渲染這些視頻的技術(shù)。
2、在具有高幀率(144hz)的超高清(8k)視頻的視頻處理期間,乘法運算是用于視頻處理的高性能專用集成電路(asic)的最耗時且至關(guān)重要的運算。特別地,滿足1400mhz的64位×32位乘法運算的定時要求是具有挑戰(zhàn)性的。此外,執(zhí)行乘法運算所涉及的常規(guī)組件不能滿足定時要求。另外,當(dāng)與在視頻處理期間執(zhí)行的其它運算組合時,執(zhí)行復(fù)數(shù)乘法運算所涉及的常規(guī)組件導(dǎo)致不確定的錯誤。
技術(shù)實現(xiàn)思路
1、根據(jù)本公開的實施例,一種用于對集成電路執(zhí)行雙精度高速算術(shù)運算的方法包括:從一個或多個寄存器電路接收第一輸入數(shù)據(jù)及第二輸入數(shù)據(jù)。第一輸入數(shù)據(jù)包括第一多個位,并且第二輸入數(shù)據(jù)包括第二多個位。該方法還包括通過對接收到的第一輸入數(shù)據(jù)和第二輸入數(shù)據(jù)中的每一個執(zhí)行第一邏輯運算來生成第一輸出數(shù)據(jù),其中,第一輸出數(shù)據(jù)包括第一多個位和第二多個位的多個點積。該方法還包括以逐行方式布置多個點積。此外,該方法包括通過對逐行布置的多個點積執(zhí)行第一算術(shù)運算來生成第二輸出數(shù)據(jù)。第二輸出數(shù)據(jù)包括多個位元素。此外,該方法包括通過以預(yù)定義方式將多個位元素的最低有效位(lsb)和多個位元素的最高有效位(msb)布置在連續(xù)行中來對第二輸出數(shù)據(jù)的多個位元素執(zhí)行轉(zhuǎn)置運算。該方法還包括通過對轉(zhuǎn)置的多個位元素執(zhí)行第二算術(shù)運算來生成最終輸出數(shù)據(jù)。
2、根據(jù)本公開的另一實施例,一種用于對集成電路執(zhí)行雙精度高速算術(shù)運算的系統(tǒng)包括:生成第一輸入數(shù)據(jù)和第二輸入數(shù)據(jù)的一個或多個寄存器電路。第一輸入數(shù)據(jù)包括第一多個位,并且第二輸入數(shù)據(jù)包括第二多個位。該系統(tǒng)還包括第一邏輯電路,該第一邏輯電路通過對接收到的第一輸入數(shù)據(jù)和第二輸入數(shù)據(jù)中的每一個執(zhí)行第一邏輯運算來生成第一輸出數(shù)據(jù)。第一輸出數(shù)據(jù)包括第一多個位和第二多個位的多個點積。第一邏輯電路還以逐行方式布置多個點積。該系統(tǒng)還包括第一計算電路,該第一計算電路通過對逐行布置的多個點積執(zhí)行第一算術(shù)運算來生成第二輸出數(shù)據(jù)。第二輸出數(shù)據(jù)包括多個位元素。該系統(tǒng)還包括轉(zhuǎn)置電路,該轉(zhuǎn)置電路通過以預(yù)定義方式將多個位元素的最低有效位(lsb)和多個位元素的最高有效位(msb)布置在連續(xù)行中來對第二輸出數(shù)據(jù)的多個位元素執(zhí)行轉(zhuǎn)置運算。此外,該系統(tǒng)包括第二計算電路,該第二計算電路通過對轉(zhuǎn)置的多個位元素執(zhí)行第二算術(shù)運算來生成最終輸出數(shù)據(jù)。
3、根據(jù)本公開的另一實施例,提供了一種計算機可讀的非暫時性程序存儲設(shè)備,其有形地體現(xiàn)由計算機執(zhí)行以執(zhí)行用于在集成電路中執(zhí)行雙精度高速算術(shù)運算的方法的指令程序。
1.一種用于在集成電路中執(zhí)行雙精度高速算術(shù)運算的方法,包括:
2.根據(jù)權(quán)利要求1所述的方法,
3.根據(jù)權(quán)利要求1所述的方法,
4.根據(jù)權(quán)利要求1所述的方法,
5.根據(jù)權(quán)利要求1所述的方法,其中,所述一個或多個寄存器電路基于由顯示處理器接收的視頻信號和/或視頻信號中的圖像幀來生成第一輸入數(shù)據(jù)和第二輸入數(shù)據(jù)。
6.根據(jù)權(quán)利要求1所述的方法,其中,生成第一輸出數(shù)據(jù)包括對第二輸入數(shù)據(jù)的位進行booth編碼。
7.一種用于對集成電路執(zhí)行雙精度高速算術(shù)運算的系統(tǒng),包括:
8.根據(jù)權(quán)利要求7所述的系統(tǒng),
9.根據(jù)權(quán)利要求7所述的系統(tǒng),
10.根據(jù)權(quán)利要求7所述的系統(tǒng),
11.根據(jù)權(quán)利要求7所述的系統(tǒng),其中,所述最終輸出數(shù)據(jù)是第一輸入數(shù)據(jù)和第二輸入數(shù)據(jù)的乘積,并且所述系統(tǒng)還包括接收所述最終輸出數(shù)據(jù)的一個或多個寄存器電路。
12.根據(jù)權(quán)利要求7所述的系統(tǒng),其中,第一輸入數(shù)據(jù)包括x個位,第二輸入數(shù)據(jù)包括y個位,第一邏輯電路從第一輸入數(shù)據(jù)和第二輸入數(shù)據(jù)生成y個部分乘積,所述y個部分乘積中的每一個包括x個位元素,并且第一計算電路通過將所述y個部分乘積的每一列相加來生成部分乘積的(x+y-1)個和。
13.根據(jù)權(quán)利要求7所述的系統(tǒng),其中,對于每個連續(xù)行,所述轉(zhuǎn)置電路通過將第二輸出數(shù)據(jù)的多個位元素從前一行再向左移位1并且將“0”放置在未定義的位置來生成部分乘積的修改的和。
14.根據(jù)權(quán)利要求13所述的系統(tǒng),第二計算電路通過將部分乘積的修改的和的兩項相加來生成第一輸入數(shù)據(jù)和第二輸入數(shù)據(jù)的乘積。
15.一種非暫時性計算機可讀程序存儲設(shè)備,其有形地體現(xiàn)由所述計算機執(zhí)行以執(zhí)行用于在集成電路中執(zhí)行雙精度高速算術(shù)運算的方法的指令程序,所述方法包括:
16.根據(jù)權(quán)利要求15所述的非暫時性計算機可讀程序存儲設(shè)備,
17.根據(jù)權(quán)利要求15所述的非暫時性計算機可讀程序存儲設(shè)備,
18.根據(jù)權(quán)利要求15所述的非暫時性計算機可讀程序存儲設(shè)備,
19.根據(jù)權(quán)利要求15所述的非暫時性計算機可讀程序存儲設(shè)備,其中,所述方法還包括根據(jù)由顯示處理器接收的視頻信號和/或視頻信號中的圖像幀來生成第一輸入數(shù)據(jù)和第二輸入數(shù)據(jù)。
20.根據(jù)權(quán)利要求15所述的非暫時性計算機可讀程序存儲設(shè)備,其中,生成第一輸出數(shù)據(jù)包括對第二輸入數(shù)據(jù)的位進行booth編碼。