虚拟机通过一个抽象架构来描述应用从而彻底实现设备无关性。起初,虚拟机的 概念用来表示 FPGA 的静态架构,譬如 Shell 或者 vFPGA 的 Hypervisor,并不是我们 现在理解的虚拟机概念。现在的 FPGA Overlay 技术是应用比较广泛的 FPGA 虚拟化 方法之一,它是位于 FPGA 硬件层之上、并连接顶层应用的虚拟可编程架构,实现了 对 FPGA 底层硬件资源的抽象化和虚拟化。FPGA Overlay 的具体实现方式有很多种, 这里不详细介绍,其主要目的是为上层用户提供他们熟悉的编程架构与接口,比如通 过 C 语言等高层语言对 Overlay 中的通用处理器等进行编程,而无须担心具体的硬件 电路实现,这点类似 HLS。Overlay 实现了 FPGA 的硬件无关性,便于应用设计在不 同 FPGA 架构间移植。另外,用户可以选择只编译自己改动的逻辑部分,在很大程度 上缩短了 FPGA 的编译时间,也方便对应用进行调试和修改。但是在实际开发中,由 于其引入的 Overlay 层并不能完全隐藏 FPGA 结构,而且此技术没有业界统一标准, 所以会来带额外的开发难度和成本。
《弹性计算:无处不在的算力》电子书可以通过以下链接下载:https://developer.aliyun.com/topic/download?id=7996"
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。