本文摘自PHP中文网,作者坏嘻嘻,侵删。
本文在介绍安全组中已经添加规则放行SSH端口的访问之后如何使用f1 RTL的基础上,重点探讨了其具体步骤,本文内容很紧凑,希望大家耐心学习。使用f1 RTL
本文描述如何使用f1 RTL(Register Transfer Level)。
说明:
本文所述所有操作都必须由同一个账号在同一地域里执行。
强烈建议您使用RAM用户操作FaaS实例。为了防止意外操作,您需要让RAM用户仅执行必要的操作。在操作FPGA镜像及下载时,因为您需要从指定的OSS Bucket下载原始DCP工程,所以您必须为FaaS管理账号创建一个角色,并授予临时权限,让FaaS管理账号访问指定的OSS Bucket。如果需要对IP加密,必须授予RAM用户KMS相关权限。如果需要做权限检查,必须授予查看用户资源的权限。
前提条件
创建f1实例,确保实例能访问公网,并且实例所在安全组中已经添加规则放行SSH(22)端口的访问。
说明:f1实例只能使用镜像市场的FaaS F1基础镜像。详细信息,请参见 创建f1实例。
您已经 登录ECS管理控制台,在f1实例的详情页上,获取实例ID。
您必须先 开通OSS服务,并 创建一个OSS Bucket 用于上传您的文件。Bucket与f1实例必须属于同一个账号、同一个地域。
如果需要加密服务,您还需要 开通密钥管理服务(KMS)。
使用RAM用户操作FPGA,必须完成以下操作:
创建RAM用户 并 授权。
创建RAM角色 并 授权。
获取AccessKey ID和AccessKey Secret。
操作步骤
按以下步骤使用f1 RTL。
第 1 步. 远程连接f1实例
远程连接Linux实例。
第 2 步. 配置基础环境
运行以下脚本配置基础环境。
1 | source /opt/dcp1_0/script/f1_env_set.sh
|
第 3 步. 编译工程
运行以下命令:
1 2 | cd /opt/dcp1_0/hw/samples/dma_afu
run.sh
|
说明:编译时间较长,请耐心等待。
第 4 步. 制作镜像
按以下步骤制作镜像:
运行命令初始化 faascmd。
1 2 3 4 5 6 7 | #如果需要,添加环境变量及运行权限
export PATH=$PATH:/opt/dcp1_0/script/
chmod +x /opt/dcp1_0/script/faascmd
# 将hereIsYourSecretId替换为您的AccessKey ID,hereIsYourSecretKey替换为您的AccessKey Secret
faascmd config --id=hereIsYourSecretId --key=hereIsYourSecretKey
# 将hereIsYourBucket换为华东1地域里OSS Bucket名称
faascmd auth --bucket=hereIsYourBucket
|
确认在/opt/dcp1_0/hw/samples/dma_afu目录下,运行以下命令上传gbs文件。
1 | faascmd upload_object --object=dma_afu.gbs --file=dma_afu.gbs
|
运行以下命令制作镜像。
1 2 3 | # 将hereIsYourImageName替换为您的镜像名称
faascmd create_image --object=dma_afu.gbs --fpgatype=intel --name=hereIsYourImageName
--tags=hereIsYourImageTag --encrypted= false --shell=V0.11
|
第 5 步. 下载镜像
按以下步骤下载镜像到f1实例:
查看镜像是否制作成功:运行命令 faascmd list_images。
返回结果里,如果出现"State":"success",表示镜像制作成功。请记录返回结果里显示的FpgaImageUUID,稍后会用到。
运行命令获取FPGA ID。
1 2 | # 将hereIsYourInstanceId替换为您的f1实例ID
faascmd list_instances --instanceId=hereIsYourInstanceId
|
以下为返回结果。请记录FpgaUUID。
运行命令下载FPGA镜像到f1实例。
1 | # 将hereIsYourInstanceID替换为刚刚保存的实例ID;将hereIsFpgaUUID替换为上一条命令中记下的FpgaUUID;将hereIsImageUUID
|
替换为上一步记下的FpgaImageUUID
1 2 3 | faascmd download_image --instanceId=hereIsYourInstanceID
--fpgauuid=hereIsFpgaUUID --fpgatype=intel --imageuuid=hereIsImageUUID
--imagetype=afu --shell=V0.11
|
运行命令检查是否下载成功。
1 2 | # 将hereIsYourInstanceID替换为刚刚保存的实例ID;将hereIsFpgaUUID替换为上一条命令中记下的FpgaUUID;
faascmd fpga_status --instanceId=hereIsYourInstanceID --fpgauuid=hereIsFpgaUUID
|
如果返回结果里出现"TaskStatus":"operating"时,且FpgaImageUUID和下载镜像时的FpgaImageUUID一致,说明下载成功。
第 6 步. 测试
依次运行以下命令。
1 2 3 | cd /opt/dcp1_0/hw/samples/dma_afu/sw
make
sudo LD_LIBRARY_PATH=/opt/dcp1_0/hw/samples/dma_afu/sw:$LD_LIBRARY_PATH ./fpga_dma_test 0
|
如果您看到如图所示的输出结果,说明测试完成。
以上就是安全组中已经添加规则放行SSH端口的访问之后如何使用f1 RTL的详细内容,更多文章请关注木庄网络博客!
相关阅读 >>
Linux如何截图
Linux怎么修改用户名
Linux怎么翻页
调用该接口时如何扩容一块数据盘
教你如何用Linux设置服务器自动重启
如何创建基于ecs和rds的wordpress环境
Linux怎么查看磁盘空间
Linux中如何设置dns服务器
如何查询一份自定义镜像已经共享的所有用户
Linux中如何利用shell判断文件或目录是否存在
更多相关阅读请进入《Linux》频道 >>
转载请注明出处:木庄网络博客 » 安全组中已经添加规则放行SSH端口的访问之后如何使用f1 RTL