亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

壓縮編碼控制電路和壓縮編碼的控制方法

文檔序號(hào):7665733閱讀:221來(lái)源:國(guó)知局
專利名稱:壓縮編碼控制電路和壓縮編碼的控制方法
技術(shù)領(lǐng)域
本發(fā)明涉及視頻編碼技術(shù),特別涉及基于第4代運(yùn)動(dòng)圖像專家組 (MPEG4 )標(biāo)準(zhǔn)的一種壓縮編碼控制電^各和一種壓縮編石馬的控制方法。
背景技術(shù)
在實(shí)時(shí)數(shù)碼視頻流中,通常利用壓縮編碼處理單元對(duì)視頻流中的各幀進(jìn) 行基于MPEG4標(biāo)準(zhǔn)的壓縮編碼,并利用中央處理器進(jìn)行輔助調(diào)度,實(shí)現(xiàn)對(duì) 壓縮編碼的控制。
圖1為現(xiàn)有壓縮編碼控制電路的結(jié)構(gòu)示意圖。如圖l所示,該電路包括 中央處理器和壓縮編碼處理單元。
在中央處理器向壓縮編碼處理單元發(fā)送用于啟動(dòng)一幀壓縮編碼的命令 以啟動(dòng)當(dāng)前幀的壓縮編碼、并將當(dāng)前幀的控制參數(shù)發(fā)送給壓縮編碼處理單元 后,壓縮編碼處理單元接收來(lái)自中央處理器的當(dāng)前幀的控制參數(shù),并對(duì)當(dāng)前 從外部接收到的幀進(jìn)行基于MPEG4標(biāo)準(zhǔn)的壓縮編碼處理。
其中,中央處理器中預(yù)先存儲(chǔ)了所有幀的控制參數(shù);控制參數(shù)可以包括 包括I幀、P幀,用于表示對(duì)當(dāng)前幀基于MPEG4編碼所選擇的基本方式。
在壓縮編碼處理單元完成當(dāng)前幀的壓縮編碼后,向中央處理器發(fā)出表示 一幀壓縮編碼已完成的中斷,即以中斷方式通知中央處理器當(dāng)前幀的壓縮編 碼已完成,并等待中央處理器啟動(dòng)下一幀的壓縮編碼處理。
在響應(yīng)壓縮編碼處理單元的中斷后,中央處理器再次向壓縮編碼處理單 元發(fā)送用于啟動(dòng)一幀壓縮編碼的命令,以啟動(dòng)壓縮編碼處理單元的下一幀壓 縮編碼處理,并將下一幀的控制參數(shù)同時(shí)發(fā)送給壓縮編碼處理單元。
然后,壓縮編碼處理單元再接收來(lái)自中央處理器的下一幀的控制參數(shù),
即可進(jìn)行下一幀的壓縮編碼處理。
如此循環(huán),即可實(shí)現(xiàn)連續(xù)對(duì)數(shù)碼;f見(jiàn)頻流中的每一 幀進(jìn)行壓縮編碼處理。
然而,除了壓縮編碼處理單元發(fā)出的中斷之外,中央處理器通常還需要 對(duì)其他中斷進(jìn)行處理,且壓縮編碼處理單元發(fā)出的中斷在中央處理器中所具 有的中斷優(yōu)先級(jí)通常不是最高。因此,中央處理器對(duì)壓縮編碼發(fā)出的中斷進(jìn) 行響應(yīng),通常會(huì)需要一定的等待延遲,且等待延遲的時(shí)間長(zhǎng)短決定于中央處 理器的繁忙程度,從而不可控。
可見(jiàn),現(xiàn)有壓縮編碼控制電路中,每完成一幀的壓縮編碼處理后,壓縮 編碼處理單元和中央處理器之間均需要進(jìn)行一中斷通信,使得壓縮編碼處理 單元每完成一幀的壓縮編碼處理后,都需要等待一定的時(shí)間,且每次等待的 時(shí)間不一定相同,增加了壓縮處理后的連續(xù)各幀之間的時(shí)間間隔,且增加的 時(shí)間間隔不可控,從而降低了壓縮編碼處理得到的視頻流中的幀率,可能會(huì) 使得壓縮編碼處理單元壓縮編碼后的幀所構(gòu)成的視頻流,無(wú)法達(dá)到實(shí)時(shí)數(shù)碼 視頻流的要求。

