4408|14

6423

帖子

16

TA的资源

版主

楼主
 

云端可触fpga,fpga正向程序员走来 [复制链接]

 
      相信大家对亚马逊云(AWS)都有所了解吧,就在2016年11月30日amazon和xilinx同时宣布,即将在AWS推出集成Xilinx高端FPGA的EC2实例F1。用户可以选择最高集成8块高性能Xilinx UltraScale+ VU9P FPGA的云端实例。


https://aws.amazon.com/cn/blogs/aws/developer-preview-ec2-instances-f1-with-programmable-hardware/
此帖出自FPGA/CPLD论坛

最新回复

这个还不错  详情 回复 发表于 2023-7-7 10:05
点赞 关注
个人签名training
 

回复
举报

6423

帖子

16

TA的资源

版主

沙发
 
Developer Preview – EC2 Instances (F1) with Programmable Hardware
Have you ever had to decide between a general purpose tool and one built for a very specific purpose? The general purpose tools can be used to solve many different problems, but may not be the best choice for any particular one. Purpose-built tools excel at one task, but you may need to do that particular task infrequently.
Computer engineers face this problem when designing architectures and instruction sets, almost always pursuing an approach that delivers good performance across a very wide range of workloads. From time to time, new types of workloads and working conditions emerge that are best addressed by custom hardware. This requires another balancing act: trading off the potential for incredible performance vs. a development life cycle often measured in quarters or years.
Enter the FPGA
One of the more interesting routes to a custom, hardware-based solution is known as a Field Programmable Gate Array, or FPGA. In contrast to a purpose-built chip which is designed with a single function in mind and then hard-wired to implement it, an FPGA is more flexible. It can be programmed in the field, after it has been plugged in to a socket on a PC board. Each FPGA includes a fixed, finite number of simple logic gates. Programming an FPGA is “simply” a matter of connecting them up to create the desired logical functions (AND, OR, XOR, and so forth) or storage elements (flip-flops and shift registers). Unlike a CPU which is essentially serial (with a few parallel elements) and has fixed-size instructions and data paths (typically 32 or 64 bit), the FPGA can be programmed to perform many operations in parallel, and the operations themselves can be of almost any width, large or small.
This highly parallelized model is ideal for building custom accelerators to process compute-intensive problems. Properly programmed, an FPGA has the potential to provide a 30x speedup to many types of genomics, seismic analysis, financial risk analysis, big data search, and encryption algorithms and applications.
I hope that this sounds awesome and that you are chomping at the bit to use FPGAs to speed up your own applications! There are a few interesting challenges along the way. First, FPGAs have traditionally been a component of a larger, purpose-built system. You cannot simply buy one and plug it in to your desktop. Instead, the route to FPGA-powered solutions has included hardware prototyping, construction of a hardware appliance, mass production, and a lengthy sales & deployment cycle. The lead time can limit the applicability of FPGAs, and also means that Moore’s Law has time to make CPU-based solutions more cost-effective.
We think we can do better here!
The New F1 Instance
Today we are launching a developer preview of the new F1 instance. In addition to building applications and services for your own use, you will be able to package them up for sale and reuse in AWS Marketplace.  Putting it all together, you will be able to avoid all of the capital-intensive and time-consuming steps that were once a prerequisite to the use of FPGA-powered applications, using a business model that is more akin to that used for every other type of software. We are giving you the ability to design your own logic, simulate and verify it using cloud-based tools, and then get it to market in a matter of days.
Equipped with Intel Broadwell E5 2686 v4 processors (2.3 GHz base speed, 2.7 GHz Turbo mode on all cores, and 3.0 GHz Turbo mode on one core), up to 976 GiB of memory, up to 4 TB of NVMe SSD storage, and one to eight FPGAs, the F1 instances provide you with plenty of resources to complement your core, FPGA-based logic. The FPGAs are dedicated to the instance and are isolated for use in multi-tenant environments.
Here are the specs on the FPGA (remember that there are up to eight of these in a single F1 instance):
  • Xilinx UltraScale+ VU9P  fabricated using a 16 nm process.
  • 64 GiB of ECC-protected memory on a 288-bit wide bus (four DDR4 channels).
  • Dedicated PCIe x16 interface to the CPU.
  • Approximately 2.5 million logic elements.
  • Approximately 6,800 Digital Signal Processing (DSP) engines.
  • Virtual JTAG interface for debugging.
