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

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

3天内不再提示

FPGA中实现对数运算的方法

FPGA设计论坛 来源:FPGA设计论坛 作者:FPGA设计论坛 2022-07-06 14:52 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

FPGA中实现对数运算主要有三种方法:

(1)在外部直接算好对数值,按照数值范围做个表,存在ram里,到时候查表。为了减少表深度,提高资源利用率,可以考虑去掉部分低位数值,损失一定的精度。

(2)使用cordic算法求解对数。

(3)log10(x)=ln(x) * log10(e) , log10(e)是常数可以手动先计算好,用IP Core的话多个乘法器。

下面介绍使用IP核floating-point来计算对数,该IP计算对数时,计算的是Ln(A)(A是输入),如下图所示:

c7463d14-fce2-11ec-ba43-dac502259ad0.png

输入是浮点数,所以如果我们在FPGA内使用的定点数,则需要先将定点数转化为浮点数:

c75ee594-fce2-11ec-ba43-dac502259ad0.png

实现对数运算时,可以使用DSP核心,也可以不用,IP配置中提供了三个等级:

c775de70-fce2-11ec-ba43-dac502259ad0.png

对于Flow Control可以选择带缓存的Blocking模式,也可以选择没有缓存的NonBlocking模式,延时也可以选择从0到23:

c78c89a4-fce2-11ec-ba43-dac502259ad0.png

上面也提到,计算LOG的输入是浮点数,如果需要,可以继续使用floating-point来实现定点数转浮点数,对于转换IP的输入可以自主设定如下图所示,这里设为int16+fra16,输出为单精度浮点数,可以直接给计算LOG的IP核:

c7af9390-fce2-11ec-ba43-dac502259ad0.png

我们要计算以任意数为底的对数时,可以通过来计算,由此完成一次计算,需要两个定点转浮点的IP(fixtofloat),两个LOG的IP(log不使用DSP),以及一个除法IP(divide),最后再将浮点数转为定点数输出,综合实现后的资源占用情况为:

c7c26d80-fce2-11ec-ba43-dac502259ad0.png

一次简单的RTL仿真为:

c7e073c0-fce2-11ec-ba43-dac502259ad0.png

原文标题:FPGA中实现对数运算

文章出处:【微信公众号:FPGA设计论坛】欢迎添加关注!文章转载请注明出处。

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

    关注

    559

    文章

    8216

    浏览量

    364003
  • FPGA
    +关注

    关注

    1655

    文章

    22287

    浏览量

    630315
  • 乘法器
    +关注

    关注

    9

    文章

    221

    浏览量

    38526

原文标题:FPGA中实现对数运算

