首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >VHDL中的除法(整型/浮点型)

VHDL中的除法(整型/浮点型)
EN

Stack Overflow用户
提问于 2013-10-03 22:08:46
回答 2查看 8.3K关注 0票数 0

我想在一个周期内(组合电路)将VHDL中的两个数字(16位二进制)相除。分子是一个整数。分母是一个浮点数。结果应为float。我应该使用什么算法来执行除法。

请帮帮忙

EN

回答 2

Stack Overflow用户

发布于 2013-10-04 03:46:06

下面是一个实体,它可以执行您想要的操作(如果我正确理解了问题的话):

代码语言:javascript
复制
library ieee;
use ieee.numeric_std.all;
use ieee.float_pkg.all;

entity integer_by_float_division is
    port (
        numerator: in signed(15 downto 0);
        denominator: in signed(15 downto 0);
        result: out float(6 downto -9)
   );
end;

architecture rtl of integer_by_float_division is
    subtype float16 is float(6 downto -9);
    signal numerator_float: float16;
    signal denominator_float: float16;
begin
    numerator_float <= to_float(numerator, numerator_float);
    denominator_float <= to_float(denominator, denominator_float);
    result <= numerator_float / denominator_float;
end;
票数 1
EN

Stack Overflow用户

发布于 2013-10-03 22:28:58

我认为这是不可能的。你有什么理由需要在一个时钟周期内完成它吗?唯一接近的方法是使用查找表,但您必须牺牲输出的一些精度。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19161454

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档