本课程适合有兴趣学习如何在运行时调整硬件组件以更好地满足用户/环境需求的人员。这种适应性可以由设计人员提供,也可以是系统本身的嵌入式特性。这些运行时可调整系统将通过使用 FPGA 技术来实现。 在本课程中,我们将让大家基本了解 FPGA 的工作原理,以及选择 FPGA 来实现所需的系统的理由。 本课程旨在向大家传授基于 FPGA 的可重构计算系统的基础知识。本课程是一门入门课程,旨在引导您了解 FPGA 的世界,让您更清楚地认识到愿意使用 FPGA 的原因,并让您了解要想通过使用这些技术获得所需的优势,您需要做哪些工作。 我们依靠一些课外读物来提供有关本课程所涵盖主题的更多信息。
了解顶级公司的员工如何掌握热门技能

该课程共有8个模块
如今,计算机系统的复杂性急剧上升。程序员必须处理极其强大的计算系统,而这些系统需要时间和相当高的技能才能发挥出最佳性能。显然,依靠人工干预来调整系统是不可行的:条件变化频繁、迅速,而且不可预测。我们希望系统能自动适应不断变化的环境。本模块分析了上述问题,采用了一种全新的方法,并介绍了如何在执行过程中调整软件和硬件系统。为此,我们将介绍现场可编程门阵列(FPGA)技术以及如何对其进行(重新)配置。
涵盖的内容
7个视频5篇阅读材料5个作业
传统上,计算分为由通用处理器(GPP)执行的通用计算和由专用集成电路(ASIC)执行的专用计算。作为对通用处理器(GPP)和专用集成电路(ASIC)两种极端特性的权衡,可重构计算结合了两者的优势。一方面,与软件实现相比,可重新配置计算可以获得更好的性能,但这需要付出更多的实现时间。另一方面,可重新配置设备可用于设计系统,与完全定制的解决方案相比,不需要同样的设计时间和复杂性,但在性能方面却更胜一筹。可重构系统的主要优点是灵活性高,而主要缺点是缺乏标准计算模型。在本模块中,我们将提出可重构计算的第一个定义,描述其背后的原理,并介绍 FPGA 的推出如何影响了这一领域。
涵盖的内容
5个视频4篇阅读材料2个作业
从 20 世纪 80 年代中期开始,由于 FPGA 技术的进步,可重构计算成为一个热门领域。FPGA 是一种半导体器件,包含可编程逻辑元件和可编程互连,但在运行时没有指令获取,也就是说,FPGA 没有程序计数器。在大多数 FPGA 中,逻辑元件可通过编程复制基本逻辑门或功能性知识产权(IP)的功能。FPGA 还包括由简单触发器或更复杂的存储器块组成的存储器元件。因此,FPGA 使在单个芯片上动态执行和配置硬件和软件成为可能。本模块详细介绍了 FPGA 技术,从总体描述到这些器件的底层配置细节讨论,再到位流组成和配置寄存器的描述。
涵盖的内容
8个视频3篇阅读材料2个作业
FPGA 设计工具必须提供基于数字设计概念和组件(门、触发器、多路复用器等)的设计环境。它们必须向用户隐藏布局、布线和位流生成的复杂性。本模块不会详细介绍这些步骤,这需要一整门课程,但至少要了解幕后发生的事情,以便更好地理解将要使用的工具所执行的过程的复杂性。在此背景下,本模块将通过一个简单的示例来引导您,从您可能愿意实现的电路描述到用于配置 FPGA 的比特流,抽象出底层 FPGA 的复杂性。
涵盖的内容
6个视频2个作业
在继续可重构计算领域的精彩旅程之前,定义一种通用语言可能会有所帮助。显然,其中一些术语已经被使用过,但现在是时候更好地理解它们,并在继续学习更高级的概念之前对它们进行一些梳理。此外,正如我们所知,FPGA 的配置功能为硬件设计提供了极大的灵活性,因此可以创建大量不同的可重新配置系统。这些系统可以是由带有 FPGA 的定制电路板组成的系统(通常与标准 PC 或工作站相连),也可以是包括可重构逻辑和通用处理器的独立系统,还可以是完全由安装在电路板上的单个 FPGA 实现的片上系统(只有很少的 I/O 接口物理组件)。 重新配置有不同的模式,本模块将介绍对它们进行分类的方案。我们可以将本模块视为一个过渡/转折点模块。我们已经接触了一些术语和概念,现在可以向前迈进了。要做到这一点,我们需要将所有的拼图组合在一起,并投入一些精力来观察全局,而这正是本模块的目的所在。
涵盖的内容
5个视频2篇阅读材料2个作业
FPGA 的重新配置功能为设计人员提供了更大的硬件可维护性灵活性。FPGA 可以改变映射在其上的硬件功能,方法是脱机运行应用程序,在 FPGA 上下载新的配置(如果有的话,还可能为处理器下载新的软件),然后重新启动系统。在这种情况下,重新配置是一个独立于应用程序执行的过程。另一种不同的方法是将 FPGA 的重新配置视为应用程序本身的一部分,使其能够在执行过程中根据特定情况的需要调整芯片资源上配置的硬件。在这种情况下,我们将这种重新配置称为动态重新配置,重新配置过程被视为应用程序执行的一部分,而不是执行前的一个阶段。本模块说明了一种特殊技术,它是前两种技术的延伸,在最近的 FPGA 设备中是可行的,即部分动态重新配置。要充分理解这种技术,必须分析可重构计算、静态和动态重构的概念,以及动态重构本身的分类。这样,部分动态重新配置技术就可以正确地归入现代 FPGA 芯片上可能实现的系统开发技术中。
涵盖的内容
8个视频4篇阅读材料2个作业
在介绍了设计和实现动态可重构系统的不同解决方案之后,本模块将介绍一种通用而完整的设计方法,作为设计可重构计算系统的指南。要设计和实现可重构计算系统,设计人员需要用于系统设计和实现的计算机辅助设计(CAD)工具,如用于架构设计的设计分析工具、用于硬件构建的综合工具、用于硬件行为仿真的仿真器,以及用于电路布局的布局和布线工具。我们可以自己构建这些工具,也可以使用可重构系统设计的商业工具和平台。第一种选择意味着需要投入大量的时间和精力,才能针对给定的问题构建特定的优化解决方案,而第二种选择则可以重复使用知识、内核和软件,从而更快地针对同一问题找到好的解决方案。本模块将引导学生回顾 CAD 框架多年来的发展历程。这样做是为了展示技术发展的速度,以及在使用基于 FPGA 的系统时为改善用户体验而做出的选择背后的理由。本课程不仅介绍了商业工具,还介绍了课程讲师及其研究团队的个人历程,从他早年攻读博士学位开始,一直到他们如今所面临的研究挑战。
涵盖的内容
9个视频7篇阅读材料3个作业
我们正处于可重构计算领域的研究前沿。FPGA 技术不仅被用作独立的解决方案/平台,现在还被纳入了云基础设施。现在,FPGA 技术既可用于加速基础设施/后台计算,也可作为一种服务提供给任何人使用。在此背景下,我们正面临着新的研究机会和技术改进的定义,从这个角度来看,现在是最好的时机。现在需要的是新的平台创建工具、监控和剖析基础架构、更好的运行时管理系统、静态和动态工作负载分区,这里仅列举几个可能的研究领域。本模块是本课程的结尾,但对未来可能的研究方向提出了一些有趣的问题,这些问题也可能为学生们指明其他有关 FPGA 的 Coursera 课程。
涵盖的内容
1个视频3篇阅读材料1个作业
位教师

