FPGA之基于FPGA的SPARK多核处理器设计(五)

         接下来我们要开始正式进入LEON3的双核和四核的处理器平台设计。

         首先我们来看一下硬件框图:

         这是SMP的对称多处理器架构。对称多处理器是多个处理器运行操作系统地单一复本,并共享内存和一台计算机的其他资源。计算机负载把任务均匀分给这些处理器。这些处理器共享内存和地址空间。选择了AMBA 2.0 AHB/APB总线,存储控制器,PCI控制器,网络控制器,USB 2.0控制器。

       硬件层的设计满足eCOS嵌入式操作系统对SMP的硬件限制要求:

       1、处理器为2或者4核;

       2、LEON3内有swapa指令,可以提供测试并设置同步机制,利用该条指令实现eCOS实现HAL_TAS_SET和HAL_TAS_CLEAR两个宏定义,eCOS在HAL层以这两个宏来实现螺旋锁;

       3、在SMP系统中,各CPU通过Cache访问内存数据时,要求系统必须经常保持内存中数据与Cache中的数据的一致性,若Cache的内容更新了,内存中的内容也应该相应更新,否则会影响系统数据的一致性。硬件层采取了总线侦听技术维护了4个处理器的Data Cache的一致性;

      4、硬件设计中所有的处理器共享SRAM和SDRAM,其编址方式是一致的,使编程更容易;

      5、硬件设计中所有外设的寄存器,所有处理器都可以访问到;所有外设的中断都能引起所有处理器的中断处理,并且可以通过设置处理器的中断屏蔽寄存器指明哪个外设的中断由哪个处理器处理;

      6、硬件设计中各个处理器之间通过多核中断控制器的中断来通信允许将中断传递到系统中特定的处理器,该处理器执行中断处理函数,根据消息的内容执行优先级抢占式重新调度或者时间片轮转调度;

    

       对于软件部分,eCOS(embedded configurable operating system),这里有一些需要特别说明:

       eCOS最大支持的处理器个数为8、典型的是2或者4;

       硬件必须提供测试并设置或者比较并交换指令同步机制。eCOS内核使用这些硬件指令实现螺旋锁;

       不使用Cache,所有的处理器共享Cache,或硬件维护Cache一致;

       所有的处理器共享内存对所有的处理器的地址是一致的;

       每个处理器都可以访问任何外设;

       中断控制器必须将中断信号传送给指定的处理器;允许一个处理器上的事件导致另一个处理器的重新调度;

       在某个处理器上运行的软件必须能识别其所运行的处理器;

      

        再看一下LEON 3多核平台的实现:(eCOS嵌入式系统的移植,GRLIB IP库的配置和FPGA的开发)


         eCOS的系统启动:由主CPU负责对数据结构初始化,并调用硬件抽象层中初始化程序,最后调用cyg_start进入应用程序。其他从CPU在系统复位后或处于挂起状态或处于某种循环状态。

        1、对Configure/eCOS HAL/SPARC architecture设置如下:

        FPU使能,SMP使能,Max number of CPUs supported 设为4。

        2、对Configuration/eCOS Kernel/Kernel schedulers设置如下:

        SMPsupport。

           别的选择默认即可。


           对于GRLIB  IP库的配置:(使用tkconfig或者对包文件device.vhd手动编辑)


              FPGA实现:(使用ISE的设计流程实现)




         至此,我们就把各个部分已经实现。接下来就进行系统级的验证。

         一是FPGA的综合报告;二是GRMON的反馈信息;三是使用timeslice,dhrystone等来验证系统软件的正确性。






































     















       

      









数字图像处理技术,在整个信息处理技术中,占据着非常重要的地位。现如今,随 着超大规模集成电路设计工艺的高速发展,具备极高运算能力的先进处理器纷纷出 现,使得高分辨率、高帧率图像数据的实时处理,成为了可能。实时图像处理技术, 尤其是基于多核DSP+FPGA架构的实时图像处理技术,因为该种方案本身所具有种 种优点,又成为了现今各项图像处理新技术研究中的备受关注的焦点。 作者在本文中设计并实现了一种基于XILINX V6系列FPGA和TI TMS320C6657 双DSP的实时图像处理系统。系统选用TI多核DSP作为图像数据运算的主处理器, 用以实现数字图像实时处理的心算法。系统选用 XILINX 公司 Virtex 系列高端 FPGA作为协处理器和系统的主控制单元,用来协调系统中各个外设功能模块,并完 成图像采集和显示控制的功能。该系统的数字图像输入前端由 SDI 数字输入端、 USB3.0 传输模块、PAL制视频图像采集模块共同构成。多核DSP 与FPGA之间可选 用uPP传输模式或者RapidIO 高速数据通道进行双工数据通信。实时图像处理结果可 由DVI、PAL显示模块进行显示,也可通过USB3.0传输模块传回到上位主机中进行 显示及分析。在系统实现过程中,作者采用了USB3.0传输模块作为系统的数字图像 数据输入前端,实现了一种实时图像处理系统与PC上位主机之间高速的、可热插拔 的双工数据通信模式。FPGA 可通过USB3.0 接口从上位 PC 主机中获取数字图像数 据流,并将该高速并行图像数据流经过缓存处理后,通过多核DSP的uPP外设接口 传输到多核DSP中。多核DSP将该并行图像数据流处理完后,又可选择通过uPP接 口将处理结果传输回FPGA中。最终,FPGA可将经过处理的数字图像数据,通过图 像显示外设接口,传输给显示设备进行显示。 另外,为配合系统中的多核DSP更好地完成图像目标实时追踪识别算法的实现, 提高系统数字图像处理运算的效率。作者在上述自行设计的图像处理系统平台FPGA上,完成了对数字图像的滤波预处理工作以及图像形状特征提取算法的研究与 实时实现。FPGA通过将8位灰度数字图像进行分割,然后提取图像中边缘、各个组 成部分的连通域、型心、外接矩等重要的图像形状特征,为DSP后续的图像目标追 踪匹配工作提供了极为重要的参考数据,极大地提高了系统整体图像运算处理的实时 性。 关 键 词:多核DSP,FPGA,实时数字图像处理,USB3.0,形状特征提取
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值