当前位置:首页 > 嵌入式 > 嵌入式硬件
[导读]视频采集系统是数字图像获取的最基本手段,是进行数字图像处理、多媒体和网络传输的前提,它可为各种图像处理算法提供待处理的原始数字图像和算法验证平台。随着图像数字化

视频采集系统是数字图像获取的最基本手段,是进行数字图像处理、多媒体和网络传输的前提,它可为各种图像处理算法提供待处理的原始数字图像和算法验证平台。随着图像数字化处理技术的高速发展,对图像采集的要求也越来越高,这包括对采集图像的速度、主观质量、灵活性等等的要求。针对这种发展的趋势,设计了一种基于CPLD和DSP器件的多分辨率图像采集处理系统,重点介绍了CPLD在采集过程中逻辑控制的灵活应用。

2 系统方案设计

根据系统要求,采取了独立采集法,采用专用图像采集芯片自动完成图像的采集,除了对采集模式进行设定外,处理器不参与采集过程,这种方法的特点是不占用CPU的时间、实时性好、适合活动图像的采集。系统设计流程如下:DSP发开始采集指令,A./D开始采集,将A/D输出的控制、状态信号接入 CPLD,由CPLD控制将转换后的数字信号存储到高速大容量SRAM(ODD和EVEN)中,直到一帧图像数据存储完毕后,其间CPLD产生SRAM地址、SRAM读写信号、中断信号、总线切换信号等等;CPLD交出总线控制权,DSP占用总线从SRAM中读出图像数据进行处理。限于篇幅,本文重点介绍 CPLD在数据采集中的灵活设计。系统结构如下图所示:

 

图1:系统结构框图

3 系统硬件设计

本系统DSP采用TI公司生产的54x系列中的TMS320VC5416,CPLD是ALTERA公司MAX7000系列中的EPM7128A。A/D芯片选用飞利浦公司出品的SAA7111A视频A/D转换芯片,这里利用DSP多通道缓冲串行口McBSP来模拟I2C总线时序对SAA7111A进行初始化。

3.1 数据采集的逻辑功能设计

本设计方案通过利用CPLD控制视频采集芯片SAA7111A实现行、场数据延时[2],并分奇、偶场数据分离存放,DSP选择读取采集到的奇、偶场数据统一或分别进行处理,从而得到多分辨率图像数据。将SAA7111A产生的控制信号和状态信号与CPLD连接,即把垂直同步信号VREF、水平同步信号HREF、奇偶场标志信号RTS0、片选信号CE、场同步信号VS、象素同步信号LLC2等连接到CPLD上,CPLD通过这些控制和状态信号进行译码和产生存储地址等操作。垂直同步信号VREF的两个正脉冲之间为扫描一帧(帧扫描方式)或一场(场扫描方式)的定时,即完整的一帧或一场图像在两个正脉冲之间扫描完。水平同步信号HREF为扫描该帧或该场图像中各行象素的定时,即高电平时为扫描一行象素的有效时间。若当前图像窗口大小为 640×480,则在VREF两个正脉冲之间有480个HREF的正脉冲,即480行;在每个HREF正脉冲期间有640个LLC2正脉冲,即每行640 个象素,即VREF、HREF、LLC2这三个同步信号之间的关系。

为了体现本系统多分辨率的特点,需要改变SAA7111A的默认采样分辨率,通过CPLD的逻辑控制就可以得到多分辨率图像数据。本文选择从默认分辨率720×625到设定分辨率640×480的采集,因此就需要进行、场延迟,舍弃部分像素。通过写SAA7111A中I2C寄存器行同步开始寄存器(子地址06)和行同步结束寄存器(子地址07)可以直接控制行同步有效时间,因此可以省略行延迟电路设计,而场延迟是在CPLD中实现。

逻辑功能设计大体分为以下几个部分:DSP与CPLD的总线切换逻辑;场延迟部分(HREF的下降沿进行计数器设计);LLC2控制的SRAM 地址产生部分;SRAM片选信号、写信号以及同步时钟选择时序控制部分。其中CPLD和DSP之间的总线管理是设计中的难点。图像采集时序如下图所示。

 

图2:图像采集时序图

