在线咨询
eetop公众号 创芯大讲堂 创芯人才网
切换到宽版

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 769|回复: 8

[求助] 二维数组怎么写求和约束

[复制链接]
发表于 2023-10-13 16:12:23 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

x
请问怎么给二维数组写求和约束?我这样写报错sum with cannot be resolved
module demo;
class test;
rand int rate[4][40];
int a,b;
constraint rate_cfg {
foreach(rate[i,j]) {  
  rate[i][j] dist {10:=1,25:=1,40:=1,50:=2,100:=1,200:=1,400:=1};
  rate[i][0] == 50;
  rate[i][39] == 50;

  rate[i][2] > 0;
  rate[i][2] < 39;
  rate[i][j] > 0;
  rate[i][j] <= 50;
  a == rate[i][2].sum with(item.index);
  b == rate[i][j].sum with(int'(item.index));
  a+b <= 4000;
}
}
endclass
endmodule

发表于 2023-10-13 20:38:50 | 显示全部楼层
我就一个问题:谁教你可以在constraint的{}里面调用function的。。。
发表于 2023-11-6 14:29:48 | 显示全部楼层
int a, b;改为rand int a,b;试试
另外,你的这个约束太复杂了
发表于 2023-11-6 17:42:54 | 显示全部楼层


飞翔的马甲 发表于 2023-11-6 14:29
int a, b;改为rand int a,b;试试
另外,你的这个约束太复杂了


确实够复杂的,不知改了后效果如何?
发表于 2023-11-7 10:54:11 | 显示全部楼层


xiaofei_heu 发表于 2023-11-6 17:42
确实够复杂的,不知改了后效果如何?


因为你原来的a和b是非rand类型的,求解肯定失败的
发表于 2023-11-16 14:03:54 来自手机 | 显示全部楼层


qsh123_123 发表于 2023-10-13 20:38
我就一个问题:谁教你可以在constraint的{}里面调用function的。。。


约束里用内置函数或者系统函数这不是很常见的用法吗
发表于 2023-11-16 18:26:16 | 显示全部楼层


qsh123_123 发表于 2023-10-13 20:38
我就一个问题:谁教你可以在constraint的{}里面调用function的。。。


系统函数就能用啊size()
发表于 2023-11-29 12:12:09 | 显示全部楼层
需要分两次循环,一个foreach不太合适
发表于 2023-11-29 17:30:48 | 显示全部楼层


qsh123_123 发表于 2023-10-13 20:38
我就一个问题:谁教你可以在constraint的{}里面调用function的。。。


可以调function的,仿真器VCS solver 对包含 function 约束的求解_constraints inconsistency failure-CSDN博客
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐 上一条 /1 下一条

小黑屋| 手机版| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-11-16 05:49 , Processed in 0.021451 second(s), 6 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表