视频监控系统中多画面处理器的设计
D/A转换电路将FPGA输出的数字视频信号转移成模拟视频信号,然后经过缓冲放大输出给监视器,D/A芯片选HI1171。该芯片是一种分辨率为8位,频率为40MHz的高速D/A转换器,其最大积分和微分线性误差分别为1.3LSB和0.25LSB;最小建立时间仅为5ns,在单5V下工作,功耗只有80mW。输出缓冲放大由分立元件组成。
2.5 单片机
单片机选日本NEC公司的μPD78F0034,该芯片的主要特点是:
·时钟为8.38MHz时的指令周期为0.24μs;
·ROM为32KB FLASH,RAM为1024bytes;
·可寻址空间为64KB,5个外部中断,15个内部中断;
·39个CMOS I/O,8个COMS INPUT,4个N-CH漏极开路I/O;
·1个16位定时/计数器,2个8位定时/计数器;
·1个时钟定时器,1个看门狗定时器,1个UART端口;
·支持I2C总线,有时钟信号及蜂鸣信号输出功能;
·外部数据总线8位,内部寄存器为16位;
·有8位无符号乘法指令,16位除法指令;
·工作电压范围为1.8V~5.5V,有STOP/HALT工作模式。
由此可见,该芯片的性能要优于目前流行的MCS-51系列,其8位无符号乘法指令及16位除法指令给软件编程带来了很大的方便。另外,由于该芯片本身带看门狗定时器,因而无需外加看门狗电路,就能保证系统稳定、可靠地工作。
2.6 存储器
存储器芯片采用串行EEPROM芯片X24C16。该芯片是容量为2KB带写保护的I2C总线数据存储器,当WP=1时,只能读,不能写数据。它使用串行数据线(SDA)和串行时钟线(SCL)进行主从器件之间的数据传输。I2C总线上的数据传输率可达100Mbps,快速方式下可达400Mbps。在I2C总线传输中,开始和停止条件定义如下:当SCL为高时,SDA由高变低为开始条件;当SCL为高时,SDA由低变高时为停止条件(如图3(a)所示)。SDA和SCL都是双向传输线,SDA线上的数据在时钟为高期间必须是稳定的,只有当SCL线上的时钟信号为低时,数据线上的状态才可以改变(如图3(b)所示)。输出到SDA线上的每一字节必须是8位,每次传输的字节不受限制,每字节必须有一个应答位。本设计中X24C16的第5脚(SDA)和第6脚(SCL)分别接单片机的P3.6和P3.7。
2.7 时钟和字符叠加电路
时钟芯片选串行时钟DS1302。该芯片是一种高性能、低功耗且带RAM的实时时钟芯片,它有如下主要特性;
·实时时钟,可对秒、分、时、日、周、月、年进行计数,且有闰年补偿功能,直至2100年;
·用于数据暂存的31B NV RAM,简单的三线接口,TTL兼容;
·用于时钟或RAM数据读/写的连续多字节数据传送方式;
·8引脚DIP或用于表面贴装的8引脚SOIC封装;
·工作电压为2~5.5V,温度为-40℃~85℃。
字符叠加电路由NEC公司μPD6453组成。该芯片可在屏幕上显示12行、每行24个字符、每个字符为12×18点阵。字符的大小、闪烁频率可以根据需要进行调整,屏幕的背景色、字符的边缘色以及字符本身的颜色也可以修改。该芯片内部除固化了191个日文、英文字母和数字等字符的字模以外,还固化了49个汉字(如年、月、日、时)的字模;另外该芯片提供16个字符的RAM空间,供用户填入自定义字符。由于画面处理器不需要叠加太多的不同字符,因而本设计不外加汉字字库,这样既节省了成本和线路板的空间,又简化了电路结构。μPD6453所需的行、场同步信号及时钟信号均由FPGA提供。单片机通过串行数据传输将一系列命令(包括所要显示的字符或汉字、字符大小、字符的间距、字符的属性)送往μPD6453,μPD6453收到命令后再将所要显示的字符或汉字等信息送至FPGA。
2.8 视频信号切换电路
该电路由MAX440组成。MAX440是一种内含宽带视频放大器的高速多路视频选择开关,可输入8路视频信号,输出为1路视频信号。在单片机的控制下,输出可与8路视频输入中的任一路相连。该芯片的主要特点如下:
·带宽为110MHz;javascript:window.open(this.src);" style="cursor:pointer;"/>微分增益为0.04%,微分相位为0.03度;
·开关切换时间为15ns,转换速率为370V/μs;
·开/关时的输入电容为4pF,无需外接补偿元件。
2.9 报警信号的接收及处理
由单片机直接完成,无需经过FPGA。当有报警发生时,单片机收到报警信息,发出命令使蜂鸣器件发出警报声,同时通知FPGA和μPD6453使对应的画面闪烁并出现“报警”字样。
3 FPGA器件XCS05XL的编程实现原理
所谓编程就是利用单片机μPD78F0034将事先设计好的数据通过某种方式装入XCS05XL中,以确定XCS05XL内部的CLB和IOB的功能以及布线通道的连接方式,数据的写入只在编程过程中完成。在正常工作期间,存储单元只用来提供固定的控制信号,编程存储单元以阵列形式分布在XCS05XL中。每个CLB有几百个编程数据位,每个编程数据位定义了一个静态存储单元的状态,该存储单元可以控制一个逻辑函数查找表位、一个数据选择器输入或一个互连开关晶体管。Xilinx开发系统可以将逻辑设计转换成网络表文件,它自动将逻辑电路分区、设置和布线,以PROM格式产生编程数据,并将数据存入PROM中。XCS05XL有三种编程模式:从串模式、主串模式和快速模式。编程开始前,芯片会自动检测M1和M2脚以确定编程模式,编程结束后,这些脚就没有用了。当M1和M2脚为高电平时,选从串模式,这也是目前最常用的一种编程模式。实际上,此时M1和M2脚可悬空。如果要选择主串模式,则M1和M2脚必须与相连或通过1k℃的下拉电阻接地。
图4所示为μPD78F0034单片机对FPGA器件XCSO5XL装载编辑数据的示意图。XCS05XL的编程模式选从串模式,因而其M1、M2脚悬空(即相当于接高电平)。XCS05XL的编辑数据存储在单片机的FLASH ROM里,上电复位后,单片机通过P30脚将数据串行传送到XCSO5XL中。XCS05XL所需的编程时钟(CCLK)信号由单片机产生,在每个CCLK的上升沿,XCS05XL通过DIN脚接收输入数据。
4 软硬件设计时要注意的几个问题
(1)使用帧存储器AL422应注意的问题
·由于帧存储器AL422是FIFO DRAM,因而须确保WCK和RCK信号始终有且信号的频率不低于1MHz,因WCK和RCK中频率较高者将作为DRAM的刷新时钟信号。
·在AL422的/RRST信号的上升沿,/RE信号不能为低,这一点在确定FPGA的编程数据时要特点注意(因/RRST和/RE信号均由FPGA提供);
·AL422可在5V或3.3V电源电压下工作,当使用5V电源时,其DEC脚(Pin19)须接2.2μF的去耦电容;当使用3.3V电源时,DEC脚(Pin19)可直接与3.3V相连,并通过0.1μF电容旁路到地;电容均使用钽电容。由于使用3.3V时,器件功耗低,且受噪声干扰小,因而在本设计中采用了3.3V电源对AL422供电。
(2)为避免视频信号之间的串扰,各种模拟视频信号间均用较粗的地线隔开,且视频走线足够宽。
以上介绍了黑白四画面处理器的设计。为了节省线路板空间并使产品小巧玲珑,所有的元器件及IC芯片均选用贴片式封装。鉴于篇幅的限制,本文没有讨论多画面处理器软件方面的设计。至于9画面和16画面处理器的设计,其设计思想及组成方框图与该4画面处理器相类似,只不过要增加A/D、AL422及FPGA,软件编程也复杂一些。