0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

用DE1-SOC进行硬件加速的2D N-Body重力模拟器设计

友晶FPGA 来源:友晶Terasic 2024-04-09 11:08 次阅读

1. 项目概述

项目说明

该项目的目标是创建一个用DE1-SOC进行硬件加速的2D N-Body重力模拟器。

77eb7712-f61d-11ee-a297-92fbcf53809c.jpg

该模拟器拥有可定制的地图和基于鼠标的 GUI 交互功能。

使用标准CPU模拟天体(恒星、行星、小行星等)之间的引力是有限的,因为它只能进行顺序计算,随着天体数量的增加,模拟时间会很长。而该项目是通过将每个天体的信息发送到FPGA来加速这些计算,让它并行计算其他天体之间的每次交互,然后将结果发送回ARM继而显示在显示器上。

782793a0-f61d-11ee-a297-92fbcf53809c.png

2. 数学原理

加速器的数学基础从标准牛顿重力方程开始:

78395a86-f61d-11ee-a297-92fbcf53809c.png

为了简化方程并减少 HPS 处理的计算量,先这样求解加速度:

78425fa0-f61d-11ee-a297-92fbcf53809c.png

785512da-f61d-11ee-a297-92fbcf53809c.png

然后用同样的方法计算其他加速度:

78620242-f61d-11ee-a297-92fbcf53809c.png

不过,对于这个计算,

7874111c-f61d-11ee-a297-92fbcf53809c.png

这意味着如果物体靠得太近,会产生无限的加速度。这与现实不符,且由于该系统不处理对象的碰撞,因此需要添加不出故障的计算进去。

如果用一个偏移量epsilon来规范半径数学计算,就可阻止加速度增加到无穷大。

787fdb0a-f61d-11ee-a297-92fbcf53809c.png

当选择epsilon取值是10的负8次方时,这意味着它不会明显超出尾数的精度也就是小数点后9位。

7890d658-f61d-11ee-a297-92fbcf53809c.png

78a7a2c0-f61d-11ee-a297-92fbcf53809c.png

但是这只计算了总加速度。为了将加速度存储为矢量,则这里需要方向分量。为了计算这个,就用x和y的位移除以半径。

78b48fc6-f61d-11ee-a297-92fbcf53809c.png

当应用到之前的加速度公式时得到了下面的方程:

78cbd2bc-f61d-11ee-a297-92fbcf53809c.png

给物体2的加速度加上一个负号因为位移是我们在原始x^计算中计算的负的位移。

78e1d6c0-f61d-11ee-a297-92fbcf53809c.png

由于无法快速执行浮点除法,因此在计算中只能进行3种不同的操作。加/减,乘和反平方根(使用快速反平方根算法)。下面的操作用于计算加速器中的最终结果。首先用2个加法器计算半径的平方来计算x和y的位移,然后将输出与其自身相乘并求出它们的和,也就是半径的平方。

78f5199c-f61d-11ee-a297-92fbcf53809c.png

一旦有了半径的平方,就可以试着用半径平方的平方根的倒数来计算半径的倒数。

79071a16-f61d-11ee-a297-92fbcf53809c.png

用半径平方和epsilon平方之和的平方根的倒数,可以用下面的方法计算出前面所述的加速度方程:

79149ad8-f61d-11ee-a297-92fbcf53809c.png

更多原理介绍和方法实现请参考项目原文。




审核编辑:刘清

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • FPGA
    +关注

    关注

    1603

    文章

    21328

    浏览量

    593287
  • ARM
    ARM
    +关注

    关注

    134

    文章

    8654

    浏览量

    361894
  • 模拟器
    +关注

    关注

    2

    文章

    818

    浏览量

    42700
  • GUI
    GUI
    +关注

    关注

    3

    文章

    611

    浏览量

    38813
  • 硬件加速器
    +关注

    关注

    0

    文章

    38

    浏览量

    12637

原文标题:FPGA开源项目分享——2D N-Body重力模拟器

