您好,欢迎光临本网站![请登录][注册会员]  
文件名称: TMS320DM646X_DMSoc_Vedio_Port_Interface(VPIF)使用向导中文
  所属分类: 硬件开发
  开发工具:
  文件大小: 623kb
  下载次数: 0
  上传时间: 2019-03-01
  提 供 者: qmsh****
 详细说明: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最新版进行解压.
  • 如果您发现内容无法下载,请稍后再次尝试;或者到消费记录里找到下载记录反馈给我们.
  • 下载后发现下载的内容跟说明不相乎,请到消费记录里找到下载记录反馈给我们,经确认后退回积分.
  • 如下载前有疑问,可以通过点击"提供者"的名字,查看对方的联系方式,联系对方咨询.
 输入关键字,在本站1000多万海量源码库中尽情搜索: