基于DM642的嵌入式双目机器视觉平台
发布时间:2008/5/27 0:00:00 访问次数:517
1 引言
以往的双目机器视觉平台通常采用视频采集卡与工控机,其投资大,扩展性差,可移动性差,一般仅限于实验室研究用,实际应用较少;现有的一些设备则采用嵌入式平台,如基于arm等系列的处理器,但由于其系统频率、芯片结构等多方面限制,系统构成多为前端视频a/d转换,由arm进行视频缓存、预处理、关键帧选取,通过网络或pci等接口发送至pc,在后端由pc进行目标处理,其缺点在于:在诸如需要多路处理、高精度、大数据量的视频应用中显得能力不够。
由于近年dsp芯片速度与功能的快速提高,逐渐展现出其在数字视音频领域的应用前景。dm642作为ti公司推出的一款视频处理芯片,已在h.264等嵌入式视频编解码方面应用较广,而作为双目视觉平台则鲜有之。笔者构建了嵌入式双目机器视觉平台,将两路视频采集、处理与一路视频输出等功能集成一体,给出了一个完整的硬件解决方案。
2 系统硬件结构框架
系统的硬件结构框架如图1所示,该系统主要由核心板和视频板组成。
核心板组成最小系统,是本系统的处理核心,在功能上主要完成图像的处理工作,其上有jtag口,可连接仿真器,用来在线调试。核心板包含两路数字视频输入、一路数字视频输出,同时预留网络接口、串口接口、hpi/pci接口和部分通用io口,并采用排针引出。
此举的目的在于构成通用的图像处理平台,使不同的课题可根据各自项目要求,采用不同像素精度、采样速率和带宽的编解码芯片,构成新的图像处理系统,也可再配以pci或者hpi接口,将此平台作为pc机上的板卡或者arm的子系统,构成功能更强大的嵌入式处理系统。
为构建双目视觉平台的需要(pal制模拟视频),本系统的视频板主要功能是两路模拟视频采集,并进行模数转换,一路视频数模转换并模拟视频输出。视频板的另一功能是电源转换,由外接6~12 v电源,可输出3.3 v和1.4 v直流电压,还设置了串口接头和网口接口用于外部通信,设计了光电隔离部分,用于扩展键盘。
3 核心板的设计与实现
核心板的功能主要为图像处理与接口控制,由dm642,cpld,sdram和flash组成,四者通过64 bit宽的外围存储器接口emif来连接,cpld负责片选、页选等逻辑控制;sdram外部存储器存储图像数据,并在图像处理过程中存储必要的数据和程序(见图1中的emif部分),采用2片hy57v283220t sdram芯片扩展了32mbyte(4m×64 bit)的片外存储空间,在ceo空间提供了64 bit宽的sdram接口总线,大大提高了ram与cpu的数据交互速度;4 mbyte的am29lv320db90e1 flash存储器,映射到ce1的低地址空间,用来boot loading和存储cpld配置信息。
本系统中,ce1空间被配置为8 bit宽,flash是8 bit宽的,所以原来的第16位数据位,复用作a3地址位。cpld用来创建2根地址线,把flash分成4页,每页1 mbytes。当系统复位时,flash位于第0页。在系统初始化完成后,可通过cpld控制选页,从而实现对flash各页的读写操作。在tms320dm642上电或复位时,dsp会从位于外部ce1空间的flash的起始地址拷贝1 kbyte的代码到内部ram地址为0处,并开始执行。用户需要用这1 kbyte的代码把自己的用户程序加载并指向起始点,开始运行。
本模块重点与难点在于cpld的时序设计与bootloader程序设计。cpld需同时顾及sdram,flash与串口芯片的地址、页选与功能控制,并需配合dm642集成开发环境的工具flash burner进行在线flash烧写,其中不仅需要设计cpld控制代码,还要改写flash burher的地址选通等相关代码。
4 视频板的设计与实现
视频板是针对本双目视觉平台的功能需要进行设计,主要构建了视频采集、输出模块、与外界的交互接口及电源管理模块等。
4.1 视频采集模块
根据双目视觉平台的需要,设计了两路视频采集,每一路都由ccd数字摄像机以2:1隔行扫描采集,并以pal制模拟视频输入到saa7113芯片,再经过saa7113完成模拟图像转变成数字图像的工作,输出数字并行信号cif(720×576),yuv(4:2:2),itu-bt656码流(8位),送至dm642的video port进行视频处理,dm642的video port采用8位模式输入,高位对齐(连接vp[2..9])。其框图如图2所示。
saa7113是此模块的核心,dm642通过它提供i2c总线的scl时钟,在系统初始化时对saa7113(从设备)内部的32个寄存器配置相应参数,通过rtso的上拉、下拉操作,可改变芯片的i2c总线默认读写地址。
1 引言
以往的双目机器视觉平台通常采用视频采集卡与工控机,其投资大,扩展性差,可移动性差,一般仅限于实验室研究用,实际应用较少;现有的一些设备则采用嵌入式平台,如基于arm等系列的处理器,但由于其系统频率、芯片结构等多方面限制,系统构成多为前端视频a/d转换,由arm进行视频缓存、预处理、关键帧选取,通过网络或pci等接口发送至pc,在后端由pc进行目标处理,其缺点在于:在诸如需要多路处理、高精度、大数据量的视频应用中显得能力不够。
由于近年dsp芯片速度与功能的快速提高,逐渐展现出其在数字视音频领域的应用前景。dm642作为ti公司推出的一款视频处理芯片,已在h.264等嵌入式视频编解码方面应用较广,而作为双目视觉平台则鲜有之。笔者构建了嵌入式双目机器视觉平台,将两路视频采集、处理与一路视频输出等功能集成一体,给出了一个完整的硬件解决方案。
2 系统硬件结构框架
系统的硬件结构框架如图1所示,该系统主要由核心板和视频板组成。
核心板组成最小系统,是本系统的处理核心,在功能上主要完成图像的处理工作,其上有jtag口,可连接仿真器,用来在线调试。核心板包含两路数字视频输入、一路数字视频输出,同时预留网络接口、串口接口、hpi/pci接口和部分通用io口,并采用排针引出。
此举的目的在于构成通用的图像处理平台,使不同的课题可根据各自项目要求,采用不同像素精度、采样速率和带宽的编解码芯片,构成新的图像处理系统,也可再配以pci或者hpi接口,将此平台作为pc机上的板卡或者arm的子系统,构成功能更强大的嵌入式处理系统。
为构建双目视觉平台的需要(pal制模拟视频),本系统的视频板主要功能是两路模拟视频采集,并进行模数转换,一路视频数模转换并模拟视频输出。视频板的另一功能是电源转换,由外接6~12 v电源,可输出3.3 v和1.4 v直流电压,还设置了串口接头和网口接口用于外部通信,设计了光电隔离部分,用于扩展键盘。
3 核心板的设计与实现
核心板的功能主要为图像处理与接口控制,由dm642,cpld,sdram和flash组成,四者通过64 bit宽的外围存储器接口emif来连接,cpld负责片选、页选等逻辑控制;sdram外部存储器存储图像数据,并在图像处理过程中存储必要的数据和程序(见图1中的emif部分),采用2片hy57v283220t sdram芯片扩展了32mbyte(4m×64 bit)的片外存储空间,在ceo空间提供了64 bit宽的sdram接口总线,大大提高了ram与cpu的数据交互速度;4 mbyte的am29lv320db90e1 flash存储器,映射到ce1的低地址空间,用来boot loading和存储cpld配置信息。
本系统中,ce1空间被配置为8 bit宽,flash是8 bit宽的,所以原来的第16位数据位,复用作a3地址位。cpld用来创建2根地址线,把flash分成4页,每页1 mbytes。当系统复位时,flash位于第0页。在系统初始化完成后,可通过cpld控制选页,从而实现对flash各页的读写操作。在tms320dm642上电或复位时,dsp会从位于外部ce1空间的flash的起始地址拷贝1 kbyte的代码到内部ram地址为0处,并开始执行。用户需要用这1 kbyte的代码把自己的用户程序加载并指向起始点,开始运行。
本模块重点与难点在于cpld的时序设计与bootloader程序设计。cpld需同时顾及sdram,flash与串口芯片的地址、页选与功能控制,并需配合dm642集成开发环境的工具flash burner进行在线flash烧写,其中不仅需要设计cpld控制代码,还要改写flash burher的地址选通等相关代码。
4 视频板的设计与实现
视频板是针对本双目视觉平台的功能需要进行设计,主要构建了视频采集、输出模块、与外界的交互接口及电源管理模块等。
4.1 视频采集模块
根据双目视觉平台的需要,设计了两路视频采集,每一路都由ccd数字摄像机以2:1隔行扫描采集,并以pal制模拟视频输入到saa7113芯片,再经过saa7113完成模拟图像转变成数字图像的工作,输出数字并行信号cif(720×576),yuv(4:2:2),itu-bt656码流(8位),送至dm642的video port进行视频处理,dm642的video port采用8位模式输入,高位对齐(连接vp[2..9])。其框图如图2所示。
saa7113是此模块的核心,dm642通过它提供i2c总线的scl时钟,在系统初始化时对saa7113(从设备)内部的32个寄存器配置相应参数,通过rtso的上拉、下拉操作,可改变芯片的i2c总线默认读写地址。