vt_decode.v
6.01 KB
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
// Module instances modified by /home/rws/workarea/rf/sw/bbplayer/tools/necprimfix
//
// 78 instances of ni01d7 changed to j_ni01.
//
/*
*************************************************************************
* *
* Copyright (C) 1994, Silicon Graphics, Inc. *
* *
* These coded instructions, statements, and computer programs contain *
* unpublished proprietary information of Silicon Graphics, Inc., and *
* are protected by Federal copyright law. They may not be disclosed *
* to third parties or copied or duplicated in any form, in whole or *
* in part, without the prior written consent of Silicon Graphics, Inc. *
* *
*************************************************************************
*/
// $Id:
// vt_decode.v: vt register address decode, 5->32,
`timescale 1ns / 10ps
module vt_decode(
rd_inst,
branch_or_addr_unbuf,
su_inst_6_unbuf,
su_inst_15_unbuf,
rd_inst_buf,
branch_or_addr,
su_inst6,
su_inst15
);
input [63:0] rd_inst;
input [11:0] branch_or_addr_unbuf;
input su_inst_6_unbuf;
input su_inst_15_unbuf;
output [11:0] branch_or_addr;
output [63:0] rd_inst_buf; // buffered instruction to rspbusses
output su_inst6;
output su_inst15;
j_ni01 br_buf_00(.i(branch_or_addr_unbuf[0]), .z(branch_or_addr[0]));
j_ni01 br_buf_01(.i(branch_or_addr_unbuf[1]), .z(branch_or_addr[1]));
j_ni01 br_buf_02(.i(branch_or_addr_unbuf[2]), .z(branch_or_addr[2]));
j_ni01 br_buf_03(.i(branch_or_addr_unbuf[3]), .z(branch_or_addr[3]));
j_ni01 br_buf_04(.i(branch_or_addr_unbuf[4]), .z(branch_or_addr[4]));
j_ni01 br_buf_05(.i(branch_or_addr_unbuf[5]), .z(branch_or_addr[5]));
j_ni01 br_buf_06(.i(branch_or_addr_unbuf[6]), .z(branch_or_addr[6]));
j_ni01 br_buf_07(.i(branch_or_addr_unbuf[7]), .z(branch_or_addr[7]));
j_ni01 br_buf_08(.i(branch_or_addr_unbuf[8]), .z(branch_or_addr[8]));
j_ni01 br_buf_09(.i(branch_or_addr_unbuf[9]), .z(branch_or_addr[9]));
j_ni01 br_buf_10(.i(branch_or_addr_unbuf[10]), .z(branch_or_addr[10]));
j_ni01 br_buf_11(.i(branch_or_addr_unbuf[11]), .z(branch_or_addr[11]));
j_ni01 su_inst_buf_6(.i(su_inst_6_unbuf), .z(su_inst6));
j_ni01 su_inst_buf_15(.i(su_inst_15_unbuf), .z(su_inst15));
// buffer rd_inst to send over to rspbusses
j_ni01 rd_inst_buf_0(.i(rd_inst[0]), .z(rd_inst_buf[0]));
j_ni01 rd_inst_buf_1(.i(rd_inst[1]), .z(rd_inst_buf[1]));
j_ni01 rd_inst_buf_2(.i(rd_inst[2]), .z(rd_inst_buf[2]));
j_ni01 rd_inst_buf_3(.i(rd_inst[3]), .z(rd_inst_buf[3]));
j_ni01 rd_inst_buf_4(.i(rd_inst[4]), .z(rd_inst_buf[4]));
j_ni01 rd_inst_buf_5(.i(rd_inst[5]), .z(rd_inst_buf[5]));
j_ni01 rd_inst_buf_6(.i(rd_inst[6]), .z(rd_inst_buf[6]));
j_ni01 rd_inst_buf_7(.i(rd_inst[7]), .z(rd_inst_buf[7]));
j_ni01 rd_inst_buf_8(.i(rd_inst[8]), .z(rd_inst_buf[8]));
j_ni01 rd_inst_buf_9(.i(rd_inst[9]), .z(rd_inst_buf[9]));
j_ni01 rd_inst_buf_10(.i(rd_inst[10]), .z(rd_inst_buf[10]));
j_ni01 rd_inst_buf_11(.i(rd_inst[11]), .z(rd_inst_buf[11]));
j_ni01 rd_inst_buf_12(.i(rd_inst[12]), .z(rd_inst_buf[12]));
j_ni01 rd_inst_buf_13(.i(rd_inst[13]), .z(rd_inst_buf[13]));
j_ni01 rd_inst_buf_14(.i(rd_inst[14]), .z(rd_inst_buf[14]));
j_ni01 rd_inst_buf_15(.i(rd_inst[15]), .z(rd_inst_buf[15]));
j_ni01 rd_inst_buf_16(.i(rd_inst[16]), .z(rd_inst_buf[16]));
j_ni01 rd_inst_buf_17(.i(rd_inst[17]), .z(rd_inst_buf[17]));
j_ni01 rd_inst_buf_18(.i(rd_inst[18]), .z(rd_inst_buf[18]));
j_ni01 rd_inst_buf_19(.i(rd_inst[19]), .z(rd_inst_buf[19]));
j_ni01 rd_inst_buf_20(.i(rd_inst[20]), .z(rd_inst_buf[20]));
j_ni01 rd_inst_buf_21(.i(rd_inst[21]), .z(rd_inst_buf[21]));
j_ni01 rd_inst_buf_22(.i(rd_inst[22]), .z(rd_inst_buf[22]));
j_ni01 rd_inst_buf_23(.i(rd_inst[23]), .z(rd_inst_buf[23]));
j_ni01 rd_inst_buf_24(.i(rd_inst[24]), .z(rd_inst_buf[24]));
j_ni01 rd_inst_buf_25(.i(rd_inst[25]), .z(rd_inst_buf[25]));
j_ni01 rd_inst_buf_26(.i(rd_inst[26]), .z(rd_inst_buf[26]));
j_ni01 rd_inst_buf_27(.i(rd_inst[27]), .z(rd_inst_buf[27]));
j_ni01 rd_inst_buf_28(.i(rd_inst[28]), .z(rd_inst_buf[28]));
j_ni01 rd_inst_buf_29(.i(rd_inst[29]), .z(rd_inst_buf[29]));
j_ni01 rd_inst_buf_30(.i(rd_inst[30]), .z(rd_inst_buf[30]));
j_ni01 rd_inst_buf_31(.i(rd_inst[31]), .z(rd_inst_buf[31]));
j_ni01 rd_inst_buf_32(.i(rd_inst[32]), .z(rd_inst_buf[32]));
j_ni01 rd_inst_buf_33(.i(rd_inst[33]), .z(rd_inst_buf[33]));
j_ni01 rd_inst_buf_34(.i(rd_inst[34]), .z(rd_inst_buf[34]));
j_ni01 rd_inst_buf_35(.i(rd_inst[35]), .z(rd_inst_buf[35]));
j_ni01 rd_inst_buf_36(.i(rd_inst[36]), .z(rd_inst_buf[36]));
j_ni01 rd_inst_buf_37(.i(rd_inst[37]), .z(rd_inst_buf[37]));
j_ni01 rd_inst_buf_38(.i(rd_inst[38]), .z(rd_inst_buf[38]));
j_ni01 rd_inst_buf_39(.i(rd_inst[39]), .z(rd_inst_buf[39]));
j_ni01 rd_inst_buf_40(.i(rd_inst[40]), .z(rd_inst_buf[40]));
j_ni01 rd_inst_buf_41(.i(rd_inst[41]), .z(rd_inst_buf[41]));
j_ni01 rd_inst_buf_42(.i(rd_inst[42]), .z(rd_inst_buf[42]));
j_ni01 rd_inst_buf_43(.i(rd_inst[43]), .z(rd_inst_buf[43]));
j_ni01 rd_inst_buf_44(.i(rd_inst[44]), .z(rd_inst_buf[44]));
j_ni01 rd_inst_buf_45(.i(rd_inst[45]), .z(rd_inst_buf[45]));
j_ni01 rd_inst_buf_46(.i(rd_inst[46]), .z(rd_inst_buf[46]));
j_ni01 rd_inst_buf_47(.i(rd_inst[47]), .z(rd_inst_buf[47]));
j_ni01 rd_inst_buf_48(.i(rd_inst[48]), .z(rd_inst_buf[48]));
j_ni01 rd_inst_buf_49(.i(rd_inst[49]), .z(rd_inst_buf[49]));
j_ni01 rd_inst_buf_50(.i(rd_inst[50]), .z(rd_inst_buf[50]));
j_ni01 rd_inst_buf_51(.i(rd_inst[51]), .z(rd_inst_buf[51]));
j_ni01 rd_inst_buf_52(.i(rd_inst[52]), .z(rd_inst_buf[52]));
j_ni01 rd_inst_buf_53(.i(rd_inst[53]), .z(rd_inst_buf[53]));
j_ni01 rd_inst_buf_54(.i(rd_inst[54]), .z(rd_inst_buf[54]));
j_ni01 rd_inst_buf_55(.i(rd_inst[55]), .z(rd_inst_buf[55]));
j_ni01 rd_inst_buf_56(.i(rd_inst[56]), .z(rd_inst_buf[56]));
j_ni01 rd_inst_buf_57(.i(rd_inst[57]), .z(rd_inst_buf[57]));
j_ni01 rd_inst_buf_58(.i(rd_inst[58]), .z(rd_inst_buf[58]));
j_ni01 rd_inst_buf_59(.i(rd_inst[59]), .z(rd_inst_buf[59]));
j_ni01 rd_inst_buf_60(.i(rd_inst[60]), .z(rd_inst_buf[60]));
j_ni01 rd_inst_buf_61(.i(rd_inst[61]), .z(rd_inst_buf[61]));
j_ni01 rd_inst_buf_62(.i(rd_inst[62]), .z(rd_inst_buf[62]));
j_ni01 rd_inst_buf_63(.i(rd_inst[63]), .z(rd_inst_buf[63]));
endmodule