In instances with more than one FPGA,  dedicated PCIe fabric allows the FPGAs to share the same memory address space and to communicate with each other across a PCIe Fabric at up to 12 Gbps in each direction.  The FPGAs within an instance share access to a 400 Gbps bidirectional ring for low-latency, high bandwidth communication (you’ll need to define your own protocol in order to make use of this advanced feature).
The FPGA Development Process
As part of the developer preview we are also making an FPGA developer AMI available. You can launch this AMI on a memory-optimized or compute-optimized instance for development and simulation, and then use an F1 instance for final debugging and testing.


此帖出自FPGA/CPLD论坛
个人签名training
 
 

回复

6423

帖子

16

TA的资源

版主

板凳
 


This AMI includes a set of developer tools that you can use in the AWS Cloud at no charge. You write your FPGA code using VHDL or Verilog and then compile, simulate, and verify it using tools from the Xilinx Vivado Design Suite (you can also use third-party simulators, higher-level language compilers, graphical programming tools, and FPGA IP libraries).
Here’s the Verilog code for a simple 8-bit counter:
  1. module up_counter(out, enable, clk, reset);
  2. output [7:0] out;
  3. input enable, clk, reset;
  4. reg [7:0] out;
  5. always @(posedge clk)
  6. if (reset) begin
  7.   out <= 8'b0;
  8. end else if (enable) begin
  9.   out <= out + 1;
  10. end
  11. endmodule
复制代码
Although these languages are often described as using C-like syntax (and that’s what I used to stylize the code), this does not mean that you can take existing code and recompile it for use on an FPGA. Instead, you need to start by gaining a strong understanding of the FPGA programming model, learn Boolean algebra, and start to learn about things like propagation delays and clock edges. With that as a foundation, you will be able to start thinking about ways to put FPGAs to use in your environment. If this is too low-level for you, rest assured that you can also use many existing High Level Synthesis tools, including OpenCL, to program the FPGA.
After I launched my instance, I logged in, installed a bunch of packages, and set up the license manager so that I could run the Vivado tools. Then I RDP’ed in to the desktop, opened up a terminal window, and started Vivado in GUI mode:
I opened up the sample project (counter.xpr) and was rewarded with my first look at how FPGA’s are designed and programmed:
After a bit of exploration I managed to synthesize my first FPGA (I was doing little more than clicking interesting stuff at this point; I am not even a novice at this stuff):
From here, I would be able to test my design, package it up as an Amazon FPGA Image (AFI), and then use it for my own applications or list it in AWS Marketplace. I hope to be able to show you how to do all of these things within a couple of weeks.
The F1 Hardware Development Kit
After I learned about the F1 instances, one of my first questions had to do with the interfaces between the FPGA(s), the CPU(s), and main memory. The F1 Hardware Development Kit (HDK) includes preconfigured I/O interfaces and sample applications for multiple communication methods including host-to-FPGA, FPGA-to-memory, and FPGA-to-FPGA. It also includes compilation scripts, reference examples, and an in-field debug toolset. The kit is accessible to members of the F1 developer preview.
The Net-Net
The bottom line here is that the combination of the F1 instances, the cloud-based development tools, and the ability to sell FPGA-powered applications is unique and powerful. The power and flexibility of the FPGA model is now accessible all AWS users; I am sure that this will inspire entirely new types of applications and businesses.
Get Started Today
As I mentioned earlier, we are launching in developer preview form today in the US East (Northern Virginia) Region (we will expand to multiple regions when the instances become generally available in early 2017). If you have prior FPGA programming experience and are interested in getting started, you should sign up now.

此帖出自FPGA/CPLD论坛
个人签名training
 
 
 

回复

6423

帖子

16

TA的资源

版主

4
个人签名training
 
 
 

回复

6423

帖子

16

TA的资源

版主

5
 
 全新AmazonEC2 F1实例,支持用户自编程的FPGA(Field-Programmable Gate Array,即现场可编程门阵列),为用户的应用实现定制硬件加速,可提供高达30倍通用CPU的计算效率。F1实例易于编程,并提供开发、仿真、调试和编译硬件加速代码所需的一切,包括FPGA开发人员AMI和硬件开发工具包(HDK)。一旦FPGA设计完成,您就可以将其注册为Amazon FPGA Image(AFI),并且只需点击几下即可将其部署到您的F1实例。 您可以多次重复使用AFI,并且可以根据需要跨越多个F1实例。
