积分规则 网站地图 帮助中心    
嵌入式软件 单 片 机 DSP 存储器 传感控制 光电显示
嵌入式硬件 CPLD/FPGA SOPC AD/DA 接口电路 模拟设计
I C设计 通信产品 汽车电子 电源产品 消费电子 数控系统
工业控制 军工/航天 安防产品 医疗电子 计算机外设 测试测量
供应 I C
求购 公司库

  IC 求购 销售 公司 论文 DATASHEET 参考设计 论坛
当前位置: 电子技术 >> SOPC >> 应用论文
  相关分类: 相关文章 | 应用论文 | 新产品 | 下载 |
基于SoPC的视频跟踪系统中OSD功能的实现
 
作者:王玉良,朱丹,冯安祥,杨光宇   来源:电子技术应用    点击数:121   更新时间:2008-5-20
您可以添加到网摘 让更多人关注此文章:

    摘 要: 介绍一种基于SoPC技术的视频跟踪系统中OSD功能的实现方案。首先在FPGA上实现SoPC设计,然后用一个M-RAM作为OSD缓存,并通过Nios Ⅱ处理器和自定义的API函数对OSD缓存中的内容进行刷新,最后通过OSD合成逻辑将字符/图形叠加到PAL-D视频信号中。
关键词: OSD SoPC 视频跟踪 FPGA


  OSD(On Screen Display)是指将系统的参数和状态信息在屏幕上显示出来,在电视机、录像机等家电产品中这种技术早已广泛应用。视频跟踪系统要求进行数字、符号、跟踪窗的实时显示,即具有OSD功能,包括无视频输入指示、锁定指示、跟踪状态和性能指示、显示脱靶量数据及其他操作参数等。
  OSD的实现方法基本上有三种:使用专用OSD器件;选用支持OSD功能的处理器;采用PLD。在实时性要求较高的视频跟踪系统中,需要使用大规模FPGA进行并行图像处理,并且在FPGA中实现SoPC设计,同时应能减小系统的体积和成本。如果只选用专用OSD器件或带有OSD功能的处理器反而会增加系统硬件设计的复杂度,降低系统的可靠性。因此,有必要采用与SoPC系统相结合的OSD实现方案。
1 视频跟踪系统
  基于SoPC技术的视频跟踪系统框图如图1所示。系统采用Altera公司的Stratix 系列FPGA及Nios Ⅱ软核处理器实现SoPC设计,将图像处理、目标识别与跟踪等协处理单元挂在Nios Ⅱ处理器上,并通过SPI、I2C等IP-Core实现对操纵杆、视频编解码器等设备的控制。系统支持PAL-D(576i25)标准输入输出。




2 OSD实现方案
2.1 SoPC系统的配置结构
  在SoPC系统中,实现OSD功能要与如图2所示的SoPC系统的配置结构相结合,系统采用Altera公司的MAX-II器件作为配置控制器,在系统启动(boot)时负责将FPGA的配置数据从外部Flash Memory传送到Stratix中。这里将OSD字符/图形库以只读数据的形式存放在外部CFI-Flash中,CFI-Flash同时装有FPGA的配置数据和软件程序,配置结束后MAX-Ⅱ需要将连接CFI-Flash的全部总线置为‘Z’,这样Nios Ⅱ处理器才能够获得CFI-Flash的总线使用权,以读取程序和OSD数据。



 




2.2 OSD实现结构
  OSD实现框图如图3所示。这里采用了FPGA中的一个M-RAM作为OSD缓存,其中每位与视频中的一个像素映射。因PAL-D复合视频信号为隔行扫描,因此,OSD缓存中的数据按奇/偶场方式存放,每场占用720×288/8=25 920B,M-RAM大小为64KB,可实现全视场范围的单色OSD映射。OSD缓存被定义为双口方式,输出与视频数据流同步。
  OSD缓存的数据位宽可定义为2n(n=0,1,…),但应该注意:数据位宽选得越大,NiosⅡ处理器的访问速度就越快,而OSD的水平方向定位也越复杂;数据位宽选得越小,水平方向定位越精确,但访问速度也会越慢,且实时性差。因此,进行折衷处理,选择lpm_width=8。
  M-RAM的读地址要根据行、场同步信号生成,图像原始分辨率为864×625,则水平计数器Cnt_Hor和垂直计数器Cnt_Ver为10bit宽,Cnt_Hor的异步清零端接脉冲化后的行同步信号HSYNC,Cnt_Ver的异步清零端接脉冲化后的场同步信号VSYNC。在有效图像分辨率为720×576范围内,使能地址计数器Cnt_Rd_Addr、Cnt_Rd_Addr的计数时钟为像素时钟的8分频,即每8个像素时钟读取一个数据,Cnt_Rd_Addr的异步清零端接脉冲化后的场同步信号VSYNC。
  OSD缓存读地址生成逻辑如图4所示。图中,1.6875MHz时钟脉冲化后接74165的STLD(并行数据加载信号),每隔8个像素时钟载入一个字节的OSD数据并串行输出。图5为最简单的OSD合成逻辑,图中,bit→piexl的映射逻辑用一个8位并-串转换器74165实现,使用两个8bit的Mux2_1,如果ctrl_bit等于‘0’,则YCbCr输出原图像数据;如果ctrl_bit等于‘1’,则Y输出0xEB,CbCr输出0x10。



 