發(fā)明內(nèi)容
有鑒于此,本發(fā)明的一個(gè)主要目的在于,提供一種壓縮編碼控制電路, 能夠提高壓縮編碼的幀率。
本發(fā)明的另一個(gè)主要目的在于,提供一種壓縮編碼的控制方法,能夠提 高壓縮編碼的幀率。
根據(jù)上述的一個(gè)主要目的,本發(fā)明提供了一種壓縮編碼控制電路,包括 中央處理器、壓縮編碼處理單元,
設(shè)置預(yù)設(shè)數(shù)量的多個(gè)幀為一組,在中央處理器和壓縮編碼處理單元之 間,進(jìn)一步包括批處理控制單元;
所述批處理控制單元,在中央處理器啟動(dòng)當(dāng)前一組幀的壓縮編碼、并將 該組幀的控制參數(shù)發(fā)送給批處理控制單元后,存儲(chǔ)當(dāng)前一組幀的控制參數(shù), 并啟動(dòng)壓縮編碼處理單元對(duì)該組幀中的第一幀的壓縮編碼處理,同時(shí)將存儲(chǔ)
的第 一幀的控制參數(shù)提供給壓縮編碼處理單元;
所述批處理控制單元,在壓縮編碼處理單元每完成 一 幀的壓縮編碼處理
判斷編碼處理單元當(dāng)前完成的一幀是否為當(dāng)前一組幀中的最后一個(gè);
如果不是,則啟動(dòng)壓縮編碼處理單元的下一幀壓縮編碼處理,并將存儲(chǔ) 的下 一 幀的控制參數(shù)提供給壓縮編碼處理單元;
如果是,則向中央處理器發(fā)出表示當(dāng)前一組幀的壓縮編碼已完成的中 斷,并等待中央處理器啟動(dòng)下 一 組幀的壓縮編碼處理;
中央處理器,讀取存儲(chǔ)的一組幀對(duì)應(yīng)的中斷狀態(tài)信息,并在響應(yīng)批處理 控制單元發(fā)出的所述中斷后,啟動(dòng)下一組幀的壓縮編碼處理,并將下一組幀 的控制參數(shù)發(fā)送給所述批處理控制單元。
所述批處理控制單元中,包括計(jì)數(shù)器和批處理控制中樞,
在壓縮編碼處理單元發(fā)出表示當(dāng)前幀壓縮編碼處理已完成的通知時(shí),所 述批處理控制中樞判斷出壓縮編碼處理單元完成了當(dāng)前幀的壓縮編碼處理、 所述計(jì)數(shù)器對(duì)其計(jì)數(shù)結(jié)果加1;
在所述計(jì)數(shù)結(jié)果等于當(dāng)前一組幀中的幀個(gè)數(shù)時(shí),所述批處理控制中樞判 斷出壓縮編碼處理單元完成的當(dāng)前幀為當(dāng)前一組幀中的最后一個(gè);
在中央處理器啟動(dòng)下一組幀的壓縮編碼處理時(shí),所述計(jì)數(shù)器清零。
所述批處理控制單元中進(jìn) 一 步包括存儲(chǔ)器序列;
所述存儲(chǔ)器序列中的存儲(chǔ)器數(shù)量等于或多于所述一組幀中的幀個(gè)數(shù);
當(dāng)前一組幀中的每個(gè)幀的控制參數(shù),順序存儲(chǔ)在所述存儲(chǔ)器序列中的每 個(gè)存儲(chǔ)器中;
所述批處理中樞根據(jù)所述計(jì)數(shù)器的當(dāng)前計(jì)數(shù)結(jié)果,將當(dāng)前計(jì)數(shù)結(jié)果對(duì)應(yīng) 的存儲(chǔ)器中所存儲(chǔ)的控制參數(shù),作為下 一 幀的控制參數(shù)提供給壓縮編碼處理 單元;
其中,當(dāng)前計(jì)數(shù)結(jié)果對(duì)應(yīng)的存儲(chǔ)器,在所述存儲(chǔ)器序列中的排列序號(hào)等 于當(dāng)前計(jì)數(shù)結(jié)果加一。
所述批處理控制單元中進(jìn)一步包括多路選擇器;
所述多路選擇器的每個(gè)輸入端分別連接所述存儲(chǔ)器序列中的一個(gè)存儲(chǔ)
器;
在啟動(dòng)壓縮編碼單元對(duì)下一幀的壓縮編碼處理時(shí),所述批處理控制中樞 將多路選擇器連接當(dāng)前計(jì)數(shù)結(jié)果對(duì)應(yīng)的存儲(chǔ)器的輸入端,與該多路選擇器的 輸出端導(dǎo)通。
所述批處理控制單元中進(jìn)一步包括輸入端與壓縮編碼處理單元相連、 輸出端與中央處理器相連的屏蔽阻斷器;
所述屏蔽阻斷器的輸入端,接收壓縮編碼處理單元發(fā)出的表示當(dāng)前幀的 壓縮編碼已完成的中斷;
在所述計(jì)數(shù)結(jié)果等于當(dāng)前一組幀中的幀個(gè)數(shù)時(shí),所述批處理控制中樞導(dǎo) 通所述屏蔽阻斷器的輸入端與輸出端。
所述批處理控制單元中進(jìn) 一 步包括輸入端與壓縮編碼處理單元相連、 輸出端與所述屏蔽阻斷器相連的中斷狀態(tài)存儲(chǔ)子單元,用于接收并存儲(chǔ)壓縮 編碼處理單元發(fā)送的每一幀對(duì)應(yīng)的中斷狀態(tài)信息。
所述中央處理器通過(guò)所述屏蔽阻斷器讀取所述中斷狀態(tài)存儲(chǔ)子單元中 存儲(chǔ)的一組幀對(duì)應(yīng)的中斷狀態(tài)信息。
所述中斷狀態(tài)存儲(chǔ)子單元為緩存、或先進(jìn)先出存儲(chǔ)器FIFO、或包括的 存儲(chǔ)器數(shù)量等于或多于所述一組幀中的幀個(gè)數(shù)的存儲(chǔ)器組。
據(jù)上述的另一個(gè)主要目的,本發(fā)明提供了一種壓縮編碼的控制方法,設(shè) 置預(yù)設(shè)數(shù)量的多個(gè)幀為一組,在中央處理器和壓縮編碼處理單元設(shè)置批處理 控制單元,
在中央處理器啟動(dòng)當(dāng)前一組幀的壓縮編碼、并將該組幀的控制參數(shù)發(fā)送 給批處理控制單元后,該方法包括
批處理控制單元存儲(chǔ)接收自中央處理器的當(dāng)前一組幀的控制參數(shù),并啟 動(dòng)壓縮編碼處理單元對(duì)該組幀中的第一幀的壓縮編碼處理,同時(shí)將存儲(chǔ)的笫 一幀的控制參數(shù)提供給壓縮編碼處理單元; 在壓縮編碼處理單元每完成一幀的壓縮編碼處理后,批處理控制單元接 收并存儲(chǔ)所述壓縮編碼處理單元發(fā)送的該幀對(duì)應(yīng)的中斷狀態(tài)信息,并判斷編 碼處理單元當(dāng)前完成的一幀是否為當(dāng)前一組幀中的最后一個(gè);
如果不是,則啟動(dòng)壓縮編碼處理單元的下一幀壓縮編碼處理,并將存儲(chǔ)
的下 一 幀的控制參數(shù)提供給壓縮編碼處理單元;
如果是,則向中央處理器發(fā)出表示當(dāng)前一組幀的壓縮編碼已完成的中
斷,并等待中央處理器啟動(dòng)下一組幀的壓縮編碼處理;
中央處理器讀取存儲(chǔ)的一組幀對(duì)應(yīng)的中斷狀態(tài)信息,并在響應(yīng)批處理控 制單元發(fā)出的所述中斷后,啟動(dòng)下一組幀的壓縮編碼處理,并將下一組幀的 控制參數(shù)發(fā)送給所述批處理控制單元。
在壓縮編碼處理單元發(fā)出表示當(dāng)前幀壓縮編碼處理已完成的通知時(shí),批 處理控制單元判斷出壓縮編碼處理單元完成當(dāng)前幀的壓縮編碼,并對(duì)每次接 收到的所述表示當(dāng)前幀壓縮編碼處理已完成的通知進(jìn)行計(jì)數(shù);
在所述計(jì)數(shù)結(jié)果等于當(dāng)前一組幀中的幀個(gè)數(shù)時(shí),批處理控制單元判斷出 壓縮編碼處理單元完成的當(dāng)前幀為當(dāng)前一組幀中的最后一個(gè)。
由上述技術(shù)方案可見(jiàn),本發(fā)明在中央處理器和壓縮編碼處理單元之間設(shè) 置一個(gè)批處理控制單元,先由批處理控制單元從中央處理器一次獲取到預(yù)設(shè) 數(shù)量的多個(gè)幀的控制參數(shù),然后由批處理控制單元負(fù)責(zé)啟動(dòng)壓縮編碼處理單 元的每 一 幀的壓縮編碼處理,并在壓縮編碼處理單元完成上述多個(gè)幀的壓縮
編碼處理后,再向中央處理器發(fā)出中斷,請(qǐng)求中央處理器一次啟動(dòng)后續(xù)多個(gè) 幀的壓縮編碼處理、并一次獲取后續(xù)多個(gè)幀的控制參數(shù)。
可見(jiàn),由批處理控制單元輔助壓縮編碼處理單元進(jìn)行對(duì)多幀壓縮編碼的 批處理,使得壓縮編碼處理單元不需要與中央處理器進(jìn)行中斷通信,從而使 得進(jìn)行批處理的多個(gè)幀之間的時(shí)間間隔不包括等待中央處理器響應(yīng)中斷的 等待延遲;而且,在壓縮編碼處理單元完成多個(gè)幀的壓縮編碼處理后,批處 理控制單元才與中央處理器進(jìn)行一次中斷通信,保證了與中央處理器之間的 中斷通信頻率較低,從而提高了壓縮編碼處理得到的視頻流中的幀率。