此帖出自FPGA/CPLD论坛
个人签名training
 
 
 

回复

356

帖子

0

TA的资源

一粒金砂(中级)

6
 
开眼界了
此帖出自FPGA/CPLD论坛
 
 
 

回复

6423

帖子

16

TA的资源

版主

7
 
附上一篇论文
Enabling FPGAs in the Cloud.pdf (295.04 KB, 下载次数: 14)
此帖出自FPGA/CPLD论坛
个人签名training
 
 
 

回复

828

帖子

8

TA的资源

一粒金砂(高级)

8
 
白少侠,fpga高手啊,在下想玩玩cpu设计,不知从何入手,有没有性价比高一点的fpga板子
此帖出自FPGA/CPLD论坛

点评

你也可以加qq群458105411,与其他人分享讨论  详情 回复 发表于 2016-12-1 22:38
我不是高手。cpu设计可以参考的很多,可以看看夏宇闻老师的verilog数字系统设计教程,也可以到opencores上下载openrisk1200,这是一个开源的cpu,关于他的相关书籍也有不少,比如《片上系统设计思想与源代码分析》、  详情 回复 发表于 2016-12-1 22:37
个人签名人生有许多选项是灰色的、不可选的,但至少你可以选择生活的态度。。。韬光养晦,志存高远http://www.xzroad.com/
 
 
 

回复

6423

帖子

16

TA的资源

版主

9
 
wugx 发表于 2016-12-1 22:23
白少侠,fpga高手啊,在下想玩玩cpu设计,不知从何入手,有没有性价比高一点的fpga板子

我不是高手。cpu设计可以参考的很多,可以看看夏宇闻老师的verilog数字系统设计教程,也可以到opencores上下载openrisk1200,这是一个开源的cpu,关于他的相关书籍也有不少,比如《片上系统设计思想与源代码分析》、《步步惊芯》、《深入理解OpenRISC体系结构》、《开源软核处理器OPENRISC的SOPC设计》、《CPU源代码分析与芯片设计及Linux移植》,当然最重要的还是官方的英文手册
此帖出自FPGA/CPLD论坛

点评

好的,谢谢  详情 回复 发表于 2016-12-1 23:35
个人签名training
 
 
 

回复

6423

帖子

16

TA的资源

版主

10
 
wugx 发表于 2016-12-1 22:23
白少侠,fpga高手啊,在下想玩玩cpu设计,不知从何入手,有没有性价比高一点的fpga板子

你也可以加qq群458105411,与其他人分享讨论
此帖出自FPGA/CPLD论坛
个人签名training
 
 
 

回复

828

帖子

8

TA的资源

一粒金砂(高级)

11
 
白丁 发表于 2016-12-1 22:37
我不是高手。cpu设计可以参考的很多,可以看看夏宇闻老师的verilog数字系统设计教程,也可以到opencores ...

好的,谢谢
此帖出自FPGA/CPLD论坛
个人签名人生有许多选项是灰色的、不可选的,但至少你可以选择生活的态度。。。韬光养晦,志存高远http://www.xzroad.com/
 
 
 

回复

3836

帖子

19

TA的资源

纯净的硅(中级)

12
 
这些实例是 XILINX 提供?还是用户自己上传?
此帖出自FPGA/CPLD论坛

点评

再看一遍,这个是aws提供的  详情 回复 发表于 2016-12-2 22:03
 
 
 

回复

1706

帖子

4

TA的资源

纯净的硅(初级)

13
 
太高端,吓坏宝宝了
此帖出自FPGA/CPLD论坛
 
 
 

回复

6423

帖子

16

TA的资源

版主

14
 
fish001 发表于 2016-12-2 09:11
这些实例是 XILINX 提供?还是用户自己上传?

再看一遍,这个是aws提供的
此帖出自FPGA/CPLD论坛
个人签名training
 
 
 

回复

2

帖子

0

TA的资源

一粒金砂(初级)

15
 
这个还不错
此帖出自FPGA/CPLD论坛
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/8 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表