参考资料

(1) https://blog.csdn.net/moon9999/article/details/104207565

1.for循环+fork...join_none

注1: for循环+fork...join_none基本知识点详见sv绿皮书,该文简单介绍不同仿真工具对于该知识点的解读以及怎么处理满足使用需求;

(1) vcs对于for循环+fork...join_none的解读;

task automatic show(int i);
#10;
$display("i=%0d",i);
endtask initial begin
for(int i=0; i<3; i++) begin
automatic int j=i;
fork
show(.i(j));
join_none
end
#30;
$finish;
end

vcs的打印结果为:

i=0
i=1
i=2

(2) cadence对于for循环+fork...join_none的解读;

cadence的打印结果为:

i=2
i=1
i=0

2.怎么处理for循环+fork...join_none进程,使得仿真结果满足需求,比如要求打印结果都是i=0,i=1,i=2的顺序?

(1) 采用#0延时微调程序;

task automatic show(int i);
#10;
$display("i=%0d",i);
endtask initial begin
for(int i=0; i<3; i++) begin
automatic int j=i;
fork
show(.i(j));
join_none
#0;
end
#30;
$finish;
end

#0延时与for循环+fork join_none的更多相关文章

  1. LINUX 循环fork()

    #include <sys/types.h> #include <unistd.h> int main() {            for(int i = 0; i < ...

  2. linux for循环 fork() 产生子进程

    #include <sys/types.h> #include <unistd.h> #include<stdio.h> int main() { for(int ...

  3. Swift - 3.0 去掉 C 风格循环

    Swift 3.0 版本去掉了沿用已久的 C 风格循环语法, 又是向现代开发语言的一次迈进, 咱们就来看看没了 C 风格循环我们还有什么选择 C 风格循环 关于 C 风格循环, 不我们过多介绍了, 就 ...

  4. 自己从0开始学习Unity的笔记 VI (C#的for循环练习)

    最近学到了for循环,我觉得其实看情况吧,和while挺像的,不过适合于累加或者累减这类的,for循环要更好用一点 for循环首先格式是 ; i < length; i++) { } 意思很简单 ...

  5. [转帖]Linux下fork函数及pthread函数的总结

    Linux下fork函数及pthread函数的总结 https://blog.csdn.net/wangdd_199326/article/details/76180514 fork Linux多进程 ...

  6. Linux C 中 fork() 函数详解

    一.fork入门知识 一个进程,包括代码.数据和分配给进程的资源.fork() 函数通过系统调用创建一个与原来进程几乎完全相同的进程,也就是两个进程可以做完全相同的事,但如果初始参数或者传入的变量不同 ...

  7. Linux中fork的秘密

    linux中fork()函数详解         一.fork入门知识 一个进程,包括代码.数据和分配给进程的资源.fork()函数通过系统调用创建一个与原来进程几乎完全相同的进程,也就是两个进程可以 ...

  8. Fork函数初识

    fork函数用于创建子进程,典型的调用一次,返回两次的函数.其中调用进程返回子进程的PID,而子进程则返回0.但是两个进程的执行顺序是不定的. fork函数调用完成以后父进程的虚拟存储空间被拷贝给了子 ...

  9. fork与vfork

    先看一个fork的例子: ; int main(void) { int var, pid; ; ) { printf("vfork error"); exit(-); } ) { ...

  10. fork()函数详解

    原文链接:http://blog.csdn.net/jason314/article/details/5640969  一.fork入门知识 一个进程,包括代码.数据和分配给进程的资源.fork()函 ...

随机推荐

  1. 提取show config命令结果

    import re import os # 从命令收集日志文件中,提取show config命令结果. file_list = os.listdir(os.getcwd()) dirname = os ...

  2. 《爆肝整理》保姆级系列教程-玩转Charles抓包神器教程(8)-Charles如何进行断点调试

    1.简介 Charles和Fiddler一样也有个强大的功能,可以修改发送到服务器的数据包,但是修改前需要拦截,即设置断点.设置断点后,开始拦截接下来所有网页,直到取消断点.这个功能可以在数据包发送之 ...

  3. cximage菜单(Mirror)

    // ID_CXIMAGE_MIRROR 文件:CxImage\demo\demoDoc.cpp 菜单项:cximage->Mirror ON_COMMAND(ID_CXIMAGE_MIRROR ...

  4. 浏览器调试工具devtool

    视频网址 先打开devtool,再打开命令菜单.可以用screenshot来截屏 $0:先在element点击元素,再在控制台输入$0,这个$0代表element中选中的DOM元素. $1,$2... ...

  5. 图形学101 3 transform

    2d中都可以写成xy 与矩阵乘以 xy的关系 齐次坐标

  6. elasticsearch相关概念及常用操作汇总

    背景 我本来是想把我的写的es的平时总结dsl发出来的,但是我发现只搞那个意义大不.干脆多写点吧. 索引的结构化和非结构 我们经常用数据库,当然会经常用到索引. 然后从索引的维度去分析,系统分为结构化 ...

  7. JavaSE总结(2)

    控制语句idea.方法重载控制语句1.顺序结构从上到下从左到右依次执行2.判断结构    a.if(判断表达式){        语句体;    }    b.if(判断表达式){        语句 ...

  8. python ddt file_data

    # -*- coding: utf-8 -*-"""------------------------------------------------- File Name ...

  9. N63050 第十二周运维作业 ansible常用模块介绍未完成

    就业和全程班本周学习内容: 二十三.Mysql数据库四 1.MySQL主从复制实现和故障排错(50分钟) 2.MySQL级联复制和主主复制架构实现(51分钟) 3.MySQL的半同步复制和复制过滤器( ...

  10. vue-表格拖拽

    1. el-table结合sortable 参考:https://blog.csdn.net/weixin_42460570/article/details/125765599?ops_request ...