文章出处:【微信号:gh_9d70b445f494,微信公众号:FPGA设计论坛】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    详解FPGA定点数计算方法

    FPGA定点数计算在高效资源利用、运算速度优势、硬件可预测性和成本效益等方面发挥着重要作用。它能节省逻辑和存储资源,实现更快速的运算和更高的时钟频率,保证行为可预测且易于硬件
    的头像 发表于 12-02 10:09 194次阅读
    详解<b class='flag-5'>FPGA</b>定点数计算<b class='flag-5'>方法</b>

    如何使用FPGA实现SRIO通信协议

    泛应用。文章重点解释了回环测试的基本概念,这种方法可验证FPGA的SRIO接口功能的正确性,并提供了系统级测试验证的相关知识。同时,本例程还涵盖了Verilog语法、FPGA架构、S
    的头像 发表于 11-12 14:38 4983次阅读
    如何使用<b class='flag-5'>FPGA</b><b class='flag-5'>实现</b>SRIO通信协议

    定点数表示实数的方法以及定点数在硬件上的运算验证

    实现,不建议使用除法,通常除法运算较慢,将严重影响时序。 FPGA定点数乘法运算 高版
    发表于 10-28 08:13

    卷积运算分析

    的数据,故设计了ConvUnit模块实现单个感受域规模的卷积运算. 卷积运算:不同于数学当中提及到的卷积概念,CNN神经网络的卷积严格意义上是指互相关
    发表于 10-28 07:31

    浮点数是如何实现开平方运算

    摘要: 本文主要描述浮点数是如何实现开平方运算的。 简介 事实上,浮点数的开平方运算结构与定点数甚至整数的开平方运算结构是十分相似的,我们可以在对定点数求平方根
    发表于 10-24 08:42

    如何利用Verilog HDL在FPGA实现SRAM的读写测试

    本篇将详细介绍如何利用Verilog HDL在FPGA实现SRAM的读写测试。SRAM是一种非易失性存储器,具有高速读取和写入的特点。在FPGA
    的头像 发表于 10-22 17:21 3958次阅读
    如何利用Verilog HDL在<b class='flag-5'>FPGA</b>上<b class='flag-5'>实现</b>SRAM的读写测试

    使用Simulink自动生成浮点运算HDL代码(Part 1)

    引言 想要实现浮点运算功能,如果自己写Verilog代码,需要花费较多的时间和精力。好在Simulink HDL Coder工具箱提供了自动代码生成技术。下图展示了HDL Coder如何生成浮点运算
    发表于 10-22 06:48

    FPGA测试DDR带宽跑不满的常见原因及分析方法

    FPGA 测试 DDR 带宽时,带宽无法跑满是常见问题。下面我将从架构、时序、访问模式、工具限制等多个维度,系统梳理导致 DDR 带宽跑不满的常见原因及分析方法
    的头像 发表于 10-15 10:17 550次阅读

    无位置传感器无刷直流电机的+FPGA+控制实现

    硬件方案,同时通过算法优化,避免了乘法和除法运算,大大减少了 FPGA 逻辑资源消耗,并在一片低端现场可编程门阵列得到了具体验证和实现。该方案充分运用
    发表于 07-10 16:35

    基于FPGA的压缩算法加速实现

    本设计,计划实现对文件的压缩及解压,同时优化压缩中所涉及的信号处理和计算密集型功能,实现对其的加速处理。本设计的最终目标是证明在充分并行化的硬件体系结构 FPGA
    的头像 发表于 07-10 11:09 2085次阅读
    基于<b class='flag-5'>FPGA</b>的压缩算法加速<b class='flag-5'>实现</b>

    进群免费领FPGA学习资料!数字信号处理、傅里叶变换与FPGA开发等

    ~ 01、数字信号处理的FPGA实现 旨在讲解前端数字信号处理算法的高效实现。首先概述了当前的FPGA技术、器件以及用于设计最先进DSP系统的工具。阐述了计算机算法的概念、理论、FI
    发表于 04-07 16:41

    对数,电子学不可或缺的“压缩神器”

    。这些基本的对数运算在电子领域中有着广泛的应用,比如信号处理、电路设计等,以上内容我们会针对对数运算展开详细介绍。 对数在电子学
    发表于 03-14 09:10

    AN-643:数字可变光衰减器ADuC832 MicroConverter IC和对数转换器AD8305的闭环控制电路实现

    电子发烧友网站提供《AN-643:数字可变光衰减器ADuC832 MicroConverter IC和对数转换器AD8305的闭环控制电路实现.pdf》资料免费下载
    发表于 01-14 16:44 0次下载
    AN-643:数字可变光衰减器<b class='flag-5'>中</b>ADuC832 MicroConverter IC和<b class='flag-5'>对数</b>转换器AD8305的闭环控制电路<b class='flag-5'>实现</b>

    FPGA在AI方面有哪些应用

    提供了强有力的支持。 一、FPGA 在深度学习的应用 深度学习是 AI 的重要分支,涉及海量的数据运算FPGA 能够针对深度学习算法
    的头像 发表于 01-06 17:37 2107次阅读

    基于FPGA实现图像直方图设计

    直方图统计的原理 直方图统计从数学上来说,是对图像的像素点进行统计。图像直方图统计常用于统计灰度图像,表示图像各个灰度级出现的次数或者概率。统计直方图的实现采用C/C++或者其他高级语言
    的头像 发表于 12-24 10:24 1205次阅读
    基于<b class='flag-5'>FPGA</b><b class='flag-5'>实现</b>图像直方图设计