專利名稱:指令解碼的多個源的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及數(shù)字信號處理器,尤其涉及具有向解碼器提供指令的多個源。
背景數(shù)字信號處理涉及采用數(shù)字形式的信號表現(xiàn),以及使用數(shù)字計算來轉(zhuǎn)換或處理這種數(shù)字表現(xiàn)。在無線通信、聯(lián)網(wǎng)和多媒體等領(lǐng)域中,數(shù)字信號處理是當今許多高科技產(chǎn)品的核心技術(shù)。數(shù)字信號處理技術(shù)流行的一個原因一直是開發(fā)了成本低且功能強大的數(shù)字信號處理器(DSP),數(shù)字信號處理器為工程師提供了可靠的計算能力以廉價并有效地實現(xiàn)這些產(chǎn)品。自從開發(fā)了第一種DSP以來,DSP的構(gòu)造和設(shè)計已發(fā)展到可以對視頻速率序列執(zhí)行十分復(fù)雜精密的實時處理的程度。
DSP經(jīng)常用于諸如數(shù)字視頻、成像和音頻之類的各種多媒體應(yīng)用。DSP可以對數(shù)字信號進行操作,以創(chuàng)建和打開這類多媒體文件。
MPEG-1(運動圖像專家組)、MPEG-2、MPEG-4和H.263是數(shù)字視頻壓縮標準和文件格式。這些標準通過主要存儲從一個視頻幀到另一個視頻幀的變化,而不是存儲每個完整的幀,來實現(xiàn)數(shù)字視頻信號的高壓縮比。然后,可以使用許多不同的技術(shù)來進一步壓縮視頻信息。
壓縮期間,可以使用DSP來對視頻信息執(zhí)行各種操作。這些操作可以包括運動搜索和空間內(nèi)插算法。主要目的是測量相鄰幀內(nèi)的塊之間的失真。這些操作是計算密集的,可能要求高的數(shù)據(jù)吞吐量。
MPEG標準家族正在不斷發(fā)展,以跟上對多媒體應(yīng)用和文件的日益增加的帶寬要求。該標準的每個新版本都表現(xiàn)出更加復(fù)雜的算法,這些算法對適合MPEG的視頻處理設(shè)備中所用的DSP提出更多的處理要求。
視頻處理設(shè)備制造商經(jīng)常依靠為MPEG和H.263標準下的視頻編碼定制的專用集成電路(ASIC)。但是,ASIC的設(shè)計復(fù)雜,造價昂貴,其應(yīng)用不如通用DSP靈活。
通過閱讀以下詳細的描述并參考附圖,本發(fā)明的這些和其他的特征與優(yōu)點將會更加一目了然。
圖1是根據(jù)本發(fā)明的一個實施例的一種利用處理器的移動視頻設(shè)備的框圖。
圖2是根據(jù)本發(fā)明的一實施例的信號處理系統(tǒng)的框圖。
圖3是根據(jù)本發(fā)明的一實施例的一種替代的信號處理系統(tǒng)的框圖。
圖4說明了根據(jù)本發(fā)明的一實施例的圖1中的處理器的示范流水線站。
圖5是根據(jù)本發(fā)明的一個實施例的一種多源解碼器饋送系統(tǒng)的框圖。
圖6說明了根據(jù)本發(fā)明的一實施例的從多源為解碼器提供所選擇的指令的過程。
詳細描述圖1說明了根據(jù)本發(fā)明的一實施例的包括處理器的一種移動視頻設(shè)備100。移動視頻設(shè)備100可以是一種手持設(shè)備,它顯示產(chǎn)生于從天線105或數(shù)字視頻存儲介質(zhì)120(例如,數(shù)字化視頻光盤(DVD)或記憶卡)接收的編碼視頻信號的視頻圖像。處理器110與可以為處理器操作存儲指令和數(shù)據(jù)的高速緩沖存儲器115進行通信。處理器110可以是微處理器、數(shù)字信號處理器(DSP)、控制從屬的DSP的微處理器、或具有混合式微處理器/DSP架構(gòu)的處理器。出于本申請的目的,處理器110在下文中將被稱作DSP 110。
DSP 110可以對編碼的視頻信號執(zhí)行各種操作,包括例如,模擬-數(shù)字轉(zhuǎn)換、解調(diào)、濾波、數(shù)據(jù)恢復(fù)和解碼。DSP 110可以根據(jù)各種數(shù)字視頻壓縮標準(例如,MPEG標準家族和H.263標準)之一來對壓縮的數(shù)字視頻信號解碼。然后,解碼的視頻信號可以輸入到顯示驅(qū)動器130,以便在顯示器125上生成視頻圖像。
手持設(shè)備的電源供給通常有限。此外,視頻解碼操作在計算上是密集的。因此,用于這種設(shè)備中的處理器最好速度較高、功率較低。
DSP 110可以具有一種深流水線、負載/存儲架構(gòu)。通過采用流水線技術(shù),相對于非流水線DSP而言,可以增強DSP的性能。流水線DSP不是獲取第一條指令,執(zhí)行該第一條指令,然后獲取第二條指令,而是使第二條指令的獲取和第一條指令的執(zhí)行同時發(fā)生,從而提高了指令吞吐量。此外,流水線DSP的時鐘周期可比非流水線DSP的時鐘周期短,在非流水線DSP中必須在同一時鐘周期內(nèi)獲取和執(zhí)行指令。
這種DSP 110可以用于視頻可攜式攝像機、電信會議、PC視頻卡和高清晰度電視(HDTV)。此外,DSP 110也可以結(jié)合利用數(shù)字信號處理(例如,移動電話技術(shù)、語音識別中所用的語音處理)的其他技術(shù)和其他應(yīng)用來加以運用。
現(xiàn)在參考圖2,示出了根據(jù)一實施例的包括DSP 110的一種信號處理系統(tǒng)200的框圖。一個或多個模擬信號可以由外部源(例如,天線105)提供給信號調(diào)節(jié)器202。信號調(diào)節(jié)器202可以對這些模擬信號執(zhí)行某些預(yù)處理功能。示范的預(yù)處理功能可包括將這些模擬信號中的幾個模擬信號混合在一起、濾波、放大等。如上所述,模數(shù)轉(zhuǎn)換器(ADC)204可以被耦合,以便從信號調(diào)節(jié)器202接收經(jīng)預(yù)處理的模擬信號并將預(yù)處理過的模擬信號轉(zhuǎn)換為由采樣組成的數(shù)字信號??梢愿鶕?jù)由信號調(diào)節(jié)器202所接收的模擬信號的特性所確定的采樣率來進行采樣。DSP 110可以被耦合以便接收ADC 204的輸出端上的數(shù)字信號。DSP 110可以對所接收的數(shù)字信號執(zhí)行所需的信號轉(zhuǎn)換,產(chǎn)生一個或多個輸出數(shù)字信號。數(shù)字-模擬轉(zhuǎn)換器(DAC)206可以被耦合,以便從DSP 110接收輸出數(shù)字信號。DAC 206將輸出數(shù)字信號轉(zhuǎn)換為輸出模擬信號。然后,可以將輸出模擬信號傳遞給另一個信號調(diào)節(jié)器208。該信號調(diào)節(jié)器208對輸出模擬信號執(zhí)行后處理功能。示范的后處理功能類似于以上所列出的預(yù)處理功能。注意,信號調(diào)節(jié)器202和208、ADC 204以及DAC 206的各種替換方法是眾所周知的。這些設(shè)備的任何合適的布置都可以被耦合于具有DSP 110的信號處理系統(tǒng)200中。
接下來參考圖3,示出了根據(jù)另一個實施例的一種信號處理系統(tǒng)300。在這個實施例中,可以安排數(shù)字接收器302接收一個或多個數(shù)字信號,并將所接收的數(shù)字信號傳遞給DSP 110。和圖2中所示的實施例一樣,DSP 110可對所接收的數(shù)字信號執(zhí)行所需的信號轉(zhuǎn)換,以產(chǎn)生一個或多個輸出數(shù)字信號。數(shù)字信號發(fā)送器304被耦合以接收輸出數(shù)字信號。在一個示范應(yīng)用中,信號處理系統(tǒng)300是一種數(shù)字音頻設(shè)備,其中數(shù)字接收器302將表示存儲在數(shù)字存儲設(shè)備120上的數(shù)據(jù)的數(shù)字信號傳遞給DSP 110。然后,DSP 110處理數(shù)字信號,并將所產(chǎn)生的輸出數(shù)字信號傳遞給數(shù)字發(fā)送器304。數(shù)字發(fā)送器304隨后使這些輸出數(shù)字信號的值傳送到顯示驅(qū)動器130,以便在顯示器125上生成視頻圖像。
圖4所示的流水線包括8個站,它們可包括指令獲取402-403、解碼404、地址計算405、執(zhí)行406-408以及反寫409這些站。指令i可在一個時鐘周期內(nèi)被獲取,然后在隨后的時鐘周期內(nèi)在流水線中被加以操作和執(zhí)行,與此同時,獲取新的指令(例如,i+1和i+2)。
流水線技術(shù)可能會引入額外的協(xié)調(diào)問題并有損于處理器的性能。程序流程中的跳轉(zhuǎn)可能會在流水線中產(chǎn)生空隙或“泡”。引起要采取條件轉(zhuǎn)移或要產(chǎn)生異?;蛑袛嗟那闆r可能會改變指令的順序流。發(fā)生這類事件后,可在連續(xù)的程序流之外獲取一條新的指令,使流水線中的其余的指令互不相關(guān)??梢圆捎脭?shù)據(jù)發(fā)送、分支預(yù)測、以及將有效位與流水線中的指令地址相關(guān)聯(lián)之類的方法,來處理這些復(fù)雜情況。
圖5是根據(jù)本發(fā)明的一個實施例的一種多源解碼器饋送系統(tǒng)500的框圖。解碼器饋送系統(tǒng)500可以包括多個源,例如,具有一個指令寄存器507的I高速緩存/對準單元505、回路緩沖器510、仿真指令寄存器515和其他源520、64位多路復(fù)用器(MUX)525、2位多路復(fù)用器(MUX)530,以及解碼器535。解碼器饋送系統(tǒng)500可允許解碼器535由多個源之一直接饋送,而無須將數(shù)據(jù)轉(zhuǎn)移到指令寄存器507。由于在這個特定實施例中不必將數(shù)據(jù)轉(zhuǎn)移到指令寄存器507,因此可能會減少指令等待時間并提高DSP 110的性能。此外,這多個源可以提供具有相同格式(包括寬度位)的指令。通過確保多個源提供相似格式化的指令,可以簡化解碼器535的設(shè)計,從而改善循環(huán)時間。
I高速緩存/對準單元505、回路緩沖器510、仿真指令寄存器515或任何其它的源520可以被連接到64位MUX 525和2位MUX 530兩者。這些源中的每個源可能能夠提供多種寬度的指令(例如,16位指令、32位指令或64位指令)。這些指令被提供給64位MUX 525。當然,在不脫離本發(fā)明的精神的前提下,可以使用能夠處理其它大小的指令的其它大小的MUX。這些源中的每個源也為2位MUX 530提供一個信號,表示被提供給64位MUX 525的指令的寬度。利用2位信號,對于2位寬度的信號有4種可能的值。例如,00的寬度位表示指令無效,01的寬度位指示一16位指令,10的寬度位指示一32位指令,以及11的寬度位指示一64位指令。一旦選擇某一個特定的指令源,就可以將來自64位MUX 525的指令和來自2位MUX 530的寬度位從那個源轉(zhuǎn)移到解碼器535,供進行處理。
雖然示出兩個多路復(fù)用器525和530,但是,可以理解,可以使用任何數(shù)量的多路復(fù)用器,以便允許選擇額外的信息。例如,額外的多路復(fù)用器可以從源505-520中的每來源接收預(yù)解碼信息,并將合適的預(yù)解碼信息發(fā)送到解碼器。
圖6示出了將指令提供給解碼器535的過程600。過程600始于起始框605。前進到框610,一個或多個源將指令和對應(yīng)的寬度位提供給MUX 525、530。如上所述,這些指令可以是各種大小,包括16位、32位或64位。指令可只由源之一提供,但是,指令和對應(yīng)的寬度位也可以由源中的兩個或多個源來提供。
前進到框615,選擇提供指令的源。DSP 110可以確定下一個指令由I高速緩存/對準單元505、回路緩沖器510、仿真指令寄存器515或另一來源520提供。在DSP 110確定指令以發(fā)送給解碼器535之后,MUX 525和530將適當?shù)闹噶詈蛯挾任惶峁┙o解碼器535。
前進到框620,所選擇的指令和寬度位被直接轉(zhuǎn)移到解碼器535,而不是存儲在指令寄存器507中。通過直接將這些指令轉(zhuǎn)移到解碼器535,可以減少指令等待時間,并可以提高性能。然后,解碼器535可執(zhí)行指令。該過程隨后在結(jié)束框630中終止。
本發(fā)明的多路復(fù)用器525、530根據(jù)所選擇的指令源505-520,將適當?shù)男畔⑻峁┙o解碼器535。然而,如果選擇多個源505-520,則多路復(fù)用器525、530可以包括用于控制對解碼器535的信息分布的優(yōu)先權(quán)邏輯。例如,多路復(fù)用器525、530可以包括優(yōu)先權(quán)邏輯,規(guī)定來自仿真指令寄存器515的信息具有最高優(yōu)先權(quán),而來自I高速緩存/對準單元505的信息將在來自回路緩沖器510的信息之前被加以處理。在整個處理過程中,可以預(yù)先確定或更新優(yōu)先權(quán)調(diào)度。
本領(lǐng)域的技術(shù)人員將容易明白本發(fā)明的許多變化和修改。因此,在不脫離本發(fā)明的精神或本質(zhì)特征的前提下,可以用其他具體形式來實施本發(fā)明。
權(quán)利要求
1.一種將指令提供給處理器內(nèi)的解碼器的方法,其特征在于包括從多個來源將一選擇的指令提供給解碼器。
2.如權(quán)利要求1所述的方法,其特征在于還包括收集來自多個源的多條指令。
3.如權(quán)利要求2所述的方法,其特征在于還包括在多路復(fù)用器中收集指令。
4.如權(quán)利要求1所述的方法,其特征在于還包括將對應(yīng)于所選擇的指令的大小的寬度位傳送給解碼器。
5.如權(quán)利要求1所述的方法,其特征在于還包括收集來自多個源的對應(yīng)于指令大小的多個寬度位。
6.如權(quán)利要求5所述的方法,其特征在于還包括在第二個多路復(fù)用器中收集多個寬度位。
7.如權(quán)利要求1所述的方法,其特征在于還包括根據(jù)優(yōu)先權(quán)調(diào)度來確定所選擇的指令。
8.如權(quán)利要求1所述的方法,其特征在于還包括提供數(shù)字信號處理器中的指令。
9.一種在處理器內(nèi)的解碼器處獲得指令的方法,其特征在于包括收集來自多個指令源的多條指令;收集對應(yīng)于多條指令的多個寬度位;確定將要被處理的多條指令中的一條指令;以及將多條指令中所選擇的一條指令和對應(yīng)的寬度位轉(zhuǎn)移到解碼器。
10.如權(quán)利要求9所述的方法,其特征在于還包括收集來自I高速緩存/對準單元的指令。
11.如權(quán)利要求9所述的方法,其特征在于還包括收集來自回路緩沖器的指令。
12.如權(quán)利要求9所述的方法,其特征在于還包括收集來自仿真指令寄存器的指令。
13.如權(quán)利要求9所述的方法,其特征在于還包括獲得數(shù)字信號處理器中的指令。
14.如權(quán)利要求9所述的方法,其特征在于還包括收集具有相同格式的多條指令。
15.如權(quán)利要求9所述的方法,其特征在于還包括根據(jù)優(yōu)先權(quán)調(diào)度來確定將要被處理的指令。
16.一種處理器,其特征在于包括提供多條指令的多個指令源;接收來自多個指令源的多條指令的第一多路復(fù)用器,其中,該第一多路復(fù)用器從多條指令中選擇將要被執(zhí)行的第一條指令;以及,接收來自所述第一個多路復(fù)用器的所選擇的第一條指令的解碼器。
17.如權(quán)利要求16所述的處理器,其特征在于還包括接收來自指令源的表示指令大小的多個信號的第二多路復(fù)用器,其中,該第二多路復(fù)用器為解碼器提供對應(yīng)于所選擇的第一條指令的多個信號中的一個信號。
18.如權(quán)利要求16所述的處理器,其特征在于多條指令中的每條指令都采取相同的格式。
19.如權(quán)利要求16所述的處理器,其特征在于解碼器直接從多路復(fù)用器接收所選擇的第一條指令。
20.如權(quán)利要求16所述的處理器,其特征在于第一多路復(fù)用器根據(jù)優(yōu)先權(quán)調(diào)度來從多條指令中選擇將要被執(zhí)行的第一條指令。
21.如權(quán)利要求16所述的處理器,其特征在于該處理器是數(shù)字信號處理器。
22.一種裝置,其特征在于包括駐留在機器可讀的存儲介質(zhì)上的指令,用于機器系統(tǒng)中,以處理多條指令,這些指令使機器從多個源選擇一條指令;以及將所選擇的指令提供給解碼器。
23.如權(quán)利要求22所述的裝置,其特征在于機器收集來自多個源的多條指令。
24.如權(quán)利要求23所述的裝置,其特征在于在多路復(fù)用器中收集指令。
25.如權(quán)利要求22所述的裝置,其特征在于從多個源收集對應(yīng)于指令大小的多個寬度位。
全文摘要
在一個實施例中,處理器包括多個指令源,并選擇適當?shù)脑磥頌榻獯a器提供一條指令。這些指令源中的每個指令源都可以將指令提供給一多路復(fù)用器。這些指令源還將表示指令大小的信號提供給第二多路復(fù)用器。
文檔編號G06F9/32GK1466717SQ01816463
公開日2004年1月7日 申請日期2001年9月25日 優(yōu)先權(quán)日2000年9月28日
發(fā)明者R·P·辛格, G·A·奧弗坎普, C·P·洛斯, R P 辛格, 奧弗坎普, 洛斯 申請人:英特爾公司, 模擬設(shè)備股份有限公司