基于shared memory多核算法处理系统和实现

基于shared memory多核算法处理系统和实现

ID:5941908

大小:30.00 KB

页数:7页

时间:2017-12-29

基于shared memory多核算法处理系统和实现_第1页
基于shared memory多核算法处理系统和实现_第2页
基于shared memory多核算法处理系统和实现_第3页
基于shared memory多核算法处理系统和实现_第4页
基于shared memory多核算法处理系统和实现_第5页
资源描述:

《基于shared memory多核算法处理系统和实现》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、基于SharedMemory多核算法处理系统和实现  摘要:随着电子产业、工商业以及军事化产业的迅猛发展,越来越多的复杂运算已经无法单纯利用算法上的优化处理来大幅提升执行速度。为了解决日益复杂的计算问题,利用多核处理势必成为一种大势所趋。所以着手从多核和单核对比出发,利用Xilinx的XUPVirtex?2Pro建立多核处理平台(基于SharedMemory通信机制)以及单核平台,并将相同的图像处理算法DCT分别运行在所构造的基于FPGA的单核和多核硬件平台上,观察实验结果,比较多核和单核运行所需的时间以及资源的消耗,最终的结果有力的说明多核在图像处理方面的绝对优势。关键词:多

2、核处理平台;SharedMemory;离散余弦变换;FPGA;图像处理中图分类号:TN919?34;TP274+.2文献标识码:A文章编号:1004?373X(2013)06?0010?050引言7基于FPGA的嵌入式应用在近几年来作为一个比较新颖的课题,已经在通信、消费电子、医疗、工业和军事等诸多领域占据了相当重要的地位。相对于其他芯片来说,使用FPGA设计的电路执行速度快、上市时间短、成本低廉、可靠性高以及易于维护升级。正是这些优点才使得FPGA的应用范围越来越广泛,备受各个领域设计师们的青睐。但是有关于它在多核体系[1]上的研究却一直很少有人涉及。本文在研究各种核间通信机

3、制的基础上,提出了一种基于Mailbox核间机制的多核处理系统[2],在该系统中集成了Xilinx的软核处理器Microblaze,其降低了使用多信号处理板但来的成本问题同时还节省了空间,对更好的发挥多核系统提出了新的解决方案。1总线机制与核间通信机制1.1PLB总线1.2LMB总线LMB总线主要用来连接片上BRAM(BlockRAM)。为了能在一个时钟周期内完成访问,LMB采用了最少的控制信号和简单协议的方式。它分为指令寄存器DLMB和数据寄存器ILMB两类接口,而且这些接口只和BRAM连接。1.3SharedMemory通信机制共享内存是一种典型的快速异步通信机制,因其使得

4、零拷贝有可能实现,固非常适用于大于1000B的大型数据量共享的情况,共享内存可分为两种:BlockRAM和外部内存DDRR。2RGB2YCrCb算法以及DCT算法介绍7而DCT变换[5]是视频压缩编解码器中很重要的一部分,被广泛应用于各种视频格式的编码算法中,例如:JPEG,MPEG1,MPEG2,H.264等。DCT是先将整体图像分为N×N的像素块,然后对N×N的像素块逐一进行DCT变换。由于大多数图像的高频分量较小,对应于图像高频分量的系数经常为零,加上人眼对于高频成分的失真不太敏感,所以可以用更粗糙的量化。因此,传送变换系数的数码率要大大小于传送图像像素所用的数码率。图像

5、到达接收端后通过反离散余弦变换回到样值,虽然会有一定的是真,但人眼是可以接受的,公式如下:式中和在为0时等于,其他情况下均为1,而3多核系统设计环境与系统软硬件的设计本文所采用的软件开发环境是Xilinx公司旗下的ISE10.1[6?7]开发套件,硬件开发平台采用的是Xilinx的XUPVirtex?2Pro[8?9]开发板,而ISE10.1开发套件嵌入了EDK开发包(其集成了XilinxPlatformstudio,SoftwareDevelopment,库文件生成器,编译工具等开发模块),这样就大大方便了软硬件的开发。3.1利用XPS向导进行多核硬件系统设计硬件系统采用的总

6、线机制为PLB总线,所有的Microblaze均挂在这两条总线上,并且以Microblaze0作为主处理器,其他用作从处理器。7设计中PLB总线的从设备主要是xps?uartlite,它作为系统的主要验证手段,通过串口打印可以在PC机终端里输出核间通信信息。LMB总线则用于连接片上BRAM和MB的各个LMB接口,实现了D/ILMB端口与启动内存块、数据/指令控制器的互连。PLB桥的作用是使得所有的处理器可以共享外围设备,如串口RS232等。4硬件实现4.1测试所搭建的硬件系统的步骤(1)点击Hardware下的GenerateBitstream按钮,生成配置FPGA所需要的比特

7、流文件;(2)将PC机与Virtex?2Pro开发板正确连接,并且给开发板上电;(3)打开超级终端或是Putty工具,设置正确的参数(如波特率、奇偶校验位以及流控制位等),确保和创建硬件系统时的设置一致;(4)点击DeviceConfiguration下的DownloadBitstream进行比特流的下载配置;(5)观察终端中的打印信息,判断是否和Testapp_Memory.c文件中的一致。4.2单核执行图像处理算法以及时间测量4.2.1图像算法在单核上的执行流程(1)算法按照宏块顺序往下

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。