新型网络数字摄像系统的设计
发布时间:2008/5/29 0:00:00 访问次数:354
1 图像处理模块
1.1 芯片介绍 图像采集芯片采用omnivision公司的cmos彩色图像传感器ov6620[1]。在它内部集成了一个356×292的彩色图像阵列。该图像传感器能对所拍摄的图像进行预处理,包括自动曝光控制、自动白平衡调节、gamma校正、自动图像增强;并可通过与dsp芯片相连的串行通信接口,对传感器内部的92个寄存器的参数进行设置。
图像压缩芯片采用ti公司的tms320vc5416[2]定点运算数字信号处理器(dsp),其内部采用一种改进型的哈佛总线结构(一条程序总线,三条数据总线),数据总线宽度为16
bit。分开的数据和指令空间使该芯片具有高度的并行操作能力,在单周期内允许指令和数据同时存取,再加上其高度优化的指令集,使得该芯片具有很高的运算速度,最高可达
160mips。
vc5416芯片的外部程序存储空间为8m×16bits,外部数据存储空间为64k×16bits。在芯片内部还集成了128k×16bits片上存储器。该芯片具有多种片上外部设备单元,包括一个16位计时器,一个6通道dma传输控制器,三个带缓冲器的串行通信接口(mcbsp
)和一个8/16位的主机通信接口(hpi8/16)。
1.2 功能介绍
图像处理模块主要负责模拟图像的采集、数字化、压缩等工作。首先,在系统加电运行后,由netmcu模块对vc5416芯片复位,然后vc5416芯片运行固化在芯片内的bootloader程序,将存储在外部程序存储器上的应用程序复制到内部存储器中,并开始运行应用程序。应用程序的任务主要有以下三个方面:
(1)通过vc5416芯片的1号串行通信接口(mcbsp1)对ov6620的内部寄存器进行参数配置。主要参数包括:将输出图像分辨率设置为352×288,将输出图像帧的速率设置为25帧/秒,将数字图像的输出格式设置为yuv分量4:2:2格式。
(2)将ov6620芯片输出的图像数据利用jpeg算法进行数字图像压缩。在本设计中采用一种改进的jpeg算法[4]。将二维dct变换分解成两次一维快速dct变换。对8×8象素块的dct变换,共需176次乘法和464次加法,比标准dct算法的1024次乘法和896次加法在运算速度上有极大提高。
(3)vc5416芯片通过与netmcu模块相连的0号串行通信接口(mc bap0),接收改变传输图像的分辨率、帧速、曝光时间等参数的命令,并及时调整ov6620芯片的内部寄存器参数。
ov6620芯片和vc5416芯片之间存在大量的数据传输,因此在系统中采用一片altera公司的fpga(flex10k20)芯片作为数据传输接口,代替vc5416芯片管理外部数据存储区。在fpga芯片中集成了一个512×16bits的fifo和一个存储控制器。通过ov6620芯片输出的图像象素移位脉冲和图像的行、场同步脉冲的控制,将原始图像数据存入fifo中。由于jpeg图像压缩以8×8象素块基本运算单位,需要存储控制器将fifo中以行顺序输入的原始图像数据进行存储地址调整,变换成按8×8像素块顺序存入外部数据存储区。同时,由于受vc5416芯片的外部数据存储区容量的限制,存储控制器将一帧原始图像数据分成上下两个半区,各占用一个64kb地址空间。当vc5416芯片读数据时,存储控制器会自动在这两个半区之间切换,使得dsp芯片能够处理一帧图像。
1 图像处理模块
1.1 芯片介绍 图像采集芯片采用omnivision公司的cmos彩色图像传感器ov6620[1]。在它内部集成了一个356×292的彩色图像阵列。该图像传感器能对所拍摄的图像进行预处理,包括自动曝光控制、自动白平衡调节、gamma校正、自动图像增强;并可通过与dsp芯片相连的串行通信接口,对传感器内部的92个寄存器的参数进行设置。
图像压缩芯片采用ti公司的tms320vc5416[2]定点运算数字信号处理器(dsp),其内部采用一种改进型的哈佛总线结构(一条程序总线,三条数据总线),数据总线宽度为16
bit。分开的数据和指令空间使该芯片具有高度的并行操作能力,在单周期内允许指令和数据同时存取,再加上其高度优化的指令集,使得该芯片具有很高的运算速度,最高可达
160mips。
vc5416芯片的外部程序存储空间为8m×16bits,外部数据存储空间为64k×16bits。在芯片内部还集成了128k×16bits片上存储器。该芯片具有多种片上外部设备单元,包括一个16位计时器,一个6通道dma传输控制器,三个带缓冲器的串行通信接口(mcbsp
)和一个8/16位的主机通信接口(hpi8/16)。
1.2 功能介绍
图像处理模块主要负责模拟图像的采集、数字化、压缩等工作。首先,在系统加电运行后,由netmcu模块对vc5416芯片复位,然后vc5416芯片运行固化在芯片内的bootloader程序,将存储在外部程序存储器上的应用程序复制到内部存储器中,并开始运行应用程序。应用程序的任务主要有以下三个方面:
(1)通过vc5416芯片的1号串行通信接口(mcbsp1)对ov6620的内部寄存器进行参数配置。主要参数包括:将输出图像分辨率设置为352×288,将输出图像帧的速率设置为25帧/秒,将数字图像的输出格式设置为yuv分量4:2:2格式。
(2)将ov6620芯片输出的图像数据利用jpeg算法进行数字图像压缩。在本设计中采用一种改进的jpeg算法[4]。将二维dct变换分解成两次一维快速dct变换。对8×8象素块的dct变换,共需176次乘法和464次加法,比标准dct算法的1024次乘法和896次加法在运算速度上有极大提高。
(3)vc5416芯片通过与netmcu模块相连的0号串行通信接口(mc bap0),接收改变传输图像的分辨率、帧速、曝光时间等参数的命令,并及时调整ov6620芯片的内部寄存器参数。
ov6620芯片和vc5416芯片之间存在大量的数据传输,因此在系统中采用一片altera公司的fpga(flex10k20)芯片作为数据传输接口,代替vc5416芯片管理外部数据存储区。在fpga芯片中集成了一个512×16bits的fifo和一个存储控制器。通过ov6620芯片输出的图像象素移位脉冲和图像的行、场同步脉冲的控制,将原始图像数据存入fifo中。由于jpeg图像压缩以8×8象素块基本运算单位,需要存储控制器将fifo中以行顺序输入的原始图像数据进行存储地址调整,变换成按8×8像素块顺序存入外部数据存储区。同时,由于受vc5416芯片的外部数据存储区容量的限制,存储控制器将一帧原始图像数据分成上下两个半区,各占用一个64kb地址空间。当vc5416芯片读数据时,存储控制器会自动在这两个半区之间切换,使得dsp芯片能够处理一帧图像。
上一篇:软件无线电及其实现的技术课题