Commit ec313d3
committed
[Moore][Sim][SV] Add \$strobe[boh] lowering via sim.defer
Implement the SV `\$strobe[boh]`system tasks.
- Add `moore.builtin.strobe` op in the Moore dialect to represent `$strobe[boh]
- Add `sim.defer`op in the Sim dialect: a procedural region who schedules its body in the postponed region. Underlying primitive for `$strobe`, `$fstrobe`, `$monitor`, and VHDL postponed processes.
- Add `StrobeBIOpConverion` in MooreTocore lowering.
- Add `sv.strobe` op to SV dialect, analogous to `sv.write` and wire it in SVVisitors.h and ExportVerilog to emit `$strove(...)`
- Extend `lowerPrintFormattedProcToSV`in SimToSV to detect `sim.proc.print` inside `sim.defer`, and emit `sv.strobe`.
- Add tests for each stage of the pipeline.1 parent 3e54636 commit ec313d3
12 files changed
Lines changed: 199 additions & 3 deletions
File tree
- include/circt/Dialect
- Moore
- SV
- Sim
- lib/Conversion
- ExportVerilog
- ImportVerilog
- MooreToCore
- SimToSV
- test/Conversion
- ExportVerilog
- ImportVerilog
- MooreToCore
- SimToSV
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
3039 | 3039 | | |
3040 | 3040 | | |
3041 | 3041 | | |
| 3042 | + | |
| 3043 | + | |
| 3044 | + | |
| 3045 | + | |
| 3046 | + | |
| 3047 | + | |
| 3048 | + | |
| 3049 | + | |
| 3050 | + | |
| 3051 | + | |
| 3052 | + | |
| 3053 | + | |
| 3054 | + | |
| 3055 | + | |
| 3056 | + | |
| 3057 | + | |
| 3058 | + | |
3042 | 3059 | | |
3043 | 3060 | | |
3044 | 3061 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
528 | 528 | | |
529 | 529 | | |
530 | 530 | | |
| 531 | + | |
| 532 | + | |
| 533 | + | |
| 534 | + | |
| 535 | + | |
| 536 | + | |
| 537 | + | |
| 538 | + | |
| 539 | + | |
| 540 | + | |
| 541 | + | |
531 | 542 | | |
532 | 543 | | |
533 | 544 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
40 | 40 | | |
41 | 41 | | |
42 | 42 | | |
43 | | - | |
| 43 | + | |
44 | 44 | | |
45 | 45 | | |
46 | 46 | | |
| |||
137 | 137 | | |
138 | 138 | | |
139 | 139 | | |
| 140 | + | |
140 | 141 | | |
141 | 142 | | |
142 | 143 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1212 | 1212 | | |
1213 | 1213 | | |
1214 | 1214 | | |
| 1215 | + | |
| 1216 | + | |
| 1217 | + | |
| 1218 | + | |
| 1219 | + | |
| 1220 | + | |
| 1221 | + | |
| 1222 | + | |
| 1223 | + | |
| 1224 | + | |
| 1225 | + | |
| 1226 | + | |
| 1227 | + | |
| 1228 | + | |
1215 | 1229 | | |
1216 | 1230 | | |
1217 | 1231 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
4113 | 4113 | | |
4114 | 4114 | | |
4115 | 4115 | | |
| 4116 | + | |
4116 | 4117 | | |
4117 | 4118 | | |
4118 | 4119 | | |
| |||
4682 | 4683 | | |
4683 | 4684 | | |
4684 | 4685 | | |
| 4686 | + | |
| 4687 | + | |
| 4688 | + | |
| 4689 | + | |
| 4690 | + | |
| 4691 | + | |
4685 | 4692 | | |
4686 | 4693 | | |
4687 | 4694 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1006 | 1006 | | |
1007 | 1007 | | |
1008 | 1008 | | |
1009 | | - | |
| 1009 | + | |
1010 | 1010 | | |
1011 | 1011 | | |
1012 | 1012 | | |
1013 | 1013 | | |
| 1014 | + | |
1014 | 1015 | | |
1015 | 1016 | | |
1016 | 1017 | | |
| |||
1082 | 1083 | | |
1083 | 1084 | | |
1084 | 1085 | | |
| 1086 | + | |
| 1087 | + | |
| 1088 | + | |
| 1089 | + | |
| 1090 | + | |
| 1091 | + | |
| 1092 | + | |
| 1093 | + | |
| 1094 | + | |
| 1095 | + | |
| 1096 | + | |
| 1097 | + | |
| 1098 | + | |
| 1099 | + | |
| 1100 | + | |
| 1101 | + | |
| 1102 | + | |
| 1103 | + | |
| 1104 | + | |
1085 | 1105 | | |
1086 | 1106 | | |
1087 | 1107 | | |
| |||
1116 | 1136 | | |
1117 | 1137 | | |
1118 | 1138 | | |
| 1139 | + | |
| 1140 | + | |
| 1141 | + | |
| 1142 | + | |
| 1143 | + | |
| 1144 | + | |
| 1145 | + | |
| 1146 | + | |
| 1147 | + | |
| 1148 | + | |
| 1149 | + | |
1119 | 1150 | | |
1120 | 1151 | | |
1121 | 1152 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
2966 | 2966 | | |
2967 | 2967 | | |
2968 | 2968 | | |
| 2969 | + | |
| 2970 | + | |
| 2971 | + | |
| 2972 | + | |
| 2973 | + | |
| 2974 | + | |
| 2975 | + | |
| 2976 | + | |
| 2977 | + | |
| 2978 | + | |
| 2979 | + | |
| 2980 | + | |
| 2981 | + | |
| 2982 | + | |
| 2983 | + | |
2969 | 2984 | | |
2970 | 2985 | | |
2971 | 2986 | | |
| |||
3575 | 3590 | | |
3576 | 3591 | | |
3577 | 3592 | | |
| 3593 | + | |
3578 | 3594 | | |
3579 | 3595 | | |
3580 | 3596 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
815 | 815 | | |
816 | 816 | | |
817 | 817 | | |
| 818 | + | |
818 | 819 | | |
819 | 820 | | |
820 | 821 | | |
| |||
848 | 849 | | |
849 | 850 | | |
850 | 851 | | |
| 852 | + | |
851 | 853 | | |
852 | | - | |
| 854 | + | |
| 855 | + | |
| 856 | + | |
| 857 | + | |
853 | 858 | | |
854 | 859 | | |
855 | 860 | | |
| |||
865 | 870 | | |
866 | 871 | | |
867 | 872 | | |
| 873 | + | |
| 874 | + | |
| 875 | + | |
| 876 | + | |
| 877 | + | |
| 878 | + | |
| 879 | + | |
| 880 | + | |
868 | 881 | | |
869 | 882 | | |
870 | 883 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1998 | 1998 | | |
1999 | 1999 | | |
2000 | 2000 | | |
| 2001 | + | |
| 2002 | + | |
| 2003 | + | |
| 2004 | + | |
| 2005 | + | |
| 2006 | + | |
| 2007 | + | |
| 2008 | + | |
| 2009 | + | |
| 2010 | + | |
| 2011 | + | |
| 2012 | + | |
| 2013 | + | |
| 2014 | + | |
| 2015 | + | |
| 2016 | + | |
| 2017 | + | |
2001 | 2018 | | |
2002 | 2019 | | |
2003 | 2020 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
846 | 846 | | |
847 | 847 | | |
848 | 848 | | |
| 849 | + | |
| 850 | + | |
| 851 | + | |
| 852 | + | |
| 853 | + | |
| 854 | + | |
| 855 | + | |
| 856 | + | |
| 857 | + | |
| 858 | + | |
| 859 | + | |
| 860 | + | |
| 861 | + | |
| 862 | + | |
| 863 | + | |
| 864 | + | |
| 865 | + | |
| 866 | + | |
| 867 | + | |
| 868 | + | |
| 869 | + | |
| 870 | + | |
| 871 | + | |
| 872 | + | |
| 873 | + | |
| 874 | + | |
| 875 | + | |
| 876 | + | |
| 877 | + | |
| 878 | + | |
| 879 | + | |
| 880 | + | |
| 881 | + | |
| 882 | + | |
| 883 | + | |
| 884 | + | |
| 885 | + | |
| 886 | + | |
| 887 | + | |
0 commit comments