问题标签 [origen-sdk]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
41 浏览

origen-sdk - 应用程序和插件修订,准备好 Origen 应用程序生产

我们的开发应用程序有大约 12 个本土插件和许多 Origen gem,需要从开发到生产级质量。我从这里开始看到许多杂项主题,但我在应用程序/插件版本控制、Origen 模式(调试和生产)以及参考文件和示例等项目上看不到太多。我知道有运行 rspec 的“origen specs”命令,但是“origen test”和其他相关项目呢?

谢谢

0 投票
1 回答
24 浏览

origen-sdk - 如何让 gem 命令显示在应用程序帮助消息中?

我有一个在规范测试中运行的 gem 命令。但是,当主应用程序运行命令时,我没有看到命令显示origen h。我使用这个文档作为我的指南。这是我创建的 gem 帮助命令,它在主应用程序中不起作用(仅在 gem 本身内)。

谢谢

0 投票
1 回答
60 浏览

origen-sdk - 无法从 on_flow_end 回调创建 Web 文档

我正在尝试将 origen 设置为在使用origen p命令生成流程后自动生成 Web 文档,因此我添加了以下回调:

这会在构建流程页面时导致错误:

如果我单独调用origen p(没有添加回调)然后运行,则没有错误:

origen web compile --remote --api

是否可以将这两个命令与我正在尝试做的回调组合成一个命令,或者是否有必要在origen web compile之后调用origen p

谢谢。

0 投票
1 回答
35 浏览

origen-sdk - 使用 with_mode 方法更改对象数据

我添加了一些芯片模式如下:

当我将 DUT 模式设置为 :mode1 时,我想让一些时钟改变它们的设置点。

我的预期是,当 DUT 芯片模式设置为 :mode1 或 :mode 2 时,时钟值会发生变化。但似乎这些代码块的执行与 DUT 芯片模式无关。

在此处输入图像描述

时钟最终被设置为第二个 with_mode 代码块中的值。有没有办法定义仅在设置模式时才执行的模式相关操作?

** 编辑 **

使用此文档作为模型,我将 on_mode_changed 回调添加到origen/model.rb 文件,如下所示:

当我设置断点时,在设置模式之后,我确实看到模式发生了变化,并且 DUT 响应了回调方法,但没有调用回调方法。

在此处输入图像描述 在此处输入图像描述

这是 DUT 范围内的回调方法:

** 更新 **

代码在上面工作,谢谢!

0 投票
1 回答
76 浏览

verilog - 需要一些关于 VPI 与 Origen 中的旧模拟流程连接的调试指南

我正在尝试将 Origen-Sim 连接到旧版模拟流程中,并且在让套接字连接正常工作时遇到了一些麻烦。

出于调试目的,我在simulator.rb 中添加了一个新条目,允许我手动启动模拟器:

然后我用 +socket+{socket_id} 运行我的模拟器

我所看到的:

当我不传入套接字时,模拟器会因以下原因而死:

和 Origen 只是挂起 - 正如预期的那样。

当我确实通过套接字时,我得到了同样的错误,但是Origen 然后在套接字上看到了一些东西但是崩溃了。EOM 错误。

完全披露 - 因为我正在运行一个遗留流程,所以我使用的是 ncsim 而不是 irun。为此,我使用 -loadpli libpli.so:origen_startup 运行。我想也许代码中的引导程序导致它运行两次,但将其注释掉没有效果:

调试指导表示赞赏!也许一些简单的代码来测试连接?

来自 Origen 的错误日志:

0 投票
1 回答
40 浏览

origen-sdk - 可以使用回调来配置遥控器吗?

我正在阅读有关遥控器的 Origen 文档并有一个问题。何时相对于Origen 回调检索远程文件?我问的原因是我们要检索的文件将用于构建我们的 DUT 模型,并且存在一些顺序依赖性。

我已经尝试了所有现有的回调,试图配置遥控器,但没有成功。

如果我将遥控器配置添加到应用程序文件中,它可以工作:

使用 config/application.rb 文件的问题是我们无法将产品特定信息保存在应用程序空间的任何位置。我们使用符号链接映射到存储在测试程序存储库中的源文件。我想我们可能需要一个新的回调,请告知。

谢谢

** 编辑 **

所以我在另一个文件中定义了遥控器,并在 boot.rb 文件中调用该方法来实际执行它。然后我将远程管理器 require 方法放在 on_create 回调中,但没有获取任何遥控器。

好像是 Origen.remote_manager.require!不管用。所以我检查了远程管理器文件,没有看到需要!方法可以使用回调,因为它似乎正在检查遥控器是否脏,这对于在 application.rb 文件加载后设置的远程定义永远不会发生。所以我创建了一个resolve_remotes!似乎有效的方法:

解决遥控器!方法只是强制获取所有已知的遥控器。这个解决方案会接受 PR 吗?

谢谢

0 投票
1 回答
19 浏览

origen-sdk - 导入以前导出的模型

我正在尝试查找 Origen 导入命令未加载先前导出的模型的问题。我在导出的 rb 文件中看到有一个模块和一个名为 self.extended 的方法。导入命令正在加载模块,因此我可以手动执行 .extended(dut),但我不必显式运行它。跟踪导入代码,我看不到调用扩展方法的位置。我的问题是:设计。模块导入应该如何工作?应该在哪里调用该扩展方法?

0 投票
1 回答
18 浏览

origen-sdk - Origen 更新程序更改会影响生成的测试流程或模式吗?

当我在我的应用程序的 Gemfile 中检查并锁定特定标签版本时,我注意到 origen_updater gem 没有与之关联的版本。

这是为什么?我看到它是受版本控制的。更改此宝石会影响建模或生成吗?

谢谢

0 投票
1 回答
34 浏览

origen-sdk - 回调将 V93K .tf 文件移动到另一个目录?

目前,Origen 测试程序生成器在配置输出目录的位置下创建子目录:

我们需要将生成的 V93K .tf 文件向上移动 2 个目录,以便另一个工具可以找到它。我检查了回调文档,但没有一个看起来可以工作,因为我相信文件句柄仍然是打开的。有没有办法通过回调来做到这一点,或者为生成命令传递一个选项来不创建子目录...rake?

谢谢

** 编辑 ***

这是根据 Ginty 的工作代码:

0 投票
1 回答
14 浏览

origen-sdk - Origen 修订控制包装器中的用户名和密码

我开始为Origen 修订控制模块创建一个 Perforce 包装器。我没有看到有关如何处理用户名和密码的任何信息。我知道有一个现有的用户解决方案可以处理传递用户名但密码呢?

谢谢