-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathfinal_out.vvp
1288 lines (1288 loc) · 71.2 KB
/
final_out.vvp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
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
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
#! /usr/local/Cellar/icarus-verilog/12.0/bin/vvp
:ivl_version "12.0 (stable)";
:ivl_delay_selection "TYPICAL";
:vpi_time_precision + 0;
:vpi_module "/usr/local/Cellar/icarus-verilog/12.0/lib/ivl/system.vpi";
:vpi_module "/usr/local/Cellar/icarus-verilog/12.0/lib/ivl/vhdl_sys.vpi";
:vpi_module "/usr/local/Cellar/icarus-verilog/12.0/lib/ivl/vhdl_textio.vpi";
:vpi_module "/usr/local/Cellar/icarus-verilog/12.0/lib/ivl/v2005_math.vpi";
:vpi_module "/usr/local/Cellar/icarus-verilog/12.0/lib/ivl/va_math.vpi";
S_0x7f83c2f078d0 .scope module, "tb" "tb" 2 1;
.timescale 0 0;
v0x7f83c2f50790_0 .var "clk", 0 0;
v0x7f83c2f50820_0 .var "rst", 0 0;
S_0x7f83c2f26d60 .scope module, "dut" "Pipeline_top" 2 23, 3 20 0, S_0x7f83c2f078d0;
.timescale 0 0;
.port_info 0 /INPUT 1 "clk";
.port_info 1 /INPUT 1 "rst";
v0x7f83c2f4ed70_0 .net "ALUControlE", 2 0, v0x7f83c2f41230_0; 1 drivers
v0x7f83c2f4ee00_0 .net "ALUSrcE", 0 0, v0x7f83c2f41420_0; 1 drivers
v0x7f83c2f4ee90_0 .net "ALU_ResultM", 31 0, v0x7f83c2f473a0_0; 1 drivers
v0x7f83c2f4ef20_0 .net "ALU_ResultW", 31 0, v0x7f83c2f4c750_0; 1 drivers
v0x7f83c2f4efb0_0 .net "BranchE", 0 0, v0x7f83c2f41650_0; 1 drivers
v0x7f83c2f4f080_0 .net "Imm_Ext_E", 31 0, v0x7f83c2f41930_0; 1 drivers
v0x7f83c2f4f190_0 .net "InstrD", 31 0, L_0x7f83c2f50f20; 1 drivers
v0x7f83c2f4f220_0 .net "JumpE", 0 0, v0x7f83c2f41b90_0; 1 drivers
v0x7f83c2f4f2b0_0 .net "MemWriteE", 0 0, L_0x7f83c2f59040; 1 drivers
v0x7f83c2f4f3c0_0 .net "MemWriteM", 0 0, L_0x7f83c2f5cb20; 1 drivers
v0x7f83c2f4f450_0 .net "PCD", 31 0, L_0x7f83c2f51150; 1 drivers
v0x7f83c2f4f520_0 .net "PCE", 31 0, v0x7f83c2f42040_0; 1 drivers
v0x7f83c2f4f5b0_0 .net "PCPlus4D", 31 0, L_0x7f83c2f51360; 1 drivers
v0x7f83c2f4f680_0 .net "PCPlus4E", 31 0, L_0x7f83c2f597d0; 1 drivers
v0x7f83c2f4f750_0 .net "PCPlus4M", 31 0, L_0x7f83c2f5ccf0; 1 drivers
v0x7f83c2f4f820_0 .net "PCPlus4W", 31 0, v0x7f83c2f4ca10_0; 1 drivers
v0x7f83c2f4f8b0_0 .net "PCSrcE", 0 0, L_0x7f83c2f5c9c0; 1 drivers
v0x7f83c2f4fa40_0 .net "PCTargetE", 31 0, L_0x7f83c2f5c830; 1 drivers
v0x7f83c2f4fad0_0 .net "RD1_E", 31 0, v0x7f83c2f424c0_0; 1 drivers
v0x7f83c2f4fb60_0 .net "RD2_E", 31 0, v0x7f83c2f426d0_0; 1 drivers
v0x7f83c2f4fbf0_0 .net "RDW", 4 0, L_0x7f83c2f5d210; 1 drivers
v0x7f83c2f4fc80_0 .net "RD_E", 4 0, L_0x7f83c2f59690; 1 drivers
v0x7f83c2f4fd10_0 .net "RD_M", 4 0, L_0x7f83c2f5cc80; 1 drivers
v0x7f83c2f4fde0_0 .net "ReadDataW", 31 0, v0x7f83c2f4ce50_0; 1 drivers
v0x7f83c2f4fe70_0 .net "RegWriteE", 0 0, L_0x7f83c2f58f60; 1 drivers
v0x7f83c2f4ff40_0 .net "RegWriteM", 0 0, L_0x7f83c2f5cab0; 1 drivers
v0x7f83c2f50010_0 .net "RegWriteW", 0 0, L_0x7f83c2f5d0f0; 1 drivers
v0x7f83c2f500a0_0 .net "ResultSrcE", 1 0, L_0x7f83c2f58fd0; 1 drivers
v0x7f83c2f50170_0 .net "ResultSrcM", 1 0, L_0x7f83c2f5cc10; 1 drivers
o0x7f83c3b47ca8 .functor BUFZ 2, C4<zz>; HiZ drive
v0x7f83c2f50240_0 .net "ResultSrcW", 1 0, o0x7f83c3b47ca8; 0 drivers
v0x7f83c2f502d0_0 .net "ResultW", 31 0, L_0x7f83c2f5d870; 1 drivers
v0x7f83c2f503e0_0 .net "WriteDataM", 31 0, L_0x7f83c2f5cd60; 1 drivers
v0x7f83c2f50470_0 .net "clk", 0 0, v0x7f83c2f50790_0; 1 drivers
v0x7f83c2f50700_0 .net "rst", 0 0, v0x7f83c2f50820_0; 1 drivers
S_0x7f83c2f14220 .scope module, "Decode" "decode_cycle" 3 48, 4 5 0, S_0x7f83c2f26d60;
.timescale 0 0;
.port_info 0 /INPUT 1 "clk";
.port_info 1 /INPUT 1 "rst";
.port_info 2 /INPUT 32 "InstrD";
.port_info 3 /INPUT 32 "PCD";
.port_info 4 /INPUT 32 "PCPlus4D";
.port_info 5 /INPUT 5 "RDW";
.port_info 6 /INPUT 32 "ResultW";
.port_info 7 /OUTPUT 1 "RegWriteE";
.port_info 8 /OUTPUT 2 "ResultSrcE";
.port_info 9 /OUTPUT 1 "MemWriteE";
.port_info 10 /OUTPUT 1 "JumpE";
.port_info 11 /OUTPUT 1 "BranchE";
.port_info 12 /OUTPUT 3 "ALUControlE";
.port_info 13 /OUTPUT 1 "ALUSrcE";
.port_info 14 /OUTPUT 32 "RD1E";
.port_info 15 /OUTPUT 32 "RD2E";
.port_info 16 /OUTPUT 32 "PCE";
.port_info 17 /OUTPUT 5 "RdE";
.port_info 18 /OUTPUT 32 "Imm_ExtE";
.port_info 19 /OUTPUT 32 "PCPlus4E";
L_0x7f83c2f58f60 .functor BUFZ 1, v0x7f83c2f42b60_0, C4<0>, C4<0>, C4<0>;
L_0x7f83c2f58fd0 .functor BUFZ 2, v0x7f83c2f42df0_0, C4<00>, C4<00>, C4<00>;
L_0x7f83c2f59040 .functor BUFZ 1, v0x7f83c2f41e90_0, C4<0>, C4<0>, C4<0>;
L_0x7f83c2f59690 .functor BUFZ 5, v0x7f83c2f41ce0_0, C4<00000>, C4<00000>, C4<00000>;
L_0x7f83c2f597d0 .functor BUFZ 32, v0x7f83c2f42210_0, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>;
v0x7f83c2f411a0_0 .net "ALUControlD", 2 0, L_0x7f83c2f57220; 1 drivers
v0x7f83c2f41230_0 .var "ALUControlD_R", 2 0;
v0x7f83c2f412c0_0 .net "ALUControlE", 2 0, v0x7f83c2f41230_0; alias, 1 drivers
v0x7f83c2f41350_0 .net "ALUSrcD", 0 0, L_0x7f83c2f53210; 1 drivers
v0x7f83c2f41420_0 .var "ALUSrcD_R", 0 0;
v0x7f83c2f414f0_0 .net "ALUSrcE", 0 0, v0x7f83c2f41420_0; alias, 1 drivers
v0x7f83c2f41580_0 .net "BranchD", 0 0, L_0x7f83c2f54200; 1 drivers
v0x7f83c2f41650_0 .var "BranchD_R", 0 0;
v0x7f83c2f416e0_0 .net "BranchE", 0 0, v0x7f83c2f41650_0; alias, 1 drivers
v0x7f83c2f417f0_0 .net "ImmSrcD", 1 0, L_0x7f83c2f52980; 1 drivers
v0x7f83c2f41880_0 .net "Imm_ExtD", 31 0, L_0x7f83c2f58100; 1 drivers
v0x7f83c2f41930_0 .var "Imm_ExtD_R", 31 0;
v0x7f83c2f419c0_0 .net "Imm_ExtE", 31 0, v0x7f83c2f41930_0; alias, 1 drivers
v0x7f83c2f41a50_0 .net "InstrD", 31 0, L_0x7f83c2f50f20; alias, 1 drivers
o0x7f83c3b43fb8 .functor BUFZ 1, C4<z>; HiZ drive
v0x7f83c2f41ae0_0 .net "JumpD", 0 0, o0x7f83c3b43fb8; 0 drivers
v0x7f83c2f41b90_0 .var "JumpD_R", 0 0;
v0x7f83c2f41c20_0 .net "JumpE", 0 0, v0x7f83c2f41b90_0; alias, 1 drivers
v0x7f83c2f41dc0_0 .net "MemWriteD", 0 0, L_0x7f83c2f53110; 1 drivers
v0x7f83c2f41e90_0 .var "MemWriteD_R", 0 0;
v0x7f83c2f41f20_0 .net "MemWriteE", 0 0, L_0x7f83c2f59040; alias, 1 drivers
v0x7f83c2f41fb0_0 .net "PCD", 31 0, L_0x7f83c2f51150; alias, 1 drivers
v0x7f83c2f42040_0 .var "PCD_in_R", 31 0;
v0x7f83c2f420d0_0 .net "PCE", 31 0, v0x7f83c2f42040_0; alias, 1 drivers
v0x7f83c2f42160_0 .net "PCPlus4D", 31 0, L_0x7f83c2f51360; alias, 1 drivers
v0x7f83c2f42210_0 .var "PCPlus4D_R", 31 0;
v0x7f83c2f422c0_0 .net "PCPlus4E", 31 0, L_0x7f83c2f597d0; alias, 1 drivers
v0x7f83c2f42370_0 .net "RD1E", 31 0, v0x7f83c2f424c0_0; alias, 1 drivers
v0x7f83c2f42420_0 .net "RD1_D", 31 0, L_0x7f83c2f58610; 1 drivers
v0x7f83c2f424c0_0 .var "RD1_D_R", 31 0;
v0x7f83c2f42560_0 .net "RD2E", 31 0, v0x7f83c2f426d0_0; alias, 1 drivers
v0x7f83c2f42610_0 .net "RD2_D", 31 0, L_0x7f83c2f58b40; 1 drivers
v0x7f83c2f426d0_0 .var "RD2_D_R", 31 0;
v0x7f83c2f42770_0 .net "RDW", 4 0, L_0x7f83c2f5d210; alias, 1 drivers
v0x7f83c2f41ce0_0 .var "RdD_R", 4 0;
v0x7f83c2f42a00_0 .net "RdE", 4 0, L_0x7f83c2f59690; alias, 1 drivers
v0x7f83c2f42a90_0 .net "RegWriteD", 0 0, L_0x7f83c2f51c50; 1 drivers
v0x7f83c2f42b60_0 .var "RegWriteD_R", 0 0;
v0x7f83c2f42bf0_0 .net "RegWriteE", 0 0, L_0x7f83c2f58f60; alias, 1 drivers
o0x7f83c3b44318 .functor BUFZ 1, C4<z>; HiZ drive
v0x7f83c2f42c90_0 .net "RegWriteW", 0 0, o0x7f83c3b44318; 0 drivers
v0x7f83c2f42d20_0 .net "ResultSrcD", 1 0, L_0x7f83c2f53f90; 1 drivers
v0x7f83c2f42df0_0 .var "ResultSrcD_R", 1 0;
v0x7f83c2f42ea0_0 .net "ResultSrcE", 1 0, L_0x7f83c2f58fd0; alias, 1 drivers
v0x7f83c2f42f50_0 .net "ResultW", 31 0, L_0x7f83c2f5d870; alias, 1 drivers
v0x7f83c2f42ff0_0 .net "clk", 0 0, v0x7f83c2f50790_0; alias, 1 drivers
v0x7f83c2f430a0_0 .net "rst", 0 0, v0x7f83c2f50820_0; alias, 1 drivers
L_0x7f83c2f573d0 .part L_0x7f83c2f50f20, 0, 7;
L_0x7f83c2f574f0 .part L_0x7f83c2f50f20, 12, 3;
L_0x7f83c2f57590 .part L_0x7f83c2f50f20, 30, 1;
L_0x7f83c2f582c0 .part L_0x7f83c2f50f20, 20, 12;
L_0x7f83c2f58ce0 .part L_0x7f83c2f50f20, 15, 5;
L_0x7f83c2f58ec0 .part L_0x7f83c2f50f20, 20, 5;
S_0x7f83c2f0fad0 .scope module, "control_unit" "Control_Unit_Top" 4 33, 5 18 0, S_0x7f83c2f14220;
.timescale 0 0;
.port_info 0 /INPUT 7 "Op";
.port_info 1 /OUTPUT 1 "RegWrite";
.port_info 2 /OUTPUT 2 "ImmSrc";
.port_info 3 /OUTPUT 1 "ALUSrc";
.port_info 4 /OUTPUT 1 "MemWrite";
.port_info 5 /OUTPUT 2 "ResultSrc";
.port_info 6 /OUTPUT 1 "Branch";
.port_info 7 /INPUT 3 "funct3";
.port_info 8 /INPUT 1 "funct7";
.port_info 9 /OUTPUT 3 "ALUControl";
.port_info 10 /OUTPUT 1 "Jump";
v0x7f83c2f3e1d0_0 .net "ALUControl", 2 0, L_0x7f83c2f57220; alias, 1 drivers
v0x7f83c2f3e260_0 .net "ALUOp", 1 0, L_0x7f83c2f54d30; 1 drivers
v0x7f83c2f3e2f0_0 .net "ALUSrc", 0 0, L_0x7f83c2f53210; alias, 1 drivers
v0x7f83c2f3e380_0 .net "Branch", 0 0, L_0x7f83c2f54200; alias, 1 drivers
v0x7f83c2f3e410_0 .net "ImmSrc", 1 0, L_0x7f83c2f52980; alias, 1 drivers
v0x7f83c2f3e4e0_0 .net "Jump", 0 0, o0x7f83c3b43fb8; alias, 0 drivers
v0x7f83c2f3e570_0 .net "MemWrite", 0 0, L_0x7f83c2f53110; alias, 1 drivers
v0x7f83c2f3e620_0 .net "Op", 6 0, L_0x7f83c2f573d0; 1 drivers
v0x7f83c2f3e6f0_0 .net "RegWrite", 0 0, L_0x7f83c2f51c50; alias, 1 drivers
v0x7f83c2f3e800_0 .net "ResultSrc", 1 0, L_0x7f83c2f53f90; alias, 1 drivers
v0x7f83c2f3e890_0 .net "funct3", 2 0, L_0x7f83c2f574f0; 1 drivers
v0x7f83c2f3e920_0 .net "funct7", 0 0, L_0x7f83c2f57590; 1 drivers
S_0x7f83c2f21490 .scope module, "ALU_Decoder" "ALU_Decoder" 5 39, 6 15 0, S_0x7f83c2f0fad0;
.timescale 0 0;
.port_info 0 /INPUT 2 "ALUOp";
.port_info 1 /INPUT 3 "funct3";
.port_info 2 /INPUT 1 "funct7";
.port_info 3 /INPUT 7 "op";
.port_info 4 /OUTPUT 3 "ALUControl";
L_0x7f83c2f55520 .functor AND 1, L_0x7f83c2f55320, L_0x7f83c2f55400, C4<1>, C4<1>;
L_0x7f83c2f55930 .functor AND 1, L_0x7f83c2f55520, L_0x7f83c2f557d0, C4<1>, C4<1>;
L_0x7f83c2f55a70 .functor AND 1, L_0x7f83c2f53610, L_0x7f83c2f536f0, C4<1>, C4<1>;
L_0x7f83c2f55e40 .functor AND 1, L_0x7f83c2f55a70, L_0x7f83c2f55d20, C4<1>, C4<1>;
L_0x7f83c2f56230 .functor AND 1, L_0x7f83c2f55f30, L_0x7f83c2f56110, C4<1>, C4<1>;
L_0x7f83c2f564e0 .functor AND 1, L_0x7f83c2f562e0, L_0x7f83c2f563e0, C4<1>, C4<1>;
L_0x7f83c2f56820 .functor AND 1, L_0x7f83c2f565f0, L_0x7f83c2f56780, C4<1>, C4<1>;
v0x7f83c2f0f260_0 .net "ALUControl", 2 0, L_0x7f83c2f57220; alias, 1 drivers
v0x7f83c2f37290_0 .net "ALUOp", 1 0, L_0x7f83c2f54d30; alias, 1 drivers
L_0x7f83c3b74010 .functor BUFT 1, C4<00>, C4<0>, C4<0>, C4<0>;
v0x7f83c2f37330_0 .net/2u *"_ivl_0", 1 0, L_0x7f83c3b74010; 1 drivers
L_0x7f83c3b740e8 .functor BUFT 1, C4<001>, C4<0>, C4<0>, C4<0>;
v0x7f83c2f373e0_0 .net/2u *"_ivl_10", 2 0, L_0x7f83c3b740e8; 1 drivers
v0x7f83c2f37490_0 .net *"_ivl_100", 2 0, L_0x7f83c2f56dc0; 1 drivers
v0x7f83c2f37580_0 .net *"_ivl_102", 2 0, L_0x7f83c2f56f20; 1 drivers
v0x7f83c2f37630_0 .net *"_ivl_104", 2 0, L_0x7f83c2f570c0; 1 drivers
L_0x7f83c3b74130 .functor BUFT 1, C4<10>, C4<0>, C4<0>, C4<0>;
v0x7f83c2f376e0_0 .net/2u *"_ivl_12", 1 0, L_0x7f83c3b74130; 1 drivers
v0x7f83c2f37790_0 .net *"_ivl_14", 0 0, L_0x7f83c2f55320; 1 drivers
L_0x7f83c3b74178 .functor BUFT 1, C4<000>, C4<0>, C4<0>, C4<0>;
v0x7f83c2f378a0_0 .net/2u *"_ivl_16", 2 0, L_0x7f83c3b74178; 1 drivers
v0x7f83c2f37940_0 .net *"_ivl_18", 0 0, L_0x7f83c2f55400; 1 drivers
v0x7f83c2f379e0_0 .net *"_ivl_2", 0 0, L_0x7f83c2f551a0; 1 drivers
v0x7f83c2f37a80_0 .net *"_ivl_20", 0 0, L_0x7f83c2f55520; 1 drivers
v0x7f83c2f37b30_0 .net *"_ivl_23", 0 0, L_0x7f83c2f55610; 1 drivers
v0x7f83c2f37be0_0 .net *"_ivl_24", 1 0, L_0x7f83c2f556b0; 1 drivers
L_0x7f83c3b741c0 .functor BUFT 1, C4<11>, C4<0>, C4<0>, C4<0>;
v0x7f83c2f37c90_0 .net/2u *"_ivl_26", 1 0, L_0x7f83c3b741c0; 1 drivers
v0x7f83c2f37d40_0 .net *"_ivl_28", 0 0, L_0x7f83c2f557d0; 1 drivers
v0x7f83c2f37ed0_0 .net *"_ivl_30", 0 0, L_0x7f83c2f55930; 1 drivers
L_0x7f83c3b74208 .functor BUFT 1, C4<001>, C4<0>, C4<0>, C4<0>;
v0x7f83c2f37f60_0 .net/2u *"_ivl_32", 2 0, L_0x7f83c3b74208; 1 drivers
L_0x7f83c3b74250 .functor BUFT 1, C4<10>, C4<0>, C4<0>, C4<0>;
v0x7f83c2f38000_0 .net/2u *"_ivl_34", 1 0, L_0x7f83c3b74250; 1 drivers
v0x7f83c2f380b0_0 .net *"_ivl_36", 0 0, L_0x7f83c2f53610; 1 drivers
L_0x7f83c3b74298 .functor BUFT 1, C4<000>, C4<0>, C4<0>, C4<0>;
v0x7f83c2f38150_0 .net/2u *"_ivl_38", 2 0, L_0x7f83c3b74298; 1 drivers
L_0x7f83c3b74058 .functor BUFT 1, C4<000>, C4<0>, C4<0>, C4<0>;
v0x7f83c2f38200_0 .net/2u *"_ivl_4", 2 0, L_0x7f83c3b74058; 1 drivers
v0x7f83c2f382b0_0 .net *"_ivl_40", 0 0, L_0x7f83c2f536f0; 1 drivers
v0x7f83c2f38350_0 .net *"_ivl_42", 0 0, L_0x7f83c2f55a70; 1 drivers
v0x7f83c2f38400_0 .net *"_ivl_45", 0 0, L_0x7f83c2f55b20; 1 drivers
v0x7f83c2f384b0_0 .net *"_ivl_46", 1 0, L_0x7f83c2f55bc0; 1 drivers
L_0x7f83c3b742e0 .functor BUFT 1, C4<11>, C4<0>, C4<0>, C4<0>;
v0x7f83c2f38560_0 .net/2u *"_ivl_48", 1 0, L_0x7f83c3b742e0; 1 drivers
v0x7f83c2f38610_0 .net *"_ivl_50", 0 0, L_0x7f83c2f55d20; 1 drivers
v0x7f83c2f386b0_0 .net *"_ivl_52", 0 0, L_0x7f83c2f55e40; 1 drivers
L_0x7f83c3b74328 .functor BUFT 1, C4<000>, C4<0>, C4<0>, C4<0>;
v0x7f83c2f38760_0 .net/2u *"_ivl_54", 2 0, L_0x7f83c3b74328; 1 drivers
L_0x7f83c3b74370 .functor BUFT 1, C4<10>, C4<0>, C4<0>, C4<0>;
v0x7f83c2f38810_0 .net/2u *"_ivl_56", 1 0, L_0x7f83c3b74370; 1 drivers
v0x7f83c2f388c0_0 .net *"_ivl_58", 0 0, L_0x7f83c2f55f30; 1 drivers
L_0x7f83c3b740a0 .functor BUFT 1, C4<01>, C4<0>, C4<0>, C4<0>;
v0x7f83c2f37de0_0 .net/2u *"_ivl_6", 1 0, L_0x7f83c3b740a0; 1 drivers
L_0x7f83c3b743b8 .functor BUFT 1, C4<010>, C4<0>, C4<0>, C4<0>;
v0x7f83c2f38b50_0 .net/2u *"_ivl_60", 2 0, L_0x7f83c3b743b8; 1 drivers
v0x7f83c2f38be0_0 .net *"_ivl_62", 0 0, L_0x7f83c2f56110; 1 drivers
v0x7f83c2f38c70_0 .net *"_ivl_64", 0 0, L_0x7f83c2f56230; 1 drivers
L_0x7f83c3b74400 .functor BUFT 1, C4<101>, C4<0>, C4<0>, C4<0>;
v0x7f83c2f38d10_0 .net/2u *"_ivl_66", 2 0, L_0x7f83c3b74400; 1 drivers
L_0x7f83c3b74448 .functor BUFT 1, C4<10>, C4<0>, C4<0>, C4<0>;
v0x7f83c2f38dc0_0 .net/2u *"_ivl_68", 1 0, L_0x7f83c3b74448; 1 drivers
v0x7f83c2f38e70_0 .net *"_ivl_70", 0 0, L_0x7f83c2f562e0; 1 drivers
L_0x7f83c3b74490 .functor BUFT 1, C4<110>, C4<0>, C4<0>, C4<0>;
v0x7f83c2f38f10_0 .net/2u *"_ivl_72", 2 0, L_0x7f83c3b74490; 1 drivers
v0x7f83c2f38fc0_0 .net *"_ivl_74", 0 0, L_0x7f83c2f563e0; 1 drivers
v0x7f83c2f39060_0 .net *"_ivl_76", 0 0, L_0x7f83c2f564e0; 1 drivers
L_0x7f83c3b744d8 .functor BUFT 1, C4<011>, C4<0>, C4<0>, C4<0>;
v0x7f83c2f39110_0 .net/2u *"_ivl_78", 2 0, L_0x7f83c3b744d8; 1 drivers
v0x7f83c2f391c0_0 .net *"_ivl_8", 0 0, L_0x7f83c2f55240; 1 drivers
L_0x7f83c3b74520 .functor BUFT 1, C4<10>, C4<0>, C4<0>, C4<0>;
v0x7f83c2f39260_0 .net/2u *"_ivl_80", 1 0, L_0x7f83c3b74520; 1 drivers
v0x7f83c2f39310_0 .net *"_ivl_82", 0 0, L_0x7f83c2f565f0; 1 drivers
L_0x7f83c3b74568 .functor BUFT 1, C4<111>, C4<0>, C4<0>, C4<0>;
v0x7f83c2f393b0_0 .net/2u *"_ivl_84", 2 0, L_0x7f83c3b74568; 1 drivers
v0x7f83c2f39460_0 .net *"_ivl_86", 0 0, L_0x7f83c2f56780; 1 drivers
v0x7f83c2f39500_0 .net *"_ivl_88", 0 0, L_0x7f83c2f56820; 1 drivers
L_0x7f83c3b745b0 .functor BUFT 1, C4<010>, C4<0>, C4<0>, C4<0>;
v0x7f83c2f395b0_0 .net/2u *"_ivl_90", 2 0, L_0x7f83c3b745b0; 1 drivers
L_0x7f83c3b745f8 .functor BUFT 1, C4<000>, C4<0>, C4<0>, C4<0>;
v0x7f83c2f39660_0 .net/2u *"_ivl_92", 2 0, L_0x7f83c3b745f8; 1 drivers
v0x7f83c2f39710_0 .net *"_ivl_94", 2 0, L_0x7f83c2f56950; 1 drivers
v0x7f83c2f397c0_0 .net *"_ivl_96", 2 0, L_0x7f83c2f56ad0; 1 drivers
v0x7f83c2f39870_0 .net *"_ivl_98", 2 0, L_0x7f83c2f56c30; 1 drivers
v0x7f83c2f39920_0 .net "funct3", 2 0, L_0x7f83c2f574f0; alias, 1 drivers
v0x7f83c2f399d0_0 .net "funct7", 0 0, L_0x7f83c2f57590; alias, 1 drivers
v0x7f83c2f39a70_0 .net "op", 6 0, L_0x7f83c2f573d0; alias, 1 drivers
L_0x7f83c2f551a0 .cmp/eq 2, L_0x7f83c2f54d30, L_0x7f83c3b74010;
L_0x7f83c2f55240 .cmp/eq 2, L_0x7f83c2f54d30, L_0x7f83c3b740a0;
L_0x7f83c2f55320 .cmp/eq 2, L_0x7f83c2f54d30, L_0x7f83c3b74130;
L_0x7f83c2f55400 .cmp/eq 3, L_0x7f83c2f574f0, L_0x7f83c3b74178;
L_0x7f83c2f55610 .part L_0x7f83c2f573d0, 5, 1;
L_0x7f83c2f556b0 .concat [ 1 1 0 0], L_0x7f83c2f57590, L_0x7f83c2f55610;
L_0x7f83c2f557d0 .cmp/eq 2, L_0x7f83c2f556b0, L_0x7f83c3b741c0;
L_0x7f83c2f53610 .cmp/eq 2, L_0x7f83c2f54d30, L_0x7f83c3b74250;
L_0x7f83c2f536f0 .cmp/eq 3, L_0x7f83c2f574f0, L_0x7f83c3b74298;
L_0x7f83c2f55b20 .part L_0x7f83c2f573d0, 5, 1;
L_0x7f83c2f55bc0 .concat [ 1 1 0 0], L_0x7f83c2f57590, L_0x7f83c2f55b20;
L_0x7f83c2f55d20 .cmp/ne 2, L_0x7f83c2f55bc0, L_0x7f83c3b742e0;
L_0x7f83c2f55f30 .cmp/eq 2, L_0x7f83c2f54d30, L_0x7f83c3b74370;
L_0x7f83c2f56110 .cmp/eq 3, L_0x7f83c2f574f0, L_0x7f83c3b743b8;
L_0x7f83c2f562e0 .cmp/eq 2, L_0x7f83c2f54d30, L_0x7f83c3b74448;
L_0x7f83c2f563e0 .cmp/eq 3, L_0x7f83c2f574f0, L_0x7f83c3b74490;
L_0x7f83c2f565f0 .cmp/eq 2, L_0x7f83c2f54d30, L_0x7f83c3b74520;
L_0x7f83c2f56780 .cmp/eq 3, L_0x7f83c2f574f0, L_0x7f83c3b74568;
L_0x7f83c2f56950 .functor MUXZ 3, L_0x7f83c3b745f8, L_0x7f83c3b745b0, L_0x7f83c2f56820, C4<>;
L_0x7f83c2f56ad0 .functor MUXZ 3, L_0x7f83c2f56950, L_0x7f83c3b744d8, L_0x7f83c2f564e0, C4<>;
L_0x7f83c2f56c30 .functor MUXZ 3, L_0x7f83c2f56ad0, L_0x7f83c3b74400, L_0x7f83c2f56230, C4<>;
L_0x7f83c2f56dc0 .functor MUXZ 3, L_0x7f83c2f56c30, L_0x7f83c3b74328, L_0x7f83c2f55e40, C4<>;
L_0x7f83c2f56f20 .functor MUXZ 3, L_0x7f83c2f56dc0, L_0x7f83c3b74208, L_0x7f83c2f55930, C4<>;
L_0x7f83c2f570c0 .functor MUXZ 3, L_0x7f83c2f56f20, L_0x7f83c3b740e8, L_0x7f83c2f55240, C4<>;
L_0x7f83c2f57220 .functor MUXZ 3, L_0x7f83c2f570c0, L_0x7f83c3b74058, L_0x7f83c2f551a0, C4<>;
S_0x7f83c2f39ba0 .scope module, "Main_Decoder" "Main_Decoder" 5 28, 7 15 0, S_0x7f83c2f0fad0;
.timescale 0 0;
.port_info 0 /INPUT 7 "Op";
.port_info 1 /OUTPUT 1 "RegWrite";
.port_info 2 /OUTPUT 2 "ImmSrc";
.port_info 3 /OUTPUT 1 "ALUSrc";
.port_info 4 /OUTPUT 1 "MemWrite";
.port_info 5 /OUTPUT 2 "ResultSrc";
.port_info 6 /OUTPUT 1 "Branch";
.port_info 7 /OUTPUT 2 "ALUOp";
L_0x7f83c2f51720 .functor OR 1, L_0x7f83c2f51520, L_0x7f83c2f515e0, C4<0>, C4<0>;
L_0x7f83c2f51910 .functor OR 1, L_0x7f83c2f51720, L_0x7f83c2f51830, C4<0>, C4<0>;
L_0x7f83c2f51b20 .functor OR 1, L_0x7f83c2f51910, L_0x7f83c2f51a40, C4<0>, C4<0>;
L_0x7f83c2f520a0 .functor OR 1, L_0x7f83c2f51de0, L_0x7f83c2f51ec0, C4<0>, C4<0>;
L_0x7f83c2f52ca0 .functor OR 1, L_0x7f83c2f52ae0, L_0x7f83c2f52c00, C4<0>, C4<0>;
L_0x7f83c2f52f00 .functor OR 1, L_0x7f83c2f52ca0, L_0x7f83c2f52d90, C4<0>, C4<0>;
L_0x7f83c2f53990 .functor OR 1, L_0x7f83c2f53810, L_0x7f83c2f538b0, C4<0>, C4<0>;
L_0x7f83c2f542a0 .functor OR 1, L_0x7f83c2f543e0, L_0x7f83c2f54480, C4<0>, C4<0>;
L_0x7f83c2f54560 .functor OR 1, L_0x7f83c2f54670, L_0x7f83c2f54750, C4<0>, C4<0>;
v0x7f83c2f39e10_0 .net "ALUOp", 1 0, L_0x7f83c2f54d30; alias, 1 drivers
v0x7f83c2f39ea0_0 .net "ALUSrc", 0 0, L_0x7f83c2f53210; alias, 1 drivers
v0x7f83c2f39f30_0 .net "Branch", 0 0, L_0x7f83c2f54200; alias, 1 drivers
v0x7f83c2f39fe0_0 .net "ImmSrc", 1 0, L_0x7f83c2f52980; alias, 1 drivers
v0x7f83c2f3a070_0 .net "Jump", 0 0, L_0x7f83c2f54fb0; 1 drivers
v0x7f83c2f3a150_0 .net "MemWrite", 0 0, L_0x7f83c2f53110; alias, 1 drivers
v0x7f83c2f3a1f0_0 .net "Op", 6 0, L_0x7f83c2f573d0; alias, 1 drivers
v0x7f83c2f3a290_0 .net "RegWrite", 0 0, L_0x7f83c2f51c50; alias, 1 drivers
v0x7f83c2f3a320_0 .net "ResultSrc", 1 0, L_0x7f83c2f53f90; alias, 1 drivers
L_0x7f83c3b73248 .functor BUFT 1, C4<0000011>, C4<0>, C4<0>, C4<0>;
v0x7f83c2f3a450_0 .net/2u *"_ivl_0", 6 0, L_0x7f83c3b73248; 1 drivers
L_0x7f83c3b732d8 .functor BUFT 1, C4<0010011>, C4<0>, C4<0>, C4<0>;
v0x7f83c2f3a500_0 .net/2u *"_ivl_10", 6 0, L_0x7f83c3b732d8; 1 drivers
v0x7f83c2f3a5b0_0 .net *"_ivl_100", 0 0, L_0x7f83c2f53370; 1 drivers
L_0x7f83c3b73908 .functor BUFT 1, C4<1>, C4<0>, C4<0>, C4<0>;
v0x7f83c2f3a650_0 .net/2u *"_ivl_102", 0 0, L_0x7f83c3b73908; 1 drivers
L_0x7f83c3b73950 .functor BUFT 1, C4<0>, C4<0>, C4<0>, C4<0>;
v0x7f83c2f3a700_0 .net/2u *"_ivl_104", 0 0, L_0x7f83c3b73950; 1 drivers
L_0x7f83c3b73998 .functor BUFT 1, C4<0110011>, C4<0>, C4<0>, C4<0>;
v0x7f83c2f3a7b0_0 .net/2u *"_ivl_108", 6 0, L_0x7f83c3b73998; 1 drivers
v0x7f83c2f3a860_0 .net *"_ivl_110", 0 0, L_0x7f83c2f53810; 1 drivers
L_0x7f83c3b739e0 .functor BUFT 1, C4<0010011>, C4<0>, C4<0>, C4<0>;
v0x7f83c2f3a900_0 .net/2u *"_ivl_112", 6 0, L_0x7f83c3b739e0; 1 drivers
v0x7f83c2f3aa90_0 .net *"_ivl_114", 0 0, L_0x7f83c2f538b0; 1 drivers
v0x7f83c2f3ab20_0 .net *"_ivl_116", 0 0, L_0x7f83c2f53990; 1 drivers
L_0x7f83c3b73a28 .functor BUFT 1, C4<00>, C4<0>, C4<0>, C4<0>;
v0x7f83c2f3abc0_0 .net/2u *"_ivl_118", 1 0, L_0x7f83c3b73a28; 1 drivers
v0x7f83c2f3ac70_0 .net *"_ivl_12", 0 0, L_0x7f83c2f51830; 1 drivers
L_0x7f83c3b73a70 .functor BUFT 1, C4<0000011>, C4<0>, C4<0>, C4<0>;
v0x7f83c2f3ad10_0 .net/2u *"_ivl_120", 6 0, L_0x7f83c3b73a70; 1 drivers
v0x7f83c2f3adc0_0 .net *"_ivl_122", 0 0, L_0x7f83c2f53ac0; 1 drivers
L_0x7f83c3b73ab8 .functor BUFT 1, C4<01>, C4<0>, C4<0>, C4<0>;
v0x7f83c2f3ae60_0 .net/2u *"_ivl_124", 1 0, L_0x7f83c3b73ab8; 1 drivers
L_0x7f83c3b73b00 .functor BUFT 1, C4<1101111>, C4<0>, C4<0>, C4<0>;
v0x7f83c2f3af10_0 .net/2u *"_ivl_126", 6 0, L_0x7f83c3b73b00; 1 drivers
v0x7f83c2f3afc0_0 .net *"_ivl_128", 0 0, L_0x7f83c2f51fa0; 1 drivers
L_0x7f83c3b73b48 .functor BUFT 1, C4<10>, C4<0>, C4<0>, C4<0>;
v0x7f83c2f3b060_0 .net/2u *"_ivl_130", 1 0, L_0x7f83c3b73b48; 1 drivers
L_0x7f83c3b73b90 .functor BUFT 1, C4<xx>, C4<0>, C4<0>, C4<0>;
v0x7f83c2f3b110_0 .net *"_ivl_132", 1 0, L_0x7f83c3b73b90; 1 drivers
v0x7f83c2f3b1c0_0 .net *"_ivl_134", 1 0, L_0x7f83c2f53cb0; 1 drivers
v0x7f83c2f3b270_0 .net *"_ivl_136", 1 0, L_0x7f83c2f53e30; 1 drivers
v0x7f83c2f3b320_0 .net *"_ivl_14", 0 0, L_0x7f83c2f51910; 1 drivers
L_0x7f83c3b73bd8 .functor BUFT 1, C4<1100011>, C4<0>, C4<0>, C4<0>;
v0x7f83c2f3b3d0_0 .net/2u *"_ivl_140", 6 0, L_0x7f83c3b73bd8; 1 drivers
v0x7f83c2f3b480_0 .net *"_ivl_142", 0 0, L_0x7f83c2f54160; 1 drivers
L_0x7f83c3b73c20 .functor BUFT 1, C4<1>, C4<0>, C4<0>, C4<0>;
v0x7f83c2f3a9a0_0 .net/2u *"_ivl_144", 0 0, L_0x7f83c3b73c20; 1 drivers
L_0x7f83c3b73c68 .functor BUFT 1, C4<0>, C4<0>, C4<0>, C4<0>;
v0x7f83c2f3b710_0 .net/2u *"_ivl_146", 0 0, L_0x7f83c3b73c68; 1 drivers
L_0x7f83c3b73cb0 .functor BUFT 1, C4<0110011>, C4<0>, C4<0>, C4<0>;
v0x7f83c2f3b7a0_0 .net/2u *"_ivl_150", 6 0, L_0x7f83c3b73cb0; 1 drivers
v0x7f83c2f3b830_0 .net *"_ivl_152", 0 0, L_0x7f83c2f543e0; 1 drivers
L_0x7f83c3b73cf8 .functor BUFT 1, C4<0010011>, C4<0>, C4<0>, C4<0>;
v0x7f83c2f3b8d0_0 .net/2u *"_ivl_154", 6 0, L_0x7f83c3b73cf8; 1 drivers
v0x7f83c2f3b980_0 .net *"_ivl_156", 0 0, L_0x7f83c2f54480; 1 drivers
v0x7f83c2f3ba20_0 .net *"_ivl_158", 0 0, L_0x7f83c2f542a0; 1 drivers
L_0x7f83c3b73320 .functor BUFT 1, C4<1101111>, C4<0>, C4<0>, C4<0>;
v0x7f83c2f3bad0_0 .net/2u *"_ivl_16", 6 0, L_0x7f83c3b73320; 1 drivers
L_0x7f83c3b73d40 .functor BUFT 1, C4<10>, C4<0>, C4<0>, C4<0>;
v0x7f83c2f3bb80_0 .net/2u *"_ivl_160", 1 0, L_0x7f83c3b73d40; 1 drivers
L_0x7f83c3b73d88 .functor BUFT 1, C4<0100011>, C4<0>, C4<0>, C4<0>;
v0x7f83c2f3bc30_0 .net/2u *"_ivl_162", 6 0, L_0x7f83c3b73d88; 1 drivers
v0x7f83c2f3bce0_0 .net *"_ivl_164", 0 0, L_0x7f83c2f54670; 1 drivers
L_0x7f83c3b73dd0 .functor BUFT 1, C4<0000011>, C4<0>, C4<0>, C4<0>;
v0x7f83c2f3bd80_0 .net/2u *"_ivl_166", 6 0, L_0x7f83c3b73dd0; 1 drivers
v0x7f83c2f3be30_0 .net *"_ivl_168", 0 0, L_0x7f83c2f54750; 1 drivers
v0x7f83c2f3bed0_0 .net *"_ivl_170", 0 0, L_0x7f83c2f54560; 1 drivers
L_0x7f83c3b73e18 .functor BUFT 1, C4<00>, C4<0>, C4<0>, C4<0>;
v0x7f83c2f3bf80_0 .net/2u *"_ivl_172", 1 0, L_0x7f83c3b73e18; 1 drivers
L_0x7f83c3b73e60 .functor BUFT 1, C4<1100011>, C4<0>, C4<0>, C4<0>;
v0x7f83c2f3c030_0 .net/2u *"_ivl_174", 6 0, L_0x7f83c3b73e60; 1 drivers
v0x7f83c2f3c0e0_0 .net *"_ivl_176", 0 0, L_0x7f83c2f549a0; 1 drivers
L_0x7f83c3b73ea8 .functor BUFT 1, C4<01>, C4<0>, C4<0>, C4<0>;
v0x7f83c2f3c180_0 .net/2u *"_ivl_178", 1 0, L_0x7f83c3b73ea8; 1 drivers
v0x7f83c2f3c230_0 .net *"_ivl_18", 0 0, L_0x7f83c2f51a40; 1 drivers
L_0x7f83c3b73ef0 .functor BUFT 1, C4<xx>, C4<0>, C4<0>, C4<0>;
v0x7f83c2f3c2d0_0 .net *"_ivl_180", 1 0, L_0x7f83c3b73ef0; 1 drivers
v0x7f83c2f3c380_0 .net *"_ivl_182", 1 0, L_0x7f83c2f54a40; 1 drivers
v0x7f83c2f3c430_0 .net *"_ivl_184", 1 0, L_0x7f83c2f54c10; 1 drivers
L_0x7f83c3b73f38 .functor BUFT 1, C4<1101111>, C4<0>, C4<0>, C4<0>;
v0x7f83c2f3c4e0_0 .net/2u *"_ivl_188", 6 0, L_0x7f83c3b73f38; 1 drivers
v0x7f83c2f3c590_0 .net *"_ivl_190", 0 0, L_0x7f83c2f54f10; 1 drivers
L_0x7f83c3b73f80 .functor BUFT 1, C4<1>, C4<0>, C4<0>, C4<0>;
v0x7f83c2f3c630_0 .net/2u *"_ivl_192", 0 0, L_0x7f83c3b73f80; 1 drivers
L_0x7f83c3b73fc8 .functor BUFT 1, C4<0>, C4<0>, C4<0>, C4<0>;
v0x7f83c2f3c6e0_0 .net/2u *"_ivl_194", 0 0, L_0x7f83c3b73fc8; 1 drivers
v0x7f83c2f3c790_0 .net *"_ivl_2", 0 0, L_0x7f83c2f51520; 1 drivers
v0x7f83c2f3c830_0 .net *"_ivl_20", 0 0, L_0x7f83c2f51b20; 1 drivers
L_0x7f83c3b73368 .functor BUFT 1, C4<1>, C4<0>, C4<0>, C4<0>;
v0x7f83c2f3c8e0_0 .net/2u *"_ivl_22", 0 0, L_0x7f83c3b73368; 1 drivers
L_0x7f83c3b733b0 .functor BUFT 1, C4<0>, C4<0>, C4<0>, C4<0>;
v0x7f83c2f3c990_0 .net/2u *"_ivl_24", 0 0, L_0x7f83c3b733b0; 1 drivers
L_0x7f83c3b733f8 .functor BUFT 1, C4<0000011>, C4<0>, C4<0>, C4<0>;
v0x7f83c2f3ca40_0 .net/2u *"_ivl_28", 6 0, L_0x7f83c3b733f8; 1 drivers
v0x7f83c2f3caf0_0 .net *"_ivl_30", 0 0, L_0x7f83c2f51de0; 1 drivers
L_0x7f83c3b73440 .functor BUFT 1, C4<0010011>, C4<0>, C4<0>, C4<0>;
v0x7f83c2f3b520_0 .net/2u *"_ivl_32", 6 0, L_0x7f83c3b73440; 1 drivers
v0x7f83c2f3b5d0_0 .net *"_ivl_34", 0 0, L_0x7f83c2f51ec0; 1 drivers
v0x7f83c2f3b670_0 .net *"_ivl_36", 0 0, L_0x7f83c2f520a0; 1 drivers
L_0x7f83c3b73488 .functor BUFT 1, C4<00>, C4<0>, C4<0>, C4<0>;
v0x7f83c2f3cb90_0 .net/2u *"_ivl_38", 1 0, L_0x7f83c3b73488; 1 drivers
L_0x7f83c3b73290 .functor BUFT 1, C4<0110011>, C4<0>, C4<0>, C4<0>;
v0x7f83c2f3cc40_0 .net/2u *"_ivl_4", 6 0, L_0x7f83c3b73290; 1 drivers
L_0x7f83c3b734d0 .functor BUFT 1, C4<0100011>, C4<0>, C4<0>, C4<0>;
v0x7f83c2f3ccf0_0 .net/2u *"_ivl_40", 6 0, L_0x7f83c3b734d0; 1 drivers
v0x7f83c2f3cda0_0 .net *"_ivl_42", 0 0, L_0x7f83c2f52250; 1 drivers
L_0x7f83c3b73518 .functor BUFT 1, C4<01>, C4<0>, C4<0>, C4<0>;
v0x7f83c2f3ce40_0 .net/2u *"_ivl_44", 1 0, L_0x7f83c3b73518; 1 drivers
L_0x7f83c3b73560 .functor BUFT 1, C4<1100011>, C4<0>, C4<0>, C4<0>;
v0x7f83c2f3cef0_0 .net/2u *"_ivl_46", 6 0, L_0x7f83c3b73560; 1 drivers
v0x7f83c2f3cfa0_0 .net *"_ivl_48", 0 0, L_0x7f83c2f522f0; 1 drivers
L_0x7f83c3b735a8 .functor BUFT 1, C4<10>, C4<0>, C4<0>, C4<0>;
v0x7f83c2f3d040_0 .net/2u *"_ivl_50", 1 0, L_0x7f83c3b735a8; 1 drivers
L_0x7f83c3b735f0 .functor BUFT 1, C4<1101111>, C4<0>, C4<0>, C4<0>;
v0x7f83c2f3d0f0_0 .net/2u *"_ivl_52", 6 0, L_0x7f83c3b735f0; 1 drivers
v0x7f83c2f3d1a0_0 .net *"_ivl_54", 0 0, L_0x7f83c2f52420; 1 drivers
L_0x7f83c3b73638 .functor BUFT 1, C4<11>, C4<0>, C4<0>, C4<0>;
v0x7f83c2f3d240_0 .net/2u *"_ivl_56", 1 0, L_0x7f83c3b73638; 1 drivers
L_0x7f83c3b73680 .functor BUFT 1, C4<xx>, C4<0>, C4<0>, C4<0>;
v0x7f83c2f3d2f0_0 .net *"_ivl_58", 1 0, L_0x7f83c3b73680; 1 drivers
v0x7f83c2f3d3a0_0 .net *"_ivl_6", 0 0, L_0x7f83c2f515e0; 1 drivers
v0x7f83c2f3d440_0 .net *"_ivl_60", 1 0, L_0x7f83c2f52520; 1 drivers
v0x7f83c2f3d4f0_0 .net *"_ivl_62", 1 0, L_0x7f83c2f526c0; 1 drivers
v0x7f83c2f3d5a0_0 .net *"_ivl_64", 1 0, L_0x7f83c2f52820; 1 drivers
L_0x7f83c3b736c8 .functor BUFT 1, C4<0000011>, C4<0>, C4<0>, C4<0>;
v0x7f83c2f3d650_0 .net/2u *"_ivl_68", 6 0, L_0x7f83c3b736c8; 1 drivers
v0x7f83c2f3d700_0 .net *"_ivl_70", 0 0, L_0x7f83c2f52ae0; 1 drivers
L_0x7f83c3b73710 .functor BUFT 1, C4<0100011>, C4<0>, C4<0>, C4<0>;
v0x7f83c2f3d7a0_0 .net/2u *"_ivl_72", 6 0, L_0x7f83c3b73710; 1 drivers
v0x7f83c2f3d850_0 .net *"_ivl_74", 0 0, L_0x7f83c2f52c00; 1 drivers
v0x7f83c2f3d8f0_0 .net *"_ivl_76", 0 0, L_0x7f83c2f52ca0; 1 drivers
L_0x7f83c3b73758 .functor BUFT 1, C4<0010011>, C4<0>, C4<0>, C4<0>;
v0x7f83c2f3d9a0_0 .net/2u *"_ivl_78", 6 0, L_0x7f83c3b73758; 1 drivers
v0x7f83c2f3da50_0 .net *"_ivl_8", 0 0, L_0x7f83c2f51720; 1 drivers
v0x7f83c2f3db00_0 .net *"_ivl_80", 0 0, L_0x7f83c2f52d90; 1 drivers
v0x7f83c2f3dba0_0 .net *"_ivl_82", 0 0, L_0x7f83c2f52f00; 1 drivers
L_0x7f83c3b737a0 .functor BUFT 1, C4<1>, C4<0>, C4<0>, C4<0>;
v0x7f83c2f3dc50_0 .net/2u *"_ivl_84", 0 0, L_0x7f83c3b737a0; 1 drivers
L_0x7f83c3b737e8 .functor BUFT 1, C4<1101111>, C4<0>, C4<0>, C4<0>;
v0x7f83c2f3dd00_0 .net/2u *"_ivl_86", 6 0, L_0x7f83c3b737e8; 1 drivers
v0x7f83c2f3ddb0_0 .net *"_ivl_88", 0 0, L_0x7f83c2f52f70; 1 drivers
L_0x7f83c3b73830 .functor BUFT 1, C4<x>, C4<0>, C4<0>, C4<0>;
v0x7f83c2f3de50_0 .net *"_ivl_90", 0 0, L_0x7f83c3b73830; 1 drivers
L_0x7f83c3b73878 .functor BUFT 1, C4<0>, C4<0>, C4<0>, C4<0>;
v0x7f83c2f3df00_0 .net/2u *"_ivl_92", 0 0, L_0x7f83c3b73878; 1 drivers
v0x7f83c2f3dfb0_0 .net *"_ivl_94", 0 0, L_0x7f83c2f53070; 1 drivers
L_0x7f83c3b738c0 .functor BUFT 1, C4<0100011>, C4<0>, C4<0>, C4<0>;
v0x7f83c2f3e060_0 .net/2u *"_ivl_98", 6 0, L_0x7f83c3b738c0; 1 drivers
L_0x7f83c2f51520 .cmp/eq 7, L_0x7f83c2f573d0, L_0x7f83c3b73248;
L_0x7f83c2f515e0 .cmp/eq 7, L_0x7f83c2f573d0, L_0x7f83c3b73290;
L_0x7f83c2f51830 .cmp/eq 7, L_0x7f83c2f573d0, L_0x7f83c3b732d8;
L_0x7f83c2f51a40 .cmp/eq 7, L_0x7f83c2f573d0, L_0x7f83c3b73320;
L_0x7f83c2f51c50 .functor MUXZ 1, L_0x7f83c3b733b0, L_0x7f83c3b73368, L_0x7f83c2f51b20, C4<>;
L_0x7f83c2f51de0 .cmp/eq 7, L_0x7f83c2f573d0, L_0x7f83c3b733f8;
L_0x7f83c2f51ec0 .cmp/eq 7, L_0x7f83c2f573d0, L_0x7f83c3b73440;
L_0x7f83c2f52250 .cmp/eq 7, L_0x7f83c2f573d0, L_0x7f83c3b734d0;
L_0x7f83c2f522f0 .cmp/eq 7, L_0x7f83c2f573d0, L_0x7f83c3b73560;
L_0x7f83c2f52420 .cmp/eq 7, L_0x7f83c2f573d0, L_0x7f83c3b735f0;
L_0x7f83c2f52520 .functor MUXZ 2, L_0x7f83c3b73680, L_0x7f83c3b73638, L_0x7f83c2f52420, C4<>;
L_0x7f83c2f526c0 .functor MUXZ 2, L_0x7f83c2f52520, L_0x7f83c3b735a8, L_0x7f83c2f522f0, C4<>;
L_0x7f83c2f52820 .functor MUXZ 2, L_0x7f83c2f526c0, L_0x7f83c3b73518, L_0x7f83c2f52250, C4<>;
L_0x7f83c2f52980 .functor MUXZ 2, L_0x7f83c2f52820, L_0x7f83c3b73488, L_0x7f83c2f520a0, C4<>;
L_0x7f83c2f52ae0 .cmp/eq 7, L_0x7f83c2f573d0, L_0x7f83c3b736c8;
L_0x7f83c2f52c00 .cmp/eq 7, L_0x7f83c2f573d0, L_0x7f83c3b73710;
L_0x7f83c2f52d90 .cmp/eq 7, L_0x7f83c2f573d0, L_0x7f83c3b73758;
L_0x7f83c2f52f70 .cmp/eq 7, L_0x7f83c2f573d0, L_0x7f83c3b737e8;
L_0x7f83c2f53070 .functor MUXZ 1, L_0x7f83c3b73878, L_0x7f83c3b73830, L_0x7f83c2f52f70, C4<>;
L_0x7f83c2f53210 .functor MUXZ 1, L_0x7f83c2f53070, L_0x7f83c3b737a0, L_0x7f83c2f52f00, C4<>;
L_0x7f83c2f53370 .cmp/eq 7, L_0x7f83c2f573d0, L_0x7f83c3b738c0;
L_0x7f83c2f53110 .functor MUXZ 1, L_0x7f83c3b73950, L_0x7f83c3b73908, L_0x7f83c2f53370, C4<>;
L_0x7f83c2f53810 .cmp/eq 7, L_0x7f83c2f573d0, L_0x7f83c3b73998;
L_0x7f83c2f538b0 .cmp/eq 7, L_0x7f83c2f573d0, L_0x7f83c3b739e0;
L_0x7f83c2f53ac0 .cmp/eq 7, L_0x7f83c2f573d0, L_0x7f83c3b73a70;
L_0x7f83c2f51fa0 .cmp/eq 7, L_0x7f83c2f573d0, L_0x7f83c3b73b00;
L_0x7f83c2f53cb0 .functor MUXZ 2, L_0x7f83c3b73b90, L_0x7f83c3b73b48, L_0x7f83c2f51fa0, C4<>;
L_0x7f83c2f53e30 .functor MUXZ 2, L_0x7f83c2f53cb0, L_0x7f83c3b73ab8, L_0x7f83c2f53ac0, C4<>;
L_0x7f83c2f53f90 .functor MUXZ 2, L_0x7f83c2f53e30, L_0x7f83c3b73a28, L_0x7f83c2f53990, C4<>;
L_0x7f83c2f54160 .cmp/eq 7, L_0x7f83c2f573d0, L_0x7f83c3b73bd8;
L_0x7f83c2f54200 .functor MUXZ 1, L_0x7f83c3b73c68, L_0x7f83c3b73c20, L_0x7f83c2f54160, C4<>;
L_0x7f83c2f543e0 .cmp/eq 7, L_0x7f83c2f573d0, L_0x7f83c3b73cb0;
L_0x7f83c2f54480 .cmp/eq 7, L_0x7f83c2f573d0, L_0x7f83c3b73cf8;
L_0x7f83c2f54670 .cmp/eq 7, L_0x7f83c2f573d0, L_0x7f83c3b73d88;
L_0x7f83c2f54750 .cmp/eq 7, L_0x7f83c2f573d0, L_0x7f83c3b73dd0;
L_0x7f83c2f549a0 .cmp/eq 7, L_0x7f83c2f573d0, L_0x7f83c3b73e60;
L_0x7f83c2f54a40 .functor MUXZ 2, L_0x7f83c3b73ef0, L_0x7f83c3b73ea8, L_0x7f83c2f549a0, C4<>;
L_0x7f83c2f54c10 .functor MUXZ 2, L_0x7f83c2f54a40, L_0x7f83c3b73e18, L_0x7f83c2f54560, C4<>;
L_0x7f83c2f54d30 .functor MUXZ 2, L_0x7f83c2f54c10, L_0x7f83c3b73d40, L_0x7f83c2f542a0, C4<>;
L_0x7f83c2f54f10 .cmp/eq 7, L_0x7f83c2f573d0, L_0x7f83c3b73f38;
L_0x7f83c2f54fb0 .functor MUXZ 1, L_0x7f83c3b73fc8, L_0x7f83c3b73f80, L_0x7f83c2f54f10, C4<>;
S_0x7f83c2f3eaa0 .scope module, "reg_file" "Register_File" 4 57, 8 15 0, S_0x7f83c2f14220;
.timescale 0 0;
.port_info 0 /INPUT 1 "clk";
.port_info 1 /INPUT 1 "rst";
.port_info 2 /INPUT 1 "WE3";
.port_info 3 /INPUT 32 "WD3";
.port_info 4 /INPUT 5 "A1";
.port_info 5 /INPUT 5 "A2";
.port_info 6 /INPUT 5 "A3";
.port_info 7 /OUTPUT 32 "RD1";
.port_info 8 /OUTPUT 32 "RD2";
L_0x7f83c3b74910 .functor BUFT 1, C4<1>, C4<0>, C4<0>, C4<0>;
L_0x7f83c2f583e0 .functor XNOR 1, v0x7f83c2f50820_0, L_0x7f83c3b74910, C4<0>, C4<0>;
L_0x7f83c3b749e8 .functor BUFT 1, C4<1>, C4<0>, C4<0>, C4<0>;
L_0x7f83c2f587b0 .functor XNOR 1, v0x7f83c2f50820_0, L_0x7f83c3b749e8, C4<0>, C4<0>;
v0x7f83c2f3ed90_0 .net "A1", 4 0, L_0x7f83c2f58ce0; 1 drivers
v0x7f83c2f3ee50_0 .net "A2", 4 0, L_0x7f83c2f58ec0; 1 drivers
v0x7f83c2f3ef00_0 .net "A3", 4 0, L_0x7f83c2f5d210; alias, 1 drivers
v0x7f83c2f3efc0_0 .net "RD1", 31 0, L_0x7f83c2f58610; alias, 1 drivers
v0x7f83c2f3f070_0 .net "RD2", 31 0, L_0x7f83c2f58b40; alias, 1 drivers
v0x7f83c2f3f160 .array "Register", 0 31, 31 0;
v0x7f83c2f3f200_0 .net "WD3", 31 0, L_0x7f83c2f5d870; alias, 1 drivers
v0x7f83c2f3f2b0_0 .net "WE3", 0 0, o0x7f83c3b44318; alias, 0 drivers
v0x7f83c2f3f350_0 .net/2u *"_ivl_0", 0 0, L_0x7f83c3b74910; 1 drivers
L_0x7f83c3b749a0 .functor BUFT 1, C4<00>, C4<0>, C4<0>, C4<0>;
v0x7f83c2f3f460_0 .net *"_ivl_11", 1 0, L_0x7f83c3b749a0; 1 drivers
v0x7f83c2f3f510_0 .net/2u *"_ivl_14", 0 0, L_0x7f83c3b749e8; 1 drivers
v0x7f83c2f3f5c0_0 .net *"_ivl_16", 0 0, L_0x7f83c2f587b0; 1 drivers
L_0x7f83c3b74a30 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>;
v0x7f83c2f3f660_0 .net/2u *"_ivl_18", 31 0, L_0x7f83c3b74a30; 1 drivers
v0x7f83c2f3f710_0 .net *"_ivl_2", 0 0, L_0x7f83c2f583e0; 1 drivers
v0x7f83c2f3f7b0_0 .net *"_ivl_20", 31 0, L_0x7f83c2f4ec50; 1 drivers
v0x7f83c2f3f860_0 .net *"_ivl_22", 6 0, L_0x7f83c2f58a20; 1 drivers
L_0x7f83c3b74a78 .functor BUFT 1, C4<00>, C4<0>, C4<0>, C4<0>;
v0x7f83c2f3f910_0 .net *"_ivl_25", 1 0, L_0x7f83c3b74a78; 1 drivers
L_0x7f83c3b74958 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>;
v0x7f83c2f3faa0_0 .net/2u *"_ivl_4", 31 0, L_0x7f83c3b74958; 1 drivers
v0x7f83c2f3fb30_0 .net *"_ivl_6", 31 0, L_0x7f83c2f58450; 1 drivers
v0x7f83c2f3fbe0_0 .net *"_ivl_8", 6 0, L_0x7f83c2f584f0; 1 drivers
v0x7f83c2f3fc90_0 .net "clk", 0 0, v0x7f83c2f50790_0; alias, 1 drivers
v0x7f83c2f3fd30_0 .net "rst", 0 0, v0x7f83c2f50820_0; alias, 1 drivers
E_0x7f83c2f3ed50 .event posedge, v0x7f83c2f3fc90_0;
L_0x7f83c2f58450 .array/port v0x7f83c2f3f160, L_0x7f83c2f584f0;
L_0x7f83c2f584f0 .concat [ 5 2 0 0], L_0x7f83c2f58ce0, L_0x7f83c3b749a0;
L_0x7f83c2f58610 .functor MUXZ 32, L_0x7f83c2f58450, L_0x7f83c3b74958, L_0x7f83c2f583e0, C4<>;
L_0x7f83c2f4ec50 .array/port v0x7f83c2f3f160, L_0x7f83c2f58a20;
L_0x7f83c2f58a20 .concat [ 5 2 0 0], L_0x7f83c2f58ec0, L_0x7f83c3b74a78;
L_0x7f83c2f58b40 .functor MUXZ 32, L_0x7f83c2f4ec50, L_0x7f83c3b74a30, L_0x7f83c2f587b0, C4<>;
S_0x7f83c2f3feb0 .scope module, "sign_extender" "Sign_Extend" 4 49, 9 15 0, S_0x7f83c2f14220;
.timescale 0 0;
.port_info 0 /INPUT 12 "In";
.port_info 1 /OUTPUT 32 "Imm_Ext";
.port_info 2 /INPUT 2 "ImmSrc";
v0x7f83c2f40070_0 .net "ImmSrc", 1 0, L_0x7f83c2f52980; alias, 1 drivers
v0x7f83c2f40140_0 .net "Imm_Ext", 31 0, L_0x7f83c2f58100; alias, 1 drivers
v0x7f83c2f401d0_0 .net "In", 11 0, L_0x7f83c2f582c0; 1 drivers
L_0x7f83c3b74640 .functor BUFT 1, C4<01>, C4<0>, C4<0>, C4<0>;
v0x7f83c2f40260_0 .net/2u *"_ivl_0", 1 0, L_0x7f83c3b74640; 1 drivers
v0x7f83c2f40310_0 .net *"_ivl_10", 31 0, L_0x7f83c2f577f0; 1 drivers
L_0x7f83c3b74718 .functor BUFT 1, C4<00>, C4<0>, C4<0>, C4<0>;
v0x7f83c2f40400_0 .net/2u *"_ivl_12", 1 0, L_0x7f83c3b74718; 1 drivers
v0x7f83c2f404b0_0 .net *"_ivl_14", 0 0, L_0x7f83c2f578d0; 1 drivers
L_0x7f83c3b74760 .functor BUFT 1, C4<xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx>, C4<0>, C4<0>, C4<0>;
v0x7f83c2f40550_0 .net *"_ivl_16", 31 0, L_0x7f83c3b74760; 1 drivers
L_0x7f83c3b747a8 .functor BUFT 1, C4<10>, C4<0>, C4<0>, C4<0>;
v0x7f83c2f40600_0 .net/2u *"_ivl_18", 1 0, L_0x7f83c3b747a8; 1 drivers
v0x7f83c2f40710_0 .net *"_ivl_2", 0 0, L_0x7f83c2f576b0; 1 drivers
v0x7f83c2f407b0_0 .net *"_ivl_20", 0 0, L_0x7f83c2f579b0; 1 drivers
L_0x7f83c3b747f0 .functor BUFT 1, C4<xxxxxxxxxxxxxxxxxxxx>, C4<0>, C4<0>, C4<0>;
v0x7f83c2f40850_0 .net *"_ivl_22", 19 0, L_0x7f83c3b747f0; 1 drivers
v0x7f83c2f40900_0 .net *"_ivl_25", 0 0, L_0x7f83c2f57a90; 1 drivers
L_0x7f83c3b74838 .functor BUFT 1, C4<xxxxxx>, C4<0>, C4<0>, C4<0>;
v0x7f83c2f409b0_0 .net *"_ivl_26", 5 0, L_0x7f83c3b74838; 1 drivers
v0x7f83c2f40a60_0 .net *"_ivl_29", 3 0, L_0x7f83c2f57b70; 1 drivers
L_0x7f83c3b74880 .functor BUFT 1, C4<0>, C4<0>, C4<0>, C4<0>;
v0x7f83c2f40b10_0 .net/2u *"_ivl_30", 0 0, L_0x7f83c3b74880; 1 drivers
v0x7f83c2f40bc0_0 .net *"_ivl_32", 31 0, L_0x7f83c2f57c50; 1 drivers
L_0x7f83c3b748c8 .functor BUFT 1, C4<xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0>, C4<0>, C4<0>, C4<0>;
v0x7f83c2f40d50_0 .net *"_ivl_34", 31 0, L_0x7f83c3b748c8; 1 drivers
v0x7f83c2f40de0_0 .net *"_ivl_36", 31 0, L_0x7f83c2f57e30; 1 drivers
v0x7f83c2f40e90_0 .net *"_ivl_38", 31 0, L_0x7f83c2f57fa0; 1 drivers
L_0x7f83c3b74688 .functor BUFT 1, C4<xxxxxxxxxxxxxxxxxxxx>, C4<0>, C4<0>, C4<0>;
v0x7f83c2f40f40_0 .net *"_ivl_4", 19 0, L_0x7f83c3b74688; 1 drivers
L_0x7f83c3b746d0 .functor BUFT 1, C4<xxxxxxx>, C4<0>, C4<0>, C4<0>;
v0x7f83c2f40ff0_0 .net *"_ivl_6", 6 0, L_0x7f83c3b746d0; 1 drivers
v0x7f83c2f410a0_0 .net *"_ivl_9", 4 0, L_0x7f83c2f57750; 1 drivers
L_0x7f83c2f576b0 .cmp/eq 2, L_0x7f83c2f52980, L_0x7f83c3b74640;
L_0x7f83c2f57750 .part L_0x7f83c2f582c0, 7, 5;
L_0x7f83c2f577f0 .concat [ 5 7 20 0], L_0x7f83c2f57750, L_0x7f83c3b746d0, L_0x7f83c3b74688;
L_0x7f83c2f578d0 .cmp/eq 2, L_0x7f83c2f52980, L_0x7f83c3b74718;
L_0x7f83c2f579b0 .cmp/eq 2, L_0x7f83c2f52980, L_0x7f83c3b747a8;
L_0x7f83c2f57a90 .part L_0x7f83c2f582c0, 7, 1;
L_0x7f83c2f57b70 .part L_0x7f83c2f582c0, 8, 4;
LS_0x7f83c2f57c50_0_0 .concat [ 1 4 6 1], L_0x7f83c3b74880, L_0x7f83c2f57b70, L_0x7f83c3b74838, L_0x7f83c2f57a90;
LS_0x7f83c2f57c50_0_4 .concat [ 20 0 0 0], L_0x7f83c3b747f0;
L_0x7f83c2f57c50 .concat [ 12 20 0 0], LS_0x7f83c2f57c50_0_0, LS_0x7f83c2f57c50_0_4;
L_0x7f83c2f57e30 .functor MUXZ 32, L_0x7f83c3b748c8, L_0x7f83c2f57c50, L_0x7f83c2f579b0, C4<>;
L_0x7f83c2f57fa0 .functor MUXZ 32, L_0x7f83c2f57e30, L_0x7f83c3b74760, L_0x7f83c2f578d0, C4<>;
L_0x7f83c2f58100 .functor MUXZ 32, L_0x7f83c2f57fa0, L_0x7f83c2f577f0, L_0x7f83c2f576b0, C4<>;
S_0x7f83c2f43300 .scope module, "Execute" "execute_cycle" 3 72, 10 4 0, S_0x7f83c2f26d60;
.timescale 0 0;
.port_info 0 /INPUT 1 "clk";
.port_info 1 /INPUT 1 "rst";
.port_info 2 /INPUT 1 "RegWriteE";
.port_info 3 /INPUT 1 "ALUSrcE";
.port_info 4 /INPUT 1 "MemWriteE";
.port_info 5 /INPUT 2 "ResultSrcE";
.port_info 6 /INPUT 1 "BranchE";
.port_info 7 /INPUT 3 "ALUControlE";
.port_info 8 /INPUT 1 "JumpE";
.port_info 9 /INPUT 32 "RD1_E";
.port_info 10 /INPUT 32 "RD2_E";
.port_info 11 /INPUT 32 "Imm_Ext_E";
.port_info 12 /INPUT 5 "RD_E";
.port_info 13 /INPUT 32 "PCE";
.port_info 14 /INPUT 32 "PCPlus4E";
.port_info 15 /OUTPUT 1 "PCSrcE";
.port_info 16 /OUTPUT 32 "PCTargetE";
.port_info 17 /OUTPUT 1 "RegWriteM";
.port_info 18 /OUTPUT 1 "MemWriteM";
.port_info 19 /OUTPUT 2 "ResultSrcM";
.port_info 20 /OUTPUT 5 "RD_M";
.port_info 21 /OUTPUT 32 "PCPlus4M";
.port_info 22 /OUTPUT 32 "WriteDataM";
.port_info 23 /OUTPUT 32 "ALU_ResultM";
L_0x7f83c2f598b0 .functor BUFZ 32, v0x7f83c2f426d0_0, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>;
L_0x7f83c2f5c8d0 .functor AND 1, L_0x7f83c2f5c5b0, v0x7f83c2f41650_0, C4<1>, C4<1>;
L_0x7f83c2f5c9c0 .functor OR 1, L_0x7f83c2f5c8d0, v0x7f83c2f41b90_0, C4<0>, C4<0>;
L_0x7f83c2f5cab0 .functor BUFZ 1, v0x7f83c2f481e0_0, C4<0>, C4<0>, C4<0>;
L_0x7f83c2f5cb20 .functor BUFZ 1, v0x7f83c2f47810_0, C4<0>, C4<0>, C4<0>;
L_0x7f83c2f5cc10 .functor BUFZ 2, v0x7f83c2f483c0_0, C4<00>, C4<00>, C4<00>;
L_0x7f83c2f5cc80 .functor BUFZ 5, v0x7f83c2f48010_0, C4<00000>, C4<00000>, C4<00000>;
L_0x7f83c2f5ccf0 .functor BUFZ 32, v0x7f83c2f47a90_0, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>;
L_0x7f83c2f5cd60 .functor BUFZ 32, v0x7f83c2f486a0_0, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>;
v0x7f83c2f47150_0 .net "ALUControlE", 2 0, v0x7f83c2f41230_0; alias, 1 drivers
v0x7f83c2f47240_0 .net "ALUSrcE", 0 0, v0x7f83c2f41420_0; alias, 1 drivers
v0x7f83c2f47310_0 .net "ALU_ResultE", 31 0, L_0x7f83c2f5b550; 1 drivers
v0x7f83c2f473a0_0 .var "ALU_ResultE_r", 31 0;
v0x7f83c2f47430_0 .net "ALU_ResultM", 31 0, v0x7f83c2f473a0_0; alias, 1 drivers
v0x7f83c2f47510_0 .net "BranchE", 0 0, v0x7f83c2f41650_0; alias, 1 drivers
v0x7f83c2f475a0_0 .net "Imm_Ext_E", 31 0, v0x7f83c2f41930_0; alias, 1 drivers
v0x7f83c2f47630_0 .net "JumpE", 0 0, v0x7f83c2f41b90_0; alias, 1 drivers
v0x7f83c2f476e0_0 .net "MemWriteE", 0 0, L_0x7f83c2f59040; alias, 1 drivers
v0x7f83c2f47810_0 .var "MemWriteE_r", 0 0;
v0x7f83c2f478a0_0 .net "MemWriteM", 0 0, L_0x7f83c2f5cb20; alias, 1 drivers
v0x7f83c2f47930_0 .net "PCE", 31 0, v0x7f83c2f42040_0; alias, 1 drivers
v0x7f83c2f47a00_0 .net "PCPlus4E", 31 0, L_0x7f83c2f597d0; alias, 1 drivers
v0x7f83c2f47a90_0 .var "PCPlus4E_r", 31 0;
v0x7f83c2f47b20_0 .net "PCPlus4M", 31 0, L_0x7f83c2f5ccf0; alias, 1 drivers
v0x7f83c2f47bc0_0 .net "PCSrcE", 0 0, L_0x7f83c2f5c9c0; alias, 1 drivers
v0x7f83c2f47c60_0 .net "PCTargetE", 31 0, L_0x7f83c2f5c830; alias, 1 drivers
v0x7f83c2f47e20_0 .net "RD1_E", 31 0, v0x7f83c2f424c0_0; alias, 1 drivers
v0x7f83c2f47eb0_0 .net "RD2_E", 31 0, v0x7f83c2f426d0_0; alias, 1 drivers
v0x7f83c2f47f80_0 .net "RD_E", 4 0, L_0x7f83c2f59690; alias, 1 drivers
v0x7f83c2f48010_0 .var "RD_E_r", 4 0;
v0x7f83c2f480a0_0 .net "RD_M", 4 0, L_0x7f83c2f5cc80; alias, 1 drivers
v0x7f83c2f48130_0 .net "RegWriteE", 0 0, L_0x7f83c2f58f60; alias, 1 drivers
v0x7f83c2f481e0_0 .var "RegWriteE_r", 0 0;
v0x7f83c2f48270_0 .net "RegWriteM", 0 0, L_0x7f83c2f5cab0; alias, 1 drivers
v0x7f83c2f48300_0 .net "ResultSrcE", 1 0, L_0x7f83c2f58fd0; alias, 1 drivers
v0x7f83c2f483c0_0 .var "ResultSrcE_r", 1 0;
v0x7f83c2f48460_0 .net "ResultSrcM", 1 0, L_0x7f83c2f5cc10; alias, 1 drivers
v0x7f83c2f48510_0 .net "Src_BE", 31 0, L_0x7f83c2f59990; 1 drivers
v0x7f83c2f485f0_0 .net "WriteDataE", 31 0, L_0x7f83c2f598b0; 1 drivers
v0x7f83c2f486a0_0 .var "WriteDataE_r", 31 0;
v0x7f83c2f48750_0 .net "WriteDataM", 31 0, L_0x7f83c2f5cd60; alias, 1 drivers
v0x7f83c2f48800_0 .net "ZeroE", 0 0, L_0x7f83c2f5c5b0; 1 drivers
v0x7f83c2f47cf0_0 .net *"_ivl_2", 0 0, L_0x7f83c2f5c8d0; 1 drivers
v0x7f83c2f48a90_0 .net "clk", 0 0, v0x7f83c2f50790_0; alias, 1 drivers
v0x7f83c2f48b20_0 .net "rst", 0 0, v0x7f83c2f50820_0; alias, 1 drivers
S_0x7f83c2f437d0 .scope module, "alu" "ALU" 10 34, 11 15 0, S_0x7f83c2f43300;
.timescale 0 0;
.port_info 0 /INPUT 32 "A";
.port_info 1 /INPUT 32 "B";
.port_info 2 /OUTPUT 32 "Result";
.port_info 3 /INPUT 3 "ALUControl";
.port_info 4 /OUTPUT 1 "OverFlow";
.port_info 5 /OUTPUT 1 "Carry";
.port_info 6 /OUTPUT 1 "Zero";
.port_info 7 /OUTPUT 1 "Negative";
L_0x7f83c3b74ac0 .functor BUFT 1, C4<0>, C4<0>, C4<0>, C4<0>;
L_0x7f83c2f59c10 .functor XNOR 1, L_0x7f83c2f59b70, L_0x7f83c3b74ac0, C4<0>, C4<0>;
L_0x7f83c2f5a1e0 .functor NOT 33, L_0x7f83c2f5a100, C4<000000000000000000000000000000000>, C4<000000000000000000000000000000000>, C4<000000000000000000000000000000000>;
L_0x7f83c2f59200 .functor AND 32, v0x7f83c2f424c0_0, L_0x7f83c2f59990, C4<11111111111111111111111111111111>, C4<11111111111111111111111111111111>;
L_0x7f83c2f5a840 .functor OR 32, v0x7f83c2f424c0_0, L_0x7f83c2f59990, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>;
L_0x7f83c2f5b980 .functor XOR 1, L_0x7f83c2f5b770, L_0x7f83c2f5b810, C4<0>, C4<0>;
L_0x7f83c2f59e00 .functor XOR 1, L_0x7f83c2f5b9f0, L_0x7f83c2f5ba90, C4<0>, C4<0>;
L_0x7f83c2f5bd10 .functor XOR 1, L_0x7f83c2f59e00, L_0x7f83c2f5b8b0, C4<0>, C4<0>;
L_0x7f83c2f5be40 .functor NOT 1, L_0x7f83c2f5bd10, C4<0>, C4<0>, C4<0>;
L_0x7f83c2f5bef0 .functor AND 1, L_0x7f83c2f5b980, L_0x7f83c2f5be40, C4<1>, C4<1>;
L_0x7f83c2f5c1c0 .functor NOT 1, L_0x7f83c2f5c030, C4<0>, C4<0>, C4<0>;
L_0x7f83c2f5bc30 .functor AND 1, L_0x7f83c2f5bef0, L_0x7f83c2f5c1c0, C4<1>, C4<1>;
L_0x7f83c2f5c370 .functor NOT 1, L_0x7f83c2f5c2d0, C4<0>, C4<0>, C4<0>;
L_0x7f83c2f5c3e0 .functor AND 1, L_0x7f83c2f5c370, L_0x7f83c2f59a30, C4<1>, C4<1>;
L_0x7f83c2f5c540 .functor NOT 32, L_0x7f83c2f5b550, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>;
v0x7f83c2f43a00_0 .net "A", 31 0, v0x7f83c2f424c0_0; alias, 1 drivers
v0x7f83c2f43ac0_0 .net "ALUControl", 2 0, v0x7f83c2f41230_0; alias, 1 drivers
v0x7f83c2f43b70_0 .net "B", 31 0, L_0x7f83c2f59990; alias, 1 drivers
v0x7f83c2f43c20_0 .net "Carry", 0 0, L_0x7f83c2f5c3e0; 1 drivers
v0x7f83c2f43cc0_0 .net "Cout", 0 0, L_0x7f83c2f59a30; 1 drivers
v0x7f83c2f43da0_0 .net "Negative", 0 0, L_0x7f83c2f5c790; 1 drivers
v0x7f83c2f43e40_0 .net "OverFlow", 0 0, L_0x7f83c2f5bc30; 1 drivers
v0x7f83c2f43ee0_0 .net "Result", 31 0, L_0x7f83c2f5b550; alias, 1 drivers
v0x7f83c2f43f90_0 .net "Sum", 31 0, L_0x7f83c2f59ad0; 1 drivers
v0x7f83c2f440a0_0 .net "Zero", 0 0, L_0x7f83c2f5c5b0; alias, 1 drivers
v0x7f83c2f44140_0 .net *"_ivl_100", 0 0, L_0x7f83c2f5c030; 1 drivers
v0x7f83c2f441f0_0 .net *"_ivl_101", 0 0, L_0x7f83c2f5c1c0; 1 drivers
v0x7f83c2f442a0_0 .net *"_ivl_106", 0 0, L_0x7f83c2f5c2d0; 1 drivers
v0x7f83c2f44350_0 .net *"_ivl_107", 0 0, L_0x7f83c2f5c370; 1 drivers
v0x7f83c2f44400_0 .net *"_ivl_111", 31 0, L_0x7f83c2f5c540; 1 drivers
L_0x7f83c3b74b08 .functor BUFT 1, C4<0>, C4<0>, C4<0>, C4<0>;
v0x7f83c2f444b0_0 .net *"_ivl_12", 0 0, L_0x7f83c3b74b08; 1 drivers
v0x7f83c2f44560_0 .net *"_ivl_13", 32 0, L_0x7f83c2f59d60; 1 drivers
L_0x7f83c3b74b50 .functor BUFT 1, C4<0>, C4<0>, C4<0>, C4<0>;
v0x7f83c2f446f0_0 .net *"_ivl_16", 0 0, L_0x7f83c3b74b50; 1 drivers
v0x7f83c2f44780_0 .net *"_ivl_17", 32 0, L_0x7f83c2f59ee0; 1 drivers
v0x7f83c2f44830_0 .net *"_ivl_19", 32 0, L_0x7f83c2f5a020; 1 drivers
L_0x7f83c3b74b98 .functor BUFT 1, C4<0>, C4<0>, C4<0>, C4<0>;
v0x7f83c2f448e0_0 .net *"_ivl_22", 0 0, L_0x7f83c3b74b98; 1 drivers
v0x7f83c2f44990_0 .net *"_ivl_23", 32 0, L_0x7f83c2f5a100; 1 drivers
L_0x7f83c3b74be0 .functor BUFT 1, C4<0>, C4<0>, C4<0>, C4<0>;
v0x7f83c2f44a40_0 .net *"_ivl_26", 0 0, L_0x7f83c3b74be0; 1 drivers
v0x7f83c2f44af0_0 .net *"_ivl_27", 32 0, L_0x7f83c2f5a1e0; 1 drivers
L_0x7f83c3b74c28 .functor BUFT 1, C4<000000000000000000000000000000001>, C4<0>, C4<0>, C4<0>;
v0x7f83c2f44ba0_0 .net/2u *"_ivl_29", 32 0, L_0x7f83c3b74c28; 1 drivers
v0x7f83c2f44c50_0 .net *"_ivl_31", 32 0, L_0x7f83c2f5a290; 1 drivers
v0x7f83c2f44d00_0 .net *"_ivl_33", 32 0, L_0x7f83c2f5a440; 1 drivers
v0x7f83c2f44db0_0 .net *"_ivl_35", 32 0, L_0x7f83c2f5a540; 1 drivers
L_0x7f83c3b74c70 .functor BUFT 1, C4<000>, C4<0>, C4<0>, C4<0>;
v0x7f83c2f44e60_0 .net/2u *"_ivl_37", 2 0, L_0x7f83c3b74c70; 1 drivers
v0x7f83c2f44f10_0 .net *"_ivl_39", 0 0, L_0x7f83c2f5a680; 1 drivers
v0x7f83c2f44fb0_0 .net *"_ivl_4", 0 0, L_0x7f83c2f59b70; 1 drivers
L_0x7f83c3b74cb8 .functor BUFT 1, C4<001>, C4<0>, C4<0>, C4<0>;
v0x7f83c2f45060_0 .net/2u *"_ivl_41", 2 0, L_0x7f83c3b74cb8; 1 drivers
v0x7f83c2f45110_0 .net *"_ivl_43", 0 0, L_0x7f83c2f5a760; 1 drivers
L_0x7f83c3b74d00 .functor BUFT 1, C4<010>, C4<0>, C4<0>, C4<0>;
v0x7f83c2f44600_0 .net/2u *"_ivl_45", 2 0, L_0x7f83c3b74d00; 1 drivers
v0x7f83c2f453a0_0 .net *"_ivl_47", 0 0, L_0x7f83c2f5a8b0; 1 drivers
v0x7f83c2f45430_0 .net *"_ivl_49", 31 0, L_0x7f83c2f59200; 1 drivers
v0x7f83c2f454c0_0 .net/2u *"_ivl_5", 0 0, L_0x7f83c3b74ac0; 1 drivers
L_0x7f83c3b74d48 .functor BUFT 1, C4<011>, C4<0>, C4<0>, C4<0>;
v0x7f83c2f45560_0 .net/2u *"_ivl_51", 2 0, L_0x7f83c3b74d48; 1 drivers
v0x7f83c2f45610_0 .net *"_ivl_53", 0 0, L_0x7f83c2f5aa50; 1 drivers
v0x7f83c2f456b0_0 .net *"_ivl_55", 31 0, L_0x7f83c2f5a840; 1 drivers
L_0x7f83c3b74d90 .functor BUFT 1, C4<101>, C4<0>, C4<0>, C4<0>;
v0x7f83c2f45760_0 .net/2u *"_ivl_57", 2 0, L_0x7f83c3b74d90; 1 drivers
v0x7f83c2f45810_0 .net *"_ivl_59", 0 0, L_0x7f83c2f5acf0; 1 drivers
L_0x7f83c3b74dd8 .functor BUFT 1, C4<0000000000000000000000000000000>, C4<0>, C4<0>, C4<0>;
v0x7f83c2f458b0_0 .net/2u *"_ivl_61", 30 0, L_0x7f83c3b74dd8; 1 drivers
v0x7f83c2f45960_0 .net *"_ivl_64", 0 0, L_0x7f83c2f5ad90; 1 drivers
v0x7f83c2f45a10_0 .net *"_ivl_65", 31 0, L_0x7f83c2f5af00; 1 drivers
L_0x7f83c3b74e20 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>;
v0x7f83c2f45ac0_0 .net/2u *"_ivl_67", 31 0, L_0x7f83c3b74e20; 1 drivers
v0x7f83c2f45b70_0 .net *"_ivl_69", 31 0, L_0x7f83c2f5afc0; 1 drivers
v0x7f83c2f45c20_0 .net *"_ivl_7", 0 0, L_0x7f83c2f59c10; 1 drivers
v0x7f83c2f45cc0_0 .net *"_ivl_71", 31 0, L_0x7f83c2f5b140; 1 drivers
v0x7f83c2f45d70_0 .net *"_ivl_73", 31 0, L_0x7f83c2f5b2a0; 1 drivers
v0x7f83c2f45e20_0 .net *"_ivl_75", 31 0, L_0x7f83c2f5b430; 1 drivers
v0x7f83c2f45ed0_0 .net *"_ivl_80", 0 0, L_0x7f83c2f5b770; 1 drivers
v0x7f83c2f45f80_0 .net *"_ivl_82", 0 0, L_0x7f83c2f5b810; 1 drivers
v0x7f83c2f46030_0 .net *"_ivl_83", 0 0, L_0x7f83c2f5b980; 1 drivers
v0x7f83c2f460e0_0 .net *"_ivl_86", 0 0, L_0x7f83c2f5b9f0; 1 drivers
v0x7f83c2f46190_0 .net *"_ivl_88", 0 0, L_0x7f83c2f5ba90; 1 drivers
v0x7f83c2f46240_0 .net *"_ivl_89", 0 0, L_0x7f83c2f59e00; 1 drivers
v0x7f83c2f462f0_0 .net *"_ivl_9", 32 0, L_0x7f83c2f59c80; 1 drivers
v0x7f83c2f463a0_0 .net *"_ivl_92", 0 0, L_0x7f83c2f5b8b0; 1 drivers
v0x7f83c2f46450_0 .net *"_ivl_93", 0 0, L_0x7f83c2f5bd10; 1 drivers
v0x7f83c2f46500_0 .net *"_ivl_95", 0 0, L_0x7f83c2f5be40; 1 drivers
v0x7f83c2f465b0_0 .net *"_ivl_97", 0 0, L_0x7f83c2f5bef0; 1 drivers
L_0x7f83c2f59a30 .part L_0x7f83c2f5a540, 32, 1;
L_0x7f83c2f59ad0 .part L_0x7f83c2f5a540, 0, 32;
L_0x7f83c2f59b70 .part v0x7f83c2f41230_0, 0, 1;
L_0x7f83c2f59c80 .concat [ 32 1 0 0], v0x7f83c2f424c0_0, L_0x7f83c3b74b08;
L_0x7f83c2f59d60 .concat [ 32 1 0 0], L_0x7f83c2f59990, L_0x7f83c3b74b50;
L_0x7f83c2f59ee0 .arith/sum 33, L_0x7f83c2f59c80, L_0x7f83c2f59d60;
L_0x7f83c2f5a020 .concat [ 32 1 0 0], v0x7f83c2f424c0_0, L_0x7f83c3b74b98;
L_0x7f83c2f5a100 .concat [ 32 1 0 0], L_0x7f83c2f59990, L_0x7f83c3b74be0;
L_0x7f83c2f5a290 .arith/sum 33, L_0x7f83c2f5a1e0, L_0x7f83c3b74c28;
L_0x7f83c2f5a440 .arith/sum 33, L_0x7f83c2f5a020, L_0x7f83c2f5a290;
L_0x7f83c2f5a540 .functor MUXZ 33, L_0x7f83c2f5a440, L_0x7f83c2f59ee0, L_0x7f83c2f59c10, C4<>;
L_0x7f83c2f5a680 .cmp/eq 3, v0x7f83c2f41230_0, L_0x7f83c3b74c70;
L_0x7f83c2f5a760 .cmp/eq 3, v0x7f83c2f41230_0, L_0x7f83c3b74cb8;
L_0x7f83c2f5a8b0 .cmp/eq 3, v0x7f83c2f41230_0, L_0x7f83c3b74d00;
L_0x7f83c2f5aa50 .cmp/eq 3, v0x7f83c2f41230_0, L_0x7f83c3b74d48;
L_0x7f83c2f5acf0 .cmp/eq 3, v0x7f83c2f41230_0, L_0x7f83c3b74d90;
L_0x7f83c2f5ad90 .part L_0x7f83c2f59ad0, 31, 1;
L_0x7f83c2f5af00 .concat [ 1 31 0 0], L_0x7f83c2f5ad90, L_0x7f83c3b74dd8;
L_0x7f83c2f5afc0 .functor MUXZ 32, L_0x7f83c3b74e20, L_0x7f83c2f5af00, L_0x7f83c2f5acf0, C4<>;
L_0x7f83c2f5b140 .functor MUXZ 32, L_0x7f83c2f5afc0, L_0x7f83c2f5a840, L_0x7f83c2f5aa50, C4<>;
L_0x7f83c2f5b2a0 .functor MUXZ 32, L_0x7f83c2f5b140, L_0x7f83c2f59200, L_0x7f83c2f5a8b0, C4<>;
L_0x7f83c2f5b430 .functor MUXZ 32, L_0x7f83c2f5b2a0, L_0x7f83c2f59ad0, L_0x7f83c2f5a760, C4<>;
L_0x7f83c2f5b550 .functor MUXZ 32, L_0x7f83c2f5b430, L_0x7f83c2f59ad0, L_0x7f83c2f5a680, C4<>;
L_0x7f83c2f5b770 .part L_0x7f83c2f59ad0, 31, 1;
L_0x7f83c2f5b810 .part v0x7f83c2f424c0_0, 31, 1;
L_0x7f83c2f5b9f0 .part v0x7f83c2f41230_0, 0, 1;
L_0x7f83c2f5ba90 .part L_0x7f83c2f59990, 31, 1;
L_0x7f83c2f5b8b0 .part v0x7f83c2f424c0_0, 31, 1;
L_0x7f83c2f5c030 .part v0x7f83c2f41230_0, 1, 1;
L_0x7f83c2f5c2d0 .part v0x7f83c2f41230_0, 1, 1;
L_0x7f83c2f5c5b0 .reduce/and L_0x7f83c2f5c540;
L_0x7f83c2f5c790 .part L_0x7f83c2f5b550, 31, 1;
S_0x7f83c2f46720 .scope module, "branch_adder" "PC_Adder" 10 46, 12 4 0, S_0x7f83c2f43300;
.timescale 0 0;
.port_info 0 /INPUT 32 "a";
.port_info 1 /INPUT 32 "b";
.port_info 2 /OUTPUT 32 "c";
v0x7f83c2f468e0_0 .net "a", 31 0, v0x7f83c2f42040_0; alias, 1 drivers
v0x7f83c2f46970_0 .net "b", 31 0, v0x7f83c2f41930_0; alias, 1 drivers
v0x7f83c2f46a20_0 .net "c", 31 0, L_0x7f83c2f5c830; alias, 1 drivers
L_0x7f83c2f5c830 .arith/sum 32, v0x7f83c2f42040_0, v0x7f83c2f41930_0;
S_0x7f83c2f46b10 .scope module, "mux1" "Mux" 10 26, 13 3 0, S_0x7f83c2f43300;
.timescale 0 0;
.port_info 0 /INPUT 32 "a";
.port_info 1 /INPUT 32 "b";
.port_info 2 /INPUT 1 "s";
.port_info 3 /OUTPUT 32 "c";
L_0x7f83c2f59920 .functor NOT 1, v0x7f83c2f41420_0, C4<0>, C4<0>, C4<0>;
v0x7f83c2f46d50_0 .net *"_ivl_0", 0 0, L_0x7f83c2f59920; 1 drivers
v0x7f83c2f46e00_0 .net "a", 31 0, v0x7f83c2f426d0_0; alias, 1 drivers
v0x7f83c2f46ec0_0 .net "b", 31 0, v0x7f83c2f41930_0; alias, 1 drivers
v0x7f83c2f46fb0_0 .net "c", 31 0, L_0x7f83c2f59990; alias, 1 drivers
v0x7f83c2f47040_0 .net "s", 0 0, v0x7f83c2f41420_0; alias, 1 drivers
L_0x7f83c2f59990 .functor MUXZ 32, v0x7f83c2f41930_0, v0x7f83c2f426d0_0, L_0x7f83c2f59920, C4<>;
S_0x7f83c2f48df0 .scope module, "Fetch" "fetch_cycle" 3 37, 14 5 0, S_0x7f83c2f26d60;
.timescale 0 0;
.port_info 0 /INPUT 1 "clk";
.port_info 1 /INPUT 1 "rst";
.port_info 2 /INPUT 1 "PCSrcE";
.port_info 3 /INPUT 32 "PCTargetE";
.port_info 4 /OUTPUT 32 "InstrD";
.port_info 5 /OUTPUT 32 "PCD";
.port_info 6 /OUTPUT 32 "PCPlus4D";
L_0x7f83c3b73098 .functor BUFT 1, C4<0>, C4<0>, C4<0>, C4<0>;
L_0x7f83c2f50e70 .functor XNOR 1, v0x7f83c2f50820_0, L_0x7f83c3b73098, C4<0>, C4<0>;
L_0x7f83c3b73128 .functor BUFT 1, C4<0>, C4<0>, C4<0>, C4<0>;
L_0x7f83c2f51080 .functor XNOR 1, v0x7f83c2f50820_0, L_0x7f83c3b73128, C4<0>, C4<0>;
L_0x7f83c3b731b8 .functor BUFT 1, C4<0>, C4<0>, C4<0>, C4<0>;
L_0x7f83c2f51270 .functor XNOR 1, v0x7f83c2f50820_0, L_0x7f83c3b731b8, C4<0>, C4<0>;
v0x7f83c2f4a7c0_0 .net "InstrD", 31 0, L_0x7f83c2f50f20; alias, 1 drivers
v0x7f83c2f4a850_0 .var "InstrD_F", 31 0;
v0x7f83c2f4a8e0_0 .net "Instr_mem", 31 0, L_0x7f83c2f50d10; 1 drivers
v0x7f83c2f4a9b0_0 .net "PCD", 31 0, L_0x7f83c2f51150; alias, 1 drivers
v0x7f83c2f4aa60_0 .var "PCD_F", 31 0;
v0x7f83c2f4ab30_0 .net "PCF", 31 0, v0x7f83c2f4a430_0; 1 drivers
v0x7f83c2f4abd0_0 .net "PCF_out", 31 0, L_0x7f83c2f50930; 1 drivers
v0x7f83c2f4acb0_0 .net "PCPlus4D", 31 0, L_0x7f83c2f51360; alias, 1 drivers
v0x7f83c2f4ad40_0 .var "PCPlus4D_F", 31 0;
v0x7f83c2f4ae50_0 .net "PCPlus4F", 31 0, L_0x7f83c2f509d0; 1 drivers
v0x7f83c2f4aef0_0 .net "PCSrcE", 0 0, L_0x7f83c2f5c9c0; alias, 1 drivers
v0x7f83c2f4afc0_0 .net "PCTargetE", 31 0, L_0x7f83c2f5c830; alias, 1 drivers
v0x7f83c2f4b050_0 .net/2u *"_ivl_10", 0 0, L_0x7f83c3b73128; 1 drivers
v0x7f83c2f4b0f0_0 .net *"_ivl_12", 0 0, L_0x7f83c2f51080; 1 drivers
L_0x7f83c3b73170 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>;
v0x7f83c2f4b190_0 .net/2u *"_ivl_14", 31 0, L_0x7f83c3b73170; 1 drivers
v0x7f83c2f4b240_0 .net/2u *"_ivl_18", 0 0, L_0x7f83c3b731b8; 1 drivers
v0x7f83c2f4b2f0_0 .net/2u *"_ivl_2", 0 0, L_0x7f83c3b73098; 1 drivers
v0x7f83c2f4b480_0 .net *"_ivl_20", 0 0, L_0x7f83c2f51270; 1 drivers
L_0x7f83c3b73200 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>;
v0x7f83c2f4b520_0 .net/2u *"_ivl_22", 31 0, L_0x7f83c3b73200; 1 drivers
v0x7f83c2f4b5d0_0 .net *"_ivl_4", 0 0, L_0x7f83c2f50e70; 1 drivers
L_0x7f83c3b730e0 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>;
v0x7f83c2f4b670_0 .net/2u *"_ivl_6", 31 0, L_0x7f83c3b730e0; 1 drivers
v0x7f83c2f4b720_0 .net "clk", 0 0, v0x7f83c2f50790_0; alias, 1 drivers
v0x7f83c2f4b7b0_0 .net "rst", 0 0, v0x7f83c2f50820_0; alias, 1 drivers
L_0x7f83c2f50f20 .functor MUXZ 32, L_0x7f83c3b730e0, v0x7f83c2f4a850_0, L_0x7f83c2f50e70, C4<>;
L_0x7f83c2f51150 .functor MUXZ 32, L_0x7f83c3b73170, v0x7f83c2f4aa60_0, L_0x7f83c2f51080, C4<>;
L_0x7f83c2f51360 .functor MUXZ 32, L_0x7f83c3b73200, v0x7f83c2f4ad40_0, L_0x7f83c2f51270, C4<>;
S_0x7f83c2f49060 .scope module, "MEM" "Instruction_Memory" 14 31, 15 15 0, S_0x7f83c2f48df0;
.timescale 0 0;
.port_info 0 /INPUT 1 "rst";
.port_info 1 /INPUT 32 "A";
.port_info 2 /OUTPUT 32 "RD";
v0x7f83c2f49220_0 .net "A", 31 0, v0x7f83c2f4a430_0; alias, 1 drivers
v0x7f83c2f492d0_0 .net "RD", 31 0, L_0x7f83c2f50d10; alias, 1 drivers
L_0x7f83c3b73050 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>;
v0x7f83c2f49380_0 .net/2u *"_ivl_0", 31 0, L_0x7f83c3b73050; 1 drivers
v0x7f83c2f49440_0 .net *"_ivl_2", 31 0, L_0x7f83c2f50bd0; 1 drivers
v0x7f83c2f494f0_0 .net *"_ivl_5", 29 0, L_0x7f83c2f50c70; 1 drivers
v0x7f83c2f495e0 .array "mem", 0 1023, 31 0;
v0x7f83c2f49680_0 .net "rst", 0 0, v0x7f83c2f50820_0; alias, 1 drivers
L_0x7f83c2f50bd0 .array/port v0x7f83c2f495e0, L_0x7f83c2f50c70;
L_0x7f83c2f50c70 .part v0x7f83c2f4a430_0, 2, 30;
L_0x7f83c2f50d10 .functor MUXZ 32, L_0x7f83c2f50bd0, L_0x7f83c3b73050, v0x7f83c2f50820_0, C4<>;
S_0x7f83c2f49740 .scope module, "p1" "PC_Adder" 14 29, 12 4 0, S_0x7f83c2f48df0;
.timescale 0 0;
.port_info 0 /INPUT 32 "a";
.port_info 1 /INPUT 32 "b";
.port_info 2 /OUTPUT 32 "c";
v0x7f83c2f49960_0 .net "a", 31 0, v0x7f83c2f4a430_0; alias, 1 drivers
L_0x7f83c3b73008 .functor BUFT 1, C4<00000000000000000000000000000100>, C4<0>, C4<0>, C4<0>;
v0x7f83c2f49a20_0 .net "b", 31 0, L_0x7f83c3b73008; 1 drivers
v0x7f83c2f49ac0_0 .net "c", 31 0, L_0x7f83c2f509d0; alias, 1 drivers
L_0x7f83c2f509d0 .arith/sum 32, v0x7f83c2f4a430_0, L_0x7f83c3b73008;
S_0x7f83c2f49bd0 .scope module, "pc_mux" "Mux" 14 9, 13 3 0, S_0x7f83c2f48df0;
.timescale 0 0;
.port_info 0 /INPUT 32 "a";
.port_info 1 /INPUT 32 "b";
.port_info 2 /INPUT 1 "s";
.port_info 3 /OUTPUT 32 "c";
L_0x7f83c2f4add0 .functor NOT 1, L_0x7f83c2f5c9c0, C4<0>, C4<0>, C4<0>;
v0x7f83c2f49e10_0 .net *"_ivl_0", 0 0, L_0x7f83c2f4add0; 1 drivers
v0x7f83c2f49ec0_0 .net "a", 31 0, L_0x7f83c2f509d0; alias, 1 drivers
v0x7f83c2f49f80_0 .net "b", 31 0, L_0x7f83c2f5c830; alias, 1 drivers
v0x7f83c2f4a070_0 .net "c", 31 0, L_0x7f83c2f50930; alias, 1 drivers
v0x7f83c2f4a110_0 .net "s", 0 0, L_0x7f83c2f5c9c0; alias, 1 drivers
L_0x7f83c2f50930 .functor MUXZ 32, L_0x7f83c2f5c830, L_0x7f83c2f509d0, L_0x7f83c2f4add0, C4<>;
S_0x7f83c2f4a210 .scope module, "pc_reg" "PC_Module" 14 11, 16 15 0, S_0x7f83c2f48df0;
.timescale 0 0;
.port_info 0 /INPUT 1 "clk";
.port_info 1 /INPUT 1 "rst";
.port_info 2 /OUTPUT 32 "PC";
.port_info 3 /INPUT 32 "PC_Next";
v0x7f83c2f4a430_0 .var "PC", 31 0;
v0x7f83c2f4a520_0 .net "PC_Next", 31 0, L_0x7f83c2f50930; alias, 1 drivers
v0x7f83c2f4a5c0_0 .net "clk", 0 0, v0x7f83c2f50790_0; alias, 1 drivers
v0x7f83c2f4a670_0 .net "rst", 0 0, v0x7f83c2f50820_0; alias, 1 drivers
S_0x7f83c2f4b8b0 .scope module, "Memory" "memory_cycle" 3 101, 17 2 0, S_0x7f83c2f26d60;
.timescale 0 0;
.port_info 0 /INPUT 1 "clk";
.port_info 1 /INPUT 1 "rst";
.port_info 2 /INPUT 1 "RegWriteM";
.port_info 3 /INPUT 1 "MemWriteM";
.port_info 4 /INPUT 2 "ResultSrcM";
.port_info 5 /INPUT 5 "RD_M";
.port_info 6 /INPUT 32 "PCPlus4M";
.port_info 7 /INPUT 32 "WriteDataM";
.port_info 8 /INPUT 32 "ALU_ResultM";
.port_info 9 /OUTPUT 1 "RegWriteW";
.port_info 10 /OUTPUT 2 "ResultSrcW";
.port_info 11 /OUTPUT 5 "RD_W";
.port_info 12 /OUTPUT 32 "PCPlus4W";
.port_info 13 /OUTPUT 32 "ALU_ResultW";
.port_info 14 /OUTPUT 32 "ReadDataW";
L_0x7f83c2f5d0f0 .functor BUFZ 1, v0x7f83c2f4d050_0, C4<0>, C4<0>, C4<0>;
L_0x7f83c2f5d1a0 .functor BUFZ 2, v0x7f83c2f4d340_0, C4<00>, C4<00>, C4<00>;
L_0x7f83c2f5d210 .functor BUFZ 5, v0x7f83c2f4cbf0_0, C4<00000>, C4<00000>, C4<00000>;
v0x7f83c2f4c680_0 .net "ALU_ResultM", 31 0, v0x7f83c2f473a0_0; alias, 1 drivers
v0x7f83c2f4c750_0 .var "ALU_ResultM_r", 31 0;
v0x7f83c2f4c7e0_0 .net "ALU_ResultW", 31 0, v0x7f83c2f4c750_0; alias, 1 drivers
v0x7f83c2f4c870_0 .net "MemWriteM", 0 0, L_0x7f83c2f5cb20; alias, 1 drivers
v0x7f83c2f4c940_0 .net "PCPlus4M", 31 0, L_0x7f83c2f5ccf0; alias, 1 drivers
v0x7f83c2f4ca10_0 .var "PCPlus4M_r", 31 0;
v0x7f83c2f4caa0_0 .net "PCPlus4W", 31 0, v0x7f83c2f4ca10_0; alias, 1 drivers
v0x7f83c2f4cb30_0 .net "RD_M", 4 0, L_0x7f83c2f5cc80; alias, 1 drivers
v0x7f83c2f4cbf0_0 .var "RD_M_r", 4 0;
v0x7f83c2f4cd10_0 .net "RD_W", 4 0, L_0x7f83c2f5d210; alias, 1 drivers
v0x7f83c2f4cdb0_0 .net "ReadDataM", 31 0, L_0x7f83c2f5d050; 1 drivers
v0x7f83c2f4ce50_0 .var "ReadDataM_r", 31 0;
v0x7f83c2f4cef0_0 .net "ReadDataW", 31 0, v0x7f83c2f4ce50_0; alias, 1 drivers
v0x7f83c2f4cfa0_0 .net "RegWriteM", 0 0, L_0x7f83c2f5cab0; alias, 1 drivers
v0x7f83c2f4d050_0 .var "RegWriteM_r", 0 0;
v0x7f83c2f4d0e0_0 .net "RegWriteW", 0 0, L_0x7f83c2f5d0f0; alias, 1 drivers
v0x7f83c2f4d180_0 .net "ResultSrcM", 1 0, L_0x7f83c2f5cc10; alias, 1 drivers
v0x7f83c2f4d340_0 .var "ResultSrcM_r", 1 0;
v0x7f83c2f4d3d0_0 .net "ResultSrcW", 1 0, L_0x7f83c2f5d1a0; 1 drivers
v0x7f83c2f4d460_0 .net "WriteDataM", 31 0, L_0x7f83c2f5cd60; alias, 1 drivers
v0x7f83c2f4d4f0_0 .net "clk", 0 0, v0x7f83c2f50790_0; alias, 1 drivers
v0x7f83c2f4d580_0 .net "rst", 0 0, v0x7f83c2f50820_0; alias, 1 drivers
S_0x7f83c2f4bc60 .scope module, "dmem" "Data_Memory" 17 16, 18 3 0, S_0x7f83c2f4b8b0;
.timescale 0 0;
.port_info 0 /INPUT 1 "clk";
.port_info 1 /INPUT 1 "rst";
.port_info 2 /INPUT 1 "WE";
.port_info 3 /INPUT 32 "WD";
.port_info 4 /INPUT 32 "A";
.port_info 5 /OUTPUT 32 "RD";
L_0x7f83c2f5cf40 .functor NOT 1, v0x7f83c2f50820_0, C4<0>, C4<0>, C4<0>;
v0x7f83c2f4bef0_0 .net "A", 31 0, v0x7f83c2f473a0_0; alias, 1 drivers
v0x7f83c2f4bfc0_0 .net "RD", 31 0, L_0x7f83c2f5d050; alias, 1 drivers
v0x7f83c2f4c050_0 .net "WD", 31 0, L_0x7f83c2f5cd60; alias, 1 drivers
v0x7f83c2f4c100_0 .net "WE", 0 0, L_0x7f83c2f5cb20; alias, 1 drivers
v0x7f83c2f4c1b0_0 .net *"_ivl_0", 0 0, L_0x7f83c2f5cf40; 1 drivers
L_0x7f83c3b74e68 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>;
v0x7f83c2f4c280_0 .net/2u *"_ivl_2", 31 0, L_0x7f83c3b74e68; 1 drivers
v0x7f83c2f4c320_0 .net *"_ivl_4", 31 0, L_0x7f83c2f5cfb0; 1 drivers
v0x7f83c2f4c3d0_0 .net "clk", 0 0, v0x7f83c2f50790_0; alias, 1 drivers
v0x7f83c2f4c460 .array "mem", 0 1023, 31 0;
v0x7f83c2f4c570_0 .net "rst", 0 0, v0x7f83c2f50820_0; alias, 1 drivers
L_0x7f83c2f5cfb0 .array/port v0x7f83c2f4c460, v0x7f83c2f473a0_0;
L_0x7f83c2f5d050 .functor MUXZ 32, L_0x7f83c2f5cfb0, L_0x7f83c3b74e68, L_0x7f83c2f5cf40, C4<>;
S_0x7f83c2f4d780 .scope module, "WriteBack" "writeback_cycle" 3 119, 19 2 0, S_0x7f83c2f26d60;
.timescale 0 0;
.port_info 0 /INPUT 1 "clk";
.port_info 1 /INPUT 1 "rst";
.port_info 2 /INPUT 2 "ResultSrcW";
.port_info 3 /INPUT 32 "PCPlus4W";
.port_info 4 /INPUT 32 "ALU_ResultW";
.port_info 5 /INPUT 32 "ReadDataW";
.port_info 6 /OUTPUT 32 "ResultW";
v0x7f83c2f4e630_0 .net "ALU_ResultW", 31 0, v0x7f83c2f4c750_0; alias, 1 drivers
v0x7f83c2f4e720_0 .net "PCPlus4W", 31 0, v0x7f83c2f4ca10_0; alias, 1 drivers
v0x7f83c2f4e7f0_0 .net "ReadDataW", 31 0, v0x7f83c2f4ce50_0; alias, 1 drivers
v0x7f83c2f4e8c0_0 .net "ResultSrcW", 1 0, o0x7f83c3b47ca8; alias, 0 drivers
v0x7f83c2f4e950_0 .net "ResultW", 31 0, L_0x7f83c2f5d870; alias, 1 drivers
v0x7f83c2f4ea20_0 .net "clk", 0 0, v0x7f83c2f50790_0; alias, 1 drivers
v0x7f83c2f4eab0_0 .net "intermediate_mux", 31 0, L_0x7f83c2f5d640; 1 drivers
v0x7f83c2f4eb80_0 .net "rst", 0 0, v0x7f83c2f50820_0; alias, 1 drivers
L_0x7f83c2f5d6e0 .part o0x7f83c3b47ca8, 1, 1;
L_0x7f83c2f5d9d0 .part o0x7f83c3b47ca8, 0, 1;
S_0x7f83c2f4da30 .scope module, "mux1" "Mux" 19 12, 13 3 0, S_0x7f83c2f4d780;
.timescale 0 0;
.port_info 0 /INPUT 32 "a";
.port_info 1 /INPUT 32 "b";
.port_info 2 /INPUT 1 "s";
.port_info 3 /OUTPUT 32 "c";
L_0x7f83c2f5d5d0 .functor NOT 1, L_0x7f83c2f5d6e0, C4<0>, C4<0>, C4<0>;
v0x7f83c2f4dc50_0 .net *"_ivl_0", 0 0, L_0x7f83c2f5d5d0; 1 drivers
v0x7f83c2f4dce0_0 .net "a", 31 0, v0x7f83c2f4c750_0; alias, 1 drivers
v0x7f83c2f4dd90_0 .net "b", 31 0, v0x7f83c2f4ca10_0; alias, 1 drivers
v0x7f83c2f4de60_0 .net "c", 31 0, L_0x7f83c2f5d640; alias, 1 drivers
v0x7f83c2f4def0_0 .net "s", 0 0, L_0x7f83c2f5d6e0; 1 drivers
L_0x7f83c2f5d640 .functor MUXZ 32, v0x7f83c2f4ca10_0, v0x7f83c2f4c750_0, L_0x7f83c2f5d5d0, C4<>;
S_0x7f83c2f4e000 .scope module, "mux2" "Mux" 19 19, 13 3 0, S_0x7f83c2f4d780;
.timescale 0 0;
.port_info 0 /INPUT 32 "a";