文件名称:
TMS320DM646X_DMSoc_Vedio_Port_Interface(VPIF)使用向导中文
开发工具:
文件大小: 623kb
下载次数: 0
上传时间: 2019-03-01
详细说明:TMS320DM646X_DMSoc_Vedio_Port_Interface(VPIF)使用向导中文括亮度分量和色度分量)以及在 SDRAM的存放方法和存放位置。
表格图
以上所有的参数L1-12以及一帧视频数据的大小(特指垂直高度,也就是一帧总的行数,
也就是L1到L12之间的距离,比如,标准的8位bt656,那么其行数为625)都可以用软件设
置相关寄存器进行配置。如果垂直消隐期间,通过寄存器配置的 EAV/SAV码的数值,与
DM6467检测到的EAV/SAV码的数值不一致的时候,以寄存器配置的 EAV/SAV码为准
在上图中,可以通过一下8个参数判定一帧数据的有效数据以及消隐数据,从而可以正
确的取一帧视频数据的有效数据,乜就是图像数据。
1.顶场的垂直消隐数据
2.顶场的水平消急数据
3.底场的垂直消隐数据
4.底场的水平消隐薮据
5.顶场的亮度分量数据
6.顶场的色度分量数据
7.底场的亮度分量数据
8.底场的色度分量数据
对」以上各种类型数据,为了正确的实现各种功能,必须为每种数据正确地配置以卜几
个参数
1.各种数据存放在 SDRAM的起始地址(相对应存储区域的起始位置),
2.消隐数据的起始位置
3.水平消隐数据的长度,能够从 SDRAM中读取到。
4.图像的垂直尺寸(行数),保存在 SDRAM中
5.水平方向的行偏移量,因为所有的数据都是以8字节对齐存放的,如果一行的数据有
1440字节,其中某一行的起始地址是addr0,那么下一行数据的起始地址是
addr0+1440,如果一行的数据(即行尺寸)为1440+4字节,其中某一行的起始地址是
addr0,那么下一行数据的起始地址是addr0+1440+8。
6.水平方向的图像窗口尺寸,比如说采集的720*576格式的图像,而有效图像的大小是
704576,704就是这里所指的尺寸,在水平方向少掉的720-704=16个字节用黑色填充
填充在一行数据720个字节的最后16个字节用黑颜色的亮度和色度米填充。
Functional Performance Image
这韶分描述输入输出数据在 SDRAM存储模式下的使用方式:
1.采集的图像数据大小:隔行扌描模式下,VP|F开始在 SDRAM里水平存放的数据为SAV
码和EAV码之间的有效数据,见下图用黄色标示的SAV和EAV之间的数据长度,比如8
位BT.656格式视频数据,那么SAV和EAV之间的数据长度为720*2字节;垂直方向上的
数据长度为L3与L4之间以及L9坑L10之间的行数。在逐行扫描樸式下,垂直方向上的长
度只是在L3与L4之间的行数
2.采集的水平消隐数据:在隔行扫描模式下,VP|F冇L1和L2之间的水平消隐区域的EAV后
面廾始在 SDRAM把采集的水平消隐效据存放在 SDRAM中;逐行扫描模式卜,存放的位
詈事在L1和L6之间的水平消隐区域。
3.输入的垂直逆程数据:在隔行扌描模式下,VPF在L1和L2之问,L5和L8之间,L11和L12
之间的垂直消隐区域,即L1和L2之间,L5和L8之间,L11和L12之间的每行SAV与EAV
的区域,开始把釆集的垂直消隐数据存放在 SDRAM中;逐行扫描模式下,存放的位置是
在L1和L6之间的水平消隐区域
Figure 6. Relationship Between SDRAM Stored Image and Incoming(outgoing)Image
Screen displaying image
SDRAM storing image(image and vBl data)
H sync(imaginary)
SDRAM
Horizontal image size(img_hsz)
start
Address offset value for each line
address
Vertical image
0N页四EtO
Vertical blanking
size(blank vSz)
Horizontal image size(hsz
Horizontal blanking size
(blank hsz)
SDRAM Addressing
必须为每一行设定在 SDRAM中地址偏移值,还须从下面两种数据在 SDRAM中存放方式中选
择其进行存储:场存放模式和帧存放模式。
Figure 7. SDRAM Storage Method
Address offset value for each line
Frame store format
strt add
(host)
host
strt add+ (host·1)
strt add host
strt add+((host"2)-1)
strt_ add+(hoist"2)
strt add+(hoist"3)-1)
VSZ
strt- add+(host 3)
strt add+(hos:4)·1)
strt_add_+ hofst' (imgvsz-1)
strt_add_ +(hofst'img_vsz )-1
O= top field
○= bottom field
在上图中所示的是帧图像数据在 SDRAM中的帧存放方式。通过配置相关寄存器(图像的
水平和垂直尺小以及有效图像的水平尺小)可以知道每一个像素在 SDRAM中的具体地址。上图
的左图说明了光棚扫描模式的图像以场存储模式的编址情况,而右边的图说明了唢存放模式。
CHO CTRL寄存器的| NPUT F| ELD OR FRAME位和CH2CTRL寄存器的
OUTPUT FIELD OR FRAME位定义了图像冇 SDRAM中的存放模式,但是在隔行扫描中,配
置这两个标志位的同时还应该配置如卜所选存放模式下的寄存器值:(仅配置了这两个标志位是
不起作用的)
1.场存放模式
a.配置顶场和底场的存放在 SDRAM中的起始位置,如途中的 strt add
b.配置每一行的水平线度的偏移量,如上图中的host
2.唢存放模式
a.配置顶场的起始地址,如图中的 strt add
b.配置底场的起始地址,如图中的 strt add+ host
C.每场的行间距是两倍的水平线度,即图中的2 hoist
VBI Data transmit Function
DM6467的VPlF可以自动嵌入水半消隐数值和垂直消隐数值。通过cPU的干预,可以把这
些消隐数据存放到 SDRAM中作为图像源的消隐数据。然后VPIF根据相关寄存器的配置值,把这
些消隐数据传输到DSP的外面(数据输出口)。
由于消隐数据都是冋样的数值(亮度=0X×10,色度=0x80),所以为了降低多余的CPU操作,
在进行源图像的消隐数据处理的时候,不是向 SDRAM写每一个消隐数据(降低了CPU效率),
血是通过相关配置寄存器,配置消隐数据区域位置来实现。
山于隔行扫措模式中,有顶场和底场两个场,因此需要两部分的水平/直消隐数值
下图中的每个参数都是有VPF模块中的奇仔器进行配置,所有垂直方向的起始位置的参考
基准都是从垂直同步信号的下降沿开始计算,这个方式也是标准的bt656和BT1120中定义的
HANC表示的值是EAV和SAV之间的水平消隐数据值(水平消隐期间
VANC表示的值是垂直消隐期间,在SAV和EAV之间的消隐数据值(母行有效视频数据的区
域)
备注:在水平/垂直效应期间,填允消隐数据的起始位置必须是8字节对齐,任何关于水平长
度的数值不可以超过相应的区域的水半长度,比如b656一行的水平有效数据长度是1440个字
节,那么图中的 yybio hsz的范围是0<= vybio hsz<=1440。
Figure 8. vBI Result Data Transmit Image for Interlaced Image
Horizontal blanking
vvbi0 strt vps
hvbio strt vps
vvbi0 strt hps
vlbi vsz
vbio hsz
hvbi0 strt hps
Vertical VBl data(0)
hybio hsz
Horizontal
VBI data(O)
Top field
8
hybio ysz
active video area
EAV(words)
SAV(words)
bi1 strt vps
hvbi1 strt
wvbi1 strt hps
vybi1 vsz
vvbil hsz
vbi strt hps
Vertical VBl data(1)
Horizontal
VBI data(1)
Bottom field
hybi1 vsz
active video area
L10
L11
hvbio strt vps
wbi strt vps
L12
Luminance 10h
Luminance 10h
Chrominance 80h
Chrominance 80h
hybjo_strtνvps-水平消隐期间,顶场水平消隐数据水平方向存放起始位置,如图所示,
是距离EAV的起始位置
hybio_ strt hps--水平消隐期间,顶场水平消隐数据垂直方向的存放起始位置,参考位
置是L11
hvbi0sz--水平消隐期间,顶场水半消隐数据垂直方向的长度
hvbi0hsz--水平消隐期间,顶场水平消隐数据水平方向的长度
顶场的水平消隐期间的水平消隐数据的区域大小是hvb0vsz*hvb0hsz的矩形,矩形的左
上角的坐标位置是(hvbi0_ strt hps, hybio_ strt vps)
vvbio strt vps
vvbio strt hps
lybia ysz
yvbio hsz
顶场的垂直消隐期间的垂直消隐数据的区域大小是wbi0Vsz* vybio hsz的矩形,矩形的左
上角的坐标位置是( vvbio strt hps, vvbi0 strt vps)
hvbi1 strt vps
hvbi1 strt hps
sybil ysz
sybil hsz
vvbi1 strt vps
bi1 strt hps
vvbi1 ysz
yubi hsz
VBI Data receive function
VPF在水平/直消隐眀间接收消隐数据。如果使能VBI(逆程数据)接收功能,那么νPlF接
收所冇的水丬/垂直消隐数据。古则,VP|个能从任何可取数据的区域接收VB数据。CPU接收
些数据的同时,需事先配置好接收数据缓冲区的大小。比如,在NTSC柊式视频馍式下,水平
消隐期间需要的缓冲区大小为268字节*525行,而垂直消隐期间的垂直消隐数据的缓冲区大小为
1440字节*38行。
Processing Method for Specific Ancillary Data
VPIF能够在视频图像中采集和嵌入视频消隐数椐。在多数数字视频格式,只会在水平消隐
期间和垂直消隐期间会嵌入消隐数据。但是在某些数竽视频格式,像CGMS和在日本和US使用
的没有加注的视频格式,在有效数据所在的行号里也嵌入消隐数据,比如bt656的L3和L4之间的
头几行顶场数据,本米是视频有效数据的,但现在嵌入的是消隐数据,在这种情况下,ⅤP|仍
然把这部分消隐数据当作视频有效数据的一部分。
Too field image stan address
如下图所示的深灰色部分
虽然是消隐数据,但VPF在处理的时候仍然
把它当作有效视频数据来看待
Figure 9. Image of Specific Ancillary Data on NTSC
Horizontal blanking
ync
L1=4(NTSC)
Top field image start address
Specific ancillary data
L3=21(NTSC)
8
(closed caption, CGMS)
Top field active video area
Bottom field VBI start address
Bottom field VBl start address
L5=264(NTSC)
(horizontal ancillary
(vertical ancillary)
L6
L7=266(NTSC)
SAV (4 words)
r Bottom field image start address
Pt EAV(4 words)
L9=283 (NTSC)
Bottom field active video area
I Top field vBl start address!
Top field VBl start address
L11=1(NTSC
(horizontal ancillary
(vertical ancillary)
L12
Clipping Function for Output
有些情况下,视频有效数据或者消隐数据中含有FF0000XY的数据,而这些数据又跟EAV/SAV
码的格式是一样的,有些视频译码器会把这些数据误认为是 EAV/SAV同步码,结果导致采集视频
失败,为了避免这些情况发生,DM6467解决的方法是:把FF改为FE;把00为01:其他不变,
然后冉输出修改后的数据。
通道2和通道3都具有这个功能,而且可以单独设置。在视频数据格式中,有两个区域会出
现这种情况:垂直消隐区域和视频有效数据区域。也能单独设置去避免,下面给出了如何配置:
1.通道2的垂直消隐区域: set ch2CTRL「111=1
2.通道2的视频有效数据区域: set ch2CTRL[l3=1.
3.通道3的垂直消隐区域: set ch3CTRL[14]=1
4.通道3的视频有效数据区域: set ch3CTRL[l3-1.
Reset Considerations
VPIF不备软件复位功能。当硬件复位的时候,VP|F所有相关的寄存器值变为上电的默认
值
Initialization
VPF刘始化的通用步骤:
备注:系统模块中3.3v的I/o电源控制寄存器VDD3P3 V PWDN仅仅控制工/o缓冲区的电源。而电源和空闲模式
(PSC)才是正真见车ⅤP工F的时钟和电源状态的单元
1.使能系统模块的3.3v的I/0电源控制寄存器VDD3P3 V PWDN。
2.配置DMA尺小控制寄冇器(DMAS|zE)的相关域(相关位)和子图像的配置寄冇器
( CHn sUBIC cFg)。
3.配置仿真相关寄存尜,像ⅤP|F模块的仿真挂起控制寄存器( EMU CTRL),系统模块
的仿真挂起源寄存器( SUSPSRO), SUSPSRO寄存器的默认值由作为主处理器的ARM
配置。
Figure 14 VDD 3. 3V lo Power-Down Control Register (VDD3P3VPWDN)
28
26
25
21
20
Reserved
USBv CLKOuT Rsvd SPl VLYNQ Reserved GMll Mll MCASP1 MCASPo/ PCIHPI1 PCIHPI0
109
4
GPIO WDTIM TIM23 TIM01 PWM1 PWMO UR2FC UR2DATI UR1FC UR1DAT UROMDM URODF VPIF3 VPIF2 VPIF1 VPIFO
Table 4. VDD 3.3vl10 Power-Down Control Register(VDD3P3VPWDN) Field Descriptions
Bit Field
Value Description
PIN
VPIFn power-down control
0 vO cells powered up
1wO cells powered down
中支持 nterrupt Support
中断事件和中断请求 Interrupt Events and Requests
如下表所示,VPF有5个中断事件发送给ARM或者DSP,其中, VP ERRINT中断有下面几
个事件产生:
1.通道0和通道1的事件:
a.内部缓冲区溢出
b.水平消隐的长度或者有效视频数据长度跟相关寄存器配置的值不一致
C.视频同步码( EAVISAV: FF0000XY)第四个字节错误,即XY值错误
2.通道2和通道3的事件
a.内部缓冲区溢出
Table 5. vPIF Module Interrupts
RM Event Acronym
Source
0
VP VERTINTO
PIF
VP VERTINT1
VPIF
2
VP VERTINT2
PIF
VP VERTINT3
VPIF
4
VP ERRINT
VPIF
eld/Frame Interrupt to cPU
这部分描述产生场中断和帧中断的条件。VPIF的中断功能是为了让处理器更新VPIF模块
的地址奇器中的值VPF产生中断的时刻与垂直同步信号有所区别。中断是在VPIF和VBUS
之闫传输完最后一个数据的时候会产生中断
2821 nterrupt Condition中断触发条件
在这部分描述的VP|F中断信号是在每场或者每帧的开始吋刻(也就是说这个中断信
号产生就表示一场或者一帧数据的开始)。其他,像YC输入/输出的视频模式和CCD/CMOS
采集模式由于垂直同步电信号有所区别,所以次中断产生的时刻也是不一样的。
下面是两种视频模式下,VP|F产生中断的时刻
1.在YC视频输入输出模式,如果是帧中断模式,那么在L1行开始的EAV码产牛
断,如果是在场中断模式,那么在L1和L7行的EAV码分别产生顶场中断信号和底
场中断信号。
2.在 CCD/CMOS釆集模式中,在第一行垂直有效像素的区域的沿边处产生中断信
号
2822 First Interrupt from VP"FVPF的第一次产生的中断
备注:第一次垂直同步信号的是这样定义的:在隔行扫描模式中,传输完I10的数据,接着要开始传输工1的
数据的时刻产生的垂直同步信号称为第一个垂直同步信号;在逐行扫描模式中,是在传输工4和5之间的时刻的垂
直同步信号。
CPU通过相关配置寄存器使能VPF功能之后,检测到第一个垂直同步信号之后,通道0
和通道1开始采集输入的视频流数据。而由于上面的说明可知,当CPU检测到垂直同步信号
的时候会产生屮断信号。因此,在第一次产生中断信号的时候,还没有采集到视频流数据
如果图4, figure4.如果cpu使能VP|F,此刻,是在产生顶场的垂直同步信号之前,也
就是L1与L4的位置,那么在之后山于VPF没有检测到第一个垂直同步信号,还没有开始采
集输入视频沇, SDRAM中是没有数据的
如下图所示,浅灰色的节点表示顶场中断信号,深灰色的表示底场中断信号。根据相关
寄存器的配置值,产生的屮断信号表示不同类型(场屮断或者是帧中断)。CPU使用这个
断信号不仅仅是为了知道视频流的每帧的吋间间隔而且是准确在 SDRAM中配置好的区域读
取采集所得到视频数椐。各注:CPU会自动忽略第一次的中断信号,具体见下图
Figure 15. Relationship Between the First Interrupt and Incoming Data
Frame(n+1]
Capture frame n+2
Framen-1
Top field[n] Bottom feld[) Q Top fiel[n+] BOttom field[n+1 Top field[n+1] (Bottom field(n+1)+Time
Not captured
Ist frame interrupt Bottom field 2nd frame interrupt Bottom field 3rd frame interupt Bottom field 4 h frame interrupt
(storage start)
interrupt (1st frame data is interrupt (2nd frame data is interrupt
(rd frame data is
already stored in
already stored in
already stored n
DRAM)
SDRAM)
SDRAM)
(系统自动生成,下载前可以参看下载内容)
下载文件列表
相关说明
- 本站资源为会员上传分享交流与学习,如有侵犯您的权益,请联系我们删除.
- 本站是交换下载平台,提供交流渠道,下载内容来自于网络,除下载问题外,其它问题请自行百度。
- 本站已设置防盗链,请勿用迅雷、QQ旋风等多线程下载软件下载资源,下载后用WinRAR最新版进行解压.
- 如果您发现内容无法下载,请稍后再次尝试;或者到消费记录里找到下载记录反馈给我们.
- 下载后发现下载的内容跟说明不相乎,请到消费记录里找到下载记录反馈给我们,经确认后退回积分.
- 如下载前有疑问,可以通过点击"提供者"的名字,查看对方的联系方式,联系对方咨询.