基于 KeyStone DSP 的多核视频处理技术
2.4 多内核间的协作与同步
当多个内核处理同一视频通道时,这些内核之间必须相互通信,才能实现对输入数据的同步、分离或共享,合并输出数据或者在处理过程中交换数据。附录 A - 解码器性能依赖阐述了将视频处理功能划分成多个内核的几种算法。本文引用地址:https://www.eepw.com.cn/article/166063.htm
并行处理法和流水线处理法是两种常用的分区算法。并行处理的范例是两个或两个以上的内核可以处理同一输入通道。必须有一个不受竞态条件影响的机制在多个内核之间共享信息。可将信号标用来保护全局区域免受竞态条件的干扰。硬件需要支持阻塞性和非阻塞性信号标,以有效消除竞态条件,即消除两个内核同时占用同一存储器地址的可能性。
如果使用流水线算法,一个或一个以上的内核可执行运算的第一部分,然后再将中间结果传递第二组内核继续处理。由于视频处理负载取决于处理的内容,因而这种传递机制可能面临如下问题:
• 如果一个以上的内核处理流水线的第一阶段,那么第 N+1 帧可能先于第 N 帧被处理好。因此该传递机制必须能够对输出/输入进行排序。
• 即使流水线上的各内核总体是均衡的(在处理负载方面),但个别帧未必如此。该传递机制必须在不同的流水线阶段之间提供缓冲,以使内核没完成工作时不至于影响其他内核停滞等待。
• 如果算法要求流水线的两个阶段间能稳固实现紧密的链接(例如,为解决依赖性的问题),则该机制就必须能够支持紧密链接与松散链接。
2.5 多芯片系统
实时处理超级视频 (SVGA)、4K 及更高分辨率,或处理 5 级 H.264HP可能需要不止一个芯片一起协作。要构建一个具有超高处理能力的双芯片系统,拥有可连接两个芯片的超快速总线至关重要。
第三部分描述了可满足上述所有要求及难题的 KeyStone系列 DSP架构。
3.KeyStone DSP – TI 最新多内核处理器
TI KeyStone 架构描述了广泛应用于视频处理等要求高性能和高带宽的系列多内核设备。图 2 对 KeyStone DSP进行了概括性描述。本章针对在第二部分中阐述的视频处理硬件要求对 KeyStone DSP 特性进行了介绍。
图 2 KeyStone DSP 方框图
特性 新 C6x 内核 - 频率为 1GHz 的 8 个新型 C6x DSP 内核 - 浮点处理能力 - 性能:256 GMAC、128 GFLOPS 存储器 - 每个内核配备32 KB L1PL1D - 每个内核配备 512 KB 局域 L2 - 4MB 共享 L2 存储器 分组加速器 开关结构和 EDMA3 外设 -带以太网转换器的 2x SGMII(数据/控制)– 4x SRIO,速率为 5 Gbps – 2x PCIe,2x TSIP – 16/32/64b DDR3 – EMIF-16、SPI、I2C、UART、GPIO 系统监控器 - JTAG -嵌入式跟踪缓冲器-跟踪端口 设备规格参数表 -功率:75 C 时 7.5 W ,105 C时为 9 W - 封装尺寸:目标 24x24 - 40 nm 引脚工艺 - 引脚数为 841(全阵列) - 内核电压:运用 SmartReflex 技术,1GHz时 1V;800MHz 时 0.9V。 |
多内核视频要求 | KeyStone 的功能特性能够充分满足要求 |
外部 I/O 接口 - 压缩的视频以太网接口 | 两个 SGMII 1G端口可支持适用于分包压缩视频的高比特率以太网接口。正如第二部分所述,典型的 HD 视频需要高达 10 Mbps 的速率,以使以太网接口能够支持多个压缩视频通道。此外,KeyStone DSP 还拥有分组加速器硬件子系统,可支持多个 IP 地址且能为每个内核分担分组处理负载。 |
外部 I/O 接口 - 原始数据接口 | KeyStone DSP 拥有两个标准的PCI Express通道。假定总线利用率为 60%,每个通道需要承载 5G 字节,这足以传输 YUV 域中 1080i60 的 4 到 5 个通道、D1 的 24 个通道,或 QCIF 30 fps 的超过 300 个通道。此外,KeyStone DSP 还拥有四个 SRIO 通道,其中每个通道可传输 5G 比特,从而使总线利用率为 60% 时,其连接性能是之前的四倍。 |
外部 I/O 接口 - 语音处理 | 两个电信串行接口端口 (TSIP) 可提供足够的带宽(以每通道 32.768/16.384/8.192 Mbps 的传输速率以及最高 1024 DS0 支持 2/4/8 个通道)来支持与视频应用相关的语音处理。 |
处理能力 | 首次发布的 KeyStone DSP 拥有 8 个时钟频率为 1.25G 的内核,因而可提供 8G 个周期。8 个功能部件并行工作,每秒可执行 64G 次运算(浮点、定点和数据移动)。此外,这个 KeyStone DSP 的新型 C66x 内核还可支持TI C64x+ DSP 内核的所有指令、TI C67x core 内核的所有指令,以及包含几个支持四则运算和两则运算的 SIMD 指令的其他指令。适用于操作矢量处理类型的理论操作数量是 128G甚或 256G。这些 SIMD 指令可显著提高采用矢量处理的视频处理算法(如运动估算、转换和量化算法等)的效率。 |
存储器考虑事项 - 片上存储器 | 每个内核都拥有 32KB 的 L1 数据存储器和 32KB 的 L1 程序存储器。每个都可配置为纯 RAM 或 L1 高速缓存,抑或二者的结合。 每个内核均拥有 512KB 的 L2 专有存储器,其中多达 256KB 可被配置为四通道的 L2 高速缓存。另外,KeyStone DSP 还拥有 4MB 的共享 L2 存储器。 |
存储器考虑事项 - 外部存储器 | 支持高达 8GB 的 DDR3,模式为 1×16、1×32 和 1×64,高达 1600 MHz 的频率可提供每秒高达 12.8GB 原始比特率。 |
存储器考虑事项 - 多内核共享存储器控制器 | 2×56 比特直接连接至外部存储器接口 (EMIF) DDR。 2×256 比特直接连接至各个 DSP。 适用于程序和数据的多重预取媒体流。 |
存储器考虑事项 - DMA | 10 个传输控制器和 144 个增强型直接存储器接入 (EDMA) 通道使得从外部存储器读写数据具有高效的资源利用率。 |
内核之间的同步与全局协作 | 全硬件支持 64 个独立阻塞和非阻塞信号标,支持直接和间接请求。 |
内核之间的紧密与松散链接、数据和消息传输 | 多内核导航器是一个硬件队列管理器,可控制 8,192 个队列且拥有 6 个可传输消息的渠化 DMA 通道。导航器可支持数据和消息在紧密或松散链接的内核之间进行传递。此外,导航器还能有助于提高数据从多个源传输至多个目的地的高效排序。 |
连接两个芯片的快速总线 | 四通道超链接总线可提供高达每通道 12.5Gbps、总计 50Gbps 的传输速率。 |
表 1 KeyStone DSP 和视频处理要求(第一部分,共两部分)
评论