文章出处:【微信号:友晶FPGA,微信公众号:友晶FPGA】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    求购de1-soc开发版。有的请联系我。急求呢。QQ:528369266

    求购de1-soc开发版。有的请联系我。急求呢。QQ:528369266
    发表于 12-15 16:00

    DE1-SOC新货转让

    本人研究生,在暑假期间参加了一个比赛,获得了一块DE1-SOC作为比赛奖品,于2015年12月26日拿到奖品,淘宝官网上卖价1575,现在想低价转售,暂定价格1200,可议价,开发套件还未拆封,保证
    发表于 12-27 10:43

    DE1-SoC官方自带ControlPanel代码解读与AV图像采集处理?

    DE1-SoC一段时间了,官方给的controlPanel那个示例给出了工具链的安装方式,而且给了这块板开发QT界面的一套流程,目前想在该代码上修改,想结合AV端采集图像,通过Opencv进行图像处理,可如何与Opencv
    发表于 05-06 22:18

    DE1-Soc用户手册

    DE1-Soc用户手册
    发表于 08-05 16:08

    MCU厂推多样解决方案 DSP/FPU硬件加速芯片整合

    差距,如果仅需要SDP或FPU进行运算加速,又不想选用高单价SOC,这时整合DSP或FPU硬件加速单元的 MCU产品、不仅可以更好的提供运行效能,同时又能在成本控制上表现更加优异。MC
    发表于 10-14 17:17

    小弟求购Altera DE1-SOC开发板,哪位大神玩剩下了传承一下,多谢!

    小弟想自学FPGA,预购Altera DE1-SOC。哪位大神玩过了,技术了熟于胸。也别冷落了板子,赠人玫瑰手有余香,请联系小弟,让技术继续发挥余热,价格可谈。 联系方式:***注:10.22不能入手就在淘宝买了,之后就不用耽误大神时间了。非常感谢!
    发表于 11-18 15:00

    de1-soc FPGA(Quartus工程含Qsys系统) + HPS 操作步骤

    的---------.sof文件下载进FPGA,可执行文件进SD卡中执行 拓展:自启动。 FPGA:.pof文件固化到FPGA中,注意我们的de1-soc的不是EPCS,而是EPCQ,具体方式见用户手册倒数第
    发表于 07-03 08:10

    找不到3d硬件加速器怎么办

    :浏览  部分浏览默认无法开启Flash3D硬件加速功能导致可能出现以下情况:  1:Flash设置页面没有显示设置选项。  
    发表于 08-21 09:04

    如何在MA35D1上使用硬件2D加速功能?

    如何在MA35D1上使用硬件 2D 加速功能?
    发表于 09-06 08:26

    如何在DE1-SOC开发板上搭建NIOS II处理器运行UCOS

    介绍了如何在DE1-SOC开发板上搭建NIOS II处理器运行UCOS II,一步一步指导的,特此上传,希望能帮点忙。
    发表于 06-14 15:29 12次下载

    MD5算法硬件加速模型

    针对MD5软件实现方法存在占用资源大、安全性差等缺点,提出了基于NetMagic平台的MD5硬件加速模型设计方案,并基于ModelSim和NetMagic平台对提出的非流水线与流水线硬件加速模型进行
    发表于 01-12 16:45 0次下载
    MD5算法<b class='flag-5'>硬件加速</b>模型

    Veloce仿真环境下的SoC端到端硬件加速器功能验证

    很多人认为硬件加速器无非是一种速度更快的仿真器而已。毫无疑问,由于硬件加速器使用物理硬件进行仿真,使用硬件加速器验证复杂的集成电路和大型片上
    发表于 03-28 14:50 3238次阅读
    Veloce仿真环境下的<b class='flag-5'>SoC</b>端到端<b class='flag-5'>硬件加速</b>器功能验证

    DE1-SoC开发工具包的详细用户和使用手册资料免费下载

    DE1-SoC开发工具包提供了一个基于Altera System-on-Chip(SoC)FPGA的健壮的硬件设计平台,它结合了最新的双核Cortex-A9嵌入式内核和工业领先的可编程逻辑以实现最终
    发表于 10-16 16:55 86次下载
    <b class='flag-5'>DE1-SoC</b>开发工具包的详细用户和使用手册资料免费下载

    ALTERA公司的DE1 SoC FPGA开发板的培训教程免费下载

    本文档的主要内容详细介绍的是ALTERA公司的DE1 SoC FPGA开发板的培训教程免费下载包括了:第1章 DE1-SOC 快速入门,第2章 DE1-SOC
    发表于 07-08 08:00 28次下载
    ALTERA公司的<b class='flag-5'>DE</b>1 <b class='flag-5'>SoC</b> FPGA开发板的培训教程免费下载

    DE1-SoC结构及电路图

    DE1-SoC结构及电路图免费下载。
    发表于 04-07 11:33 22次下载