【论文阅读】处理器芯片敏捷设计方法:问题与挑战

作者:包云岗老师

包云岗老师是计算机体系结构方向的大牛,推动了体系结构方面的开源事业! 欢迎对本栏目感兴趣的人学习"一生一芯"~


学习体会:

已有的软硬件生态系统和开发成本制约了对新结构的探索。但目前仍在几种路线上做尝试~

1. 通过新结构和新算法解决低功耗

2. 通用结构和专用结构

3. 突破指令集的禁锢

包老师在本文提出了新的目标导向: 以面向对象体系结构(OOA)设计范式为基础的处理器敏捷设计方法.  仍存在较多尚未解决的挑战 和关键问题,主要包括:

1)如何实现处理器功能与结构的细粒度解耦?

2)如何实现面向对象的处理器设计高层抽象?

3)如何在设计自动化工具中深度融合体系结构特征?

PS: (time-to-market)需求场景变了, 需求也要跟着变化. 到24年年底, 高校研究敏捷开发已经成为大趋势, 站在当下去看看之前的思路和已经解决的问题, 对于后续科研也会带来帮助

PS: 通过设计范式、语言与EDA工具,实现CPU和XPU体系结构细粒度对象的易分解、易组合和易扩展, 未来更加像是堆叠积木了

PS: 这篇文章对于XPU敏捷开发、HLS→RTL、敏捷EDA工具链 探讨,值得多次研读!


摘录自包云岗老师文章:
摘录自: 图3 面向对象体系结构(OOA)设计方法技术要点题

        

        新兴专用处理器 (XPU) 需求多样化,设计周期长,无法满足快速定制需求。

        借鉴面向对象软件设计思想,以敏捷度 (开发周期、开发成本和复杂度)为新的导向指标,在兼顾性能和可靠性的前提下,提出以面向对象体系结构(OOA)设计范式为基础的处理器敏捷设计方法.

PS: 原有的基于多步骤反复迭代的EDA技术进行性能-面积-功耗综合优化,导致极高的研发成本、周期及技术门槛.

挑战问题:
  • 如何实现处理器功能与结构的细粒度解耦

    • 需要确定合适的对象分解粒度,兼顾实现复杂度和组合后的性能影响。P9

    • 需要探索适应各种不同处理器流水线的通用设计模板。P9

    • 需要根据设计目标和性能及面积约束,有效限制架构组合的搜索边界。P9

    • 需要抽取关键体系结构参数及行为,形成面向对象的敏捷形式化验证方法。P9

  • 如何实现面向对象的处理器设计高层抽象

    • 现有硬件描述语言无法兼顾处理器开发效率与硬件性能。P9

    • 缺乏统一的中间表示形式,不便于硬件设计的复用与优化。P9

    • 不同层次和行为的硬件描述语言的编译流程难以兼容,且不易调试。P9

  • 如何在设计自动化工具中深度融合体系结构特征

    • 体系结构设计与物理设计无法有效协同,导致迭代周期长,收敛难度大。P5

    • 缺乏高效的物理设计搜索寻优方法,难以融合处理器体系结构信息。

    • 需要利用人工智能方法,实现体系结构特征与EDA工具深度融合。P10

PS: XPU敏捷开发、HLS→RTL、敏捷EDA工具链 目前都是研究的热点, 后续继续观察

XPU敏捷开发:

理想的XPU敏捷设计要满足至少3个方面的特征:1)大幅度降低领域专用XPU设计门槛; 2)大幅度提高XPU的设计效率, 缩短XPU的设计周期; 3)要保证XPU的设计质量

针对领域应用的这 些特点,已经有很多专用的XPU设计工作,总体上可以分为3种类型:

1)针对领域应用编程框架的设计方法.其核心思想是重用已有的软件编程框架来进行硬件加速器 设计,来保证硬件加速器能够无缝地支持领域应用.

