1、PULPPULP-Lite:Towards A More Lite:Towards A More LightLight-weighted RISCweighted RISC-V V Multicore Framework for Multicore Framework for IoT ApplicationIoT Application*报告人:连宇煜2023年8月25日高海兵 凌明 连宇煜 王景铭 朱燕翔 杨勇*本工作由东南大学本工作由东南大学-沁恒沁恒RISCRISC-V V内核微处理器技内核微处理器技术联合研发中心资助术联合研发中心资助简介简介PULPPULP-LiteLite架构及片上
2、互连架构及片上互连并行编程框架并行编程框架0102030405FPGAFPGA实现与实现与评估评估目录目录总结总结ContenContent t简介简介Introduction1.1 研究背景1.2 研究内容1.1 研究背景研究背景边缘设备采集数据云端处理数据无线收发器 无线收发器功耗大 通信延时大 隐私易泄露近传感器数据分析数据分析通常是基于机器学习的算法简单MCU无法及时处理数据 专用硬件加速器 多核处理器优点:能效高缺点:通用性差边缘采集云端处理数据传输多核并行执行来提升性能保留通用处理器的灵活性1.1 研究背景研究背景物联网边缘计算多核处理器的挑战多核架构片上互连面向物联网边缘计算的多
3、核处理器的挑战面向物联网边缘计算的多核处理器的挑战硬件:传统的CMP结构复杂、功耗大软件:复杂的操作系统与编程模型导致延时大严苛的互连延时要求使得现有严苛的互连延时要求使得现有的互连性能优化方案难以应用的互连性能优化方案难以应用1.2 研究内容研究内容设计了一个相比PULP更加简单的多核处理器架构:PULP-Lite 计算集群:8个RIC5Y 三种不同栈组织方式 6种不同的互连提出了一个超轻量级的多核编程框架 以8个CPU中的CPU0作为控制核心 任务管理通过被8个CPU共享的TCDM来完成 轮循/中断中查询任务片上互连分析与优化 在常见机器学习算法上对Xbar、Butterfly以及Clos
4、网络性能分析 提出一种基于地址转换的片上互连优化方案PULPPULP-LiteLite架构及架构及片上互连片上互连2.1系统架构2.2互联结构2.3栈组织结构2.1 PULP-Lite系统架构系统架构与与PULPPULP的相同点:的相同点:计算集群由8个RI5CY组成 通过低延迟的片上互连连接8个CPU与TCDM与与PULPPULP的不同点:的不同点:PULP:单独的FC控制外设PULP-Lite:CPU0控制 PULP:9个CPUPULP-Lite:8个CPU PULP-Lite:单独的RAM用来存放栈数据 PULP-Lite:经过地址转换的片上互连2.2 TCDM互联网络2.3 PULP-
5、Lite栈组织结构栈组织结构栈在独立的栈在独立的Stack RAM与栈在共享与栈在共享TCDM1、栈在独立的Stack RAM优点:可大大减少经过互连的流量缺点:1、此时CPU将无法直接访问其它CPU的栈2、栈最大限制为Stack RAM大小2、栈在共享TCDM优点:CPU间栈可相互访问、大小无限制缺点:1、互连端口的竞争概率大大增加2、内部路径冲突发生的概率大大增加2.3 栈组织结构栈组织结构基于地址转换的栈在共享基于地址转换的栈在共享TCDM优化方案优化方案问题:不同的CPU可能同时访问同一片TCDM Bank,但是由于互联网络的限制,该TCDM Bank只能分配给其中一个CPU,另一个C
6、PU需要等待解决方案:将每个CPU的栈集中在同一片TCDM Bank中,使多个CPU同时访问同一片TCDM Bank的概率减小实现:在片上互联中加入地址变换机制,通过改变栈空间地址映射将CPU的栈空间与TCDM Bank一一对应2.3 栈组织结构栈组织结构基于地址转换的栈在共享基于地址转换的栈在共享TCDM优化方案优化方案对应不同的CPU的栈栈内偏移判断是否为栈地址对应不同的TCDM Bank栈内偏移一个CPU对栈的访问对应一片Bank转换前1个字的偏移转换后8个字的偏移并行编程框架并行编程框架3.1编程框架3.2主要数据结构与API3.3 PULP-Lite编程案例3.1 编程框架两种调度模