具体描述如下:置低DSP的XF引脚产生START采集启动信号,它向CPLD发出图像采集命令,当VS上升沿来临时,如果RTS0为低电平,则表明是奇场即将到来,产生ODD高电平信号,对ODD取反再与DSP输出的nPS相或后用作SRAM (ODD)的片选信号CS_ODD。在VREF上升沿时刻,启动场延迟计数器,场延迟是在CPLD中实现的,从每帧625行到480行需要舍弃145行 (奇、偶场各采集240行),在CPLD中利用行同步参考信号HREF进行计数器设计(HREF<240)。场延迟结束时,置高HREF145信号,有效图像数据采集开始接受,当VREF出现下降沿时,置低HREF145信号,奇场图像采集完成;如果RTS0为高电平,则表明偶场即将到来,产生 EVEN高电平信号,对EVEN取反再与DSP输出的nPS相或后用作SRAM (EVEN)的片选信号CS_EVEN,场延迟仍然利用行同步参考信号HREF进行计数器设计(HREF<240)来实现,场延迟结束时,置高 HREF145信号,有效图像数据采集开始接受,当VREF出现下降沿时,置低HREF145信号,偶场图像采集完成。此外GCSWITCH信号作为 CPLD选择内部时钟的控制信号,当GCSWITCH为高电平期间,表示CPLD获取总线权,系统处于图像采集阶段,CPLD内部时钟为LLC2;当 GCSWITCH为低电平期间,表示DSP收回总线权,系统处于图像处理阶段,此时CPLD内部的时钟信号为DSP输出时钟信号CLOCKOUT。奇、偶场图像存储器采用了ISSI公司的l0ns级256K×16高速SRAM,LLC2时钟为13. 5MHz,即每个像素时钟大约为74.1ns,每一个LLC2脉冲产生一次SRAM地址,相对于SRAM的10ns级的读写周期来说完全可以满足要求。利用LLC2(约13.5MHz)时钟进行写逻辑时序控制设计如下图所示:

 

图3:RAM(ODD,EVEN)写信号时序图

同时要注意:如果在处理完一帧图像后再采集下一帧时,图像数据已经进入了偶场或奇场,此时若开放图像采集,由于不是从图像头开始采集,所采图像将不完全,因此需要确定图像采集开始的基准。这里设计只在RTS0的上升沿才检测图像采集开始信号是否产生,这样每帧图像只在 RTS0的上升沿才开始采集,即每次都从偶场开始,这样就避免了图像数据的混乱,保证图像的开始基准。另外,由于存放图像数据的SRAM(奇、偶场 SRAM)地址是由CPLD控制产生的,那么如果将SAA7111A转换输出的VPO[15:0]直接存放在SRAM中,势必就会影响数据、地址的同步,导致不同的数据写入同一个地址,同一个数据写入不同的地址,从而造成读写错误。因此,考虑将SAA7111A输出的VPO[15:0]也作为CPLD的输入信号,在CPLD里通过延时作同步处理后再连接到SRAM的数据线上,这样就可以满足时序要求使数据写入正确的地址。[!--empirenews.page--]

3.2 总线逻辑切换设计

在前面提到了CPLD和DSP之间的总线切换管理是设计中的难点,在数据采集过程CPLD必须掌握总线控制权,切换到数据处理过程DSP必须掌握总线控制权。为了解决这个无缝切换问题,这里充分利用DSP的保持请求信号nHOLD和保持响应信号nHOLDA来协调总线切换[3]。

通过置DSP的XF引脚为低电平,告诉CPLD开始控制SAA7111A进行图像采集。在DSP_XF连接到CPLD为高电平(DSP_XF初始状态应该为低电平)时,CPLD产生DSP_ HOLD总线请求切换信号,该信号连接到DSP的nHOLD引脚请求DSP进入保持状态,在3个机器周期后DSP做出响应:产生nHOLDA低电平信号到 CPLD,而且外部数据总线、外部地址总线和控制总线都变成高阻态。此时DSP进入保持状态,CPLD控制各总线操作;当一帧图像采集、存储完成后 CPLD产生nINT中断信号通知DSP开始处理处理数据,同时并置高DSP_ HOLD引脚使得DSP的nHOLD脚也置高,并通过对CPLD编程将CPLD与SRAM连接的各个外部数据总线、外部地址总线和控制总线都置成高阻态,而在nHOLD置高3个机器周期后DSP外部数据总线、外部地址总线和控制总线都脱离高阻态,DSP进入正常工作状态,DSP置XF脚为高电平,收回总线控制权进行数据处理;

当DSP将处理后的一帧数据传输到上位机完成后,再次置低XF脚告诉CPLD可以开始采集下一帧了,CPLD产生DSP_ HOLD使DSP进入保持状态,外部数据总线、外部地址总线和控制总线又都变成高阻态,CPLD掌握总线控制权。如此往复下去即可以解决DSP与图像采集模块的总线冲突问题,正确的切换总线逻辑保证了可以循环采集图像进行处理。

3.3 CPLD逻辑功能仿真验证

通过利用CPLD控制视频A/D芯片SAA7111A的图像采集过程,并利用SAA7111A的输出状态信号来控制CPLD实现图像数据储存、时序控制、地址译码等功能。这样很好地协调了行、场参考及同步信号、像素时钟、SRAM读写信号和DSP控制信号之间的时序关系,保证了对SRAM读写操作时各信号的时序配合,很好的解决了行、场延时问题,使图像分辨率从720×625过渡到640×480,并且正确生成SRAM写地址,DSP中断信号以及总线切换信号的产生。