2)基于可重构硬件模板的加速器设计方法.其 核心思想是将应用变换成硬件模板支持的模式,然后重用或者定制可重构加速器模板,实现领域应用的加速.典型的硬件模板有用于矩阵运算或者张量运算的二维脉动阵列.

3)基于领域专用语言(DSL)的自动化设计方法.本质上类似于高层次综合(HLS),但是由于应用场景往 往更加局限于领域应用,因此可以将领域知识一定程 度地显式体现在DSL中,从而使得DSL的描述能够编译成更加高效的硬件.

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/63667.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Redis原理—4.核心原理摘要

大纲(9870字) 1.Redis服务器的Socket网络连接建立 2.Redis多路复用监听与文件事件模型 3.基于队列串行化的文件事件处理机制 4.完整的Redis Server网络通信流程 5.Redis串行化单线程模型为什么能高并发 6.Redis内核级请求处理流程与原理 7.Redis通信协议与内核级请求数据…

十五、K8s计划任务JobCronJob

K8s计划任务CronJob&Job 一、Job可以干什么 Job 控制器用于管理 Pod 对象运行一次性任务,比方说我们对数据库备份,可以直接在 k8s 上启动一个 mysqldump 备份程序,也可以启动一个 pod,这个 pod 专门用来备份用的,备份结束 pod 就可以终止了,不需要重启,而是将 Pod…

一文掌握 OpenGL 几何着色器的使用

学习本文需要具备 OpenGL ES 编程基础,如果看起来比较费劲,可以先看入门文章 OpenGL ES 3.0 从入门到精通系统性学习教程 。 什么是几何着色器 几何着色器(Geometry Shader) OpenGL 管线中的可选着色器阶段,位于顶点着色器(Vertex Shader) 和光栅化阶段 之间。 其核心…

PHP语法学习(第十天)—PHP 表单

各位🧍‍♂️ 周一愉快♪٩(ω)و♪ 我是练小杰,今天开启新的篇章——PHP 表单 另外,想要学习更多PHP语法相关内容点击 “PHP专栏”~~~ 今天由我强哥来带领大家学习~~ 文章目录 PHP 表单简介表单的基本结构表单数据操作PHP 中的 $_POST 和 $_…

卫生巾检测项目、检测标准梳理

为了确保卫生巾在使用过程中具备良好的吸收性、舒适性、透气性,并且符合卫生安全标准,避免对人体健康造成不良影响,需要对其进行一系列检测。 名找我 一、检测项目 外观质量 检查卫生巾的形状、尺寸是否与标识相符,表面是否平整…

架构13-持久化存储

零、文章目录 架构13-持久化存储 1、Kubernetes 存储设计 (1)存储设计考量 **设计哲学:**Kubernetes 遵循用户通过资源和声明式 API 描述意图,Kubernetes 根据意图完成具体操作。**复杂性:**描述用户的存储意图本身…

使用wol-web通过NAS远程唤醒电脑

相信很多人都有远程开机的需求,有时候需要远程控制家中的电脑办公、玩游戏。远程控制比较好实现,安装类似向日葵的软件即可。而远程开机稍微麻烦一点,有的通过物理开关实现(开机棒)我们选择远程网络唤醒的方式实现&…

TortoiseGit 图标覆盖设置

TortoiseGit 图标覆盖设置 图标覆盖设置隐藏图标覆盖切换样式 我们安装了小海龟后,它会在仓库目录下给所有图标覆盖上状态标记。 图标覆盖设置 右键菜单打开 :设置 》 图标覆盖。 隐藏图标覆盖 如果不想图标上出现小乌龟的状态标记。直接点这里可以…

Chrome浏览器调用ActiveX控件--allWebOffice控件

背景 allWebOffice控件能够实现在浏览器窗口中在线操作文档的应用(阅读、编辑、保存等),支持编辑文档时保留修改痕迹,支持书签位置内容动态填充,支持公文套红,支持文档保护控制等诸多办公功能,…

docker部署redis使用键空间通知订阅