圖1為現(xiàn)有壓縮編碼控制電路的結(jié)構(gòu)示意圖。
圖2為本發(fā)明中壓縮編碼控制電路的示例性結(jié)構(gòu)圖。
圖3為本發(fā)明中批處理控制單元的結(jié)構(gòu)示意圖。
圖4為本發(fā)明中壓縮編碼的控制方法的流程示意圖。
具體實(shí)施例方式
為使本發(fā)明的目的、技術(shù)方案及優(yōu)點(diǎn)更加清楚明白,以下參照附圖并舉 實(shí)施例,對(duì)本發(fā)明進(jìn)一步詳細(xì)說(shuō)明。
本發(fā)明中,在中央處理器和壓縮編碼處理單元之間設(shè)置一個(gè)批處理控制 單元,先由批處理控制單元從中央處理器一次獲取到預(yù)設(shè)數(shù)量的多個(gè)幀的控 制參數(shù),然后由批處理控制單元負(fù)責(zé)啟動(dòng)壓縮編碼處理單元的每一幀的壓縮 編碼處理,并在壓縮編碼處理單元完成上述多個(gè)幀的壓縮編碼處理后,再向 中央處理器發(fā)出中斷,請(qǐng)求中央處理器一次啟動(dòng)后續(xù)多個(gè)幀的壓縮編碼處 理、并一次獲取后續(xù)多個(gè)幀的控制參數(shù)。
圖2為本發(fā)明中壓縮編碼控制電路的示例性結(jié)構(gòu)圖。如圖2所示,本發(fā) 明中的壓縮編碼控制電路包括中央處理器、批處理控制單元和壓縮編碼處 理單元。
批處理控制單元,在中央處理器發(fā)出用于啟動(dòng)一組幀的壓縮編碼的命令 以啟動(dòng)當(dāng)前一組幀的壓縮編碼、并將該組幀的控制參數(shù)發(fā)送給批處理控制單 元后,存儲(chǔ)接收自中央處理器的當(dāng)前一組幀中的所有幀的控制參數(shù),并啟動(dòng) 壓縮編碼處理單元對(duì)該組幀中的第一幀的壓縮編碼處理,同時(shí)將存儲(chǔ)的第一 幀的控制參數(shù)提供給壓縮編碼處理單元。
其中,預(yù)先在中央處理器和批處理控制單元中,設(shè)置預(yù)設(shè)數(shù)量的多個(gè)幀 為一組。
批處理控制單元,從該組幀中的第二幀開(kāi)始,在壓縮編碼處理單元每次
完成當(dāng)前幀的壓縮編碼后,接收并存儲(chǔ)壓縮編碼處理單元發(fā)送的當(dāng)前幀對(duì)應(yīng)
的中斷狀態(tài)信息,并判斷編碼處理單元當(dāng)前完成的 一幀是否為當(dāng)前一組幀中 的最后一個(gè)。
如果不是,則啟動(dòng)壓縮編碼處理單元對(duì)下一幀的壓縮編碼處理,并將下 一幀的控制參數(shù)提供給壓縮編碼處理單元。
如果是,則批處理控制單元向中央處理器發(fā)出表示當(dāng)前一組幀的壓縮編 碼已完成的中斷,即以中斷方式通知中央處理器,并等待中央處理器啟動(dòng)下 一組幀的壓縮編碼處理。
其中,壓縮編碼處理單元每次完成當(dāng)前幀的壓縮編碼后,都會(huì)通過(guò)中斷 方式通知批處理控制單元,并同時(shí)將當(dāng)前幀對(duì)應(yīng)的中斷狀態(tài)信息發(fā)送給批處 理控制單元。
中央處理器,讀取存儲(chǔ)的一組幀對(duì)應(yīng)的中斷狀態(tài)信息,并在響應(yīng)批處理 控制單元的中斷后,啟動(dòng)下一組幀的壓縮編碼處理,并將下一組幀中的所有 幀的控制參數(shù)發(fā)送給批處理控制單元。
如此循環(huán),即可以組為單位,實(shí)現(xiàn)連續(xù)對(duì)數(shù)碼視頻流中的每一組幀進(jìn)行 壓縮編碼批處理,以實(shí)現(xiàn)對(duì)每一 幀進(jìn)行壓縮編碼處理。
可見(jiàn),如圖2所示的壓縮編碼控制電路中,由批處理控制單元輔助壓縮
編碼處理單元進(jìn)行對(duì)多幀壓縮編碼的批處理,使得壓縮編碼處理單元不需要 與中央處理器進(jìn)行中斷通信,從而使得進(jìn)行批處理的多個(gè)幀之間的時(shí)間間隔
不包括等待中央處理器響應(yīng)中斷的等待延遲;而且,在壓縮編碼處理單元完 成多個(gè)幀的壓縮編碼處理后,批處理控制單元才與中央處理器進(jìn)行一次中斷 通信,保證了與中央處理器之間的中斷通信頻率較低,從而提高了壓縮編碼 處理得到的視頻流中的幀率。
而且,上述壓縮編碼控制電路中,只需要在已有壓縮編碼控制電路中增 加批處理控制單元,而壓縮編碼處理單元仍按照原有方式工作,即不需要對(duì) 壓縮編碼處理單元硬件結(jié)構(gòu)和內(nèi)部程序進(jìn)行任何修改;對(duì)中央處理器來(lái)說(shuō), 其硬件結(jié)構(gòu)也不需修改,只需要修改其內(nèi)部程序,使得中央處理器能夠在啟 動(dòng)下一組幀的壓縮編碼的同時(shí),能夠一次將其內(nèi)部存儲(chǔ)的一組幀中的預(yù)設(shè)數(shù)
量的所有幀的控制參數(shù)提供給批處理控制單元即可。因此,本發(fā)明提供的壓 縮編碼控制電路中,對(duì)已有壓縮編碼控制電路的修改較小,從而易于實(shí)現(xiàn)且 節(jié)省成本。
實(shí)際應(yīng)用中,批處理控制單元可通過(guò)多種方式來(lái)實(shí)現(xiàn),以下,對(duì)批處理 控制單元的 一 個(gè)較佳實(shí)施方式進(jìn)行詳細(xì)說(shuō)明。
圖3為本發(fā)明實(shí)施例中批處理控制單元的結(jié)構(gòu)示意圖。如圖3所示,本 實(shí)施例中的批處理控制單元包括批處理中樞、計(jì)數(shù)器、控制參數(shù)存儲(chǔ)器序 列、多路選擇器和屏蔽阻斷器。
其中,控制參數(shù)存儲(chǔ)器序列中包括N個(gè)存儲(chǔ)器,預(yù)設(shè)的一組幀中的包 括M個(gè)幀,M為大于l的正整數(shù)、N為大于等于M的正整數(shù),每一組幀中 的第i個(gè)幀的控制參數(shù),存儲(chǔ)在存儲(chǔ)器序列中的第i個(gè)存儲(chǔ)器中,i為大于等 于1且小于等于M的正整數(shù)。
第i個(gè)存儲(chǔ)器與多路選擇器的第i個(gè)輸入端相連,多路選擇器的輸出端 與外部壓縮編碼處理單元相連。
批處理控制中樞,用于在壓縮編碼處理單元完成當(dāng)前幀的壓縮編碼處 理、且當(dāng)前幀不為M個(gè)幀中的最后一個(gè)時(shí),啟動(dòng)壓縮編碼處理單元對(duì)每一 幀的壓縮編碼處理;在壓縮編碼處理單元完成M個(gè)幀的壓縮編碼處理時(shí), 向中央處理器發(fā)送表示一組幀的壓縮編碼處理已完成的中斷。
計(jì)數(shù)器,用于對(duì)壓縮編碼處理單元已完成壓縮編碼的幀進(jìn)行累加計(jì)數(shù), 其計(jì)數(shù)結(jié)果表示當(dāng)前一組M個(gè)幀中已完成壓縮編碼的幀個(gè)數(shù)。
具體來(lái)說(shuō),在壓縮編碼處理單元以中斷方式發(fā)出表示當(dāng)前幀的壓縮編碼 處理已完成的通知時(shí),批處理控制中樞根據(jù)接收到的該通知,能夠判斷出壓 縮編碼處理單元完成了當(dāng)前幀的壓縮編碼;同時(shí),計(jì)數(shù)器根據(jù)接收到的該通 知,對(duì)其計(jì)數(shù)結(jié)果加1。
在判斷出壓縮編碼處理單元完成了當(dāng)前幀的壓縮編碼后,批處理控制中 樞查看計(jì)數(shù)器的計(jì)數(shù)結(jié)果,并根據(jù)計(jì)數(shù)結(jié)果判斷壓縮編碼處理單元完成的當(dāng) 前幀是否為當(dāng)前一組M個(gè)幀中的最后一個(gè)。 如果計(jì)數(shù)結(jié)果j小于M, j為大于等于O且小于等于M的正整數(shù),則判 斷出壓縮編碼處理單元完成的當(dāng)前幀不是當(dāng)前一組M個(gè)幀中的最后一個(gè), 批處理控制中樞啟動(dòng)壓縮編碼處理單元的下一幀,即第j+l個(gè)幀的壓縮編碼 處理,同時(shí),導(dǎo)通多路選擇器的第j+l個(gè)輸入端與其輸出端,使得壓縮編碼 處理單元能夠獲取存儲(chǔ)在第j+l個(gè)存儲(chǔ)器中的第j+l個(gè)幀的控制參數(shù)。
實(shí)際應(yīng)用中,可以由批處理控制中樞將存儲(chǔ)在第j+l個(gè)存儲(chǔ)器中的第j+l 個(gè)幀的控制參數(shù),通過(guò)多路選擇器主動(dòng)發(fā)送給壓縮編碼處理單元,也可以由 壓縮編碼處理單元主動(dòng)從第j+l個(gè)存儲(chǔ)器讀??;批處理控制單元中也可以不 包括多路選擇器,而是由批處理控制中樞直接將存儲(chǔ)在第j+l個(gè)存儲(chǔ)器中的 第j+l個(gè)幀的控制參數(shù)發(fā)送給壓縮編碼處理單元。
如果計(jì)數(shù)器的計(jì)數(shù)結(jié)果等于M,則判斷出壓縮編碼處理單元完成的當(dāng)前 幀為當(dāng)前一組M個(gè)幀中的對(duì)后一個(gè),即一組幀的壓縮編碼處理均已完成, 則批處理控制中樞導(dǎo)通屏蔽阻斷器的輸入端與輸出端。
屏蔽阻斷器的輸入端與壓縮編碼處理單元相連、輸出端與中央處理器相 連。屏蔽阻斷器的輸入端接收壓縮編碼處理單元發(fā)出的當(dāng)前幀壓縮編碼已完 成的中斷。
在批處理控制中樞導(dǎo)通屏蔽阻斷器的輸入端與輸出端時(shí),中央處理器能 夠接收到壓縮編碼處理單元發(fā)出的當(dāng)前幀壓縮編碼已完成的中斷,并根據(jù)該 中斷確認(rèn)當(dāng)前一組M個(gè)幀的壓縮編碼處理均已完成,并向批處理控制單元 的批處理控制中樞發(fā)出用于啟動(dòng)下一組M個(gè)幀的壓縮編碼處理的命令,以 啟動(dòng)下一組M個(gè)幀的壓縮編碼處理,并將下一組M個(gè)幀的控制參數(shù)發(fā)送到 控制參數(shù)存儲(chǔ)序列,即將下一組M個(gè)幀中第i個(gè)幀的控制參數(shù)發(fā)送到存儲(chǔ)器 序列的第i個(gè)存儲(chǔ)器存儲(chǔ)。
同時(shí),中央處理器還將用于啟動(dòng)下一組M個(gè)幀的壓縮編碼處理的命令 發(fā)送給批處理控制單元的計(jì)數(shù)器,對(duì)其清零。
對(duì)于包括一定數(shù)量幀的視頻流來(lái)說(shuō),每組幀中的幀數(shù)量越多,即M越 大,每次批處理的幀數(shù)量決多,批處理控制單元與中央處理器之間的中斷通
信次數(shù)越少,即中斷通信頻率越低。但對(duì)于M個(gè)幀的控制參數(shù),在批處理 控制單元中需要設(shè)置相應(yīng)數(shù)量的存儲(chǔ)器,批處理控制單元的成本也會(huì)隨之提 高。因此,可結(jié)合實(shí)際硬件成本和實(shí)際幀率的需要,在平衡二者的前提下來(lái)
決定每組幀中的幀數(shù)量,即M的大小。
實(shí)際應(yīng)用中,用于存儲(chǔ)一組M個(gè)幀的控制參數(shù)的控制參數(shù)存儲(chǔ)序列, 也可以替換為一個(gè)存儲(chǔ)器。在獲知每個(gè)幀的控制參數(shù)大小的情況下,批處理 控制中樞可以通過(guò)尋址的方式從該存儲(chǔ)器中讀取對(duì)應(yīng)的控制參數(shù),并發(fā)送給 壓縮編碼處理單元。
本實(shí)施例中,壓縮編碼處理單元發(fā)出表示當(dāng)前幀的壓縮編碼處理已完成 的通知為中斷。通常情況下,壓縮編碼處理單元在以中斷方式表示其對(duì)當(dāng)前 幀的壓縮編碼處理已完成時(shí),還會(huì)輸出對(duì)當(dāng)前幀進(jìn)行壓縮編碼處理的狀態(tài)信 息,以供中央處理器參考。中央處理器參考狀態(tài)信息后,可調(diào)整相應(yīng)的控制
參數(shù)o
因此,本發(fā)明實(shí)施例中如圖3所示的批處理控制單元中,還包括一個(gè)中 斷狀態(tài)存儲(chǔ)子單元,其輸入端與壓縮編碼處理單元相連、輸出端與屏蔽阻斷 器相連。
中斷狀態(tài)存儲(chǔ)子單元,用于接收并存儲(chǔ)壓縮編碼處理單元發(fā)送的對(duì)每個(gè) 幀進(jìn)行壓縮編碼處理所得到的中斷狀態(tài)信息。
在批處理控制中樞導(dǎo)通屏蔽阻斷器的輸入端與輸出端時(shí),中央處理器即 可通過(guò)屏蔽阻斷器從中斷狀態(tài)存儲(chǔ)子單元中,讀取其存儲(chǔ)的對(duì)當(dāng)前一組M 個(gè)幀進(jìn)行壓縮編碼處理后得到的中斷狀態(tài)信息。
其中,中斷狀態(tài)存儲(chǔ)單元可以為緩存、或先進(jìn)先出存儲(chǔ)器(FIFO)、 或至少包括M個(gè)存儲(chǔ)器的存儲(chǔ)器組。
以上,是對(duì)本發(fā)明中壓縮編碼控制電路的詳細(xì)說(shuō)明。下面,對(duì)本發(fā)明中 壓縮編碼的控制方法進(jìn)行說(shuō)明。
本發(fā)明中壓縮編碼的控制方法中,預(yù)先設(shè)置預(yù)設(shè)數(shù)量的多個(gè)幀為一組, 并在中央處理器和壓縮編碼處理單元設(shè)置批處理控制單元。
圖4為本發(fā)明中壓縮編碼的控制方法的流程示意圖。在中央處理器啟動(dòng)
當(dāng)前一組幀的壓縮編碼、并將該組幀的控制參數(shù)發(fā)送給批處理控制單元后,
如圖4所示,本發(fā)明中壓縮編碼的控制方法包括以下步驟
步驟401,批處理控制單元存儲(chǔ)接收自中央處理器的當(dāng)前一組幀的控制參數(shù)。
步驟402,批處理控制單元啟動(dòng)壓縮編碼處理單元對(duì)該組幀中的第一幀 的壓縮編碼處理,同時(shí)將存儲(chǔ)的第一幀的控制參數(shù)提供給壓縮編碼處理單 元。
步驟403,在壓縮編碼處理單元每次完成當(dāng)前幀的壓縮編碼后,批處理 控制單元接收并存儲(chǔ)所述壓縮編碼處理單元發(fā)送的該幀對(duì)應(yīng)的中斷狀態(tài)信 息,并判斷編碼處理單元當(dāng)前完成的一幀是否為當(dāng)前一組幀中的最后一個(gè), 如果不是,則執(zhí)行步驟404;如果是,則執(zhí)行步驟405。
本步驟中,在壓縮編碼處理單元發(fā)出表示當(dāng)前幀壓縮編碼處理已完成的 通知時(shí),批處理控制單元判斷出壓縮編碼處理單元完成了當(dāng)前幀的壓縮編 碼,并同時(shí)對(duì)接收到的表示當(dāng)前幀壓縮編碼處理已完成的通知進(jìn)行計(jì)數(shù)。
在計(jì)數(shù)結(jié)果等于當(dāng)前一組幀中的幀個(gè)數(shù)時(shí),批處理控制單元判斷出壓縮 編碼處理單元完成的當(dāng)前幀為當(dāng)前一組巾貞中的最后一個(gè)。
步驟404,啟動(dòng)壓縮編碼處理單元的下一幀壓縮編碼,并將下一幀的控 制參數(shù)提供給壓縮編碼處理單元,并返回步驟403。
步驟405 ,批處理控制單元向中央處理器發(fā)出表示當(dāng)前一組幀的壓縮編 碼已完成的中斷,并等待中央處理器啟動(dòng)下一組幀的壓縮編碼處理,并繼續(xù) 執(zhí)行步驟406。
步驟406,中央處理器讀取存儲(chǔ)的一組幀對(duì)應(yīng)的中斷狀態(tài)信息,并在響 應(yīng)批處理控制單元的中斷后,啟動(dòng)下一組幀的壓縮編碼處理,并將下一組幀 中的所有幀的控制參數(shù)發(fā)送給所述批處理控制單元。
至此,本流程結(jié)束。
上述流程中,可以在步驟406之后返回步驟401,循環(huán)執(zhí)行該流程,即
可以組為單位,實(shí)現(xiàn)連續(xù)對(duì)數(shù)碼視頻流中的每一組幀進(jìn)行壓縮編碼批處理, 以實(shí)現(xiàn)對(duì)每一幀進(jìn)行壓縮編碼處理。
可見(jiàn),上述流程中,由批處理控制單元輔助壓縮編碼處理單元進(jìn)行對(duì)多 巾貞壓縮編碼的批處理,使得壓縮編碼處理單元不需要與中央處理器進(jìn)行中斷 通信,從而使得進(jìn)行批處理的多個(gè)幀之間的時(shí)間間隔不包括等待中央處理器
響應(yīng)中斷的等待延遲;而且,在壓縮編碼處理單元完成多個(gè)幀的壓縮編碼處 理后,批處理控制單元才與中央處理器進(jìn)行一次中斷通信,保證了與中央處 理器之間的中斷通信頻率較低,從而提高了壓縮編碼處理得到的視頻流中的 幀率。
實(shí)際應(yīng)用中,為了將壓縮編碼處理單元對(duì)每幀進(jìn)行壓縮編碼處理后得到 的狀態(tài)信息提供給中央處理器,在執(zhí)行上述流程的同時(shí),批處理控制單元還 可以在壓縮編碼處理單元發(fā)出表示當(dāng)前幀壓縮編碼處理已完成的通知時(shí),接 收并存儲(chǔ)壓縮編碼處理單元發(fā)送的中斷狀態(tài)信息;并在計(jì)數(shù)結(jié)果等于當(dāng)前一 組幀中的幀個(gè)數(shù)時(shí),將存儲(chǔ)的所述中斷狀態(tài)信息提供給外部。
以上所述僅為本發(fā)明的較佳實(shí)施例而已,并非用于限定本發(fā)明的保護(hù)范 圍。凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換以及改進(jìn)等, 均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
權(quán)利要求
1、一種壓縮編碼控制電路,包括中央處理器、壓縮編碼處理單元,其特征在于,設(shè)置預(yù)設(shè)數(shù)量的多個(gè)幀為一組,在中央處理器和壓縮編碼處理單元之間,進(jìn)一步包括批處理控制單元;所述批處理控制單元,在中央處理器啟動(dòng)當(dāng)前一組幀的壓縮編碼、并將該組幀的控制參數(shù)發(fā)送給批處理控制單元后,存儲(chǔ)當(dāng)前一組幀的控制參數(shù),并啟動(dòng)壓縮編碼處理單元對(duì)該組幀中的第一幀的壓縮編碼處理,同時(shí)將存儲(chǔ)的第一幀的控制參數(shù)提供給壓縮編碼處理單元;所述批處理控制單元,在壓縮編碼處理單元每完成一幀的壓縮編碼處理后,接收并存儲(chǔ)所述壓縮編碼處理單元發(fā)送的該幀對(duì)應(yīng)的中斷狀態(tài)信息,并判斷編碼處理單元當(dāng)前完成的一幀是否為當(dāng)前一組幀中的最后一個(gè);如果不是,則啟動(dòng)壓縮編碼處理單元的下一幀壓縮編碼處理,并將存儲(chǔ)的下一幀的控制參數(shù)提供給壓縮編碼處理單元;如果是,則向中央處理器發(fā)出表示當(dāng)前一組幀的壓縮編碼已完成的中斷,并等待中央處理器啟動(dòng)下一組幀的壓縮編碼處理;中央處理器,讀取存儲(chǔ)的一組幀對(duì)應(yīng)的中斷狀態(tài)信息,并在響應(yīng)批處理控制單元發(fā)出的所述中斷后,啟動(dòng)下一組幀的壓縮編碼處理,并將下一組幀的控制參數(shù)發(fā)送給所述批處理控制單元。
2、 如權(quán)利要求l所述的電路,其特征在于,所述批處理控制單元中, 包括計(jì)數(shù)器和批處理控制中樞,在壓縮編碼處理單元發(fā)出表示當(dāng)前幀壓縮編碼處理已完成的通知時(shí),所 述批處理控制中樞判斷出壓縮編碼處理單元完成了當(dāng)前幀的壓縮編碼處理、 所述計(jì)數(shù)器對(duì)其計(jì)數(shù)結(jié)果加1;在所述計(jì)數(shù)結(jié)果等于當(dāng)前一組幀中的幀個(gè)數(shù)時(shí),所述批處理控制中樞判 斷出壓縮編碼處理單元完成的當(dāng)前幀為當(dāng)前一組幀中的最后一個(gè);在中央處理器啟動(dòng)下一組幀的壓縮編碼處理時(shí),所述計(jì)數(shù)器清零。
3、 如權(quán)利要求2所述的電路,其特征在于,所述批處理控制單元中進(jìn)一步包括存儲(chǔ)器序列;所述存儲(chǔ)器序列中的存儲(chǔ)器數(shù)量等于或多于所述一組幀中的幀個(gè)數(shù); 當(dāng)前一組幀中的每個(gè)幀的控制參數(shù),順序存儲(chǔ)在所述存儲(chǔ)器序列中的每個(gè)存儲(chǔ)器中;所述批處理中樞根據(jù)所述計(jì)數(shù)器的當(dāng)前計(jì)數(shù)結(jié)果,將當(dāng)前計(jì)數(shù)結(jié)果對(duì)應(yīng) 的存儲(chǔ)器中所存儲(chǔ)的控制參數(shù),作為下 一幀的控制參數(shù)提供給壓縮編碼處理 單元;其中,當(dāng)前計(jì)數(shù)結(jié)果對(duì)應(yīng)的存儲(chǔ)器,在所述存儲(chǔ)器序列中的排列序號(hào)等 于當(dāng)前計(jì)數(shù)結(jié)果加一。
4、 如權(quán)利要求3所述的電路,其特征在于,所述批處理控制單元中進(jìn) 一步包括多路選擇器;所述多路選擇器的每個(gè)輸入端分別連接所述存儲(chǔ)器序列中的一個(gè)存儲(chǔ)器;在啟動(dòng)壓縮編碼單元對(duì)下一幀的壓縮編碼處理時(shí),所述批處理控制中樞 將多路選擇器連接當(dāng)前計(jì)數(shù)結(jié)果對(duì)應(yīng)的存儲(chǔ)器的輸入端,與該多路選擇器的 輸出端導(dǎo)通。
5、 如權(quán)利要求2至4中任意一項(xiàng)所述的電路,其特征在于,所述批處 理控制單元中進(jìn)一步包括輸入端與壓縮編碼處理單元相連、輸出端與中央 處理器相連的屏蔽阻斷器;所述屏蔽阻斷器的輸入端,接收壓縮編碼處理單元發(fā)出的表示當(dāng)前幀的 壓縮編碼已完成的中斷;在所述計(jì)數(shù)結(jié)果等于當(dāng)前一組幀中的幀個(gè)數(shù)時(shí),所述批處理控制中樞導(dǎo) 通所述屏蔽阻斷器的輸入端與輸出端。
6、 如權(quán)利要求5所述的電路,其特征在于,所述批處理控制單元中進(jìn) 一步包括輸入端與壓縮編碼處理單元相連、輸出端與所述屏蔽阻斷器相連 的中斷狀態(tài)存儲(chǔ)子單元,用于接收并存儲(chǔ)壓縮編碼處理單元發(fā)送的每一幀對(duì)應(yīng)的中斷狀態(tài)信息。
7、 如權(quán)利要求6所述的電路,其特征在于,所述中央處理器通過(guò)所述 信息。
8、 如權(quán)利要求6所述的電路,其特征在于,所述中斷狀態(tài)存儲(chǔ)子單元 為緩存、或先進(jìn)先出存儲(chǔ)器FIFO、或包括的存儲(chǔ)器數(shù)量等于或多于所述一 組幀中的幀個(gè)數(shù)的存儲(chǔ)器組。
9、 一種壓縮編碼的控制方法,其特征在于,設(shè)置預(yù)設(shè)數(shù)量的多個(gè)幀為 一組,在中央處理器和壓縮編碼處理單元設(shè)置批處理控制單元,在中央處理器啟動(dòng)當(dāng)前一組幀的壓縮編碼、并將該組幀的控制參數(shù)發(fā)送 給批處理控制單元后,該方法包括批處理控制單元存儲(chǔ)接收自中央處理器的當(dāng)前一組幀的控制參數(shù),并啟 動(dòng)壓縮編碼處理單元對(duì)該組幀中的第一幀的壓縮編碼處理,同時(shí)將存儲(chǔ)的第 一幀的控制參數(shù)提供給壓縮編碼處理單元;在壓縮編碼處理單元每完成一幀的壓縮編碼處理后,批處理控制單元接 收并存儲(chǔ)所述壓縮編碼處理單元發(fā)送的該幀對(duì)應(yīng)的中斷狀態(tài)信息,并判斷編 碼處理單元當(dāng)前完成的一幀是否為當(dāng)前一組幀中的最后一個(gè);如果不是,則啟動(dòng)壓縮編碼處理單元的下一幀壓縮編碼處理,并將存儲(chǔ) 的下 一 幀的控制參數(shù)提供給壓縮編碼處理單元;如果是,則向中央處理器發(fā)出表示當(dāng)前一組幀的壓縮編碼已完成的中 斷,并等待中央處理器啟動(dòng)下一組幀的壓縮編碼處理;中央處理器讀取存儲(chǔ)的一組幀對(duì)應(yīng)的中斷狀態(tài)信息,并在響應(yīng)批處理控 制單元發(fā)出的所述中斷后,啟動(dòng)下一組幀的壓縮編碼處理,并將下一組幀的 控制參數(shù)發(fā)送給所述批處理控制單元。
10、 如權(quán)利要求9所述的方法,其特征在于,在壓縮編碼處理單元發(fā)出表示當(dāng)前幀壓縮編碼處理已完成的通知時(shí),批 處理控制單元判斷出壓縮編碼處理單元完成當(dāng)前幀的壓縮編碼,并對(duì)每次接收到的所述表示當(dāng)前幀壓縮編碼處理已完成的通知進(jìn)行計(jì)數(shù);在所述計(jì)數(shù)結(jié)果等于當(dāng)前一組幀中的幀個(gè)數(shù)時(shí),批處理控制單元判斷出 壓縮編碼處理單元完成的當(dāng)前幀為當(dāng)前一組幀中的最后一個(gè)。
全文摘要
本發(fā)明公開(kāi)了一種壓縮編碼控制電路和一種壓縮編碼的控制方法。本發(fā)明在中央處理器和壓縮編碼處理單元之間設(shè)置一個(gè)批處理控制單元,由批處理控制單元輔助壓縮編碼處理單元進(jìn)行對(duì)多幀壓縮編碼的批處理,使得壓縮編碼處理單元不需要與中央處理器進(jìn)行中斷通信,從而使得進(jìn)行批處理的多個(gè)幀之間的時(shí)間間隔不包括等待中央處理器響應(yīng)中斷的等待延遲;而且,在壓縮編碼處理單元完成多個(gè)幀的壓縮編碼處理后,批處理控制單元才與中央處理器進(jìn)行一次中斷通信,保證了與中央處理器之間的中斷通信頻率較低,從而提高了壓縮編碼處理得到的視頻流中的幀率。
文檔編號(hào)H04N7/26GK101179727SQ20071017944
公開(kāi)日2008年5月14日 申請(qǐng)日期2007年12月13日 優(yōu)先權(quán)日2007年12月13日
發(fā)明者陳東瑛 申請(qǐng)人:北京中星微電子有限公司
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1