论文部分内容阅读
摘要:TMS320C6678是TI公司推出的新型KeyStone多内核SoC架构的多核DSP,其内部集成了多达8个TMS32066xDSP内核.该芯片处理能力强,外设功能丰富,是通信,雷达,声纳等领域主流的信號处理芯片.本文主要分析了C6678内部的存储结构和多核导航器.
关键词: C66xDSP; 内核结构;KeyStone
TMS320C6678是TI公司于2010年推出的一款具有业界领先处理能力的多核DSP处理器,其采用的是KeyStone多内核架构,片内集成了8个C66X核,每个核都具有定点和浮点运算能力。
C6678 内部集成了8个高性能定点/浮点 CPU 内核,每个内核最高工作频率达到 1.25GHz,每个周期的定点性能达到 32MAC、浮点性能达到 16FLOP,整片 C6678 可提供 320GMAC 的定点运算能力和 160GFLOP 的浮点运算能力。C66X内核包括:C66XCPU,L1P(一级程序存储)、L1D(一级数据存储),L2D(二级存储),IDMA(内部DMA),EMC(外部存储控制器),XMC(扩展存储控制器),BWM(带宽管理),XMC(扩展存储控制器),BWM(带宽管理),INTC(中断控制器),PDC(节电控制器)等。
C66X的CPU是数据位宽是64位的,支持128位定点数据的乘法,乘法运算速度相比于TI公司之前的DSP提高了四倍,存储方面采用了传统的哈佛结构,且为了提高存取速度采用分层的存储结构.如下图所示:
C6678的每个核配置了32KB的L1P(一级程序存储器)\32KB的L1D(一级数据存储器)和512KB的LL2(二级局部存储器),C6678还包括了一个4086KB的共享内存.L1P是一个直接映射的程序缓存,在单周期内如果读缺失则停止 DSP 并从L2中取程序如果仍然缺失则从外存中寻找需要的程序.L1P内存最多支持128KB的RAM。不能在同一个核的内存中存储L1P内存层1数据(L1D)缓存、层1程序(L1P)缓存或层2 (L2)缓存 .L1D是一个双向联合关联的数据缓存,可支持最多每周期两次数据访问.L1D的目的是最大化数据的性能处理.可以在程序运行时配置L1D缓存的大小.程序通过将请求的模式写入L1DCFG寄存器中的L1DMODE字段来选择L1D的大小。512KB LL2 的运行速度是DSP核的一般,既可以用来存放数据也可以存放程序.
C6678整个系统的内部由总线交换网络(Teranet)将各个内核,网络协处理器,共享存储管理器,多核导航器,外设和其他功能部件链接起来,处理单元由8个相同的内核组成。共享存储管理器主要用来管理对共享存储器及DDR3外部存储器的访问,负责内核,DMA及其他主设备和 EMIF 接口之间的通讯.CorePac内置了扩展存储器控制器(XMC),XMC是通向MSMC的通道. MSMC 不仅提高了系统对共享存储器及外部存储器的访问速度,而且大大减轻了 Teranet的负担,并且可在内核与其它IP 模块之间仲裁对存储器的访问.
多核导航器是一种新的基于包交换的可控制 8192 个队列的管理器,可对SoC上各个子系统间的连接进行控制与抽象,当任务被分配到队列中时,多核导航调度器通过硬件将队列中任务指向适当的可用硬件。包的交换通过 2 个 Tbps 带宽的 TeraNet 网络来实现。由于多核共享内存控制器(MSMC)可以使内核直接对共享内存进行访问,大大简化了多核之间以及核与外设间的数据传输。
高速处理系统中包的发送和接受是比较关键的任务.多核导航器可以减少内核核对片内数据传输的影响,提高存储器利用率与总线突发率,增强了收发操作的对称型,提高了连接数量,缓冲与队列容量,淡化了协议间的差异,支持协议的扩展性,简化了数据传输.
多核导航器由两个模块组成:队列管理子系统(QMSS)和PKTDMA模块,通过这两个模块可以实现期间内部高效的包交换,大大降低了DSP核在内部通信方面的负担,提高了系统的整体性能.队列管理子系统模块包括队列管理器,核到核应用的PKTDMA以及两个PDSP.PKTDMA模块存在于SRIO和PA两个模块中.队列管理器负责包队列的加速管理.队列是用来存储在系统间传输的包的地址包由包头和与之相关的包数据组成.根据包头的不同类型,包数据可以跟包头连续存放,也可以放在包头中存放的地址所指示的位置.将包头的地址写入到队列管理模块中特定的存储器映射位置,包就被加入到包队列中;读相同的位置该包被弹出.PKTDMA跟DMA一样主要实现的点到点的数据传输,不同点在于它不关心负载数据的结构.对于PKTDMA,所有的数据都是简单的一维比特流,对PKTDMA的变成只需要包头的初始化,PKTDMA发送接收通道及接收流控制的配置.多核导航器方便了核间通信与数据传输,还能由外设高效的发送或接收数据,使处理器达到一个较高的吞吐率.
多核处理器架构可以确保C66X的性能优势充分发挥,对DSP芯片的发展有着深远的影响.伴随着多核DSP处理的发展,新的挑战也不断出现.通过新的技术来解决新的问题,满足未来的需求是必然趋势.
参考文献:
[1]TMS320C66X DSP CorePac User Guide.Texas.2011.
[2]KeyStone Architecture Multicore Shared Memory Controller User Guide. Texas.2011.
[3]3.KeyStone Arichitecture Multicore Navigator User Guide. Texas.2011.
关键词: C66xDSP; 内核结构;KeyStone
TMS320C6678是TI公司于2010年推出的一款具有业界领先处理能力的多核DSP处理器,其采用的是KeyStone多内核架构,片内集成了8个C66X核,每个核都具有定点和浮点运算能力。
C6678 内部集成了8个高性能定点/浮点 CPU 内核,每个内核最高工作频率达到 1.25GHz,每个周期的定点性能达到 32MAC、浮点性能达到 16FLOP,整片 C6678 可提供 320GMAC 的定点运算能力和 160GFLOP 的浮点运算能力。C66X内核包括:C66XCPU,L1P(一级程序存储)、L1D(一级数据存储),L2D(二级存储),IDMA(内部DMA),EMC(外部存储控制器),XMC(扩展存储控制器),BWM(带宽管理),XMC(扩展存储控制器),BWM(带宽管理),INTC(中断控制器),PDC(节电控制器)等。
C66X的CPU是数据位宽是64位的,支持128位定点数据的乘法,乘法运算速度相比于TI公司之前的DSP提高了四倍,存储方面采用了传统的哈佛结构,且为了提高存取速度采用分层的存储结构.如下图所示:
C6678的每个核配置了32KB的L1P(一级程序存储器)\32KB的L1D(一级数据存储器)和512KB的LL2(二级局部存储器),C6678还包括了一个4086KB的共享内存.L1P是一个直接映射的程序缓存,在单周期内如果读缺失则停止 DSP 并从L2中取程序如果仍然缺失则从外存中寻找需要的程序.L1P内存最多支持128KB的RAM。不能在同一个核的内存中存储L1P内存层1数据(L1D)缓存、层1程序(L1P)缓存或层2 (L2)缓存 .L1D是一个双向联合关联的数据缓存,可支持最多每周期两次数据访问.L1D的目的是最大化数据的性能处理.可以在程序运行时配置L1D缓存的大小.程序通过将请求的模式写入L1DCFG寄存器中的L1DMODE字段来选择L1D的大小。512KB LL2 的运行速度是DSP核的一般,既可以用来存放数据也可以存放程序.
C6678整个系统的内部由总线交换网络(Teranet)将各个内核,网络协处理器,共享存储管理器,多核导航器,外设和其他功能部件链接起来,处理单元由8个相同的内核组成。共享存储管理器主要用来管理对共享存储器及DDR3外部存储器的访问,负责内核,DMA及其他主设备和 EMIF 接口之间的通讯.CorePac内置了扩展存储器控制器(XMC),XMC是通向MSMC的通道. MSMC 不仅提高了系统对共享存储器及外部存储器的访问速度,而且大大减轻了 Teranet的负担,并且可在内核与其它IP 模块之间仲裁对存储器的访问.
多核导航器是一种新的基于包交换的可控制 8192 个队列的管理器,可对SoC上各个子系统间的连接进行控制与抽象,当任务被分配到队列中时,多核导航调度器通过硬件将队列中任务指向适当的可用硬件。包的交换通过 2 个 Tbps 带宽的 TeraNet 网络来实现。由于多核共享内存控制器(MSMC)可以使内核直接对共享内存进行访问,大大简化了多核之间以及核与外设间的数据传输。
高速处理系统中包的发送和接受是比较关键的任务.多核导航器可以减少内核核对片内数据传输的影响,提高存储器利用率与总线突发率,增强了收发操作的对称型,提高了连接数量,缓冲与队列容量,淡化了协议间的差异,支持协议的扩展性,简化了数据传输.
多核导航器由两个模块组成:队列管理子系统(QMSS)和PKTDMA模块,通过这两个模块可以实现期间内部高效的包交换,大大降低了DSP核在内部通信方面的负担,提高了系统的整体性能.队列管理子系统模块包括队列管理器,核到核应用的PKTDMA以及两个PDSP.PKTDMA模块存在于SRIO和PA两个模块中.队列管理器负责包队列的加速管理.队列是用来存储在系统间传输的包的地址包由包头和与之相关的包数据组成.根据包头的不同类型,包数据可以跟包头连续存放,也可以放在包头中存放的地址所指示的位置.将包头的地址写入到队列管理模块中特定的存储器映射位置,包就被加入到包队列中;读相同的位置该包被弹出.PKTDMA跟DMA一样主要实现的点到点的数据传输,不同点在于它不关心负载数据的结构.对于PKTDMA,所有的数据都是简单的一维比特流,对PKTDMA的变成只需要包头的初始化,PKTDMA发送接收通道及接收流控制的配置.多核导航器方便了核间通信与数据传输,还能由外设高效的发送或接收数据,使处理器达到一个较高的吞吐率.
多核处理器架构可以确保C66X的性能优势充分发挥,对DSP芯片的发展有着深远的影响.伴随着多核DSP处理的发展,新的挑战也不断出现.通过新的技术来解决新的问题,满足未来的需求是必然趋势.
参考文献:
[1]TMS320C66X DSP CorePac User Guide.Texas.2011.
[2]KeyStone Architecture Multicore Shared Memory Controller User Guide. Texas.2011.
[3]3.KeyStone Arichitecture Multicore Navigator User Guide. Texas.2011.