>
摘 要: 提出一种基于嵌入式系统和双核心处理器架构的数字视频监控系统的设计方案。该系统基于ARM /FPGA双核心嵌入式技术, 具有低成本、高质量远程数字视频监控的优点, 适合复杂的视频处理和控制逻辑。通过设计高速SRAM和VGA输出接口, 实现双核心处理器间的高速通信。与传统的监控系统相比, 该系统能大大降低组网成本和减小体积重量。系统性能测试结果表明, 双核心处理架构能提高系统的可靠性和灵活性。
关键词: 双核心处理器; 视频监控; 嵌入式系统
随着信息数字化、网络化和智能化日益发展,视频监控系统以其直观、方便、信息内容详实的特点, 成为交通、能源、公安、电信、军事、商业等领域安全防范的重要手段。但由于架设专用线路成本的高昂、系统处理速度的瓶颈以及可扩展能力不强等原因, 限制了传统视频监控系统的广泛应用。
本文提出了一种低成本、高可靠和远距离视频监控的解决方案。它使用ARM /FPGA双核心处理器架构的嵌入式系统, 适合复杂的视频处理及硬件控制逻辑, 同时兼顾处理速度和灵活性, 具有很强的系统扩展能力。
双核心架构的视频监控系统
由双处理器组成系统的核心, 能充分发挥两者的优势。FPGA其并行流水线处理结构适合完成并行处理、重复性强、速度要求高的数字信号处理运算, 而ARM适合构建嵌入式系统, 保证多任务同步和实时。
基于双核心架构的远程视频监控系统如图1所示, 分为ARM核心子系统和FPGA核心子系统两部分。ARM控制FPGA 进行CMOS图像采集, 然后从高速缓冲SRAM中读取图像数据到LCD显示存储区并在LCD屏上显示。这打通了整个数据前向通道, ARM获取图像后可以进一步处理和传输。
其中, ARM嵌入式微处理器具有MMU、音频接口及LCD控制器。ARM系统扩展槽和设备扩展槽用于系统功能扩展和互联, 添加如以太网、海量数据存储和PCMCIA 等接口, 以及为系统扩展CMOS图像获取和VGA显示功能。VGA接口通过电阻网络实现320 ×240 ×12bits即4096色彩色显示, 而DA I音频接口用于数字音频播放。
CMOS图像获取和VGA显示功能都基于SRAM访问, 这需要用FPGA程序建立板载的高速SRAM连接。互联接口有8位地址, 同时对SRAM需进行顺序访问, 所以FPGA与ARM互联程序是基于寄存器访问的。它们之间的通信握手协议通过两个处理器的中断来实现, 配合信号量的使用达到系统的高速、高效通信。
因此, FPGA与ARM间的接口实际是一组可通过互联接口访问的寄存器, 特定地址的寄存器对应特定的扩展功能, 为ARM提供了与FPGA内部功能模块的连接。例如, SRAM 控制寄存器、读出/写入数据寄存器, CMOS采集控制和状态寄存 器和VGA显示控制寄存器。
高速SRAM设计
高速SRAM是图像数据的缓冲存储器, 接口模块如图2所示。从图像采集模块采集的每帧图像信息量为而SRAM (访问速度10 ns) 容量为256k ×16bit =4Mbit, 因此能实现双缓冲处理。对数据的读取、改写操作都是顺序地址访问, 所以高速SRAM设计为地址可以自增、自减的同步接口。
图2左边是同步SRAM内部接口如数据输入、地址输入, 以及使能信号、时钟信号、地址复位信号。右边是模块对外部接口如LPM_ BUSTR I双向数据总线, 及读写有效信号、片选输出信号。
软件设计中, SRAM通过设置不同的输入地址实现与时钟信号同步的数据访问, 访问地址可以固定、自增1或自减1。这样设计简化了内部接口,兼顾了访问速度和访问的灵活性。
在普通模式下, 每3个时钟周期完成一次外部SRAM访问。而基于双核心处理架构下可实现突发访问模式, 每两个时钟周期完成一次访问, 比普通模式处理快33%。
VGA接口与权电阻网络设计
VGA是FPGA 核心子系统的重要输出设备之一, 其接口是15针D型接口, 由R、G、B三色模拟信号线和行同步、场同步两个数字信号构成。通过VGA接口, FPGA连接PC显示器可显示320 ×240 ×4096 Pixel = 300Mbit图像。
系统中使用FPGA 两个输入/输出I/O作为同步信号, 用12个I/O通过由电阻网络构成的3个DAC作为R、G、B模拟信号(每种颜色4个I/O即4位D /A, 16级灰度) 。VGA负载电阻是75Ω,RGB模式信号的幅度是0.7 V, 经过计算可以得出电阻网络中各电阻的值。图3是电阻网络4位DAC的原理图。
VGA的软件设计需要比较精确的定时, 示波器实际测试在不同分辨率下VGA的同步参数如表1所示。
图4是VGA行、场同步信号示意图, 其中同步信号的极性根据不同的显示分辨率而不同。由于分辨率越高, RGB模拟信号的速率也越高, 而FPGA主时钟为64 MHz, 所以适于320 ×240或近似分辨率的彩色图像显示。
系统的运行与测试
ARM从FPGA 获取图像信息后, 执行压缩程序, 压缩后的文件传递到监控PC端。由于系统采用相同的图像分辨率和常量表, 所以文件头相同。为了减少传输数据量, 可以不传送文件头而在监控主机端由软件自动添加。
系统使用调制解调器建立远程数据连接, 当远程监控终端处处于待命状态时, 使用“ATS0 =3&D0W&W
由于监控终端工作于自动应答方式, ARM通过串口以19 200 bp s发送“ATH”命令约定命令方式下的通讯速率。调制解调器接收到振零信号后向ARM发送“Ring”字符串, 3次振铃后自动应答。数据连接建立好, ARM接收到“CONNECT”字符串表明通讯线路连接成功, 建立远程数据连接。然后ARM接收从监控中心的采集命令, 依次完成图像采集、压缩处理, 以ASCII码形式直接发送数据到监控中心。
经过实际测试, 从拨号开始到接收到视频信号时间为5.7s, 建立连接以后刷新间隔为3.9s (其中图像采集0.7s, 压缩2.1s, 数据传输1.1s) ,信号带宽为518kb/s。
结 语
本文提出一种基于双核心处理架构和嵌入式应用系统的数字远程视频监控的设计方案。系统前端使用一体化高集成数字化视频采集模块, 简化了系统前端的设计, 降低了前端成本; 信号处理与控制逻辑使用由高速、高性能的ARM与FPGA构建的嵌入式系统, 通过软件来实现视频压缩与传输。在降低系统成本的同时, 提高了系统的灵活性。
实践证明, 基于双核心架构的低成本数字化远程视频监控系统, 具有高可靠和高效率的视频处理和监控效果, 以及很强的系统扩展能力。