在vhdl中生成随机整数

2023-12-09

我需要在 vhdl 中生成 0 - 1023 之间的随机整数,但是我在互联网上找不到这方面的好资源。请问有人帮我吗?


下面是生成范围 [0 : 1023] 内均匀(均匀)分布的整数的示例。

请注意,floor必须在与最大值 + 1 相乘之后使用运算,在本例中为 1023 + 1 = 1024,以确保 [0 : 1023] 中所有整数值的均匀(均匀)分布,因为使用不带下限的整数(因此integer(x * 1023))如注释中的“在 VHDL 测试平台中生成随机数”示例中所示,将导致四舍五入到最接近的值(从一半向上舍入),因此仅给出范围内第一个和最后一个值(0 和 1023)的一半概率。

entity tb is
end entity;

library ieee;
use ieee.math_real.uniform;
use ieee.math_real.floor;

architecture sim of tb is
begin
  process is
    variable seed1 : positive;
    variable seed2 : positive;
    variable x : real;
    variable y : integer;
  begin
    seed1 := 1;
    seed2 := 1;
    for n in 1 to 10 loop
      uniform(seed1, seed2, x);
      y := integer(floor(x * 1024.0));
      report "Random number in 0 .. 1023: " & integer'image(y);
    end loop;
    wait;
  end process;
end architecture;
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在vhdl中生成随机整数 的相关文章

随机推荐

  • 应用程序从应用程序托盘中删除后,服务的进程被杀死

    当活动启动时 我正在启动服务 或重新启动正在运行的服务 使用 Intent intent new Intent this MyService class startService intent 稍后 基于某些操作 相同的活动使用以下方式绑定
  • 如果其他工作簿关闭,公式不会更新

    我有下面的公式 它引用同一文件夹中的另一个工作簿 但是当文件打开时它工作正常 问题是当另一个 Excel 文件关闭时 因为公式不会更新 另一个工作簿打开时的公式 IFERROR COUNTIFS Auto Zero xlsx MonthDB
  • 获取从 Moment.js 到 ISOString 的意外时间偏移

    我正在尝试标准化ISO 8601 日期格式 string 来自 Moment js 但我没有得到我期望的结果 瞬间的toISOString 方法给我一个带有 17 小时偏移量的输出 而不是午夜 var mom moment 23 11 20
  • 删除鼠标悬停 Google Chart 上的自定义工具提示

    我正在使用时间线谷歌图表 基于此question 我试图添加仅当鼠标移出工具提示时删除工具提示的功能 我的下面的函数成功地将其删除一次 但随后抛出错误 此外 我希望它仅在鼠标移出工具提示后才被删除 google visualization
  • ANTLR:带参数的规则?

    我是 ANTLR 新手 我开始探索 ANTLR 教程 我见过为特定规则定义返回类型的示例 请参见下面的示例 我也可以将参数传递给规则吗 我只是在心里想 我想根据提供给它的论据来改变特定状态下的规则行为 如果在 ANTLR 中可行 请帮助我
  • ORA-00936 缺少表达式

    当用户投票时 我需要更新我的表列 votecount 但我遇到此错误 我不知道该怎么办 private void Vote string VoteId OracleCommand cmd new OracleCommand UPDATE A
  • project.cabal 文件的 build-depends 中的“stack install NAME”和“NAME”有什么区别?

    添加和添加有什么区别package name在下面build depends 项目中的部分 cabal file 与做stack install package name在该项目的目录中 stack install只会将包安装到适当的位置
  • 将格式化的 Excel 范围粘贴到 Outlook 邮件中

    我想将一系列格式化的 Excel 单元格粘贴到 Outlook 邮件中 以下代码 我从各种来源获取 运行时没有错误并发送一条空消息 Sub SendMessage SubjectText As String Importance As Ol
  • 当依赖属性发生更改时是否有通知机制?

    在 Silverlight 应用程序中 我试图找出用户控件上的属性何时发生更改 我对一个特定的 DependencyProperty 感兴趣 但不幸的是该控件本身没有实现 INotifyPropertyChanged 还有其他方法可以确定值
  • 如何在neo4j中按时间戳过滤边缘?

    我有一个以下形式的图表 产品 产品 in stock 更新 时间戳 gt stock items StockItem 数量 q stored at gt 位置 位置 显然更重要的是 但你明白了要点 stock item 节点和 in sto
  • UITabBarController 的“更多”导航控制器在 UINavigationController 下消失

    我在我的应用程序上使用 UITabBarController 和 UINavigationController 在我的 UITabBarController 中 我使用了超过 5 个项目 因此我会自动获取 更多 项目 我已经设法添加一个保存
  • .net cf TextBox 在焦点上显示键盘

    我的 UI 上有一些文本框 我想在控件获得焦点时显示移动键盘 然后消失 注意 对于这个特定的程序 它是一个高屏幕 并且设备上没有物理键盘 将 InputPanel 添加到表单中 连接 TextBox 的 GotFocus 和 LostFoc
  • 将 LINQ to Entity Framework 与 DB2 结合使用

    是否有 IBM 驱动程序 以便我们可以使用 Linq to Entity 框架连接到 DB2 并在 desinger edmx 文件上生成 DB2 实体 任何链接将不胜感激 7已经出来了您可以在PC上安装DB2 9 7客户端来连接任何DB2
  • 抛出另一个异常:FormatException: Invalid number (at character 1)

    为什么会出现错误Another exception was thrown FormatException Invalid number at character 1 在一切恢复正常之前 我的屏幕上会出现几微秒 有时甚至不会发生 下面是我的
  • 尝试通过 jQuery ajax 调用加载 Google 图表

    最初发布在这里 尝试通过 jQuery ajax 调用加载 Google 图表但对我的代码进行了一些修改 但我仍然无法让它正常工作 我正在尝试编写一个轮询函数来加载结果并将其显示在同一页面中而不刷新 我正在使用谷歌图表 api 和 jque
  • 在 VB.Net 中等待变量改变状态的更好方法

    我有一个循环遍历多个值 迭代每个值时 都会将页面加载到 Web 浏览器控件中 将值作为参数传递 并且当加载和读取页面时 循环应转到列表中的下一个值并继续 直到处理完所有值 我需要一种方法来在网站异步加载时暂停该过程 然后在页面加载 读取过程
  • Google Sheet:onChange 事件触发时如何获取实际更改?

    the doc不是很有帮助 不像onEdit onChange事件没有包含所做更改的属性 我怎样才能得到它 function onChange e console log e 该事件对象中没有任何有用的信息 我无法使用 onEdit 的原因
  • 如何在d3js中制作分组堆积条形图?

    我有以下 d3 图表 它已分组 并且每个分组都包含一个堆积条形图 但不知何故 我觉得这不是一个正确的实施方式 而且有点复杂 如果只有堆积条形图 我会使用d3 stack 有人可以让我知道有没有更好的方法来做到这一点 片段如下 var dat
  • git 变基基础知识

    我已经开始使用git rebase最近 我不能 100 确定我做得对 为了问题起见 起源有两个分支 master and next 它是从master 自从两者上次同步以来 master有 2 次提交并且next 6 git log one
  • 在vhdl中生成随机整数

    我需要在 vhdl 中生成 0 1023 之间的随机整数 但是我在互联网上找不到这方面的好资源 请问有人帮我吗 下面是生成范围 0 1023 内均匀 均匀 分布的整数的示例 请注意 floor必须在与最大值 1 相乘之后使用运算 在本例中为