从 设计与产品 浏览更多内容
- 状态:免费试用
University of Colorado Boulder
- 状态:免费试用
Microsoft
- 状态:免费试用
University of Colorado Boulder
- 状态:预览
Politecnico di Milano
人们为什么选择 Coursera 来帮助自己实现职业发展




学生评论
247 条评论
- 5 stars
73.27%
- 4 stars
21.05%
- 3 stars
2.42%
- 2 stars
1.21%
- 1 star
2.02%
显示 3/247 个
已于 Aug 1, 2019审阅
Great informatic course, could've been improved a bit by implementing some hands-on exercises and more specific explanations
已于 Jun 8, 2019审阅
Good course for people wants to know the background of FPGA.
已于 Jun 1, 2020审阅
well designed and enlightening course on FPGAs and Reconfigurable Computing for a beginner
常见问题
要获取课程资料、作业和证书,您需要在注册课程时购买证书体验。 您可以尝试免费试听,或申请资助。课程可能提供 "完整课程,无证书"。通过该选项,您可以查看所有课程资料,提交必要的评估,并获得最终成绩。这也意味着您无法购买证书体验。
注册课程后,您就可以访问专项课程中的所有课程,完成作业后还可以获得证书。您的电子证书将添加到您的 "成就 "页面--在那里,您可以打印证书或将其添加到您的 LinkedIn 个人资料中。
是的。在特定的学习课程中,如果您付不起注册费,可以申请助学金或奖学金。如果您选择的学习课程有助学金或奖学金,您可以在说明页面找到申请链接。
更多问题
提供助学金,