论文总字数:24257字
摘 要
Xilinx公司的Zynq-7000系列SoC(System on Chip)集成了FPGA(Field-Programmable Gate Array)和ARM处理器,是一种新型的嵌入式平台系统,ZedBoard是基于Xilinx Zynq的低成本开发板。论文在ZedBoard开发板上设计并实现了一个具有图像边缘检测功能的嵌入式系统。论文中首先设计搭建了一个可供嵌入式Linux操作系统运行的硬件环境,包括了HDMI显示模块和Sobel算子硬件加速模块,通过Vivado_HLS(High-level Synthesis)编写Sobel算子IP核。然后本文在Ubuntu操作系统中配置了软件运行环境,搭建了Linaro,实现了图形界面的显示。搭建了ZedBoard开发板上的PYNQ软件框架,并在PYNQ环境下通过OpenCV完成了Sobel算子的图像滤波的软件算法,实现了相同的图像滤波功能。最后,论文比较了Sobel算子的FPGA硬件加速和ARM部分软件算法的执行速度。证实了硬件加速可以有效提高程序的并行性,运行效率高于ARM,在嵌入式系统中具有极大的优越性。
关键词:嵌入式,Xilinx Zynq-7000,Linux内核,Sobel算法
ABSTRACT
Xilinx's Zynq series SoC(System on Chip) integrates FPGA(field-programmable Gate Array) and ARM processor, and is a new type of embedded platform System. ZedBoard is a low-cost development board based on Xilinx Zynq. In this paper, ZedBoard has designed and implemented an embedded system with image edge detection function. Firstly, a hardware environment is designed and built for embedded Linux operating system, including HDMI display module and Sobel operator hardware acceleration module. The IP core of Sobel operator is compiled by Vivado_HLS(high-level Synthesis). Then, this paper configures the software running environment in the Ubuntu operating system, builds the Linaro desktop system, and realizes the display of the graphical interface. Built the PYNQ software framework on the development board of ZedBoard, and completed the image filtering software algorithm of Sobel operator through OpenCV in PYNQ environment, realizing the same image filtering function. Finally, the FPGA hardware acceleration of Sobel operator is compared with the speed of some ARM software algorithms. It is proved that the hardware acceleration can effectively improve the parallelism of the program, the running efficiency is higher than ARM, and it has great advantages in embedded system.
Keywords: Embedded, Xilinx Zynq, Linux kernel, Sobel algorithm
目 录
摘要 I
ABSTRACT II
第一章 绪论 1
1.1 研究的背景和现状 1
1.2 研究的目的和意义 1
1.3 论文的组织和结构 2
第二章 基于Zynq嵌入式系统平台总体结构 4
2.1 Zynq嵌入式平台及其关键技术 4
2.1.1 Zynq内部结构框架 4
2.1.2 AXI4总线结构及系统内部数据交互 5
2.1.3 软硬件协同设计技术 7
2.2 系统总体结构 8
2.3 本章小结 9
第三章 硬件工程设计 11
3.1 设计开发工具 11
3.1.1 Vivado集成开发环境及HLS开发工具 11
3.1.2 Zedboard开发板 12
3.2 显示模块设计 14
3.2.1 AXI_HP接口 14
3.2.2 HDMI显示模块设计 15
3.3 硬件加速模块设计 16
3.3.1 Sobel算子原理与实现 16
3.3.2 Vivado_HLS实现Sobel算子滤波算法 17
3.4 系统结构 18
3.5 本章小结 19
第四章 软件开发环境配置和软件设计 20
4.1 嵌入式Linux开发环境搭建 20
4.1.1 交叉编译环境的搭建 20
4.1.2 Zedboard平台上操作系统的移植 21
4.2 Sobel算子的软件实现 24
4.3 软硬件性能测试与比较 24
4.4 本章小结 25
第五章 总结与展望 26
5.1 全文工作总结 26
5.2 讨论与研究展望 26
参考文献 27
致谢 29
绪论
研究的背景和现状
随着社会的发展和进步,嵌入式系统早已普遍应用于诸多领域,例如无线通信、自动化控制、 国防科技等方面。嵌入式系统是以应用为中心,以计算机技术为基础,集成了软件和硬件的独立系统。
全可编程片上系统是指以传统的可编程门阵列(FPGA)结构为基础,将专用的中央处理器单元(Central Processing Unit, CPU)和可编程逻辑资源集成在单个芯片上面,产生了一种全新的设计平台。这个平台一方面可以让嵌入式系统的设计更加灵活,体积显著缩小,提高系统的可靠性和整体性能;另外一方面可以使得FPGA进入嵌入式系统应用的领域,拓展FPGA 的应用范围。
过去构建一个嵌入式系统需要大量的器件,对于个人电脑来说,其主板由大量的电子元器件、散热装置以及固定连接器组成。同样,构建一个嵌入式系统的基本结构需要使用大量的机械连接装置,以及额外的大量专用集成电路(Application Specific Integrated Circuit, ASIC)器件,使得设计结构功耗大、成本高、安全性低。随着半导体技术的发展,可以将计算机基本结构的大量元件集成到单个芯片中,譬如CPU内核、总线结构、各种外设等。
为了得到更好的嵌入式系统的性能,Xilinx将他们开发的8位PicoBlaze和32位MicroBlaze软核嵌入式处理器,以及IBM公司的PowerPC和ARM公司的双核Cortex-A9硬核处理器嵌入到FPGA芯片中。这种集成了FPGA的全可编程平台提供了大量不同的IP软核和硬核资源,大大缩短了系统开发时间,提高了平台资源的利用率。
剩余内容已隐藏,请支付后下载全文,论文总字数:24257字
该课题毕业论文、开题报告、外文翻译、程序设计、图纸设计等资料可联系客服协助查找;