專利名稱:面向視頻處理的多數(shù)字信號(hào)處理器調(diào)度優(yōu)化方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種由多個(gè)數(shù)字信號(hào)處理器(以下簡(jiǎn)稱為DSP)組成 的數(shù)字視頻處理系統(tǒng)的調(diào)度優(yōu)化方法。該方法針對(duì)視頻處理要求計(jì)算 能力強(qiáng)的特點(diǎn),在保證計(jì)算精度和處理范圍的同時(shí),提高了并行處理的 計(jì)算速度,屬于數(shù)字視頻處理技術(shù)領(lǐng)域。
背景技術(shù):
數(shù)字視頻處理技術(shù)廣泛應(yīng)用于偵察監(jiān)視、安防控和航空測(cè)繪等
領(lǐng)域,特別是在陰天、雨天、霧天等復(fù)雜天候下的遠(yuǎn)程監(jiān)控系統(tǒng)中發(fā)
揮了重要的作用。由于在個(gè)遠(yuǎn)程數(shù)字視頻監(jiān)控系統(tǒng)中,從視頻的獲
取到視頻的處理、接收、顯示等,每一個(gè)環(huán)節(jié)都會(huì)受到干擾,導(dǎo)致犾
取視頻質(zhì)量降低。比如說,鏡頭的抖動(dòng)會(huì)影響視頻圖像的質(zhì)量亞 , 'Qi、劣
的天氣會(huì)使視頻存在目標(biāo)和背景混淆現(xiàn)象,隔行掃描的視頻采集方式 將不可避免地出現(xiàn)場(chǎng)效應(yīng)問題,視頻數(shù)據(jù)量急劇增加也遠(yuǎn)遠(yuǎn)超過了傳 輸信道帶寬和存儲(chǔ)容量的增長(zhǎng)速度,致使傳輸受限。因此,對(duì)原始視 頻進(jìn)行一些清晰化處理是十分必要的。
由于數(shù)字視頻處理本身的復(fù)雜度高,以及采樣速率和處理精度的
不斷提高,對(duì)運(yùn)算速度的要求也相應(yīng)提高, 一般的PC機(jī)己不能滿足處 理需求,而DSP的高速發(fā)展為實(shí)現(xiàn)高效的視頻處理提供了可能性。在 一些數(shù)據(jù)量較大、預(yù)處理功能較多的應(yīng)用中,例如對(duì)于高幀率、大尺寸 的視頻序列的實(shí)時(shí)處理,往往要求每秒幾十億次的運(yùn)算能力,目前單片 DSP的運(yùn)算能力不可能滿足其要求,這就需要信號(hào)處理板在設(shè)計(jì)時(shí)采用多 DSP并行處理結(jié)構(gòu),以滿足系統(tǒng)對(duì)運(yùn)算量的要求。
多DSP并行處理結(jié)構(gòu)可充分挖掘信號(hào)處理算法本身所固有的并行 性與并發(fā)性,將一個(gè)任務(wù)分成若干子任務(wù),分別由多片DSP進(jìn)行并行 處理,從而大幅提高了系統(tǒng)對(duì)數(shù)據(jù)的處理速度。但由于DSP處理器數(shù) 據(jù)接口特性的限制,高數(shù)據(jù)量的視頻數(shù)據(jù)在多DSP之間的通信很難滿 足實(shí)時(shí)性要求,所以,選擇一個(gè)合適的DSP間通信方案是保證多DSP 處理器系統(tǒng)并行處理的關(guān)鍵。目前,DSP處理器之間的數(shù)據(jù)傳輸有兩種方式 一種采用專用的 點(diǎn)對(duì)點(diǎn)通信通道,另一種采用共享全局存儲(chǔ)器。利用鏈路口可以實(shí)現(xiàn) DSP之間的點(diǎn)對(duì)點(diǎn)通信,具有高速率的特點(diǎn),但是其控制模式單一, 局限性大, 一般在同型號(hào)DSP之間且傳輸要求不高的情況下可以選用
鏈路口直連的通信方式,不同型號(hào)的DSP由于鏈路口的類別不同,不 易使用此方式進(jìn)行通信。全局存儲(chǔ)器雙端口 RAM實(shí)現(xiàn)相鄰DSP之間的 數(shù)據(jù)傳輸,接口簡(jiǎn)單,通過數(shù)據(jù)線、地址線和控制線進(jìn)行相應(yīng)的連接, 不需要額外的控制邏輯,可以實(shí)現(xiàn)在不同型號(hào)DSP之間的數(shù)據(jù)雙向通 信,但是數(shù)據(jù)是以串行模式進(jìn)行傳輸,傳輸速度較慢,達(dá)不到系統(tǒng)傳 輸要求。根據(jù)芯片的外設(shè)與接口特性,還可以選用多通道緩沖串行口 (McBSP)或者主豐幾接□ (Host Port Interface, HPI),這兩禾中連接方式 都可以增加系統(tǒng)節(jié)點(diǎn)數(shù)目的規(guī)模,從而增加系統(tǒng)的擴(kuò)展性,提高整體 的傳輸速度,是對(duì)共享全局存儲(chǔ)器傳輸方式的一種補(bǔ)充,不同型號(hào)DSP 之間的數(shù)據(jù)快速雙向通信適合用于此傳輸模式。
在公開號(hào)為CN101163129的中國(guó)發(fā)明專利申請(qǐng)中,公開了一種降 低并行多DSP之間消息傳遞開銷的方法。該方法中,各DSP之間通過 LINK口收發(fā)數(shù)據(jù),發(fā)送方DSP在發(fā)送數(shù)據(jù)前,首先發(fā)送一個(gè)控制幀指 明后面所發(fā)數(shù)據(jù)類型及長(zhǎng)度等,接收方DSP根據(jù)所收到幀的類型和長(zhǎng) 度設(shè)置相應(yīng)的接收地址及接收數(shù)據(jù)長(zhǎng)度,然后發(fā)送方DSP再發(fā)送實(shí)際 的數(shù)據(jù)幀,這樣就可以把數(shù)據(jù)直接傳輸?shù)侥康牡?,無需雙緩沖區(qū),既 節(jié)省了存儲(chǔ)空間,又省去了數(shù)據(jù)拷貝時(shí)間。
總體而言,現(xiàn)有技術(shù)都是通過減少數(shù)據(jù)量、優(yōu)化代碼或者增加硬 件器件的方法來減少計(jì)算時(shí)間,但是在實(shí)際應(yīng)用中仍然存在明顯的不 足。例如減少數(shù)據(jù)量雖提高了速度,但卻降低了處理效果;增加硬件器 件也會(huì)增加硬件資源開銷,導(dǎo)致資源利用不充分的現(xiàn)象。在此背景下, 需要研究一種針對(duì)多DSP并行處理的調(diào)度優(yōu)化方法,以便在保證計(jì)算精 度和處理范圍的同時(shí),有效提高并行處理的計(jì)算速度。
發(fā)明內(nèi)容
針對(duì)現(xiàn)有技術(shù)在并行處理調(diào)度方面所存在的不足,本發(fā)明的目的在 于提出一種面向視頻處理的多DSP調(diào)度優(yōu)化方法。該方法通過對(duì)多DSP 之間的通信以及DSP片內(nèi)空間分配進(jìn)行優(yōu)化調(diào)度,有效提高了多DSP并行處理的計(jì)算速度。
為實(shí)現(xiàn)上述的發(fā)明目的,本發(fā)明采用下述的技術(shù)方案 一種面向視頻處理的多DSP調(diào)度優(yōu)化方法,將視頻處理工作進(jìn)行
分解,分別由一片主DSP和至少兩片輔助DSP進(jìn)行處理,其特征在于
包括如下的步驟
(1) 待處理的視頻數(shù)據(jù)首先通過Video Port端口進(jìn)入到第一輔助 DSP,在第一輔助DSP上進(jìn)行格式轉(zhuǎn)換和視頻穩(wěn)定處理;
(2) 通過Video Port端口直連的方式將處理后的數(shù)據(jù)傳送到主DSP 上進(jìn)行視頻去隔行和增強(qiáng)處理;
(3) 所述主DSP將處理后的視頻數(shù)據(jù)通過Host Port Interface端 口傳送到第二輔助DSP進(jìn)行視頻編碼處理,并將編碼后的碼流通過Host Port Interface端口回傳至廿主DSP上;
(4) 所述主DSP以主DMA模式將處理后的視頻數(shù)據(jù)與編碼后的碼流 共同對(duì)外輸出。
其中所述主DSP為具有Video Port端口和DMA控制器的DSP,所述 第一輔助DSP為具有Video Port端口的DSP,所述第二輔助DSP采用具 有Host Port Interface端口的DSP。
所述主DSP的片內(nèi)存儲(chǔ)空間被劃分為多個(gè)單元,將一幀待處理視頻 數(shù)據(jù)劃分為多個(gè)視頻塊,在主DSP內(nèi)直接使用片內(nèi)存儲(chǔ)空間中的各單元 對(duì)所述視頻塊進(jìn)行處理和存儲(chǔ)。
具體而言,所述主DSP的片內(nèi)存儲(chǔ)空間至少劃分為以下四個(gè)單元
代碼單元用于存放代碼和程序運(yùn)行空間;
數(shù)據(jù)存儲(chǔ)單元用于存放視頻去隔行和增強(qiáng)處理過程中的中間數(shù)據(jù); 傳輸單元用于存放所述清晰化后的視頻數(shù)據(jù); 碼流單元用于存放編碼后回傳的碼流數(shù)據(jù)。
所述視頻塊在主DSP的片內(nèi)存儲(chǔ)空間中的通信包括如下步驟
(l')判斷是否有碼流回傳中斷,若有,則通過Host Port Interface 端口將編碼后的碼流回傳到碼流單元,并以主DMA模式將所述編碼后的 碼流輸出;若沒有,執(zhí)行步驟(2');
(2')所述視頻去隔行功能將當(dāng)前視頻塊與相鄰兩場(chǎng)以及前前場(chǎng)的 四場(chǎng)視頻塊從數(shù)據(jù)存儲(chǔ)單元中取出進(jìn)行處理,然后再進(jìn)行增強(qiáng)處理,得
6到經(jīng)過視頻去隔行和增強(qiáng)后的視頻塊數(shù)據(jù);
(3')與步驟(2')同時(shí),將傳輸單元中存儲(chǔ)的上次處理后的視 頻塊數(shù)據(jù)通過Host Port Interface端口傳往第二輔助DSP,同時(shí)以主 DMA模式輸出;
(4')待步驟(2')和(3')執(zhí)行完畢后,將步驟(2')中得 到的視頻塊數(shù)據(jù)存入傳輸單元。
其中所述步驟(l')的碼流數(shù)據(jù)量小于或等于碼流單元的空間時(shí), 將碼流一次性傳到碼流單元的空間,反之,根據(jù)碼流單元的空間大小將 碼流拆分為多個(gè)碼流塊進(jìn)行多次傳輸。
本發(fā)明所提供的多DSP調(diào)度優(yōu)化方法通過對(duì)現(xiàn)有各DSP之間以及 DSP片內(nèi)通信技術(shù)的改進(jìn),在保證計(jì)算精度和處理范圍的同時(shí),提高了多 功能并行處理的計(jì)算速度;另外,良好的硬件接口通信,也提高了抗局 部干擾的能力。
下面結(jié)合附圖和具體實(shí)施方式
對(duì)本發(fā)明作進(jìn)一步的說明。 圖1是本發(fā)明中多個(gè)DSP實(shí)現(xiàn)并行處理的系統(tǒng)結(jié)構(gòu)示意圖; 圖2是SAF7113與DM642信號(hào)連接示意圖; 圖3是雙DM642的VP 口通信電路連接圖; 圖4是主從DSP的HPI 口通信電路連接圖5是MASTER寫操作時(shí),從源地址向DSP內(nèi)部的FIFO搬移數(shù)據(jù)的 示意圖6是DM642-2片內(nèi)空間實(shí)現(xiàn)通信的流程示意圖。
具體實(shí)施例方式
常見的數(shù)字視頻處理算法包括格式轉(zhuǎn)換、視頻穩(wěn)定、視頻去隔行、 視頻增強(qiáng)、視頻編碼等。下面分別簡(jiǎn)單說明如下.-
(1) 格式轉(zhuǎn)換例如將尺寸為720X 576格式為YUV422 (Y: U: V = 4: 2: 2)的數(shù)字視頻轉(zhuǎn)換為尺寸為704X576格式為YUV420 (Y: U: V =
4: 1: 1)方便于顯示的數(shù)字視頻。
(2) 視頻穩(wěn)定用于對(duì)視頻的二維實(shí)時(shí)穩(wěn)定處理,消除視頻幀間的 不規(guī)則運(yùn)動(dòng),采用基于全局運(yùn)動(dòng)估計(jì)的視頻穩(wěn)定方法。
(3) 視頻去隔行用于將隔行視頻信號(hào)轉(zhuǎn)換成逐行視頻信號(hào),采用基于待處理場(chǎng)與所述相鄰兩場(chǎng)及前前場(chǎng)的四場(chǎng)之間運(yùn)動(dòng)檢測(cè)的去隔行處 理方法。
(4) 視頻增強(qiáng)用于增強(qiáng)視頻圖像的邊緣、輪廓等高頻信息,采用 原始視頻圖像與處理后視頻圖像相除得到放大參數(shù),然后將所述原始視 頻圖像的每個(gè)分量值乘以所述放大參數(shù)來得到最終結(jié)果視頻圖像的增強(qiáng) 方法。
(5) 視頻編碼例如釆用基于H. 264標(biāo)準(zhǔn)的高壓縮比編碼。
上述各項(xiàng)數(shù)字視頻處理算法對(duì)計(jì)算速度的要求各有不同。以尺寸為
704X576格式為YL1V420 (Y: U: V = 4: 1: 1)的一幀視頻數(shù)據(jù)為例,格 式轉(zhuǎn)換大概耗用10MIPS (Million Instructions Per Second),視頻穩(wěn) 定大概耗用120MIPS,視頻增強(qiáng)大概耗用60MIPS,視頻去隔行大概耗用 50MIPS, H. 264編碼大概耗用300MIPS。
在實(shí)際進(jìn)行視頻采集的情況下,特別是在實(shí)時(shí)工作條件下,由多個(gè) DSP組成的數(shù)字視頻處理系統(tǒng)必須在保證計(jì)算準(zhǔn)確性的同時(shí),還具有很 高的計(jì)算速度、很強(qiáng)的抗干擾性和很好的容錯(cuò)能力。本發(fā)明通過對(duì)現(xiàn)有 各DSP之間以及DSP片內(nèi)調(diào)度通信技術(shù)的改進(jìn),基本滿足了上述的要求。
作為一個(gè)具體操作的例子,用于實(shí)施本發(fā)明所述方法的多DSP并行 處理系統(tǒng)分別選用TI公司 一 片高性能的TMS320C6455和兩片 TMS320DM642作為核心處理器,其中TMS320C6455具有一個(gè)可配置的16 位或32位主機(jī)接口 (HPI16/HPI32),具有3MB大小的片內(nèi)RAM, 1GHz時(shí) 鐘,處理速度可達(dá)至lj 8000MIPS ; TMS320DM642具有冬見步頁(yè)端口 (Video Port, 簡(jiǎn)稱VP口)、主機(jī)接口 (Host Port Interface,簡(jiǎn)稱HPI)和PCI接口 、 內(nèi)置DMA控制器,具有256KB大小的片內(nèi)RAM,處理速度可達(dá)到4800MIPS。
下面,分別從各DSP之間的數(shù)據(jù)通信和DSP內(nèi)部空間調(diào)度兩方面進(jìn) 行具體的說明。
一.DSP之間或者DSP與其它設(shè)備之間的通信
在多DSP并行處理結(jié)構(gòu)的通信設(shè)計(jì)中,應(yīng)該根據(jù)通信的類型,在 滿足傳輸要求的前提下,盡可能選擇資源消耗小、控制簡(jiǎn)單的模式進(jìn) 行設(shè)計(jì)。
對(duì)于上述多DSP并行處理系統(tǒng)而言,其采用以一片TMS320DM642為 主DSP處理器,其它兩個(gè)為輔DSP處理器的多DSP處理器結(jié)構(gòu)。根據(jù)前面提到的各數(shù)字視頻處理算法對(duì)資源耗用量的不同要求,格式轉(zhuǎn)換和視
頻穩(wěn)定最好在輔TMS320DM642 (以下簡(jiǎn)稱DM642-1 )上實(shí)現(xiàn),視頻去隔行 和視頻增強(qiáng)最好在主TMS320DM642 (以下簡(jiǎn)稱DM642-2)上實(shí)現(xiàn),H. 264 編碼最好在TMS320C6455 (以下簡(jiǎn)稱C6455)上實(shí)現(xiàn)。
如圖1所示,經(jīng)模/數(shù)轉(zhuǎn)換器轉(zhuǎn)換后的數(shù)字視頻數(shù)據(jù)流首先進(jìn)入 DM642-1進(jìn)行格式轉(zhuǎn)換和視頻穩(wěn)定處理,處理完成后將數(shù)據(jù)傳送到 DM642-2; DM642-2對(duì)數(shù)據(jù)流進(jìn)行去隔行與增強(qiáng)處理后,將數(shù)據(jù)傳送到 C6455; C6455實(shí)現(xiàn)高位率編碼后將碼流再傳回DM642-2;最后,DM642-2 再同時(shí)將視頻數(shù)據(jù)和碼流通過PCI總線發(fā)送到主機(jī),并完成后續(xù)的處理。
在圖1所示的多DSP處理系統(tǒng)中,共有四種數(shù)據(jù)通信設(shè)計(jì)方案,分 別說明如下
① 視頻數(shù)據(jù)進(jìn)入DM642-1的方式采用Philips公司的SAF 7113 芯片作為模/數(shù)轉(zhuǎn)換器,采用DM642-1的VP 口實(shí)現(xiàn)與SAF7113的數(shù)據(jù)通 信,VP 口選用薩642-l的VPO 口。其信號(hào)連接圖如圖2所示,SAF7113 將模數(shù)轉(zhuǎn)換后的數(shù)據(jù)通過VP0
輸出到DM642-1 VP 口 A通道的[2:9], LLC作為同步數(shù)據(jù)輸出時(shí)鐘連接到VPOCLKO, VPO CTLO作為A通道選通信 號(hào),拉高即可。根據(jù)nC協(xié)議規(guī)定,SAF7113需擁有唯一的硬件地址作為 DM642-1的尋址地址,它通過RTSO管腳決定,默認(rèn)為下拉,其硬件地址 為0x4A (寫地址)和0x4B (讀地址)。
② 雙DM642之間的通信方式采用VP 口直連的方式進(jìn)行單向通信, 由于DM642-1的VPO 口已被占用,采用DM642-1的VP1 口和DM642-2的 VPO 口進(jìn)行直連。將DM642-1的VP1配置為顯示模式,輸出DM642-1穩(wěn)定 后的數(shù)據(jù),將DM642-2的VPO配置為采集模式,捕獲從DM642-1輸出的 數(shù)據(jù)。雙DM642之間VP 口的電路連接圖如圖3所示,在DM642-l上,將 VP1CLK0外接27M時(shí)鐘(SAF7113時(shí)鐘),VP1CLK1為輸出管腳,沒有用到, 將其懸空;VP1的A通道8-bit BT. 656顯示;由于BT. 656內(nèi)部自動(dòng)進(jìn)行 行場(chǎng)消隱,VP1CTL0、 VP1CTL1、 VP1CTL2則閑置,將其懸空。在DM642-2 上,將VP0CLK0外接27M時(shí)鐘,VP0CLK1為輸出管腳,沒有用到,將其懸 空;VPO的A通道8-bit BT. 656顯示;由于BT. 656內(nèi)部自動(dòng)進(jìn)行行場(chǎng)消 隱,VP0CTL0, VP0CTL1, VP0CTL2則閑置,將其懸空。這樣便實(shí)現(xiàn)了兩塊 DM642之間VP 口的單向傳輸。③DM642-2與C6455之間的通信方式采用HPI的方式進(jìn)行雙向數(shù) 據(jù)通信。在HPI通信方式下,DSP的片內(nèi)存儲(chǔ)器對(duì)外界完全透明。主機(jī)對(duì) DSP內(nèi)存的訪問是通過3個(gè)專用的DSP寄存器來實(shí)現(xiàn)的,分別是HPIC(HPI 控制寄存器)、HPIA (HPI地址寄存器)和HPID (HPI數(shù)據(jù)寄存器)。其中, HPID中存放的是主機(jī)從DSP存儲(chǔ)空間讀取的數(shù)據(jù),或者是主機(jī)向DSP的 存儲(chǔ)空間寫入的數(shù)據(jù),HPIA中存放的是主機(jī)訪問DSP存儲(chǔ)空間的地址, HPIC中存放的是控制信息,主機(jī)通過訪問HPI的地址和數(shù)據(jù)寄存器便可 完成對(duì)DSP片內(nèi)存儲(chǔ)器的讀/寫訪問。主機(jī)可對(duì)這3個(gè)寄存器進(jìn)行讀寫, 而DSP只能對(duì)HPIC進(jìn)行訪問。主機(jī)對(duì)HPI進(jìn)行訪問的次序?yàn)槌跏蓟?HPIC、初始化HPIA、從HPID寄存器中讀取或向其寫入數(shù)據(jù)。
在上述通信系統(tǒng)中,起控制作用的TMS320DM642在HPI傳輸過程中 作為主DSP,被控制的TMS320C6455作為從DSP。 HPI接口具體連接方式 如圖4所示。其中,HD[31:0]為TMS320C6455 HPI接口的雙向數(shù)據(jù)總線, 直接與TMS320DM642的EMIF數(shù)據(jù)總線相連。HCTL0/1為主機(jī)輸入控制線, 用于區(qū)分對(duì)HPIC/ HPIA/HPID寄存器的訪問及對(duì)HPID進(jìn)行地址自增訪問 方式。HDS1、 HDS2為數(shù)據(jù)選通信號(hào),HCS為片選信號(hào),HR/W為讀/寫選擇 信號(hào),HRDY為數(shù)據(jù)準(zhǔn)備輸出就緒信號(hào),HINT為HPI向主機(jī)的中斷信號(hào), 這些控制信號(hào)線都連接到FPGA。由于HPI的時(shí)序與EMIF的讀寫時(shí)序有一 些差別,所以TMS320DM642的EMIF地址總線和控制信號(hào)線連接到FPGA, 通過FPGA進(jìn)行邏輯轉(zhuǎn)換以實(shí)現(xiàn)HPI的數(shù)據(jù)讀寫。
DM642-2與主機(jī)之間的通信方式采用基于DSP的PCI總線DMA 方式進(jìn)行數(shù)據(jù)傳輸,其模式有兩種 一種是從模式傳輸(SLAVE),使用 PCI主機(jī)主板的DMA控制器;另一種是主模式傳輸(MASTER),使用PCI 卡上DSP的DMA控制器。由于主板DMA控制器只有有限數(shù)目的DMA通道, 在具體使用時(shí)難以找到空閑通道;又由于主板DMA控制器從外設(shè)分別以 兩次獨(dú)立的操作讀取一字節(jié)的數(shù)據(jù),然后把它寫在內(nèi)存,因此每次傳輸 需要多個(gè)總線周期,還要插入等待狀態(tài)。所以,在板卡與主機(jī)之間應(yīng)采 用DSP主模式進(jìn)行傳輸,以DM642-2作為主控DSP。
在MASTER寫操作時(shí),相關(guān)的地址和控制寄存器包括DSP主地址寄存 器(DSPMA)、 PCI主地址寄存器(PCIMA)及PCI主模式控制寄存器(PCIMC)。 如圖5所示,啟動(dòng)主模式寫后,由DMA負(fù)責(zé)從源地址向DSP內(nèi)部的FIFO搬移所要求的數(shù)據(jù)。數(shù)據(jù)傳輸會(huì)持續(xù)到FIFO滿為止,除非請(qǐng)求的數(shù)據(jù)小
于FIFO的深度。 一旦FIFO得到有效數(shù)據(jù),內(nèi)部的控制邏輯模塊會(huì)向PCI 接口發(fā)出PCI總線請(qǐng)求,并將FIFO中的數(shù)據(jù)向PCI從設(shè)備(主機(jī))傳輸。 當(dāng)DSP源地址中所有的數(shù)據(jù)都送入FIFO后,DSP內(nèi)部的數(shù)據(jù)傳輸結(jié)束, 通過使能PCIIEN寄存器中的MASTEROK位,在數(shù)據(jù)傳輸完畢時(shí)產(chǎn)生DSPINT 中斷,通知DSP—次主模式的DMA傳輸結(jié)束。 二. DSP片內(nèi)空間的分配與調(diào)度
充分利用DSP片內(nèi)空間,減少數(shù)據(jù)的存儲(chǔ)搬運(yùn)次數(shù),是提高處理 速度的另一項(xiàng)重要措施。由于帶寬和時(shí)鐘頻率等原因,DSP對(duì)片內(nèi)存 儲(chǔ)區(qū)的訪問比片外要快,把核心代碼和數(shù)據(jù)放在內(nèi)部RAM中,可以提 高系統(tǒng)的速度,放在片外,讀取數(shù)據(jù)時(shí)便會(huì)造成DSP流水線的停頓, 從而導(dǎo)致整個(gè)系統(tǒng)速度變慢;另外,使用片外空間存儲(chǔ)數(shù)據(jù)還會(huì)增加 數(shù)據(jù)的搬運(yùn)次數(shù)以及總線的占用頻率,這也是導(dǎo)致系統(tǒng)處理延時(shí)、數(shù) 據(jù)丟失等現(xiàn)象的原因之一。解決這一問題的最直接方法就是將數(shù)據(jù)直 接存儲(chǔ)在片內(nèi)RAM進(jìn)行處理,DSP的片內(nèi)RAM —般空間比較小,對(duì)于
數(shù)據(jù)量大的視頻數(shù)據(jù),需將數(shù)據(jù)劃分為多個(gè)數(shù)據(jù)塊,然后在片內(nèi)分別 順次處理。作為多DSP并行處理系統(tǒng)的主DSP, DM642-2除了實(shí)現(xiàn)視頻去隔行和 增強(qiáng)功能之外,還控制著與其它DSP和主機(jī)之間的通信功能,本發(fā)明將 其核心代碼和常用函數(shù)以及各種數(shù)據(jù)放在速度較快的片內(nèi)RAM中,以提 高整個(gè)DM642-2的處理速度。由于DM642-2的片內(nèi)RAM大小只有256KB, 而經(jīng)過格式轉(zhuǎn)換后, 一幀尺寸為704X 576格式為YUV420 (Y: U: V = 4: 1: 1)的視頻大小為704X 576 X 1. 5二596KB,所以對(duì)DM642-2的片內(nèi)空 間進(jìn)行分配,用于代碼與數(shù)據(jù)的存放,并把一幀視頻數(shù)據(jù)劃分為多個(gè)視 頻數(shù)據(jù)塊,在片內(nèi)順次處理。
DM642-2片內(nèi)RAM的容量為256KB,地址范圍是0x00000000 0x00040000,根據(jù)需要?jiǎng)澐譃橐韵聨讉€(gè)單元
代碼單元,區(qū)間OxOOOOOOOO Ox00011C00,大小為71KB,用于存放
代碼與程序運(yùn)行空間。
數(shù)據(jù)存儲(chǔ)單元,區(qū)間0x00011C00 0x00032C00,大小為132KB,用
于存放去隔行和增強(qiáng)處理過程中各步驟的數(shù)據(jù)。傳輸單元,區(qū)間0x00032C00 0x0003B000,大小為33KB,用于存放 經(jīng)過清晰化處理后待傳輸給編碼DSP與主機(jī)的數(shù)據(jù)。
碼流單元,區(qū)間0x0003B000 0x00040000,大小為20KB,用于存放 編碼后的碼流數(shù)據(jù)。
將一幀視頻數(shù)據(jù)劃分為18個(gè)視頻數(shù)據(jù)塊進(jìn)行順次循環(huán)處理,每一個(gè) 視頻塊的大小為33KB。在DM642-2片內(nèi)空間實(shí)現(xiàn)通信的流程如圖6所示, 包括以下步驟
步驟一判斷是否有C6455發(fā)來的碼流回傳中斷,若有,將碼流以 HPI方式回傳到DM642-2碼流單元,并以DSP主DMA的模式通過PCI總線 將碼流傳往主機(jī);若沒有,直接轉(zhuǎn)到步驟二。
步驟二去隔行處理將當(dāng)前視頻塊與所述相鄰兩場(chǎng)及前前場(chǎng)的四場(chǎng) 視頻塊從數(shù)據(jù)存儲(chǔ)單元中取出進(jìn)行處理,然后再進(jìn)行增強(qiáng)處理,得到去 隔行和增強(qiáng)后的視頻塊數(shù)據(jù)。
步驟三在執(zhí)行步驟二的同時(shí),將傳輸單元里的上次去隔行與增強(qiáng) 后的視頻塊數(shù)據(jù)以HPI的方式傳往C6455,同時(shí)以DSP主薩A的模式通過 PCI總線傳往主機(jī)。
步驟四待步驟二和步驟三都執(zhí)行完畢后,將步驟二中得到的本次 去隔行和增強(qiáng)后的視頻塊數(shù)據(jù)存入傳輸單元,作為下次HPI和PCI傳輸 的數(shù)據(jù)源。
步驟五重復(fù)步驟一 步驟四。
所述步驟一的碼流數(shù)據(jù)量小于等于碼流空間(20KB)時(shí),將碼流一 次性傳到碼流空間,反之,將碼流根據(jù)碼流空間的大小拆分為多個(gè)碼流
塊進(jìn)行多次傳輸。每次碼流傳輸大小為
△=少%20 (j)
式(1)中,A代表本次碼流的傳輸大小,^代表請(qǐng)求所要傳輸?shù)拇a 流大小。
通過上述的DSP片內(nèi)空間分配與調(diào)度方案,DM642-2可并行實(shí)現(xiàn)視頻 去隔行與增強(qiáng)、與C6455的HPI傳輸以及與主機(jī)的PCI傳輸功能,且對(duì) 一幀視頻數(shù)據(jù)的處理或者傳輸時(shí)間分別為33. 5ms、 26.5ms、 23. 0ms,從 而滿足40ms內(nèi)處理完畢的實(shí)時(shí)傳輸要求。很顯然,本發(fā)明所提供的多DSP調(diào)度優(yōu)化方法還可以推廣到數(shù)字視
頻處理系統(tǒng)由一個(gè)主DSP和多個(gè)輔助DSP組成的情況,其中所采用的 DSP之間數(shù)據(jù)通信和DSP內(nèi)部空間調(diào)度方面的技術(shù)思路是共通的。本領(lǐng)域 一般技術(shù)人員在本發(fā)明所提供的技術(shù)思路的啟發(fā)下,很容易實(shí)現(xiàn)具體的 技術(shù)實(shí)現(xiàn)方案,故在此就不詳細(xì)贅述了。
以上對(duì)本發(fā)明所提供的面向視頻處理的多DSP調(diào)度優(yōu)化方法進(jìn)行了 詳細(xì)的說明。對(duì)本領(lǐng)域的一般技術(shù)人員而言,在不背離本發(fā)明實(shí)質(zhì)精神 的前提下對(duì)它所做的任何顯而易見的改動(dòng),都將構(gòu)成對(duì)本發(fā)明專利權(quán)的 侵犯,將承擔(dān)相應(yīng)的法律責(zé)任。
權(quán)利要求
1.一種面向視頻處理的多數(shù)字信號(hào)處理器調(diào)度優(yōu)化方法,將視頻處理工作進(jìn)行分解,分別由一片主數(shù)字信號(hào)處理器和至少兩片輔助數(shù)字信號(hào)處理器進(jìn)行處理,其特征在于包括如下的步驟(1)待處理的視頻數(shù)據(jù)首先通過Video Port端口進(jìn)入第一輔助數(shù)字信號(hào)處理器,在第一輔助數(shù)字信號(hào)處理器上進(jìn)行格式轉(zhuǎn)換和視頻穩(wěn)定處理;(2)通過Video Port端口直連的方式將處理后的數(shù)據(jù)傳送到主數(shù)字信號(hào)處理器上進(jìn)行視頻去隔行和增強(qiáng)處理;(3)所述主數(shù)字信號(hào)處理器將處理后的視頻數(shù)據(jù)通過Host PortInterface端口傳送到第二輔助數(shù)字信號(hào)處理器進(jìn)行視頻編碼處理,并將編碼后的碼流通過Host Port Interface端口回傳到主數(shù)字信號(hào)處理器上;(4)所述主數(shù)字信號(hào)處理器以主DMA模式將處理后的視頻數(shù)據(jù)與編碼后的碼流共同對(duì)外輸出。
2. 如權(quán)利要求1所述的面向視頻處理的多數(shù)字信號(hào)處理器調(diào)度優(yōu) 化方法,其特征在于所述主數(shù)字信號(hào)處理器為具有Video Port端口和DMA控制器的數(shù)字 信號(hào)處理器,所述第一輔助數(shù)字信號(hào)處理器為具有Video Port端口的數(shù) 字信號(hào)處理器,所述第二輔助數(shù)字信號(hào)處理器采用為具有Host Port Interface端口的數(shù)字信號(hào)處理器。
3. 如權(quán)利要求1所述的面向視頻處理的多數(shù)字信號(hào)處理器調(diào)度優(yōu) 化方法,其特征在于所述主數(shù)字信號(hào)處理器的片內(nèi)存儲(chǔ)空間被劃分為多個(gè)單元,將一幀 待處理視頻數(shù)據(jù)劃分為多個(gè)視頻塊,在主數(shù)字信號(hào)處理器內(nèi)直接使用片 內(nèi)存儲(chǔ)空間中的各單元對(duì)所述視頻塊進(jìn)行處理和存儲(chǔ)。
4. 如權(quán)利要求3所述的面向視頻處理的多數(shù)字信號(hào)處理器調(diào)度優(yōu) 化方法,其特征在于所述主數(shù)字信號(hào)處理器的片內(nèi)存儲(chǔ)空間至少劃分為以下四個(gè)單元 代碼單元用于存放代碼和程序運(yùn)行空間;數(shù)據(jù)存儲(chǔ)單元用于存放視頻去隔行和增強(qiáng)處理過程中的中間數(shù)據(jù); 傳輸單元用于存放所述清晰化后的視頻數(shù)據(jù); 碼流單元用于存放編碼后回傳的碼流數(shù)據(jù)。
5. 如權(quán)利要求3所述的面向視頻處理的多數(shù)字信號(hào)處理器調(diào)度優(yōu) 化方法,其特征在于所述視頻塊在主數(shù)字信號(hào)處理器的片內(nèi)存儲(chǔ)空間中的通信包括如下 步驟(51) 判斷是否有碼流回傳中斷,若有,則通過Host Port Interface 端口將編碼后的碼流回傳到碼流單元,并以主DMA模式將所述編碼后的 碼流輸出;若沒有,執(zhí)行步驟(52);(52) 所述視頻去隔行功能將當(dāng)前視頻塊與相鄰兩場(chǎng)以及前前場(chǎng)的 四場(chǎng)視頻塊從數(shù)據(jù)存儲(chǔ)單元中取出進(jìn)行處理,然后再進(jìn)行增強(qiáng)處理,得 到經(jīng)過視頻去隔行和增強(qiáng)后的視頻塊數(shù)據(jù);(53) 與步驟(52)同時(shí),將傳輸單元中存儲(chǔ)的上次處理后的視頻 塊數(shù)據(jù)通過Host Port Interface端口傳往第二輔助數(shù)字信號(hào)處理器, 并同時(shí)以主DMA模式輸出;(54) 待步驟(52)和(53)執(zhí)行完畢后,將步驟(52)中得到的視頻塊數(shù)據(jù)存入傳輸單元。
6. 如權(quán)利要求5所述的面向視頻處理的多數(shù)字信號(hào)處理器調(diào)度優(yōu) 化方法,其特征在于所述步驟(51)的碼流數(shù)據(jù)量小于或等于碼流單元的空間時(shí),將碼 流一次性傳到碼流單元的空間,反之,根據(jù)碼流單元的空間大小將碼流 拆分為多個(gè)碼流塊進(jìn)行多次傳輸。
全文摘要
本發(fā)明公開了一種面向視頻處理的多數(shù)字信號(hào)處理器調(diào)度優(yōu)化方法,包括如下的步驟(1)待處理的視頻數(shù)據(jù)首先進(jìn)入第一輔助DSP,在第一輔助DSP上進(jìn)行格式轉(zhuǎn)換和視頻穩(wěn)定處理;(2)通過端口直連的方式將處理后的數(shù)據(jù)傳送到主DSP上進(jìn)行視頻去隔行和增強(qiáng)處理;(3)主DSP將處理后的視頻數(shù)據(jù)傳送到第二輔助DSP進(jìn)行視頻編碼處理,并將編碼后的碼流回傳到主DSP上;(4)主DSP以主DMA模式將處理后的視頻數(shù)據(jù)與編碼后的碼流共同對(duì)外輸出。本方法通過對(duì)現(xiàn)有各DSP之間以及DSP片內(nèi)通信技術(shù)的改進(jìn),在保證計(jì)算精度和處理范圍的同時(shí),提高了并行處理的計(jì)算速度;另外,良好的硬件接口通信,也提高了抗局部干擾的能力。
文檔編號(hào)H04N7/26GK101562748SQ20091008526
公開日2009年10月21日 申請(qǐng)日期2009年6月3日 優(yōu)先權(quán)日2009年6月3日
發(fā)明者姜宏旭, 徐瀟審, 波 李, 亮 金 申請(qǐng)人:北京航空航天大學(xué)