1. redis的键空间通知(keyspace notification) 大概意思是比如时间删除 或者 过期的时候发布的一个通知。通过一个通知来发布或修改一个状态。通常理解为 pub/sub(发布/订阅)。 键空间通知有两种类型key-space , key-event, 可以理解为key-space对应事件…

(堆) 优先队列(堆)的简单实现

文章目录 🏔️堆是什么?🏔️C 标准库🏔️手动实现⛰️原理简介⛰️C⛰️C语言 ⭐END🌟交流方式 🏔️堆是什么? 堆简介 - OI Wiki 堆是一棵树,其每个节点都有一个键值,且…

springboot+Loki+Loki4j+Grafana搭建轻量级日志系统

文章目录 前言一、日志组件介绍 1.1 Loki组件1.2 Loki4j组件1.3 Grafana 二、组件下载安装运行 Loki下载安装运行Grafana下载安装运行 三、创建springboot项目总结 前言 日志在任何一个web应用中都是不可忽视的存在,它已经成为大部分系统的标准组成部分。搭建日志…

自然语言处理:从入门到精通全指引

一、引言 自然语言处理(NLP)作为人工智能领域的关键分支,旨在让计算机理解、生成和处理人类语言,近年来取得了令人瞩目的成就,在智能客服、机器翻译、文本分析、语音助手等众多领域发挥着重要作用。从入门到精通自然语…

opencvocr识别手机摄像头拍摄的指定区域文字,文字符合规则就语音报警

安装python,pycharm,自行安装。 Python下安装OpenCv 2.1 打开cmd,先安装opencv-python pip install opencv-python --user -i https://pypi.tuna.tsinghua.edu.cn/simple2.2 再安装opencv-contrib-python pip install opencv-contrib-python --user …

智能时代网络空间认知安全新观察

文章目录 前言一、历史上的四次认知革命二、人工智能革命掀起认知安全新浪潮三、人工智能技术塑造认知安全新范式四、人工智能治理应对认知安全新思考 前言 12月5日,在2024第三届北外滩网络安全论坛上以“智能时代网络空间认知安全新观察”为主题作主旨演讲&#x…

springboot417社区疫情管理系统-(论文+源码)_kaic

摘 要 如今社会上各行各业,都喜欢用自己行业的专属软件工作,互联网发展到这个时候,人们已经发现离不开了互联网。新技术的产生,往往能解决一些老技术的弊端问题。因为传统社区疫情管理系统信息管理难度大,容错率低&a…

day10性能测试(2)——Jmeter

【没有所谓的运气🍬,只有绝对的努力✊】 目录 1、LoadRunner vs Jmeter 1.1 LoadRunner 1.2 Jmeter 1.3 对比小结 2、Jmeter 环境安装 2.1 安装jdk 2.2 安装Jmeter 2.3 小结 3、Jmeter 文件目录结构 4、Jmeter默认配置修改 5、Jmeter元件、组…

可造成敏感信息泄露!Spring Boot之Actuator信息泄露漏洞三种利用方式总结

1.介绍 Spring Boot是一个基于Spring的套件,它提供了一个即开即用的应用程序架构,可以简化Spring应用的创建及部署流程,帮助开发者更轻松快捷地构建出企业及应用。 Spring Boot项目中Actuator模块提供了众多HTTP接口端点(Endpoi…

KV Shifting Attention Enhances Language Modeling

基本信息 📝 原文链接: https://arxiv.org/abs/2411.19574👥 作者: Mingyu Xu, Wei Cheng, Bingning Wang, Weipeng Chen🏷️ 关键词: KV shifting attention, induction heads, language modeling📚 分类: 机器学习, 自然语言处…

MongoDB-固定集合(Capped Collection)

在 MongoDB 中,固定集合(Capped Collection)是一种具有特殊属性的集合。固定集合具有一个固定的最大大小,并且一旦达到该大小时,最早插入的文档将会被自动删除,以便为新的文档腾出空间。固定集合的这种特性…