问题标签 [cadence]

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 回答
1162 浏览

ios - BLE cadence特征解析iOS蓝牙Swift

我正在尝试创建一个读取踏频传感器(Wahoo 健身踏频)的 iOS 应用程序。这是蓝牙特性0x2A5B (CSC Measurement)。在这个例子中,节奏是自行车上踏板的旋转速度。

我在 Swift 中使用以下代码从传感器读取特征: 版本 1:

当我打印 byteArray 时,我得到“[2, 1, 0, 152, 11]”。“2”和“0”永远不会改变。“1”位置增加且永不减少。“152”和“11”位置似乎是完全随机的,永远不会变为0。当曲柄完全停止时,它们也不会改变。在阅读文档时,我预计“11”是最后一个事件启动时间。但是,尽管我旋转传感器的速度有多慢,但它似乎并没有改变。

如何使用这些数据从传感器获取节奏?

在 Paul 的帮助下,我对代码进行了更改,结果如下:

版本 2

当前返回的 RPM 低于预期值,大约 53 是最高的,3 是最低的。这些值与传感器开发人员的应用程序进行比较,显示大约 50-70 rpm。

版本 3:

0 投票
1 回答
289 浏览

tcl - 如何使用幽灵运行多个sp文件

我有一堆.sp需要用 Cadence Spectre 模拟的文件。而不是run spectre——

- Spectre 中是否有某种批处理模式,以便我可以启动 Spectre 一次并按顺序执行这些任务(持有 Spectre 并运行下一个任务)?我怎样才能做到这一点?

我需要这个,因为每次启动 Spectre 时都需要检查许可证并做其他事情,这会浪费不必要的时间。

提前致谢。

错误信息:

0 投票
1 回答
278 浏览

function - ncelab 中的错误:F*MISLUN:缺少顶层模块、设计单元名称

我正在尝试实现一个可重新配置的模块,该模块根据用户设置更改其配置。我将有一个巨大的梯子。当用户决定将位向右移动 4 位时,if else 条件阶梯内的所有值也应相应更改,用户不必手动更改每个值。一个核心变化就足以实现这一目标。

我已经开始先用函数尝试它,这就是为什么我还没有写完任何东西,但遇到了错误。

您将在下面找到 rtl 和 tb。我需要两件事的帮助:

(1) 为什么我在 Cadence ncelab 软件中出现此错误?(2) 调整“if ... else”条件中存在的值的最佳方法是什么?因为我将有一个巨大的 if else 梯子。

右转:

结核病

我可能无法正确提出问题。如果您需要更多说明,请告诉我。

0 投票
1 回答
108 浏览

specman - 如何逐个运行e文件?不平行测试

我是 Specman 的新手,我现在正在编写一个测试平台,我想提供许多特定的测试用例来调试计算器。

例如,

我有两个文件,第一个名为“test1”,第二个名为“test2”。这是我的“test1”代码:

这是我的“test2”代码:

但是,当我尝试测试我的代码时,specman 显示错误,看来我不能那样做。有什么可能的方法可以让specman先执行“test1”文件然后运行“test2”文件?或者如果有其他方法可以实现我的目标?

谢谢你的帮助。

0 投票
1 回答
111 浏览

specman - 如何将 32 位数字的每个位与另一个 32 位数字进行比较?

我正在考虑将 32 位数字的每个位与另一个 32 位数字进行比较。

其中dout_1、din1_1 和din2_1 都是32 位无符号整数。我想检查 dout_1 的 12 位到 7 位的每一位是否等于 (ins.din1_1 + ins.din2_1) 结果的 12 位到 7 位的每一位。

我怎样才能做到这一点?

0 投票
2 回答
265 浏览

code-coverage - 组合覆盖点以创建聚合

我正在寻找 AggregateCov1,它告诉 cr_P0I1I2_IsSqauarexIsCircle、cr_P0I2I3_IsSqauarexIsCircle、cr_P0I3I4_IsSqauarexIsCircle 中的任何一个是否成功。本质上意味着我在组 [Opcode_P0I1,Opcode_P0I2,Opcode_P0I3,Opcode_P0I4] 中至少有一个正方形和一个圆形。

还寻找 AggregateCov2 告诉我在组 [Opcode_P0I1,Opcode_P0I2,Opcode_P0I3,Opcode_P0I4] 或 [Opcode_P1I1,Opcode_P1I2,Opcode_P1I3,Opcode_P1I4] 中是否有至少一个正方形和一个圆形相邻

0 投票
1 回答
339 浏览

verification - 有没有人使用 Cadence emanager 桌面版并转移到不包含其许可证的 Xcelium 模拟器?

到目前为止,我的团队依赖 emanager 桌面版进行回归运行、覆盖合并和报告。当我们使用 incisive 模拟器时,许可证包括帮助我们实现这些功能的 emanager(桌面版)的基本用法。但是现在当我们迁移到 Xcelium 时,不再支持 emanager,只有 vmanager 存在。但是,这需要不同的许可证,我的老板并不那么愿意为此付费。我想知道这里是否有人遇到过同样的问题,您是如何处理的?

我们已经评估了 vManager,它非常适合我们的需求,从 emanager 到 vManager 的迁移也是无缝的。现在我们正在考虑编写自己的脚本来运行回归和生成报告,但这似乎是一项艰巨的任务。

0 投票
1 回答
727 浏览

verilog - 如何将字符串变量(不是字符串文字)传递给 SytemVerilog 中的 $dumpfile 系统任务?

我正在运行带有传递给测试台的不同参数的模拟,作为 plus args。我想为这些运行中的每一个转储单独的 VCD。我尝试声明一个字符串变量并使用传递的参数构造文件名,并将其传递给 $dumpfile。

但我在 IES 中收到以下错误:

当前不支持将字符串变量传递给此系统任务/函数

作为一种解决方法,我从命令行定义了文件名并将其用作 $dumpfile 的参数。这可行,但如果测试参数是从测试台内部随机分配的,则不行。

这是模拟器还是 SystemVerilog 的行为?有什么解决办法吗?

谢谢。

0 投票
2 回答
516 浏览

system-verilog - Cadence IUS 模拟器选项

NC 模拟器中的 -INcdir 和 +incdir+ 选项有什么区别?

下面是 Makefile 中的示例命令。据我所知,测试台目录是使用-INcdir包含的,源代码文件目录是使用+incdir+命令包含的

请帮助我理解这些选项的意义。

0 投票
1 回答
172 浏览

system-verilog - 从 assign 调用时,函数可选参数不在敏感度列表中

我想我已经弄清楚为什么会发生这种情况,但我想确认一下,看看是否有更好的解决方案。

考虑以下模块,该模块具有一个函数,其中一个参数的默认值绑定到模块内的某个寄存器:

我看到的问题(不容易追查)是,在这种情况下,任务的敏感性列表只有一个。因此,如果 b 更改,然后 a 更改,out 将被正确更新。但是,如果 a 发生变化,然后 b 发生变化,因为 b 不在 out 分配的敏感列表中,out 将不会更新,并且仍将设置为旧值。

是否有首选方法将 b 添加到敏感度列表中,以便在更改时更新 out ?

我看到了一些可能的选择:

  1. 只需显式添加第二个参数:f1(a, b)
  2. 使用连续分配块always_comb out = f1(a)always @(*) out=f1(a)
  3. 使用明确的敏感度列表always @(a, b) out = f1(a)

我个人认为选项 1 是最好的(即使它会在每个调用它的位置复制可选参数),但我很好奇是否有其他解释,或者是否有更好的解决方案。