论文部分内容阅读
摘要:本文提出了一种高效、压缩比在线可调的实时图像压缩系统方案,并且详细说明了硬件设计结构。与现有的结构相比,该结构具有并行度高,抗误码能力强等特点,图像质量可满足大多数应用要求。本系统中采用Xilinx最新推出的Virtex ll Pro系列产品中的XC2VP40来实现在FPGA上的设计。
关键词:高效实时;图像压缩;FPGA
引言
在信息化时代,对图像信息的处理、存储和传输在社会生活中所起到的作用也越来越突出,人们对接受图像信息的要求也越来越迫切。图像编码的目的是在保证图像质量的前提下,用尽可能少的比特数来表示数字图像中所包含的信息。本文所介绍的是一种压缩比在线可调的图像编码传输系统,在不改变硬件框架的条件下可按用户要求实现多种压缩比,可以获得较高的图像质量;在图像传输的过程中,传输噪声是无法避免的,因而会形成误码。本系统对压缩码流进行RS编码,采用包(Packet)格式输出,起到了很好的容错及抗误码效果。
VinexⅡPro系列产品是Xilinx最新推出的高端FPGA产品。它沿用成熟和完善的VinexⅡ体系结构。它利用IP植入技术(IP-Immersion),无缝嵌入了32的IBM PowerPC 405 RISC处理器内核和RocketIO多路吉比特串行收发器MGT(Multi-Gigabit Transceiver)。使得Xilinx的PLD技术从传统的可编程功能向网络、通信和存储业务服务器设计平台的功能转变,并将FPGA器件推向了更广泛的应用领域。
RS码基本原理
RS码是一种具有很强的纠错能力的BCH码,也是一种典型的代数几何码和优良的线性分组码。在同样的编码效率下,RS码的纠错能力很强,特别是在短的中等码长下,其性能很接近于理论值。它不但可以纠正随机错误、突发错误以及二者的结合,而且可以用来构造其它码类,如级联码。
在GF(q)(q≠2)上,码长n=q—I的本原BCH码称为RS码。由此可知,RS码最主要的特点之一就是码元取自GF(q)上,而它的生成多项式的根也在GF(q)上,所以RS码是码元的符号域与根域一致的BCH码。因为
能纠正t个错误的RS码具有如下参数:
码长,2=q-1
校验位数目,2—k=2f
最小距离d=2t+l
由于线性码的最大可能的最小距离为校验元的个数加1,这就是所谓的Singleton限界,而RS码恰好做到了这一点。因此,称RS码为极大最小距离可分码,简称MDS码。显然,RS码的设计距离和实际距离D是一致的。
XC2VP40特点及应用
FPGA/CPLD以其功能强大,开发过程投资少、周期短,可反复修改,保密性能好,开发工具智能化等特点成为当今硬件设计的首选方式之一。采用FPGA内部集成的数百万个逻辑门、丰富的布线资源及内嵌的功能模块和专用硬核,将电路的控制指令,数据输入、输出,对外部存储器的地址控制等全部集成在一片芯片中,大大减小了系统体积,缩短了开发时间,降低了设计成本。
本系统中使用的FPGA采用了Xilinx公司的VirtexⅡPro系列产品中的XC2VP40来实现系统设计。VirtexⅡPro系列产品是Xilinx公司推出的高端FPGA产品,它采用0.13urn的9层全铜工艺生产,并其特性主要为:
1.高性能的内部存储器SelectRAM结构,每个存储块容量18Kb,并且是完全的双端口存储器结构。最多可提供3Mb的块存储资源,以及1.5Mb的分布式存储器资源。支持高性能的外部存储器接口,这些接口包括SDR/DDR、SDRAM/SRAM、FCRAM、QDSRAM和CAM等接口;
2、专用的18位×18位乘法器模块和超前进位逻辑链(Look-ahead Carry)构成了高性能的算术处理功能;
3.多达l2个数字时钟管理器(DCM,Digital Clock Manager)模块和16个全局时钟多路复用缓冲器,构成了内部高性能和丰富的时钟资源,从而可以提供灵活的系统时钟解决方案;
4.支持多达19种的单端接口标准和6种差分接口标准。这些接口主要包括LVTTL、LVCMOS(3.3V、2.5V、1.8V、1.5V)、PCI-X133、PCI64/66、GTL、GTL+、AGP、AGP-2X、HSTL(Ⅰ、Ⅱ、Ⅲ、Ⅳ),SSTL3,SSTL2、LVDS(3.3V,2.5V)、LVPECL、BLVDS、ULVDS和LDT
5.片内的数字化阻抗匹配(DCI,Digitally Controlled Impedance)技术和可编程的输出电流(从2mA到24mA),克服了因阻抗不匹配而造成的系统不稳定性(信号完整性)问题;
6.特有的配置数据三重加密技术,最大限度地保护设计者的知识产权。
图像压缩和传输码流结构
该实时图像压缩系统主要完成的功能是:实时接收CCD(Charge CoupledDevice)连续采集输入的图像数据。根据原始图像数据的速率自动选择压缩比,将图象数据压缩变换成符合CCIR-D视频标准的、受外部输入复合同步信号同步的模拟视频信号输出。
压缩部分的框架如图1所示:
其中数据1为并串转换后数据,数据2为小波变换后数据,数据3为量化后的结果。
系统工作时,将外部数据依次存放到外部存储器A和B中,写A则读B,反之亦然。写入的顺序是递增的,但读出的顺序则有所不同。首先对输入数据进行小波变换和量化,结果保存在存储器E和F中。在对外输出压缩码流时,根据得到的外部指令给出的压缩比决定输出压缩码流的大小以实现压缩比在线可调。图2为对压缩码流进行编码的码流组织模块框图。
经过压缩后的码流按照包(Packet)的格式进行输出。编码器硬件结构如如图2所示。前端的压缩模块每完成一帧图像的压缩后会给出一个启动信号。编码模块根据这个启动信号开始编码打包。每个包的内容由同步信息和实际码流组成。其中同步信息包括:(1)包头标识;(2)类型标识;(3)帧标识;(4)子帧计数;(5)包计数。同时从CCD相机采集到的图像数据伴有详细的注释信息,该信息由单片机模块接收422端口数据后翻译给出。该注释信息需要写入对应帧的码流中。从接受图像数据到压缩完成输出压缩码流会有一定时间的延迟。因而,系统中设计了一个BlockRam用来缓存注释信息。码流打包时,首先进行包头组织。若判断是每个子帧的第一个包则将缓存中相应的注释信息填入,放在包计数的后面;普通的包没有注释信息,以节省处理时间并节约了码流。本设计中RS部分采用RS(255,243)进行编码。其码长为255个字节,信息数据的长度为243个字节,校验位的长度为12个字节,纠错能力为6个字节,满足系统设计指标要求。由于系统后端输出为串行码流,因此在RS编码模块后需要进行并串转换。串行码流的时钟频率比并行码流的低,在转换过程中会有很大的时间延迟。因此在该RS模块后设置了一个512字节大小的FIFO。每次RS编码模块只打一个包(255字节),经过校验模块后存入该FIFO。并串转换模块对校验后输出的数据进行并串转换。当FIFO中的数据量小于255字节时,即令RS编码模块打下一个包,以此类推,以保证串行码流的连续输出。工作流程如图3。
系统时钟、资源和仿真波形
本设计在xilinx公司生产的XC2VP40芯片上实现了全部功能。使用的是该公司提供的集成综合环境ISE。它是XilinxFPGA/CPLD的综合性集成设计平台,该平台集成了从设计输入、仿真、逻辑综合、布局布线与实现、时序分析、芯片下载与配置、功率分析等几乎所有设计流程所需工具。
本文设计的RS编/解码模块采用VHDL语言描述各个模块,并在ModelSim SE6.0环境下进行仿真。仿真波形如图4。表1给出了具体的实现参数。
结语
本文结合VirtexⅡPro系列芯片中的XC2VP40的主要性能特点,详细介绍一种高效实时图像压缩系统方案,并给出了详尽的硬件设计结构。本文提出的结构大大提高了系统处理速度,可实时相应可变压缩比的要求,避免了时钟浪费,并具有较强抗误码性能。本系统能够满足大多数硬件要求,并成功应用于实际的高速图像实时压缩传输系统中,最高工作频率可达80MHz。
参考文献:
1.王新梅,肖国镇编著,‘纠错码—原理与方法’,西安电子科技大学出版社.2001
关键词:高效实时;图像压缩;FPGA
引言
在信息化时代,对图像信息的处理、存储和传输在社会生活中所起到的作用也越来越突出,人们对接受图像信息的要求也越来越迫切。图像编码的目的是在保证图像质量的前提下,用尽可能少的比特数来表示数字图像中所包含的信息。本文所介绍的是一种压缩比在线可调的图像编码传输系统,在不改变硬件框架的条件下可按用户要求实现多种压缩比,可以获得较高的图像质量;在图像传输的过程中,传输噪声是无法避免的,因而会形成误码。本系统对压缩码流进行RS编码,采用包(Packet)格式输出,起到了很好的容错及抗误码效果。
VinexⅡPro系列产品是Xilinx最新推出的高端FPGA产品。它沿用成熟和完善的VinexⅡ体系结构。它利用IP植入技术(IP-Immersion),无缝嵌入了32的IBM PowerPC 405 RISC处理器内核和RocketIO多路吉比特串行收发器MGT(Multi-Gigabit Transceiver)。使得Xilinx的PLD技术从传统的可编程功能向网络、通信和存储业务服务器设计平台的功能转变,并将FPGA器件推向了更广泛的应用领域。
RS码基本原理
RS码是一种具有很强的纠错能力的BCH码,也是一种典型的代数几何码和优良的线性分组码。在同样的编码效率下,RS码的纠错能力很强,特别是在短的中等码长下,其性能很接近于理论值。它不但可以纠正随机错误、突发错误以及二者的结合,而且可以用来构造其它码类,如级联码。
在GF(q)(q≠2)上,码长n=q—I的本原BCH码称为RS码。由此可知,RS码最主要的特点之一就是码元取自GF(q)上,而它的生成多项式的根也在GF(q)上,所以RS码是码元的符号域与根域一致的BCH码。因为
能纠正t个错误的RS码具有如下参数:
码长,2=q-1
校验位数目,2—k=2f
最小距离d=2t+l
由于线性码的最大可能的最小距离为校验元的个数加1,这就是所谓的Singleton限界,而RS码恰好做到了这一点。因此,称RS码为极大最小距离可分码,简称MDS码。显然,RS码的设计距离和实际距离D是一致的。
XC2VP40特点及应用
FPGA/CPLD以其功能强大,开发过程投资少、周期短,可反复修改,保密性能好,开发工具智能化等特点成为当今硬件设计的首选方式之一。采用FPGA内部集成的数百万个逻辑门、丰富的布线资源及内嵌的功能模块和专用硬核,将电路的控制指令,数据输入、输出,对外部存储器的地址控制等全部集成在一片芯片中,大大减小了系统体积,缩短了开发时间,降低了设计成本。
本系统中使用的FPGA采用了Xilinx公司的VirtexⅡPro系列产品中的XC2VP40来实现系统设计。VirtexⅡPro系列产品是Xilinx公司推出的高端FPGA产品,它采用0.13urn的9层全铜工艺生产,并其特性主要为:
1.高性能的内部存储器SelectRAM结构,每个存储块容量18Kb,并且是完全的双端口存储器结构。最多可提供3Mb的块存储资源,以及1.5Mb的分布式存储器资源。支持高性能的外部存储器接口,这些接口包括SDR/DDR、SDRAM/SRAM、FCRAM、QDSRAM和CAM等接口;
2、专用的18位×18位乘法器模块和超前进位逻辑链(Look-ahead Carry)构成了高性能的算术处理功能;
3.多达l2个数字时钟管理器(DCM,Digital Clock Manager)模块和16个全局时钟多路复用缓冲器,构成了内部高性能和丰富的时钟资源,从而可以提供灵活的系统时钟解决方案;
4.支持多达19种的单端接口标准和6种差分接口标准。这些接口主要包括LVTTL、LVCMOS(3.3V、2.5V、1.8V、1.5V)、PCI-X133、PCI64/66、GTL、GTL+、AGP、AGP-2X、HSTL(Ⅰ、Ⅱ、Ⅲ、Ⅳ),SSTL3,SSTL2、LVDS(3.3V,2.5V)、LVPECL、BLVDS、ULVDS和LDT
5.片内的数字化阻抗匹配(DCI,Digitally Controlled Impedance)技术和可编程的输出电流(从2mA到24mA),克服了因阻抗不匹配而造成的系统不稳定性(信号完整性)问题;
6.特有的配置数据三重加密技术,最大限度地保护设计者的知识产权。
图像压缩和传输码流结构
该实时图像压缩系统主要完成的功能是:实时接收CCD(Charge CoupledDevice)连续采集输入的图像数据。根据原始图像数据的速率自动选择压缩比,将图象数据压缩变换成符合CCIR-D视频标准的、受外部输入复合同步信号同步的模拟视频信号输出。
压缩部分的框架如图1所示:
其中数据1为并串转换后数据,数据2为小波变换后数据,数据3为量化后的结果。
系统工作时,将外部数据依次存放到外部存储器A和B中,写A则读B,反之亦然。写入的顺序是递增的,但读出的顺序则有所不同。首先对输入数据进行小波变换和量化,结果保存在存储器E和F中。在对外输出压缩码流时,根据得到的外部指令给出的压缩比决定输出压缩码流的大小以实现压缩比在线可调。图2为对压缩码流进行编码的码流组织模块框图。
经过压缩后的码流按照包(Packet)的格式进行输出。编码器硬件结构如如图2所示。前端的压缩模块每完成一帧图像的压缩后会给出一个启动信号。编码模块根据这个启动信号开始编码打包。每个包的内容由同步信息和实际码流组成。其中同步信息包括:(1)包头标识;(2)类型标识;(3)帧标识;(4)子帧计数;(5)包计数。同时从CCD相机采集到的图像数据伴有详细的注释信息,该信息由单片机模块接收422端口数据后翻译给出。该注释信息需要写入对应帧的码流中。从接受图像数据到压缩完成输出压缩码流会有一定时间的延迟。因而,系统中设计了一个BlockRam用来缓存注释信息。码流打包时,首先进行包头组织。若判断是每个子帧的第一个包则将缓存中相应的注释信息填入,放在包计数的后面;普通的包没有注释信息,以节省处理时间并节约了码流。本设计中RS部分采用RS(255,243)进行编码。其码长为255个字节,信息数据的长度为243个字节,校验位的长度为12个字节,纠错能力为6个字节,满足系统设计指标要求。由于系统后端输出为串行码流,因此在RS编码模块后需要进行并串转换。串行码流的时钟频率比并行码流的低,在转换过程中会有很大的时间延迟。因此在该RS模块后设置了一个512字节大小的FIFO。每次RS编码模块只打一个包(255字节),经过校验模块后存入该FIFO。并串转换模块对校验后输出的数据进行并串转换。当FIFO中的数据量小于255字节时,即令RS编码模块打下一个包,以此类推,以保证串行码流的连续输出。工作流程如图3。
系统时钟、资源和仿真波形
本设计在xilinx公司生产的XC2VP40芯片上实现了全部功能。使用的是该公司提供的集成综合环境ISE。它是XilinxFPGA/CPLD的综合性集成设计平台,该平台集成了从设计输入、仿真、逻辑综合、布局布线与实现、时序分析、芯片下载与配置、功率分析等几乎所有设计流程所需工具。
本文设计的RS编/解码模块采用VHDL语言描述各个模块,并在ModelSim SE6.0环境下进行仿真。仿真波形如图4。表1给出了具体的实现参数。
结语
本文结合VirtexⅡPro系列芯片中的XC2VP40的主要性能特点,详细介绍一种高效实时图像压缩系统方案,并给出了详尽的硬件设计结构。本文提出的结构大大提高了系统处理速度,可实时相应可变压缩比的要求,避免了时钟浪费,并具有较强抗误码性能。本系统能够满足大多数硬件要求,并成功应用于实际的高速图像实时压缩传输系统中,最高工作频率可达80MHz。
参考文献:
1.王新梅,肖国镇编著,‘纠错码—原理与方法’,西安电子科技大学出版社.2001