MPEG-2復用器PSI信息分析部分的FPGA實(shí)現
復用器是數字電視前端平臺的關(guān)鍵設備,它的主要功能是完成對輸入多路傳輸流(Transport Stream,TS)的復用工作,它的性能穩定性直接影響前端平臺的運行。而復用器對傳輸流中節目特殊信息(Program Spe-cial Information,PSI)的分析處理是否完整全面,則直接影響到復用器其他功能部分的運行結果是否正確。對PSI信息的檢測分析是復用器設計中首要的也是最重要的部分之一。下文將對PSI信息檢測問(wèn)題進(jìn)行深入的分析探討。
1 TS流語(yǔ)法結構
傳輸流以TS包為單位,其中每個(gè)包的長(cháng)度為188 B,這188個(gè)字節大致可以分為:包頭、調整字段和有效負載三個(gè)主要部分。包頭占4個(gè)字節,如圖1所示。
同步字節:8 b,值為0x47,表示一個(gè)TS包的開(kāi)始。傳輸錯誤指示:1b,當置為1時(shí),表明在相關(guān)的TS包中至少有一個(gè)不可糾正的錯誤。有效負載起始指示:1 b,在帶有PSI信息時(shí),置1表示TS包含有PSI部分的第一個(gè)字節并帶有pointer field字段,否則表示不含有PSI的第一個(gè)字節。傳輸優(yōu)先級:1 b,置1表明相關(guān)的包比其他具有相同PID但此位沒(méi)有置1的TS包有更高的優(yōu)先級。PID:13 b字段,指示傳輸流有效負載的數據類(lèi)型。傳輸加擾控制:2b,用來(lái)指示TS包有效負載的加擾方式。自適應字段控制:2b,用來(lái)指示本TS包首部是否跟有調整字段。連續計數器:4b,隨著(zhù)每一個(gè)具有相同PID的傳輸流包而增加,當它達到最大值后又恢復到0。
節目專(zhuān)用信息PSI用來(lái)描述TS流的組成結構。它包括節目關(guān)聯(lián)表(Program Association Table,PAT)、節目映射表(Program Map Table,PMT)、網(wǎng)絡(luò )信息表(Network Information Table,NIT)和條件訪(fǎng)問(wèn)表(Conditional Access Table,CAT)。PAT是PSI信息的最上層,列出了傳輸流中所有節目所對應的PMT的PID值,可以根據節目的PID值找到相應的PMT信息及NIT信息。節目映射表PMT提供節目號碼與組成它們的原始流之間的映射關(guān)系,這種映射表是一個(gè)TS流中所有節目定義的集合。網(wǎng)絡(luò )信息表NIT是可選的,其內容是私有的,通常包括用戶(hù)選擇的服務(wù)和通道頻率、衛星脈沖發(fā)射機、調制特性等的映射。條件接收表CAT提供條件接收(CA)系統的相關(guān)信息,指定EMM的PID值及相關(guān)的參數。
2 PSI信息提取分析
由于PSI信息四個(gè)表結構差別不大,所以提取算法也大致相似,在此主要以PAT表為例詳細介紹JSI信息的提取流程。對TS流的分析在FPGA內部以字節為單位。PAT語(yǔ)法結構如圖2所示。
PAT的提取流程:
(1)首先應在傳輸流中找到包首PID 13位全為0且有效負載起始指示位為l的TS包。
(2)然后根據自適應字段控制位判斷是否含有調整字段,再結合pointer_field字段值找到table_id,從此字段開(kāi)始到CRC校驗字節之前,將對所有有效數據進(jìn)行CRC校驗。
(3)接下來(lái)是section_length字段,由此字段可以得到該PAT分段的TS包個(gè)數。
p2p機相關(guān)文章:p2p原理
評論