由于篇幅有限,故没有列出VHDL具体代码,现只给出仿真结果。仿真结果如下所示:

 

图4:循环采集处理仿真图

上面的循环采集处理仿真图就是实际系统工作时采集模块中各个信号的时序逻辑关系。从仿真图可以看出通过对CPLD的编程实现了多点的行、场延时,奇偶场分离存放,从而得到多分辨率的图像数据,以及DSP中断产生、逻辑总线切换信号、下一帧的开始触发信号、奇偶场对齐信号等都能满足系统时序要求。采集一帧640×480的图像约需22.75ms,可以满足实时性的要求。

4 结论

本文设计了一种基于CPLD的多分辨率图像采集系统,本文作者创新点:提出一种由CPLD控制图像的行、场信号延时,奇偶数据分离存储来得到不同分辨率图像数据的方法,实现了不占用DSP资源的多分辨率图像的实时采集。经过大量仿真和电路板调试,证明该方案灵活有效,能够在工业监测、医疗诊断等图像实时采集领域得到广泛应用。

参考文献

[1] 周霖. DSP通信工程技术应用 [M]. 北京:国防工业出版社,2003.

[2] 张骏. 基于DSP和CPLD的图像通信系统设计与实现 [D]. 哈尔滨:哈尔滨工程大学硕士学位论文, 2004, 2.

[3] 赵龙宝, 范天翔, 陆亨立. 基于OV5017和CPLD的图像采集显示系统[J]. 微计算机信息, 2005, 21-7: 104-105.

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

在微控制器领域,MSP430与STM32无疑是两颗璀璨的明星。它们各自凭借其独特的技术特点和广泛的应用领域,在市场上占据了重要的位置。本文将深入解析MSP430与STM32之间的区别,探讨它们在不同应用场景下的优势和局限...

关键字: MSP430 STM32 单片机

该产品线提供了并行SRAM的低成本替代方案,容量高达 4 Mb,具有143 MHz SPI/SQI™通信功能

关键字: SRAM 存储器 MCU

正弦信号发生器是一种用于产生正弦波信号的电子设备,广泛应用于通信、测试和测量等领域。该发生器主要由两部分组成:正弦波信号发生器和调频、调相、键控等信号产生部分。

关键字: 正弦波信号发生器 CPLD

CPLD(可编程逻辑器件)无刷直流电机驱动设计是一种基于硬件可编程逻辑电路的电机驱动方法。CPLD无刷直流电机驱动设计的主要目的是实现高效率、高可靠性和精确控制。以下是CPLD无刷直流电机驱动设计及原理的一些基本信息:

关键字: 无刷直流电机 CPLD 可编程逻辑电路

SRAM : 静态RAM,不用刷新,速度可以非常快,像CPU内部的cache,都是静态RAM,缺点是一个内存单元需要的晶体管数量多,因而价格昂贵,容量不大。

关键字: SDRAM SRAM DRAM

存算一体化是指将传统以计算为中心的架构转变为以数据为中心的架构,它可以突破冯·诺伊曼架构下存算分离的瓶颈,直接利用存储器进行数据处理,从而把数据存储与计算融合在同一芯片中,极大提高计算并行度与能效比。

关键字: 台积电 N3E SRAM

为物联网应用选择电子元件的两个关键标准是功率预算和性能。自从电子产品问世以来,就一直在这两者之间进行权衡——要么获得最佳功耗,要么获得最高性能。根据应用程序,系统架构师对系统中的不同组件有不同的要求。例如,系统可能需要高...

关键字: 物联网功耗 SRAM

摘要:基于DSP和CPLD设计了CAN一1553B网关,选择了1553B总线作为电机控制系统的主总线,其主要用于操作系统与子控制系统之间的通信。为了更好地完成各节点之间的通信,采用CAN总线作为子系统总线,构建基于CAN...

关键字: 电机控制网络 1553B总线 CPLD

摘 要:为了能通过串口采集电能参数,完成一种基于串口的三相电能采集设备的研制,设计了电能采集设备的硬件和软件部分。其中硬件采用MCU+专用电能计量芯片的结构,结构简单;软件则用于实现输入、输出、三相电能参数的采集和串行通...

关键字: 电能采集 ATT7022B MSP430 串口

高速缓冲存储器(Cache)其原始意义是指存取速度比一般随机存取记忆体(RAM)来得快的一种RAM,一般而言它不像系统主记忆体那样使用DRAM技术,而使用昂贵但较快速的SRAM技术,也有快取记忆体的名称。

关键字: Cache RAM SRAM
关闭
关闭