2.3 OSD API
  OSD API的实现包括:创建API硬件接口;建立字符/图形库;OSD显示驱动函数(包括字节重构、字符显示、图形显示、消隐等)。
  API硬件接口可以通过SoPCBuilder建立,包括16位地址OSD_ADDR、8位数据OSD_DATA、写使能OSD_WEN和OSD缓存的异步清零信号OSD_ACLR。由于M-RAM不能设置初始数据,因此上电后首先将OSD_ACLR置位,然后对OSD缓存初始化后,再将OSD_ACLR置零,以免开机时系统出现花屏现象。
  字符/图形库可以通过字模提取软件得到,并定义到unsigned char const型数组中。打开Nios Ⅱ IDE中的System Library Properties窗口,将read-only data memory(.rodata)项设为ext_flash,即将OSD库放在外部的CFI-Flash中。
  OSD数据写入缓存时要注意两个关键问题,一是垂直方向上的隔行处理,即按照奇偶场规则写入缓存;二是水平方向上的字节拆分与重构,因为OSD缓存是整字节(8bit)访问的,为了实现字符/图形的像素级定位,该操作是必要的。例如,为了在位置3开始叠加如图6所示的11个bit‘1’,需要补5个bit的‘0’,并将重构后的“0x3f、0xf8”写入OSD缓存,该操作由软件完成。



 




3 结果与结论
  OSD实现效果如图7所示,监视器上叠加有字符、数字和图形,如果进一步设计,还可以实现彩色OSD、画中画以及透明效果,本文只是对这一方案进行了初步验证。
  实际应用证明,本文提出的设计方案新颖、合理,能够有效减小视频跟踪系统的体积、降低系统复杂度和成本,具有极大的实用价值。
参考文献

[1] Altera Corporation. Nios II Hardware Development Tutorial,2004.
[2]  杜升平, 曹剑中. FPGA在OSD中的应用. 科学技术与工程, 2006,(6)14:2065-2087.
[3]  宋传明, 陈宁.基于字符叠加技术的车载视频系统, 新技术新工艺, 中国仪器仪表, 2004,(9):8-10.

[1]



相关文章
· 基于嵌入式多核SoPC平台的说话人识别系统应用研究[60]
· 基于Linux的SoPC应用系统设计[76]
· 基于Linux的SoPC应用系统设计[83]
· SOPC小结[48]
· 基于NIOS II内核的嵌入式SOPC开发板的实现[75]
热门评论排行
·VHDL设计中电路简化问题的
·江苏嵌入式Linux教育培训
·锐极LINUX驱动培训班定于
·基于实时操作系统μC/OS-
·ARM处理器应用开发4步骤

文章评论
    没有任何评论
*只显示最新10条评论。评论内容只代表网友观点,与本站立场无关。更多评论
发表评论
  * 请先[登陆]再进行评论,谢谢。
评分: 1分 2分 3分 4分 5分
内容: *
发帖须知:
一.所发文章必须遵守《互联网电子公告服务管理规定》;
二.严禁发布供求代理信息,公司介绍,产品信息等广告宣传信息;
三.严禁恶意重复发帖;
四.严禁对个人,实体,民族,国家等进行漫骂,污蔑,诽谤。
 
热点新闻 [更多]
 
温度测控系统设计方案
中华英才网将被全盘收购
破国外垄断 中国移动存储标
IC设计面临三重挑战 ED
手机电视芯片方案需求多变
北京德尔威科技有限公司与台湾佳营电子
全球手机芯片市场战局将出现重大变革
北京奥运安保系统首次成功运用射频识别
英特尔开发空气传电技术
IBM生产出首个22纳米工艺SRAM
 
热门下载 [更多]
 
[ ] 手把手学单片机20个例
[ ] 单片机做的智能台灯
[ ] 单片机入门书
[ ] linux系统移植开发文档
[ ] IC卡的读写程序
[ ] 8051单片机C语言彻底应用
[ 常用软件] 555定时器电路设计软件V1.2
[ 常用软件] 51定时器计算软件
[ ] ARM处理器应用开发4步骤
[ ] 实用电源电路集锦
 
论坛新帖 [更多]
 
液晶问题...
[原创]本公司长期批发各种滑冰...
[原创]本公司长期超低价批发各...
[原创]本公司长期超低价批发种...
[原创]本公司长期批发各种酒、...
[原创]本公司长期低价批发各种...
[原创]长期低价批发各种母婴用...
[原创]本公司长期批发各种饮料...
[推荐]通讯上通用的一个GSM...
用两个电容代替一个?...

 
赞助商 [更多]
 


ICP许可证号:[粤 05056597]
联系电话:010-82517432 82517615 传真: 010-82517615

版权所有 Copyright © 2006 嵌入式技术网