1. Color Model Conversion(色彩模型)
2. DCT(Discrete Cosine Transform离散余弦变换
3. 重排列DCT结果
4. 量化
5. RLE编码
6. 范式Huffman编码
7. DC的编码本次试验ARM侧运行LINUX操作系统,并将Color Model Conversion部分,下发给FPGA侧来实现,如上图,黄色区域标记。其中ARM核与FPGA的数据交互运用了HPS-to-FPGA x64 Bridge,该总线的读写操作都是在MMAP(将底层地址空间映射到用户层)后,通过使用HWlib库函数来实现。在FPGA侧,运用Qsys工具,添加Application_logic用户逻辑模块,来实现Color Model Conversion功能,如下图黄色区域标记。试验结果
1. 整个编码过程正常,以下左侧为编码前的真彩.bmp格式图片,右侧为编码后的.jpg格式图片。2. 通过调用LINUX操作系统时钟函数gettimeofday(&tv,&tz)的方式,统计Color Model Conversion部分在ARM侧运行,和在FPGA侧运行消耗的时间:从表中可以看出,FPGA在大数据量的处理时,能发挥并行的优势,使运算速度得到提升。因试验开发程度有限,所以速度提升不是很明显。相信在将更多数据处理任务交给FPGA完成后,能获得更高的系统性能。