CACHE WORKING just needs lb/sb
This commit is contained in:
File diff suppressed because it is too large
Load Diff
Binary file not shown.
@@ -1,405 +1,396 @@
|
||||
:0200000480007A
|
||||
:1000000037050200930570002322B500130000009D
|
||||
:100010001300000013000000032645001305000034
|
||||
:100020006B000500938B0600130D0700130F0100F2
|
||||
:100030009303050013051000635C75001301018034
|
||||
:10004000130305006B500300130515006FF0DFFE6E
|
||||
:100050001300000013000000130000001300000054
|
||||
:10006000130000001300000013010F00130500002F
|
||||
:10007000930F0600938D030013000000130000008F
|
||||
:100080001300000013000000130000001300000024
|
||||
:100090001300000013000000EBE0BF01130000009C
|
||||
:1000A0001300000013000000130000001300000004
|
||||
:1000B00013000000170500001305451B6B400500E9
|
||||
:1000C00017030000130343F66B0003006780000072
|
||||
:1000D000170200011302022423200200232212002F
|
||||
:1000E000232422002326320023284200232A520000
|
||||
:1000F000232C6200232E72002320820223229202EC
|
||||
:100100002324A2022326B2022328C202232AD202D7
|
||||
:10011000232CE202232EF2022320020523221205C1
|
||||
:10012000232422052326320523284205232A5205AB
|
||||
:10013000232C6205232E7205232082072322920797
|
||||
:100140002324A2072326B2072328C207232AD20783
|
||||
:10015000232CE207232EF207130210006780000011
|
||||
:10016000170200011302021B032002008320420039
|
||||
:10017000032182008321C200032202018322420163
|
||||
:10018000032382018323C201032402028324420247
|
||||
:10019000032582028325C20203260203832642032B
|
||||
:1001A000032782038327C20303280204832842040F
|
||||
:1001B000032982048329C204032A0205832A4205F3
|
||||
:1001C000032B8205832BC205032C0206832C4206D7
|
||||
:1001D000032D8206832DC206032E0207832E4207BB
|
||||
:1001E000032F8207832FC2071302000067800000DD
|
||||
:1001F00073250002678000007325100267800000ED
|
||||
:10020000130101FE232E1100232C8100130401028F
|
||||
:10021000232604FE6F0040030327C4FEB717000027
|
||||
:10022000938747973307F702B70700819387074102
|
||||
:10023000B307F70013850700EF0000448327C4FECF
|
||||
:10024000938717002326F4FE0327C4FE9307F001CB
|
||||
:10025000E3D4E7FC130000008320C10103248101E3
|
||||
:100260001301010267800000130101FD2326110222
|
||||
:10027000232481022322A10313040103130000009D
|
||||
:1002800013070D00B7170000938747973307F7024E
|
||||
:10029000B707008193870741B307F700138507006D
|
||||
:1002A000EF00405093070500638A070213070D0013
|
||||
:1002B000B70700811317270093878726B307F70036
|
||||
:1002C0001307100023A0E70093070D0063960700B3
|
||||
:1002D000EFF01FE96F00C0057300000013070D0069
|
||||
:1002E000B7170000938747973307F702B7070081D6
|
||||
:1002F00093870741B307F700130784FD93050700B1
|
||||
:1003000013850700EF000040832704FE13810700D8
|
||||
:100310008327C4FD832584FD032644FE832684FEB3
|
||||
:100320000327C4FE13850700EFF0DFCF7300000042
|
||||
:100330008320C10203248102032D41021301010322
|
||||
:1003400067800000130101FB23261104232481048C
|
||||
:1003500013040105EFF0DFE92324A4FE9309010053
|
||||
:10036000930710002326F4FE6F00C0080327C4FE85
|
||||
:10037000B7170000938747973307F702B707008145
|
||||
:1003800093870741B307F70013850700EF0080410B
|
||||
:1003900093070500639A07040327C4FEB7170000FC
|
||||
:1003A000938747973307F702B70700819387074181
|
||||
:1003B000B307F700130704FD930507001385070033
|
||||
:1003C000EF004034832784FD13810700832744FD19
|
||||
:1003D000832504FD0326C4FD832604FE032744FE73
|
||||
:1003E00013850700EFF0DFCD8327C4FE9387170046
|
||||
:1003F0002326F4FE8327C4FE032784FEE3E8E7F602
|
||||
:1004000013810900EFF0DFCC930702006388070433
|
||||
:10041000B707008113850741EF00C0389307050037
|
||||
:10042000639E0702930784FB93850700B70700814B
|
||||
:1004300013850741EF00002D832704FC138107007B
|
||||
:100440008327C4FB832584FB032644FC832684FC8A
|
||||
:100450000327C4FC13850700EFF0DFBC1300000086
|
||||
:100460008320C10403248104130101056780000077
|
||||
:10047000130101FB23261104232481041304010525
|
||||
:10048000232EA4FA232CB4FA232AC4FA2328D4FA5C
|
||||
:10049000EFF01FD7EFF0DFD52322A4FE13090100F0
|
||||
:1004A000232604FE232404FE6F000009B709FFFF82
|
||||
:1004B00033013101832784FE2326F4FC832784FB48
|
||||
:1004C0002328F4FC93070100232AF4FC832744FB30
|
||||
:1004D000232CF4FC832704FB232EF4FC8327C4FE87
|
||||
:1004E0002320F4FE0327C4FEB71700009387479725
|
||||
:1004F0003307F702B707008193870741B307F70077
|
||||
:100500001307C4FC9305070013850700EF000019CB
|
||||
:100510008327C4FE938717002326F4FE8327C4FE97
|
||||
:10052000032744FE63E4E700232604FE832784FEBA
|
||||
:10053000938717002324F4FE032784FE8327C4FB3C
|
||||
:10054000E366F7F613010900EFF0DFDF13000000A8
|
||||
:100550008320C10403248104130101056780000086
|
||||
:10056000130101FD23261102232481021304010338
|
||||
:10057000232EA4FC8325C4FDB7070081138507043F
|
||||
:10058000EF004035EFF0DFC62320A4FE232604FE53
|
||||
:100590006F008006930710002326F4FE232404FE38
|
||||
:1005A0006F00C003B7070081032784FE13172700DD
|
||||
:1005B00093878726B307F70003A707009307100068
|
||||
:1005C0006318F7008327C4FE938717002326F4FEE1
|
||||
:1005D000832784FE938717002324F4FE032784FED9
|
||||
:1005E0009307F001E3D0E7FC8325C4FEB707008141
|
||||
:1005F0001385C704EF00002E0327C4FE8327C4FD24
|
||||
:10060000E36AF7F8232204FE6F008002B707008137
|
||||
:10061000032744FE1317270093878726B307F700A5
|
||||
:1006200023A00700832744FE938717002322F4FEAC
|
||||
:10063000832744FE032704FEE3EAE7FC13000000DF
|
||||
:100640008320C1020324810213010103678000009B
|
||||
:10065000130101FF232681002324710113040101EA
|
||||
:1006600093870B00138507000324C100832B8100AF
|
||||
:1006700013010101678000009302050013030000CD
|
||||
:100680009303700023A0620023A2620023A46200EF
|
||||
:1006900023A6720023A86200678000009302050071
|
||||
:1006A00003A382001303130023A4620013834201F7
|
||||
:1006B00083AE420093935E003303730003AE0500E4
|
||||
:1006C0002320C30103AE45002322C30103AE8500EE
|
||||
:1006D0002324C30103AEC5002326C30103AE0501D5
|
||||
:1006E0002328C30103AE4501232AC301938E1E00B4
|
||||
:1006F000130F20036394EE01930E000023A2D20196
|
||||
:10070000678000009302050003A38200130000002D
|
||||
:10071000130000001300000013000000130000008D
|
||||
:10072000130000001303F3FF23A4620013834201AC
|
||||
:1007300083AE0200930F2003138F0E00130F1F00D0
|
||||
:100740006314FF01130F000023A0E20193935E00E6
|
||||
:1007500033037300032E030023A0C501032E4300BF
|
||||
:1007600023A2C501032E830023A4C501032EC300C9
|
||||
:1007700023A6C501032E030123A8C501032E4301AF
|
||||
:1007800023AAC501678000009302050003A382002D
|
||||
:1007900013050000130E200363146E0013051500EB
|
||||
:1007A000678000009302050003A382001305000088
|
||||
:1007B000130E000063146E0013051500678000001F
|
||||
:1007C0009302050003A3C20083A3020133B56300B3
|
||||
:1007D00067800000130141FF232011002322B10094
|
||||
:1007E0008345050063880500EF00C001130515006F
|
||||
:1007F0006FF01FFF83200100832541001301C1001A
|
||||
:1008000067800000B708010023A0B80067800000DF
|
||||
:10081000130101FD23261102232481021304010385
|
||||
:10082000232EA4FC0327C4FD9307F00063E4E70232
|
||||
:10083000B70700810327C4FD131727009387871A82
|
||||
:10084000B307F70083A7070013850700EFF09FF8B1
|
||||
:100850006F004007930700022326F4FEA30504FE61
|
||||
:100860008327C4FE9387C7FF0327C4FDB357F70050
|
||||
:1008700093F7F7002322F4FE832744FE63860700E4
|
||||
:1008800093071000A305F4FE8347B4FE63820702BA
|
||||
:10089000B7070081032744FE131727009387871AA1
|
||||
:1008A000B307F70083A7070013850700EFF09FF257
|
||||
:1008B0008327C4FE9387C7FF2326F4FE8327C4FE45
|
||||
:1008C000E340F0FA8320C1020324810213010103F3
|
||||
:1008D00067800000130101FE232E1100232C8100EC
|
||||
:1008E000130401022326A4FE2324B4FE0325C4FE20
|
||||
:1008F000EFF05FEE032584FEEFF09FF1B707008174
|
||||
:1009000013854709EFF01FED130000008320C1019C
|
||||
:10091000032481011301010267800000130101FD1E
|
||||
:10092000232611022324810213040103232EA4FC95
|
||||
:10093000232CB4FC232AC4FC2328D4FCB7670281EF
|
||||
:100940000327C4FD23ACE71AB76702819387871B8F
|
||||
:10095000032784FD23A2E700B76702819387871BE3
|
||||
:10096000032744FD23A4E700B76702819387871B11
|
||||
:10097000032704FD23A6E700EFF01F882324A4FE2D
|
||||
:10098000032704FD832784FEB357F7022326F4FED2
|
||||
:10099000032704FD832784FEB377F70263880700EB
|
||||
:1009A0008327C4FE938717002326F4FEB7670281CE
|
||||
:1009B0009387871B0327C4FE23A8E700032704FDB2
|
||||
:1009C000832784FE6362F702B76702819386871BE1
|
||||
:1009D000B7170080138607A4832584FE032504FD32
|
||||
:1009E000EFF01FA96F000002B76702819386871B93
|
||||
:1009F000B7170080138607A4832504FD032504FD93
|
||||
:100A0000EFF01FA7EFF0CFFE2322A4FE032704FD83
|
||||
:100A1000832744FE63F8E700032544FEEFF05FB44C
|
||||
:100A20006F00C000032504FDEFF09FB3130000002A
|
||||
:100A30008320C102032481021301010367800000A7
|
||||
:100A4000130101FA232E1104232C8104130401063F
|
||||
:100A50002326A4FA2324B4FAEFF09FBF232CA4FC8E
|
||||
:100A6000832784FD83A70700232AF4FC832784FDC2
|
||||
:100A700083A747002328F4FC832784FD83A78700EE
|
||||
:100A80002326F4FC832784FD83A707012326F4FE95
|
||||
:100A90000327C4FE8327C4FAB307F7022324F4FE16
|
||||
:100AA0008327C4FE639A0700930710002326F4FEF1
|
||||
:100AB0008327C4FA2324F4FE832784FD83A7C70079
|
||||
:100AC0002324F4FC232204FE6F00800D232004FE67
|
||||
:100AD000232E04FC6F008007032784FA832784FCFD
|
||||
:100AE000B307F7020327C4FDB307F7002322F4FC82
|
||||
:100AF000032784FC8327C4FDB307F702032784FE82
|
||||
:100B0000B307F7002320F4FC832744FC93972700C6
|
||||
:100B1000032744FDB307F70003A70700832704FC5E
|
||||
:100B200093972700832604FDB387F60083A7070069
|
||||
:100B3000B307F702032704FEB307F7002320F4FEF0
|
||||
:100B40008327C4FD93871700232EF4FC0327C4FDDD
|
||||
:100B5000832784FCE362F7F8032784FA832784FC65
|
||||
:100B60003307F702832784FEB307F700232EF4FA36
|
||||
:100B70008327C4FB939727000327C4FCB307F70020
|
||||
:100B8000032704FE23A0E700832784FE9387170032
|
||||
:100B90002324F4FE832744FE938717002322F4FEC8
|
||||
:100BA000832744FE0327C4FEE3E2E7F213000000BC
|
||||
:100BB0008320C1050324810513010106678000001D
|
||||
:100BC000130101FC232E1102232C810213040104C2
|
||||
:100BD000232EA4FC232CB4FC232AC4FC2328D4FCFD
|
||||
:100BE0002326E4FCB76702810327C4FD23A6E71C84
|
||||
:100BF000B76702819387C71C032784FD23A2E70000
|
||||
:100C0000B76702819387C71C032744FD23A4E7002D
|
||||
:100C1000B76702819387C71C0327C4FC23A6E7009C
|
||||
:100C2000B76702819387C71C032704FD23A8E70049
|
||||
:100C3000EFF08FDC2324A4FE0327C4FC832784FE6B
|
||||
:100C4000B357F7022326F4FE0327C4FC832784FE50
|
||||
:100C5000B377F702638807008327C4FE93871700E2
|
||||
:100C60002326F4FEB76702819387C71C0327C4FEBF
|
||||
:100C700023AAE7000327C4FC832784FE6362F702EC
|
||||
:100C8000B76702819386C71CB7170080138687CF8A
|
||||
:100C9000832584FE032504FDEFF08FFD6F00000225
|
||||
:100CA000B76702819386C71CB7170080138687CF6A
|
||||
:100CB0008325C4FC032504FDEFF08FFBEFF04FD339
|
||||
:100CC0002322A4FE032704FD832744FE63F8E700E4
|
||||
:100CD000032544FEEFF0DF886F00C000032504FD0C
|
||||
:100CE000EFF01F88130000008320C1030324810359
|
||||
:100CF0001301010467800000130101FB2326110486
|
||||
:100D00002324810413040105232EA4FA232CB4FA0E
|
||||
:100D1000EFF01F942320A4FE832704FE83A707007F
|
||||
:100D2000232EF4FC832704FE83A74700232CF4FC26
|
||||
:100D3000832704FE83A78700232AF4FC832704FE6D
|
||||
:100D400083A747012326F4FE0327C4FE8327C4FBA1
|
||||
:100D5000B307F7022324F4FE8327C4FE639A070037
|
||||
:100D6000930710002326F4FE8327C4FB2324F4FEFC
|
||||
:100D7000832704FE83A7C7002328F4FC232204FE54
|
||||
:100D80006F00000C032784FB832704FD3307F70261
|
||||
:100D9000832784FEB307F7002326F4FC032784FE91
|
||||
:100DA000832704FDB337F70093F7F70F2324F4FCF0
|
||||
:100DB000832784FC93B71700A303F4FC834774FCD8
|
||||
:100DC000138F0700B7170080938FC7E26B200F00C7
|
||||
:100DD0007B70FF018327C4FC939727000327C4FD82
|
||||
:100DE000B307F70083A607008327C4FC9397270067
|
||||
:100DF000032784FDB307F70003A707008327C4FC7C
|
||||
:100E000093972700032644FDB307F6003387E600D7
|
||||
:100E100023A0E700832784FE938717002324F4FE92
|
||||
:100E2000B7170080138E07E367000E001300000061
|
||||
:100E30006B300000832744FE938717002322F4FEC3
|
||||
:100E4000832744FE0327C4FEE3EEE7F2130000000D
|
||||
:100E50008320C1040324810413010105678000007D
|
||||
:100E6000130101FC232E1102232C8102130401041F
|
||||
:100E7000232EA4FC232CB4FC232AC4FC2328D4FC5A
|
||||
:100E80002326E4FCB76702810327C4FD23A6E71CE1
|
||||
:100E9000B76702819387C71C032784FD23A2E7005D
|
||||
:100EA000B76702819387C71C032744FD23A4E7008B
|
||||
:100EB000B76702819387C71C0327C4FC23A6E700FA
|
||||
:100EC000B76702819387C71C032704FD23A8E700A7
|
||||
:100ED000EFF08FB22324A4FE0327C4FC832784FEF3
|
||||
:100EE000B357F7022326F4FE0327C4FC832784FEAE
|
||||
:100EF000B377F702638807008327C4FE9387170040
|
||||
:100F00002326F4FEB76702819387C71C0327C4FE1C
|
||||
:100F100023AAE7000327C4FC832784FE6362F70249
|
||||
:100F2000B76702819386C71CB7170080138687F9BD
|
||||
:100F3000832584FE032504FDEFF08FD36F000002AC
|
||||
:100F4000B76702819386C71CB7170080138687F99D
|
||||
:100F50008325C4FC032504FDEFF08FD1EFF04FA9EA
|
||||
:100F60002322A4FE032704FD832744FE63F8E70041
|
||||
:100F7000032544FEEFF0CFDE6F00C000032504FD23
|
||||
:100F8000EFF00FDE130000008320C1030324810370
|
||||
:100F90001301010467800000130101FB23261104E3
|
||||
:100FA0002324810413040105232EA4FA232CB4FA6C
|
||||
:100FB000EFF00FEA2320A4FE832704FE83A7070097
|
||||
:100FC000232EF4FC832704FE83A74700232CF4FC84
|
||||
:100FD000832704FE83A78700232AF4FC832704FECB
|
||||
:100FE00083A747012326F4FE0327C4FE8327C4FBFF
|
||||
:100FF000B307F7022324F4FE8327C4FE639A070095
|
||||
:10100000930710002326F4FE8327C4FB2324F4FE59
|
||||
:10101000832704FE83A7C7002328F4FC232204FEB1
|
||||
:101020006F00000C032784FB832704FD3307F702BE
|
||||
:10103000832784FEB307F7002326F4FC032784FEEE
|
||||
:10104000832704FDB337F70093F7F70F2324F4FC4D
|
||||
:10105000832784FC93B71700A303F4FC834774FC35
|
||||
:10106000138F0700B7170080938FC70C6B200F00FA
|
||||
:101070007B70FF018327C4FC939727000327C4FDDF
|
||||
:10108000B307F70083A607008327C4FC93972700C4
|
||||
:10109000032784FDB307F70003A707008327C4FCD9
|
||||
:1010A00093972700032644FDB307F6003387E640F5
|
||||
:1010B00023A0E700832784FE938717002324F4FEF0
|
||||
:1010C000B7170080138E070D67000E001300000095
|
||||
:1010D0006B300000832744FE938717002322F4FE21
|
||||
:1010E000832744FE0327C4FEE3EEE7F2130000006B
|
||||
:1010F0008320C104032481041301010567800000DB
|
||||
:10110000130101FC232E1102232C8102130401047C
|
||||
:10111000232EA4FC232CB4FC232AC4FC2328D4FCB7
|
||||
:101120002326E4FCB76702810327C4FD23A2E71E40
|
||||
:10113000B76702819387471E032784FD23A2E70038
|
||||
:10114000B76702819387471E032744FD23A4E70066
|
||||
:10115000B76702819387471E0327C4FC23A6E700D5
|
||||
:10116000B76702819387471E032704FD23A8E70082
|
||||
:10117000EFF08F882324A4FE0327C4FC832784FE7A
|
||||
:10118000B357F7022326F4FE0327C4FC832784FE0B
|
||||
:10119000B377F702638807008327C4FE938717009D
|
||||
:1011A0002326F4FEB76702819387471E0327C4FEF8
|
||||
:1011B00023AAE7000327C4FC832784FE6362F702A7
|
||||
:1011C000B76702819386471EB7170080138687236F
|
||||
:1011D000832584FE032504FDEFF08FA96F00000234
|
||||
:1011E000B76702819386471EB7170080138687234F
|
||||
:1011F0008325C4FC032504FDEFF08FA7EFE05FFF1C
|
||||
:101200002322A4FE032704FD832744FE63F8E7009E
|
||||
:10121000032544FEEFF0CFB46F00C000032504FDAA
|
||||
:10122000EFF00FB4130000008320C10303248103F7
|
||||
:101230001301010467800000130101FB2326110440
|
||||
:101240002324810413040105232EA4FA232CB4FAC9
|
||||
:10125000EFF00FC02320A4FE832704FE83A707001E
|
||||
:10126000232EF4FC832704FE83A7470083A70700EF
|
||||
:10127000232CF4FC832704FE83A78700232AF4FC95
|
||||
:10128000832704FE83A747012326F4FE0327C4FE19
|
||||
:101290008327C4FBB307F7022324F4FE8327C4FE8D
|
||||
:1012A000639A0700930710002326F4FE8327C4FBEC
|
||||
:1012B0002324F4FE832704FE83A7C7002328F4FC1D
|
||||
:1012C000232204FE6F00000B032784FB832704FD09
|
||||
:1012D0003307F702832784FEB307F7002326F4FCC5
|
||||
:1012E000032784FE832704FDB337F70093F7F70F36
|
||||
:1012F0002324F4FC832784FC93B71700A303F4FC96
|
||||
:10130000834774FC138F0700B7170080938F07364D
|
||||
:101310006B200F007B70FF018327C4FC939727008D
|
||||
:101320000327C4FDB307F70083A607008327C4FC87
|
||||
:1013300093972700032744FDB307F700032784FD95
|
||||
:101340003387E60023A0E700832784FE93871700F6
|
||||
:101350002324F4FEB7170080138E473667000E0073
|
||||
:10136000130000006B300000832744FE93871700B2
|
||||
:101370002322F4FE832744FE0327C4FEE3E6E7F4BA
|
||||
:10138000130000008320C10403248104130101051C
|
||||
:1013900067800000130101FC232E1102232C81021F
|
||||
:1013A00013040104232EA4FC232CB4FC232AC4FC24
|
||||
:1013B0002328D4FC2326E4FCB76702810327C4FD5D
|
||||
:1013C00023A2E71EB76702819387471E032784FD88
|
||||
:1013D00023A2E700B76702819387471E032744FDD6
|
||||
:1013E00023A4E700B76702819387471E0327C4FC45
|
||||
:1013F00023A6E700B76702819387471E032704FDF2
|
||||
:1014000023A8E700EFE05FDF2324A4FE0327C4FC4A
|
||||
:10141000832784FEB357F7022326F4FE0327C4FC78
|
||||
:10142000832784FEB377F702638807008327C4FE0F
|
||||
:10143000938717002326F4FEB76702819387471E20
|
||||
:101440000327C4FE23AAE7000327C4FC832784FEE6
|
||||
:101450006362F702B76702819386471EB717008061
|
||||
:101460001386C74C832584FE032504FDEFF04F80CF
|
||||
:101470006F000002B76702819386471EB71700808E
|
||||
:101480001386C74C8325C4FC032504FDEFE05FFEF3
|
||||
:10149000EFE01FD62322A4FE032704FD832744FE8A
|
||||
:1014A00063F8E700032544FEEFF08F8B6F00C00068
|
||||
:1014B000032504FDEFF0CF8A130000008320C10351
|
||||
:1014C000032481031301010467800000130101FB61
|
||||
:1014D000232611042324810413040105232EA4FAD6
|
||||
:1014E000232CB4FAEFF0CF962320A4FE832704FE2A
|
||||
:1014F00083A70700232EF4FC832704FE83A747005D
|
||||
:1015000083A70700232CF4FC832704FE83A787000E
|
||||
:10151000232AF4FC832704FE83A747012326F4FE35
|
||||
:101520000327C4FE8327C4FBB307F7022324F4FE7A
|
||||
:101530008327C4FE639A0700930710002326F4FE56
|
||||
:101540008327C4FB2324F4FE832704FE83A7C7005C
|
||||
:101550002328F4FC232204FE6F00000B032784FBE6
|
||||
:10156000832704FD3307F702832784FEB307F700C0
|
||||
:101570002326F4FC032784FE832704FDB337F700FA
|
||||
:1015800093F7F70F2324F4FC832784FC93B7170009
|
||||
:10159000A303F4FC834774FC138F0700B717008084
|
||||
:1015A000938F475F6B200F007B70FF018327C4FC84
|
||||
:1015B000939727000327C4FDB307F70083A607000E
|
||||
:1015C0008327C4FC93972700032744FDB307F70044
|
||||
:1015D000032784FD3387E60223A0E700832784FEE8
|
||||
:1015E000938717002324F4FEB7170080138E875FBC
|
||||
:1015F00067000E00130000006B300000832744FEDC
|
||||
:10160000938717002322F4FE832744FE0327C4FE9A
|
||||
:10161000E3E6E7F4130000008320C10403248104FF
|
||||
:101620001301010567800000130101FD23268102DB
|
||||
:1016300013040103232EA4FC232604FE6F000001E3
|
||||
:101640008327C4FE938717002326F4FE0327C4FED6
|
||||
:101650008327C4FDE346F7FE130000000324C10204
|
||||
:101660001301010367800000130101FD232611020D
|
||||
:101670002324810213040103232EA4FC232CB4FC95
|
||||
:10168000B76702811387C71F8327C4FDB307F7001D
|
||||
:10169000130710002380E7008327C4FD6390070C25
|
||||
:1016A000A30104FE232604FE6F00800A232604FE05
|
||||
:1016B000232404FE6F004003B76702811387C71F0E
|
||||
:1016C000832784FEB307F70083C7070063880700FA
|
||||
:1016D0008327C4FE938717002326F4FE832784FE06
|
||||
:1016E000938717002324F4FE032784FE832784FDB9
|
||||
:1016F000E344F7FC0327C4FE832784FD631AF70441
|
||||
:10170000232204FE6F000004B76702811387C71FFE
|
||||
:10171000832744FEB307F70023800700B7970281B1
|
||||
:10172000130710002382E72C13056004EFF0DFEFAE
|
||||
:10173000B79702812382072C832744FE93871700E3
|
||||
:101740002322F4FE032744FE832784FDE34EF7FAA9
|
||||
:10175000834734FEE39C07F46F004002130000004F
|
||||
:10176000B797028183C7472C93C7170093F7F70FEA
|
||||
:10177000E39807FE13054006EFF01FEB130000008F
|
||||
:101780008320C1020324810213010103678000004A
|
||||
:10179000130101FF232681001304010193070000B8
|
||||
:1017A0001308000013850700930508000324C100F7
|
||||
:1017B0001301010167800000130101FE232E810047
|
||||
:1017C00013040102232604FE6F008004B767028120
|
||||
:1017D0000327C4FE131727009387C721B307F70019
|
||||
:1017E0001307300023A0E700B77702810327C4FE68
|
||||
:1017F000131727009387C721B307F70013072000AB
|
||||
:1018000023A0E7008327C4FE938717002326F4FE56
|
||||
:101810000327C4FE9307F00FE3DAE7FA1300000092
|
||||
:101820000324C1011301010267800000130101FDBF
|
||||
:10183000232611022324810213040103232EA4FC76
|
||||
:10184000B707008113858711EFE0DFF8232604FE38
|
||||
:101850006F0080058327C4FE638E07008327C4FEC4
|
||||
:1018600093F7F70063980700B70700811385C71344
|
||||
:10187000EFE05FF68327C4FE939727000327C4FD9C
|
||||
:10188000B307F70083A7070013850700EFE05FF8B1
|
||||
:10189000B707008113850714EFE0DFF38327C4FE49
|
||||
:1018A000938717002326F4FE0327C4FE9307F00F47
|
||||
:1018B000E3D2E7FAB707008113854714EFE09FF101
|
||||
:1018C000130000008320C1020324810213010103DD
|
||||
:1018D00067800000130101FF2326110023248100EB
|
||||
:1018E00013040101EFF05FEDB76702811385C72193
|
||||
:1018F000EFF0DFF393070000138507008320C1009A
|
||||
:0C19000003248100130101016780000036
|
||||
:1000000037F1FF7FEF101004130500006B000500AF
|
||||
:10001000938B0600130D0700130F010093030500D7
|
||||
:1000200013051000635C75001301018013030500C4
|
||||
:100030006B500300130515006FF0DFFE1300000086
|
||||
:100040001300000013000000130000001300000064
|
||||
:100050001300000013010F0013050000930F0600AA
|
||||
:10006000938D030013000000130000001300000034
|
||||
:100070001300000013000000130000001300000034
|
||||
:1000800013000000EBE0BF011300000013000000AC
|
||||
:100090001300000013000000130000001300000014
|
||||
:1000A000170500001305451B6B40050017030000F2
|
||||
:1000B000130343F66B000300678000001702000182
|
||||
:1000C000130282252320020023221200232422006F
|
||||
:1000D0002326320023284200232A5200232C6200C8
|
||||
:1000E000232E720023208202232292022324A202C2
|
||||
:1000F0002326B2022328C202232AD202232CE202A0
|
||||
:10010000232EF20223200205232212052324220596
|
||||
:100110002326320523284205232A5205232C620573
|
||||
:10012000232E720523208207232292072324A2076D
|
||||
:100130002326B2072328C207232AD207232CE2074B
|
||||
:10014000232EF2071302100067800000170200013F
|
||||
:100150001302821C0320020083204200032182003C
|
||||
:100160008321C20003220201832242010323820170
|
||||
:100170008323C20103240202832442020325820254
|
||||
:100180008325C20203260203832642030327820338
|
||||
:100190008327C2030328020483284204032982041C
|
||||
:1001A0008329C204032A0205832A4205032B820500
|
||||
:1001B000832BC205032C0206832C4206032D8206E4
|
||||
:1001C000832DC206032E0207832E4207032F8207C8
|
||||
:1001D000832FC2071302000067800000732500020E
|
||||
:1001E000678000007325100267800000130101FE84
|
||||
:1001F000232E1100232C810013040102232604FE68
|
||||
:100200006F0040030327C4FEB7170000938747978A
|
||||
:100210003307F702B707008193874741B307F70019
|
||||
:1002200013850700EF0000448327C4FE938717005F
|
||||
:100230002326F4FE0327C4FE9307F001E3D4E7FC72
|
||||
:10024000130000008320C101032481011301010276
|
||||
:1002500067800000130101FD23261102232481027F
|
||||
:100260002322A103130401031300000013070D0050
|
||||
:10027000B7170000938747973307F702B707008146
|
||||
:1002800093874741B307F70013850700EF004050FD
|
||||
:1002900093070500638A070213070D00B707008163
|
||||
:1002A000131727009387C726B307F700130710001B
|
||||
:1002B00023A0E70093070D0063960700EFF01FE906
|
||||
:1002C0006F00C0057300000013070D00B717000092
|
||||
:1002D000938747973307F702B70700819387474112
|
||||
:1002E000B307F700130784FD930507001385070084
|
||||
:1002F000EF000040832704FE138107008327C4FD1D
|
||||
:10030000832584FD032644FE832684FE0327C4FE42
|
||||
:1003100013850700EFF0DFCF730000008320C102D8
|
||||
:1003200003248102032D41021301010367800000B1
|
||||
:10033000130101FB23261104232481041304010566
|
||||
:10034000EFF0DFE92324A4FE9309010093071000D6
|
||||
:100350002326F4FE6F00C0080327C4FEB717000071
|
||||
:10036000938747973307F702B70700819387474181
|
||||
:10037000B307F70013850700EF00804193070500DE
|
||||
:10038000639A07040327C4FEB717000093874797B3
|
||||
:100390003307F702B707008193874741B307F70098
|
||||
:1003A000130704FD9305070013850700EF00403491
|
||||
:1003B000832784FD13810700832744FD832504FDE3
|
||||
:1003C0000326C4FD832604FE032744FE138507008D
|
||||
:1003D000EFF0DFCD8327C4FE938717002326F4FEBA
|
||||
:1003E0008327C4FE032784FEE3E8E7F613810900B0
|
||||
:1003F000EFF0DFCC9307020063880704B7070081A2
|
||||
:1004000013854741EF00C03893070500639E07023C
|
||||
:10041000930784FB93850700B70700811385474145
|
||||
:10042000EF00002D832704FC138107008327C4FB02
|
||||
:10043000832584FB032644FC832684FC0327C4FC19
|
||||
:1004400013850700EFF0DFBC130000008320C10418
|
||||
:10045000032481041301010567800000130101FBDF
|
||||
:10046000232611042324810413040105232EA4FA56
|
||||
:10047000232CB4FA232AC4FA2328D4FAEFF01FD786
|
||||
:10048000EFF0DFD52322A4FE13090100232604FE8A
|
||||
:10049000232404FE6F000009B709FFFF3301310177
|
||||
:1004A000832784FE2326F4FC832784FB2328F4FC83
|
||||
:1004B00093070100232AF4FC832744FB232CF4FC3C
|
||||
:1004C000832704FB232EF4FC8327C4FE2320F4FEA1
|
||||
:1004D0000327C4FEB7170000938747973307F70237
|
||||
:1004E000B707008193874741B307F7001307C4FCA0
|
||||
:1004F0009305070013850700EF0000198327C4FE4A
|
||||
:10050000938717002326F4FE8327C4FE032744FEA7
|
||||
:1005100063E4E700232604FE832784FE9387170005
|
||||
:100520002324F4FE032784FE8327C4FBE366F7F647
|
||||
:1005300013010900EFF0DFDF130000008320C10486
|
||||
:10054000032481041301010567800000130101FDEC
|
||||
:10055000232611022324810213040103232EA4FC69
|
||||
:100560008325C4FDB707008113850704EF00802DA4
|
||||
:10057000EFF0DFC62320A4FE232604FE6F008006D2
|
||||
:10058000930710002326F4FE232404FE6F00C0030B
|
||||
:10059000B7070081032784FE131727009387C72618
|
||||
:1005A000B307F70003A70700930710006318F700CD
|
||||
:1005B0008327C4FE938717002326F4FE832784FE37
|
||||
:1005C000938717002324F4FE032784FE9307F0018A
|
||||
:1005D000E3D0E7FC8325C4FEB70700811385C70479
|
||||
:1005E000EF0040260327C4FE8327C4FDE36AF7F823
|
||||
:1005F000232204FE6F008002B7070081032744FE18
|
||||
:10060000131727009387C726B307F70023A0070017
|
||||
:10061000832744FE938717002322F4FE832744FE9A
|
||||
:10062000032704FEE3EAE7FC130000008320C10275
|
||||
:10063000032481021301010367800000130101FFFD
|
||||
:1006400023268100232471011304010193870B00E9
|
||||
:10065000138507000324C100832B810013010101CE
|
||||
:1006600067800000930205001303000093037000ED
|
||||
:1006700023A0620023A2620023A4620023A67200CA
|
||||
:1006800023A86200678000009302050003A3820094
|
||||
:100690001303130023A462001383420183AE4200BC
|
||||
:1006A00093935E003303730003AE05002320C30160
|
||||
:1006B00003AE45002322C30103AE85002324C301FA
|
||||
:1006C00003AEC5002326C30103AE05012328C301E1
|
||||
:1006D00003AE4501232AC301938E1E00130F20038E
|
||||
:1006E0006394EE01930E000023A2D2016780000004
|
||||
:1006F0009302050003A38200130000001300000012
|
||||
:10070000130000001300000013000000130000009D
|
||||
:100710001303F3FF23A462001383420183AE02009C
|
||||
:10072000930F2003138F0E00130F1F006314FF019C
|
||||
:10073000130F000023A0E20193935E0033037300C4
|
||||
:10074000032E030023A0C501032E430023A2C501ED
|
||||
:10075000032E830023A4C501032EC30023A6C501D5
|
||||
:10076000032E030123A8C501032E430123AAC501BB
|
||||
:10077000678000009302050003A3820013050000B8
|
||||
:10078000130E200363146E0013051500678000002C
|
||||
:100790009302050003A3820013050000130E00005E
|
||||
:1007A00063146E00130515006780000093020500B6
|
||||
:1007B00003A3C20083A3020133B563006780000076
|
||||
:1007C000130141FF232011002322B10083450500BE
|
||||
:1007D00063880500EF00C001130515006FF01FFFCF
|
||||
:1007E00083200100832541001301C10067800000C0
|
||||
:1007F000B708010023A0B80067800000130101FEC4
|
||||
:10080000232E1100232C8100130401022326A4FEB1
|
||||
:10081000B70700810327C4FE131727009387871AA1
|
||||
:10082000B307F70083A7070013850700EFF05FF910
|
||||
:10083000130000008320C101032481011301010280
|
||||
:1008400067800000130101FE232E1100232C81007C
|
||||
:10085000130401022326A4FE2324B4FE0325C4FEB0
|
||||
:10086000EFF01FF6032584FEEFF05FF9B707008174
|
||||
:1008700013854709EFF0DFF4130000008320C10166
|
||||
:10088000032481011301010267800000130101FDAF
|
||||
:10089000232611022324810213040103232EA4FC26
|
||||
:1008A000232CB4FC232AC4FC2328D4FCB767028180
|
||||
:1008B0000327C4FD23AEE71AB76702819387C71BDE
|
||||
:1008C000032784FD23A2E700B76702819387C71B34
|
||||
:1008D000032744FD23A4E700B76702819387C71B62
|
||||
:1008E000032704FD23A6E700EFF0DF8F2324A4FEF7
|
||||
:1008F000032704FD832784FEB357F7022326F4FE63
|
||||
:10090000032704FD832784FEB377F702638807007B
|
||||
:100910008327C4FE938717002326F4FEB76702815E
|
||||
:100920009387C71B0327C4FE23A8E700032704FD02
|
||||
:10093000832784FE6362F702B76702819386C71B31
|
||||
:10094000B71700801386079B832584FE032504FDCB
|
||||
:10095000EFF0DFB06F000002B76702819386C71B1C
|
||||
:10096000B71700801386079B832504FD032504FD2C
|
||||
:10097000EFF0DFAEEFF09F862322A4FE032704FDF5
|
||||
:10098000832744FE63F8E700032544FEEFF01FBC15
|
||||
:100990006F00C000032504FDEFF05FBB13000000F3
|
||||
:1009A0008320C10203248102130101036780000038
|
||||
:1009B000130101FA232E1104232C810413040106D0
|
||||
:1009C0002326A4FA2324B4FAEFF05FC7232CA4FC57
|
||||
:1009D000832784FD83A70700232AF4FC832784FD53
|
||||
:1009E00083A747002328F4FC832784FD83A787007F
|
||||
:1009F0002326F4FC832784FD83A707012326F4FE26
|
||||
:100A00000327C4FE8327C4FAB307F7022324F4FEA6
|
||||
:100A10008327C4FE639A0700930710002326F4FE81
|
||||
:100A20008327C4FA2324F4FE832784FD83A7C70009
|
||||
:100A30002324F4FC232204FE6F00800D232004FEF7
|
||||
:100A4000232E04FC6F008007032784FA832784FC8D
|
||||
:100A5000B307F7020327C4FDB307F7002322F4FC12
|
||||
:100A6000032784FC8327C4FDB307F702032784FE12
|
||||
:100A7000B307F7002320F4FC832744FC9397270057
|
||||
:100A8000032744FDB307F70003A70700832704FCEF
|
||||
:100A900093972700832604FDB387F60083A70700FA
|
||||
:100AA000B307F702032704FEB307F7002320F4FE81
|
||||
:100AB0008327C4FD93871700232EF4FC0327C4FD6E
|
||||
:100AC000832784FCE362F7F8032784FA832784FCF6
|
||||
:100AD0003307F702832784FEB307F700232EF4FAC7
|
||||
:100AE0008327C4FB939727000327C4FCB307F700B1
|
||||
:100AF000032704FE23A0E700832784FE93871700C3
|
||||
:100B00002324F4FE832744FE938717002322F4FE58
|
||||
:100B1000832744FE0327C4FEE3E2E7F2130000004C
|
||||
:100B20008320C105032481051301010667800000AD
|
||||
:100B3000130101FC232E1102232C81021304010452
|
||||
:100B4000232EA4FC232CB4FC232AC4FC2328D4FC8D
|
||||
:100B50002326E4FCB76702810327C4FD23A8E71C12
|
||||
:100B6000B76702819387071D032784FD23A2E7004F
|
||||
:100B7000B76702819387071D032744FD23A4E7007D
|
||||
:100B8000B76702819387071D0327C4FC23A6E700EC
|
||||
:100B9000B76702819387071D032704FD23A8E70099
|
||||
:100BA000EFF04FE42324A4FE0327C4FC832784FE34
|
||||
:100BB000B357F7022326F4FE0327C4FC832784FEE1
|
||||
:100BC000B377F702638807008327C4FE9387170073
|
||||
:100BD0002326F4FEB76702819387071D0327C4FE0F
|
||||
:100BE00023AAE7000327C4FC832784FE6362F7027D
|
||||
:100BF000B76702819386071DB7170080138687C6E3
|
||||
:100C0000832584FE032504FDEFF05F856F0000025D
|
||||
:100C1000B76702819386071DB7170080138687C6C2
|
||||
:100C20008325C4FC032504FDEFF05F83EFF00FDBA9
|
||||
:100C30002322A4FE032704FD832744FE63F8E70074
|
||||
:100C4000032544FEEFF09F906F00C000032504FDD4
|
||||
:100C5000EFF0DF8F130000008320C1030324810322
|
||||
:100C60001301010467800000130101FB2326110416
|
||||
:100C70002324810413040105232EA4FA232CB4FA9F
|
||||
:100C8000EFF0DF9B2320A4FE832704FE83A7070049
|
||||
:100C9000232EF4FC832704FE83A74700232CF4FCB7
|
||||
:100CA000832704FE83A78700232AF4FC832704FEFE
|
||||
:100CB00083A747012326F4FE0327C4FE8327C4FB32
|
||||
:100CC000B307F7022324F4FE8327C4FE639A0700C8
|
||||
:100CD000930710002326F4FE8327C4FB2324F4FE8D
|
||||
:100CE000832704FE83A7C7002328F4FC232204FEE5
|
||||
:100CF0006F00000C032784FB832704FD3307F702F2
|
||||
:100D0000832784FEB307F7002326F4FC032784FE21
|
||||
:100D1000832704FDB337F70093F7F70F2324F4FC80
|
||||
:100D2000832784FC93B71700A303F4FC834774FC68
|
||||
:100D3000138F0700B7170080938FC7D96B200F0060
|
||||
:100D40007B70FF018327C4FC939727000327C4FD12
|
||||
:100D5000B307F70083A607008327C4FC93972700F7
|
||||
:100D6000032784FDB307F70003A707008327C4FC0C
|
||||
:100D700093972700032644FDB307F6003387E60068
|
||||
:100D800023A0E700832784FE938717002324F4FE23
|
||||
:100D9000B7170080138E07DA67000E0013000000FB
|
||||
:100DA0006B300000832744FE938717002322F4FE54
|
||||
:100DB000832744FE0327C4FEE3EEE7F2130000009E
|
||||
:100DC0008320C1040324810413010105678000000E
|
||||
:100DD000130101FC232E1102232C810213040104B0
|
||||
:100DE000232EA4FC232CB4FC232AC4FC2328D4FCEB
|
||||
:100DF0002326E4FCB76702810327C4FD23A8E71C70
|
||||
:100E0000B76702819387071D032784FD23A2E700AC
|
||||
:100E1000B76702819387071D032744FD23A4E700DA
|
||||
:100E2000B76702819387071D0327C4FC23A6E70049
|
||||
:100E3000B76702819387071D032704FD23A8E700F6
|
||||
:100E4000EFF04FBA2324A4FE0327C4FC832784FEBB
|
||||
:100E5000B357F7022326F4FE0327C4FC832784FE3E
|
||||
:100E6000B377F702638807008327C4FE93871700D0
|
||||
:100E70002326F4FEB76702819387071D0327C4FE6C
|
||||
:100E800023AAE7000327C4FC832784FE6362F702DA
|
||||
:100E9000B76702819386071DB7170080138687F016
|
||||
:100EA000832584FE032504FDEFF04FDB6F00000275
|
||||
:100EB000B76702819386071DB7170080138687F0F6
|
||||
:100EC0008325C4FC032504FDEFF04FD9EFF00FB1EB
|
||||
:100ED0002322A4FE032704FD832744FE63F8E700D2
|
||||
:100EE000032544FEEFF08FE66F00C000032504FDEC
|
||||
:100EF000EFF0CFE5130000008320C103032481033A
|
||||
:100F00001301010467800000130101FB2326110473
|
||||
:100F10002324810413040105232EA4FA232CB4FAFC
|
||||
:100F2000EFF0CFF12320A4FE832704FE83A7070060
|
||||
:100F3000232EF4FC832704FE83A74700232CF4FC14
|
||||
:100F4000832704FE83A78700232AF4FC832704FE5B
|
||||
:100F500083A747012326F4FE0327C4FE8327C4FB8F
|
||||
:100F6000B307F7022324F4FE8327C4FE639A070025
|
||||
:100F7000930710002326F4FE8327C4FB2324F4FEEA
|
||||
:100F8000832704FE83A7C7002328F4FC232204FE42
|
||||
:100F90006F00000C032784FB832704FD3307F7024F
|
||||
:100FA000832784FEB307F7002326F4FC032784FE7F
|
||||
:100FB000832704FDB337F70093F7F70F2324F4FCDE
|
||||
:100FC000832784FC93B71700A303F4FC834774FCC6
|
||||
:100FD000138F0700B7170080938FC7036B200F0094
|
||||
:100FE0007B70FF018327C4FC939727000327C4FD70
|
||||
:100FF000B307F70083A607008327C4FC9397270055
|
||||
:10100000032784FDB307F70003A707008327C4FC69
|
||||
:1010100093972700032644FDB307F6003387E64085
|
||||
:1010200023A0E700832784FE938717002324F4FE80
|
||||
:10103000B7170080138E070467000E00130000002E
|
||||
:101040006B300000832744FE938717002322F4FEB1
|
||||
:10105000832744FE0327C4FEE3EEE7F213000000FB
|
||||
:101060008320C1040324810413010105678000006B
|
||||
:10107000130101FC232E1102232C8102130401040D
|
||||
:10108000232EA4FC232CB4FC232AC4FC2328D4FC48
|
||||
:101090002326E4FCB76702810327C4FD23A4E71ECF
|
||||
:1010A000B76702819387871E032784FD23A2E70089
|
||||
:1010B000B76702819387871E032744FD23A4E700B7
|
||||
:1010C000B76702819387871E0327C4FC23A6E70026
|
||||
:1010D000B76702819387871E032704FD23A8E700D3
|
||||
:1010E000EFF04F902324A4FE0327C4FC832784FE43
|
||||
:1010F000B357F7022326F4FE0327C4FC832784FE9C
|
||||
:10110000B377F702638807008327C4FE938717002D
|
||||
:101110002326F4FEB76702819387871E0327C4FE48
|
||||
:1011200023AAE7000327C4FC832784FE6362F70237
|
||||
:10113000B76702819386871EB71700801386871AC8
|
||||
:10114000832584FE032504FDEFF04FB16F000002FC
|
||||
:10115000B76702819386871EB71700801386871AA8
|
||||
:101160008325C4FC032504FDEFF04FAFEFF00F879C
|
||||
:101170002322A4FE032704FD832744FE63F8E7002F
|
||||
:10118000032544FEEFF08FBC6F00C000032504FD73
|
||||
:10119000EFF0CFBB130000008320C10303248103C1
|
||||
:1011A0001301010467800000130101FB23261104D1
|
||||
:1011B0002324810413040105232EA4FA232CB4FA5A
|
||||
:1011C000EFF0CFC72320A4FE832704FE83A70700E8
|
||||
:1011D000232EF4FC832704FE83A7470083A7070080
|
||||
:1011E000232CF4FC832704FE83A78700232AF4FC26
|
||||
:1011F000832704FE83A747012326F4FE0327C4FEAA
|
||||
:101200008327C4FBB307F7022324F4FE8327C4FE1D
|
||||
:10121000639A0700930710002326F4FE8327C4FB7C
|
||||
:101220002324F4FE832704FE83A7C7002328F4FCAD
|
||||
:10123000232204FE6F00000B032784FB832704FD99
|
||||
:101240003307F702832784FEB307F7002326F4FC55
|
||||
:10125000032784FE832704FDB337F70093F7F70FC6
|
||||
:101260002324F4FC832784FC93B71700A303F4FC26
|
||||
:10127000834774FC138F0700B7170080938F072DE7
|
||||
:101280006B200F007B70FF018327C4FC939727001E
|
||||
:101290000327C4FDB307F70083A607008327C4FC18
|
||||
:1012A00093972700032744FDB307F700032784FD26
|
||||
:1012B0003387E60023A0E700832784FE9387170087
|
||||
:1012C0002324F4FEB7170080138E472D67000E000D
|
||||
:1012D000130000006B300000832744FE9387170043
|
||||
:1012E0002322F4FE832744FE0327C4FEE3E6E7F44B
|
||||
:1012F000130000008320C1040324810413010105AD
|
||||
:1013000067800000130101FC232E1102232C8102AF
|
||||
:1013100013040104232EA4FC232CB4FC232AC4FCB4
|
||||
:101320002328D4FC2326E4FCB76702810327C4FDED
|
||||
:1013300023A4E71EB76702819387871E032784FDD6
|
||||
:1013400023A2E700B76702819387871E032744FD26
|
||||
:1013500023A4E700B76702819387871E0327C4FC95
|
||||
:1013600023A6E700B76702819387871E032704FD42
|
||||
:1013700023A8E700EFE01FE72324A4FE0327C4FC13
|
||||
:10138000832784FEB357F7022326F4FE0327C4FC09
|
||||
:10139000832784FEB377F702638807008327C4FEA0
|
||||
:1013A000938717002326F4FEB76702819387871E71
|
||||
:1013B0000327C4FE23AAE7000327C4FC832784FE77
|
||||
:1013C0006362F702B76702819386871EB7170080B2
|
||||
:1013D0001386C743832584FE032504FDEFF00F88A1
|
||||
:1013E0006F000002B76702819386871EB7170080DF
|
||||
:1013F0001386C7438325C4FC032504FDEFF00F8645
|
||||
:10140000EFE0DFDD2322A4FE032704FD832744FE53
|
||||
:1014100063F8E700032544FEEFF04F936F00C00030
|
||||
:10142000032504FDEFF08F92130000008320C10319
|
||||
:10143000032481031301010467800000130101FBF1
|
||||
:10144000232611042324810413040105232EA4FA66
|
||||
:10145000232CB4FAEFF08F9E2320A4FE832704FEF2
|
||||
:1014600083A70700232EF4FC832704FE83A74700ED
|
||||
:1014700083A70700232CF4FC832704FE83A787009F
|
||||
:10148000232AF4FC832704FE83A747012326F4FEC6
|
||||
:101490000327C4FE8327C4FBB307F7022324F4FE0B
|
||||
:1014A0008327C4FE639A0700930710002326F4FEE7
|
||||
:1014B0008327C4FB2324F4FE832704FE83A7C700ED
|
||||
:1014C0002328F4FC232204FE6F00000B032784FB77
|
||||
:1014D000832704FD3307F702832784FEB307F70051
|
||||
:1014E0002326F4FC032784FE832704FDB337F7008B
|
||||
:1014F00093F7F70F2324F4FC832784FC93B717009A
|
||||
:10150000A303F4FC834774FC138F0700B717008014
|
||||
:10151000938F47566B200F007B70FF018327C4FC1D
|
||||
:10152000939727000327C4FDB307F70083A607009E
|
||||
:101530008327C4FC93972700032744FDB307F700D4
|
||||
:10154000032784FD3387E60223A0E700832784FE78
|
||||
:10155000938717002324F4FEB7170080138E875655
|
||||
:1015600067000E00130000006B300000832744FE6C
|
||||
:10157000938717002322F4FE832744FE0327C4FE2B
|
||||
:10158000E3E6E7F4130000008320C1040324810490
|
||||
:101590001301010567800000130101FD232681026C
|
||||
:1015A00013040103232EA4FC232604FE6F00000174
|
||||
:1015B0008327C4FE938717002326F4FE0327C4FE67
|
||||
:1015C0008327C4FDE346F7FE130000000324C10295
|
||||
:1015D0001301010367800000130101FD232611029E
|
||||
:1015E0002324810213040103232EA4FC232CB4FC26
|
||||
:1015F000B7670281138707208327C4FDB307F7006D
|
||||
:10160000130710002380E7008327C4FD6390070CB5
|
||||
:10161000A30104FE232604FE6F00800A232604FE95
|
||||
:10162000232404FE6F004003B7670281138707205D
|
||||
:10163000832784FEB307F70083C70700638807008A
|
||||
:101640008327C4FE938717002326F4FE832784FE96
|
||||
:10165000938717002324F4FE032784FE832784FD49
|
||||
:10166000E344F7FC0327C4FE832784FD631AF704D1
|
||||
:10167000232204FE6F000004B7670281138707204E
|
||||
:10168000832744FEB307F70023800700B797028142
|
||||
:10169000130710002384E72C13056004EFF0DFEF3D
|
||||
:1016A000B79702812384072C832744FE9387170072
|
||||
:1016B0002322F4FE032744FE832784FDE34EF7FA3A
|
||||
:1016C000834734FEE39C07F46F00400213000000E0
|
||||
:1016D000B797028183C7872C93C7170093F7F70F3B
|
||||
:1016E000E39807FE13054006EFF01FEB1300000020
|
||||
:1016F0008320C102032481021301010367800000DB
|
||||
:10170000130101FF23268100130401019307000048
|
||||
:101710001308000013850700930508000324C10087
|
||||
:101720001301010167800000130101FE232E8100D7
|
||||
:1017300013040102232604FE6F008004B7670281B0
|
||||
:101740000327C4FE1317270093870722B307F70068
|
||||
:101750001307300023A0E700B77702810327C4FEF8
|
||||
:101760001317270093870722B307F70013072000FA
|
||||
:1017700023A0E7008327C4FE938717002326F4FEE7
|
||||
:101780000327C4FE93073000E3DAE7FA13000000F2
|
||||
:101790000324C1011301010267800000130101FD50
|
||||
:1017A000232611022324810213040103232EA4FC07
|
||||
:1017B000B707008113858711EFF08F80232604FE81
|
||||
:1017C0006F0080058327C4FE638E07008327C4FE55
|
||||
:1017D00093F7170063980700B70700811385C713B5
|
||||
:1017E000EFE01FFE8327C4FE939727000327C4FD65
|
||||
:1017F000B307F70083A7070013850700EFF00F80FA
|
||||
:10180000B707008113850714EFE09FFB8327C4FE11
|
||||
:10181000938717002326F4FE0327C4FE93073000A6
|
||||
:10182000E3D2E7FAB707008113854714EFE05FF9C9
|
||||
:10183000130000008320C10203248102130101036D
|
||||
:1018400067800000130101FF23261100232481007B
|
||||
:10185000130401011305B000EFE05FFA93070000E5
|
||||
:10186000138507008320C1000324810013010101B7
|
||||
:04187000678000008D
|
||||
:02000004810079
|
||||
:10000000300000003100000032000000330000002A
|
||||
:10001000340000003500000036000000370000000A
|
||||
@@ -440,5 +431,6 @@
|
||||
:10023800E8000081EC000081F0000081F4000081FA
|
||||
:10024800F8000081FC0000810001008104010081A8
|
||||
:10025800080100810C010081100100811401008156
|
||||
:04026800060000008C
|
||||
:040000058000000077
|
||||
:00000001FF
|
||||
|
||||
@@ -5,10 +5,12 @@ unsigned x[1024] = {0};
|
||||
unsigned y[1024] = {0};
|
||||
unsigned z[1024] = {0};
|
||||
|
||||
#define MAT_DIM 16
|
||||
unsigned temp = 6;
|
||||
|
||||
#define NUM_COLS 16
|
||||
#define NUM_ROWS 16
|
||||
#define MAT_DIM 2
|
||||
|
||||
#define NUM_COLS 2
|
||||
#define NUM_ROWS 2
|
||||
|
||||
double sc_time_stamp()
|
||||
{
|
||||
@@ -39,16 +41,19 @@ void print_matrix(unsigned * z)
|
||||
int main()
|
||||
{
|
||||
|
||||
// vx_print_hex(11);
|
||||
// unsigned f = temp;
|
||||
|
||||
initialize_mats();
|
||||
vx_print_hex(11);
|
||||
// vx_printc(0, 'a');
|
||||
|
||||
// initialize_mats();
|
||||
|
||||
// matrix multiplication
|
||||
// vx_sq_mat_mult(x, y, z, MAT_DIM);
|
||||
// vx_print_str("\n\nMatrix multiplication\n");
|
||||
// print_matrix(z);
|
||||
|
||||
print_matrix(x);
|
||||
// print_matrix(x);
|
||||
|
||||
// // matrix addition
|
||||
// vx_mat_add(x, y, z, NUM_ROWS, NUM_COLS);
|
||||
|
||||
@@ -6,15 +6,33 @@
|
||||
.type _start, @function
|
||||
.global _start
|
||||
_start:
|
||||
la a0, 0x020000
|
||||
li a1, 7
|
||||
sw a1, 4(a0)
|
||||
nop
|
||||
nop
|
||||
nop
|
||||
lw a2, 4(a0)
|
||||
li a0, 0
|
||||
.word 0x0005006b # tmc a0
|
||||
# la a0, 0x10000000
|
||||
# li a1, 7
|
||||
# sw a1, 0(a0)
|
||||
|
||||
# la a0, 0x10000048
|
||||
# li a1, 3
|
||||
# sw a1, 0(a0)
|
||||
|
||||
# la a0, 0x80000000
|
||||
# li a1, 9
|
||||
# sw a1, 0(a0)
|
||||
|
||||
# la a0, 0x80000008
|
||||
# li a1, 8
|
||||
# sw a1, 0(a0)
|
||||
|
||||
# la a0, 0x10000000
|
||||
# lw a2, 0(a0)
|
||||
# la a0, 0x10000048
|
||||
# lw a3, 0(a0)
|
||||
# # la a0, 0x00000000 # I=0,OF=0, B=0
|
||||
# # li a1, 1
|
||||
# # sw a1, 0(a0)
|
||||
# # lw a2, 0(a0)
|
||||
# li a0, 0
|
||||
# .word 0x0005006b # tmc a0
|
||||
########################################
|
||||
# li a0, 4
|
||||
# la a1, SPAWN
|
||||
# .word 0x00b5106b # wspawn a0(numWarps), a1(PC SPAWN)
|
||||
@@ -36,7 +54,7 @@ _start:
|
||||
##########################
|
||||
# li a0, 4
|
||||
# .word 0x0005006b # tmc a0
|
||||
# csrr a1, 0x20 # read thread IDs
|
||||
#
|
||||
# # csrr a2, 0x21 # read warp IDs
|
||||
# slti a0, a1, 2
|
||||
# .word 0x0005206b # split a0
|
||||
@@ -49,17 +67,11 @@ _start:
|
||||
# .word 0x0000306b #join
|
||||
# ecall
|
||||
############################
|
||||
# li a0, 8 # Num Warps
|
||||
# csrw 0x20, a0 # Setting the number of available warps
|
||||
# li a0, 4 # Num Threads
|
||||
# csrw 0x21, a0 # Setting the number of available threads
|
||||
# csrw mhartid,zero
|
||||
# csrw misa,zero
|
||||
# lui sp, 0x7ffff
|
||||
# # jal vx_before_main
|
||||
# jal main
|
||||
# li a0, 0
|
||||
# .word 0x0005006b # tmc a0
|
||||
lui sp, 0x7ffff
|
||||
# jal vx_before_main
|
||||
jal main
|
||||
li a0, 0
|
||||
.word 0x0005006b # tmc a0
|
||||
|
||||
# Hi:
|
||||
# li a2, 7
|
||||
|
||||
@@ -3,21 +3,22 @@
|
||||
|
||||
void vx_print_hex(unsigned f)
|
||||
{
|
||||
if (f < 16)
|
||||
{
|
||||
vx_print_str(hextoa[f]);
|
||||
return;
|
||||
}
|
||||
int temp;
|
||||
int sf = 32;
|
||||
bool start = false;
|
||||
do
|
||||
{
|
||||
temp = (f >> (sf - 4)) & 0xf;
|
||||
if (temp != 0) start = true;
|
||||
if (start) vx_print_str(hextoa[temp]);
|
||||
sf -= 4;
|
||||
} while(sf > 0);
|
||||
vx_print_str(hextoa[f]);
|
||||
// if (f < 16)
|
||||
// {
|
||||
// vx_print_str(hextoa[f]);
|
||||
// return;
|
||||
// }
|
||||
// int temp;
|
||||
// int sf = 32;
|
||||
// bool start = false;
|
||||
// do
|
||||
// {
|
||||
// temp = (f >> (sf - 4)) & 0xf;
|
||||
// if (temp != 0) start = true;
|
||||
// if (start) vx_print_str(hextoa[temp]);
|
||||
// sf -= 4;
|
||||
// } while(sf > 0);
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -11,11 +11,11 @@ EXE=--exe ./simulate/test_bench.cpp
|
||||
|
||||
COMP=--compiler gcc
|
||||
|
||||
# WNO=-Wno-UNDRIVEN --Wno-PINMISSING -Wno-STMTDLY -Wno-WIDTH -Wno-UNSIGNED
|
||||
WNO=
|
||||
WNO=-Wno-UNDRIVEN --Wno-PINMISSING -Wno-STMTDLY -Wno-WIDTH -Wno-UNSIGNED -Wno-UNOPTFLAT
|
||||
# WNO=
|
||||
|
||||
LIGHTW=
|
||||
# LIGHTW=-Wno-UNOPTFLAT
|
||||
# LIGHTW=
|
||||
LIGHTW=-Wno-UNOPTFLAT
|
||||
# LIB=-LDFLAGS '-L/usr/local/systemc/'
|
||||
LIB=
|
||||
|
||||
|
||||
@@ -31,6 +31,7 @@ assign VX_writeback_inter.wb_warp_num = VX_writeback_temp.wb_warp_num;
|
||||
|
||||
|
||||
VX_mw_wb_inter VX_mw_wb();
|
||||
wire no_slot_mem;
|
||||
|
||||
|
||||
VX_mem_req_inter VX_exe_mem_req();
|
||||
@@ -78,7 +79,8 @@ VX_lsu load_store_unit(
|
||||
.VX_mem_wb (VX_mem_wb),
|
||||
.VX_dcache_rsp(VX_dcache_rsp),
|
||||
.VX_dcache_req(VX_dcache_req),
|
||||
.out_delay (out_mem_delay)
|
||||
.out_delay (out_mem_delay),
|
||||
.no_slot_mem (no_slot_mem)
|
||||
);
|
||||
|
||||
|
||||
@@ -106,7 +108,8 @@ VX_writeback VX_wb(
|
||||
.VX_inst_exec_wb (VX_inst_exec_wb),
|
||||
.VX_csr_wb (VX_csr_wb),
|
||||
|
||||
.VX_writeback_inter(VX_writeback_temp)
|
||||
.VX_writeback_inter(VX_writeback_temp),
|
||||
.no_slot_mem (no_slot_mem)
|
||||
);
|
||||
|
||||
endmodule
|
||||
@@ -22,8 +22,8 @@ module VX_dmem_controller (
|
||||
|
||||
|
||||
wire[`NT_M1:0][31:0] cache_driver_in_address = VX_dcache_req.out_cache_driver_in_address;
|
||||
wire[2:0] cache_driver_in_mem_read = VX_dcache_req.out_cache_driver_in_mem_read;
|
||||
wire[2:0] cache_driver_in_mem_write = VX_dcache_req.out_cache_driver_in_mem_write;
|
||||
wire[2:0] cache_driver_in_mem_read = !(|cache_driver_in_valid) ? `NO_MEM_READ : VX_dcache_req.out_cache_driver_in_mem_read;
|
||||
wire[2:0] cache_driver_in_mem_write = !(|cache_driver_in_valid) ? `NO_MEM_WRITE : VX_dcache_req.out_cache_driver_in_mem_write;
|
||||
wire[`NT_M1:0][31:0] cache_driver_in_data = VX_dcache_req.out_cache_driver_in_data;
|
||||
|
||||
|
||||
@@ -34,6 +34,9 @@ module VX_dmem_controller (
|
||||
wire cache_delay;
|
||||
|
||||
|
||||
wire valid_read_cache = !cache_delay && cache_driver_in_valid[0];
|
||||
|
||||
|
||||
VX_shared_memory #(.NB(7), .BITS_PER_BANK(3)) shared_memory (
|
||||
.clk (clk),
|
||||
.in_valid (sm_driver_in_valid),
|
||||
|
||||
35
rtl/VX_lsu.v
35
rtl/VX_lsu.v
@@ -5,6 +5,7 @@
|
||||
module VX_lsu (
|
||||
input wire clk,
|
||||
input wire reset,
|
||||
input wire no_slot_mem,
|
||||
VX_lsu_req_inter VX_lsu_req,
|
||||
|
||||
// Write back to GPR
|
||||
@@ -15,9 +16,9 @@ module VX_lsu (
|
||||
output wire out_delay
|
||||
);
|
||||
|
||||
VX_inst_mem_wb_inter VX_mem_wb_temp();
|
||||
// VX_inst_mem_wb_inter VX_mem_wb_temp();
|
||||
|
||||
assign out_delay = VX_dcache_rsp.delay;
|
||||
assign out_delay = VX_dcache_rsp.delay || no_slot_mem;
|
||||
|
||||
|
||||
// Generate Addresses
|
||||
@@ -36,30 +37,30 @@ module VX_lsu (
|
||||
assign VX_dcache_req.out_cache_driver_in_data[index] = VX_lsu_req.store_data[index];
|
||||
assign VX_dcache_req.out_cache_driver_in_valid[index] = (VX_lsu_req.valid[index]);
|
||||
|
||||
assign VX_mem_wb_temp.loaded_data[index] = VX_dcache_rsp.in_cache_driver_out_data[index];
|
||||
assign VX_mem_wb.loaded_data[index] = VX_dcache_rsp.in_cache_driver_out_data[index];
|
||||
end
|
||||
|
||||
assign VX_dcache_req.out_cache_driver_in_mem_read = VX_lsu_req.mem_read;
|
||||
assign VX_dcache_req.out_cache_driver_in_mem_write = VX_lsu_req.mem_write;
|
||||
|
||||
|
||||
assign VX_mem_wb_temp.rd = VX_lsu_req.rd;
|
||||
assign VX_mem_wb_temp.wb = VX_lsu_req.wb;
|
||||
assign VX_mem_wb_temp.wb_valid = VX_lsu_req.valid;
|
||||
assign VX_mem_wb_temp.wb_warp_num = VX_lsu_req.warp_num;
|
||||
assign VX_mem_wb.rd = VX_lsu_req.rd;
|
||||
assign VX_mem_wb.wb = VX_lsu_req.wb & {!VX_dcache_rsp.delay, !VX_dcache_rsp.delay};
|
||||
assign VX_mem_wb.wb_valid = VX_lsu_req.valid;
|
||||
assign VX_mem_wb.wb_warp_num = VX_lsu_req.warp_num;
|
||||
|
||||
|
||||
|
||||
wire zero_temp = 0;
|
||||
VX_generic_register #(.N(142)) register_wb_data
|
||||
(
|
||||
.clk (clk),
|
||||
.reset(reset),
|
||||
.stall(zero_temp),
|
||||
.flush(out_delay),
|
||||
.in ({VX_mem_wb_temp.loaded_data, VX_mem_wb_temp.rd, VX_mem_wb_temp.wb, VX_mem_wb_temp.wb_valid, VX_mem_wb_temp.wb_warp_num}),
|
||||
.out ({VX_mem_wb.loaded_data , VX_mem_wb.rd , VX_mem_wb.wb , VX_mem_wb.wb_valid , VX_mem_wb.wb_warp_num })
|
||||
);
|
||||
// wire zero_temp = 0;
|
||||
// VX_generic_register #(.N(142)) register_wb_data
|
||||
// (
|
||||
// .clk (clk),
|
||||
// .reset(reset),
|
||||
// .stall(zero_temp),
|
||||
// .flush(out_delay),
|
||||
// .in ({VX_mem_wb_temp.loaded_data, VX_mem_wb_temp.rd, VX_mem_wb_temp.wb, VX_mem_wb_temp.wb_valid, VX_mem_wb_temp.wb_warp_num}),
|
||||
// .out ({VX_mem_wb.loaded_data , VX_mem_wb.rd , VX_mem_wb.wb , VX_mem_wb.wb_valid , VX_mem_wb.wb_warp_num })
|
||||
// );
|
||||
|
||||
|
||||
endmodule // Memory
|
||||
|
||||
@@ -13,13 +13,16 @@ module VX_priority_encoder_w_mask
|
||||
always @(valids) begin
|
||||
index = 0;
|
||||
found = 0;
|
||||
mask = 0;
|
||||
// mask = 0;
|
||||
for (i = 0; i < N; i=i+1) begin
|
||||
if (valids[i]) begin
|
||||
index = i[$clog2(N)-1:0];
|
||||
found = 1;
|
||||
mask[i[$clog2(N)-1:0]] = 1 << i;
|
||||
// mask[index] = (1 << i);
|
||||
// $display("%h",(1 << i));
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
assign mask = found ? (1 << index) : 0;
|
||||
endmodule
|
||||
@@ -11,10 +11,12 @@ module VX_writeback (
|
||||
VX_csr_wb_inter VX_csr_wb,
|
||||
|
||||
// Actual WB to GPR
|
||||
VX_wb_inter VX_writeback_inter
|
||||
VX_wb_inter VX_writeback_inter,
|
||||
output wire no_slot_mem
|
||||
);
|
||||
|
||||
|
||||
assign no_slot_mem = mem_wb && (exec_wb || csr_wb);
|
||||
|
||||
wire exec_wb = (VX_inst_exec_wb.wb != 0) && (|VX_inst_exec_wb.wb_valid);
|
||||
wire mem_wb = (VX_mem_wb.wb != 0) && (|VX_mem_wb.wb_valid);
|
||||
@@ -22,29 +24,29 @@ module VX_writeback (
|
||||
|
||||
|
||||
assign VX_writeback_inter.write_data = exec_wb ? VX_inst_exec_wb.alu_result :
|
||||
mem_wb ? VX_mem_wb.loaded_data :
|
||||
csr_wb ? VX_csr_wb.csr_result :
|
||||
mem_wb ? VX_mem_wb.loaded_data :
|
||||
0;
|
||||
|
||||
|
||||
assign VX_writeback_inter.wb_valid = exec_wb ? VX_inst_exec_wb.wb_valid :
|
||||
mem_wb ? VX_mem_wb.wb_valid :
|
||||
csr_wb ? VX_csr_wb.valid :
|
||||
0;
|
||||
mem_wb ? VX_mem_wb.wb_valid :
|
||||
0;
|
||||
|
||||
assign VX_writeback_inter.rd = exec_wb ? VX_inst_exec_wb.rd :
|
||||
mem_wb ? VX_mem_wb.rd :
|
||||
csr_wb ? VX_csr_wb.rd :
|
||||
mem_wb ? VX_mem_wb.rd :
|
||||
0;
|
||||
|
||||
assign VX_writeback_inter.wb = exec_wb ? VX_inst_exec_wb.wb :
|
||||
mem_wb ? VX_mem_wb.wb :
|
||||
csr_wb ? VX_csr_wb.wb :
|
||||
mem_wb ? VX_mem_wb.wb :
|
||||
0;
|
||||
|
||||
assign VX_writeback_inter.wb_warp_num = exec_wb ? VX_inst_exec_wb.wb_warp_num :
|
||||
mem_wb ? VX_mem_wb.wb_warp_num :
|
||||
csr_wb ? VX_csr_wb.warp_num :
|
||||
mem_wb ? VX_mem_wb.wb_warp_num :
|
||||
0;
|
||||
|
||||
|
||||
|
||||
19
rtl/Vortex.v
19
rtl/Vortex.v
@@ -7,6 +7,9 @@ module Vortex(
|
||||
input wire reset,
|
||||
input wire[31:0] icache_response_instruction,
|
||||
output wire[31:0] icache_request_pc_address,
|
||||
// IO
|
||||
output wire io_valid,
|
||||
output wire[31:0] io_data,
|
||||
// Req
|
||||
output reg [31:0] o_m_read_addr,
|
||||
output reg [31:0] o_m_evict_addr,
|
||||
@@ -20,11 +23,20 @@ module Vortex(
|
||||
output wire out_ebreak
|
||||
);
|
||||
|
||||
// Dcache Interface
|
||||
wire memory_delay;
|
||||
wire gpr_stage_delay;
|
||||
wire schedule_delay;
|
||||
|
||||
|
||||
// Dcache Interface
|
||||
VX_dcache_response_inter VX_dcache_rsp();
|
||||
VX_dcache_request_inter VX_dcache_req();
|
||||
|
||||
wire temp_io_valid = (!memory_delay) && (|VX_dcache_req.out_cache_driver_in_valid) && (VX_dcache_req.out_cache_driver_in_mem_write != `NO_MEM_WRITE) && (VX_dcache_req.out_cache_driver_in_address[0] == 32'h00010000);
|
||||
wire[31:0] temp_io_data = VX_dcache_req.out_cache_driver_in_data[0];
|
||||
assign io_valid = temp_io_valid;
|
||||
assign io_data = temp_io_data;
|
||||
|
||||
|
||||
VX_dram_req_rsp_inter VX_dram_req_rsp();
|
||||
|
||||
@@ -74,11 +86,6 @@ VX_jal_response_inter VX_jal_rsp(); // Jump resolution to Fetch
|
||||
VX_warp_ctl_inter VX_warp_ctl();
|
||||
|
||||
|
||||
wire memory_delay;
|
||||
wire gpr_stage_delay;
|
||||
wire schedule_delay;
|
||||
|
||||
|
||||
VX_front_end vx_front_end(
|
||||
.clk (clk),
|
||||
.reset (reset),
|
||||
|
||||
9
rtl/cache/VX_Cache_Bank.v
vendored
9
rtl/cache/VX_Cache_Bank.v
vendored
@@ -90,10 +90,10 @@ module VX_Cache_Bank
|
||||
|
||||
assign data_evicted = data_use;
|
||||
|
||||
assign eviction_wb = miss && (dirty_use != 1'b0);
|
||||
assign eviction_wb = (dirty_use != 1'b0) && valid_use;
|
||||
assign eviction_tag = tag_use;
|
||||
assign access = (state == CACHE_IDLE) && valid_in;
|
||||
assign write_from_mem = (state == RECIV_MEM_RSP) && valid_in;
|
||||
assign write_from_mem = (state == RECIV_MEM_RSP);
|
||||
assign readdata = (access) ? data_use[block_offset] : 32'b0; // Fix with actual data
|
||||
assign hit = (access && (tag_use == o_tag) && valid_use);
|
||||
//assign eviction_addr = {eviction_tag, actual_index, block_offset, 5'b0}; // Fix with actual data
|
||||
@@ -104,9 +104,8 @@ module VX_Cache_Bank
|
||||
wire[`NUM_WORDS_PER_BLOCK-1:0][31:0] data_write;
|
||||
genvar g;
|
||||
for (g = 0; g < `NUM_WORDS_PER_BLOCK; g = g + 1) begin
|
||||
wire correct_block = (block_offset == g);
|
||||
assign we[g] = (read_or_write && ((access && correct_block) || (write_from_mem && !correct_block)) ) ? 1'b1 : 1'b0;
|
||||
//assign we[g] = (!(write_from_mem && correct_block) && ((write_from_mem || correct_block) && read_or_write == 1'b1)) ? 1 : 0; // added the "not"
|
||||
wire normal_write = (read_or_write && ((access && (block_offset == g))) && !miss);
|
||||
assign we[g] = (normal_write || (write_from_mem)) ? 1'b1 : 1'b0;
|
||||
assign data_write[g] = write_from_mem ? fetched_writedata[g] : writedata;
|
||||
end
|
||||
|
||||
|
||||
17
rtl/cache/VX_cache_bank_valid.v
vendored
17
rtl/cache/VX_cache_bank_valid.v
vendored
@@ -7,17 +7,16 @@ module VX_cache_bank_valid
|
||||
(
|
||||
input wire [`NT_M1:0] i_p_valid,
|
||||
input wire [`NT_M1:0][31:0] i_p_addr,
|
||||
output wire [NUMBER_BANKS - 1 : 0][`NT_M1:0] thread_track_banks
|
||||
output reg [NUMBER_BANKS - 1 : 0][`NT_M1:0] thread_track_banks
|
||||
);
|
||||
|
||||
|
||||
|
||||
|
||||
genvar t_id;
|
||||
for (t_id = 0; t_id <= `NT_M1; t_id = t_id + 1)
|
||||
begin
|
||||
wire[2:0] threads_bank = i_p_addr[t_id][4:2];
|
||||
assign thread_track_banks[threads_bank][t_id] = i_p_valid[t_id];
|
||||
end
|
||||
always @(*) begin
|
||||
thread_track_banks = 0;
|
||||
for (t_id = 0; t_id <= `NT_M1; t_id = t_id + 1)
|
||||
begin
|
||||
thread_track_banks[i_p_addr[t_id][4:2]][t_id] = i_p_valid[t_id];
|
||||
end
|
||||
end
|
||||
|
||||
endmodule
|
||||
48
rtl/cache/VX_d_cache.v
vendored
48
rtl/cache/VX_d_cache.v
vendored
@@ -64,9 +64,10 @@ module VX_d_cache(clk,
|
||||
|
||||
// Buffer for final data
|
||||
reg [`NT_M1:0][31:0] final_data_read;
|
||||
wire[`NT_M1:0][31:0] new_final_data_read;
|
||||
reg [`NT_M1:0][31:0] new_final_data_read;
|
||||
wire[`NT_M1:0][31:0] new_final_data_read_Qual;
|
||||
|
||||
assign o_p_readdata = final_data_read;
|
||||
assign o_p_readdata = new_final_data_read_Qual;
|
||||
|
||||
|
||||
|
||||
@@ -95,6 +96,8 @@ module VX_d_cache(clk,
|
||||
reg[31:0] miss_addr;
|
||||
reg[31:0] evict_addr;
|
||||
|
||||
wire curr_processor_request_valid = (|i_p_valid);
|
||||
|
||||
|
||||
assign use_valid = (stored_valid == 0) ? i_p_valid : stored_valid;
|
||||
|
||||
@@ -121,10 +124,15 @@ module VX_d_cache(clk,
|
||||
// end
|
||||
// end
|
||||
|
||||
reg[`NT_M1:0] debug_hit_per_bank_mask[NUMBER_BANKS-1:0];
|
||||
|
||||
genvar bid;
|
||||
for (bid = 0; bid < NUMBER_BANKS; bid=bid+1)
|
||||
begin
|
||||
wire[`NT_M1:0] use_threads_track_banks = thread_track_banks[bid];
|
||||
wire[`NT_M1:0] use_threads_track_banks = thread_track_banks[bid];
|
||||
wire[$clog2(`NT)-1:0] use_thread_index = index_per_bank[bid];
|
||||
wire use_write_final_data = hit_per_bank[bid];
|
||||
wire[31:0] use_data_final_data = readdata_per_bank[bid];
|
||||
VX_priority_encoder_w_mask #(.N(`NT)) choose_thread(
|
||||
.valids(use_threads_track_banks),
|
||||
.mask (use_mask_per_bank[bid]),
|
||||
@@ -132,17 +140,20 @@ module VX_d_cache(clk,
|
||||
.found (valid_per_bank[bid])
|
||||
);
|
||||
|
||||
assign new_final_data_read[index_per_bank[bid]] = hit_per_bank[bid] ? readdata_per_bank[bid] : 0;
|
||||
|
||||
assign threads_serviced_per_bank[bid] = use_mask_per_bank[bid] & {`NT{hit_per_bank[bid]}};
|
||||
always @(*) begin
|
||||
if (use_write_final_data) new_final_data_read[use_thread_index] = use_data_final_data;
|
||||
end
|
||||
// assign new_final_data_read[use_thread_index] = use_write_final_data ? use_data_final_data : 0;
|
||||
assign debug_hit_per_bank_mask[bid] = {`NT{hit_per_bank[bid]}};
|
||||
assign threads_serviced_per_bank[bid] = use_mask_per_bank[bid] & debug_hit_per_bank_mask[bid];
|
||||
end
|
||||
|
||||
|
||||
// genvar tid;
|
||||
|
||||
assign threads_serviced_Qual = threads_serviced_per_bank[0] | threads_serviced_per_bank[1] | threads_serviced_per_bank[2] | threads_serviced_per_bank[3] | threads_serviced_per_bank[4] | threads_serviced_per_bank[5] | threads_serviced_per_bank[6] | threads_serviced_per_bank[7];
|
||||
// for(tid = 0; tid )
|
||||
wire[NUMBER_BANKS - 1 : 0] detect_bank_miss;
|
||||
assign threads_serviced_Qual = threads_serviced_per_bank[0] | threads_serviced_per_bank[1] |
|
||||
threads_serviced_per_bank[2] | threads_serviced_per_bank[3] |
|
||||
threads_serviced_per_bank[4] | threads_serviced_per_bank[5] |
|
||||
threads_serviced_per_bank[6] | threads_serviced_per_bank[7];
|
||||
// genvar bbid;
|
||||
// always @(*) begin
|
||||
// for (bbid = 0; bbid < NUMBER_BANKS; bbid=bbid+1)
|
||||
@@ -152,6 +163,14 @@ module VX_d_cache(clk,
|
||||
// end
|
||||
|
||||
|
||||
|
||||
genvar tid;
|
||||
for (tid = 0; tid < `NT; tid =tid+1)
|
||||
begin
|
||||
assign new_final_data_read_Qual[tid] = threads_serviced_Qual[tid] ? new_final_data_read[tid] : final_data_read[tid];
|
||||
end
|
||||
|
||||
|
||||
assign detect_bank_miss = (valid_per_bank & ~hit_per_bank);
|
||||
|
||||
wire delay;
|
||||
@@ -193,10 +212,7 @@ module VX_d_cache(clk,
|
||||
evict_addr <= eviction_addr_per_bank[miss_bank_index];
|
||||
end
|
||||
|
||||
for (cur_t = 0; cur_t < `NT; cur_t=cur_t+1)
|
||||
begin
|
||||
if (threads_serviced_Qual[cur_t]) final_data_read[cur_t] <= new_final_data_read[cur_t];
|
||||
end
|
||||
final_data_read <= new_final_data_read_Qual;
|
||||
end
|
||||
|
||||
|
||||
@@ -245,8 +261,8 @@ module VX_d_cache(clk,
|
||||
// Mem Rsp
|
||||
|
||||
// Req to mem:
|
||||
assign o_m_evict_addr = evict_addr;
|
||||
assign o_m_read_addr = miss_addr;
|
||||
assign o_m_evict_addr = evict_addr & 32'hffffffc0;
|
||||
assign o_m_read_addr = miss_addr & 32'hffffffc0;
|
||||
assign o_m_valid = (state == SEND_MEM_REQ);
|
||||
assign o_m_read_or_write = (state == SEND_MEM_REQ) && (|eviction_wb);
|
||||
//end
|
||||
|
||||
@@ -0,0 +1,7 @@
|
||||
# Dynamic Instructions: 4139
|
||||
# of total cycles: 4156
|
||||
# of forwarding stalls: 0
|
||||
# of branch stalls: 0
|
||||
# CPI: 1.00411
|
||||
# time to simulate: 6.95312e-310 milliseconds
|
||||
# GRADE: Failed on test: 4294967295
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
int main(int argc, char **argv)
|
||||
{
|
||||
|
||||
Verilated::debug(1);
|
||||
// Verilated::debug(1);
|
||||
|
||||
Verilated::commandArgs(argc, argv);
|
||||
|
||||
|
||||
@@ -39,6 +39,7 @@ class Vortex
|
||||
void print_stats(bool = true);
|
||||
bool ibus_driver();
|
||||
bool dbus_driver();
|
||||
void io_handler();
|
||||
|
||||
RAM ram;
|
||||
|
||||
@@ -188,77 +189,115 @@ bool Vortex::ibus_driver()
|
||||
|
||||
}
|
||||
|
||||
void Vortex::io_handler()
|
||||
{
|
||||
if (vortex->io_valid)
|
||||
{
|
||||
uint32_t data_write = (uint32_t) vortex->io_data;
|
||||
|
||||
char c = (char) data_write;
|
||||
std::cerr << c;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
bool Vortex::dbus_driver()
|
||||
{
|
||||
|
||||
// printf("****************************\n");
|
||||
|
||||
vortex->i_m_ready = 0;
|
||||
for (int i = 0; i < CACHE_NUM_BANKS; i++)
|
||||
{
|
||||
for (int j = 0; j < CACHE_WORDS_PER_BLOCK; j++)
|
||||
{
|
||||
vortex->i_m_readdata[i][j] = 0;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
if (this->refill)
|
||||
{
|
||||
this->refill = false;
|
||||
unsigned unordered_mem[32];
|
||||
int num_iter = 0;
|
||||
for (int i = 0; i < CACHE_WORDS_PER_BLOCK; i++)
|
||||
{
|
||||
for (int j = 0; j < (CACHE_NUM_BANKS*8); j+=8)
|
||||
{
|
||||
unsigned addr = this->refill_addr + (4*num_iter);
|
||||
unsigned data_read;
|
||||
ram.getWord(addr, &data_read);
|
||||
unordered_mem[i+j] = data_read;
|
||||
num_iter++;
|
||||
}
|
||||
}
|
||||
|
||||
vortex->i_m_ready = 1;
|
||||
for (int i = 0; i < CACHE_NUM_BANKS; i++)
|
||||
for (int curr_e = 0; curr_e < (CACHE_NUM_BANKS*CACHE_WORDS_PER_BLOCK); curr_e++)
|
||||
{
|
||||
for (int j = 0; j < CACHE_WORDS_PER_BLOCK; j++)
|
||||
{
|
||||
vortex->i_m_readdata[i][j] = unordered_mem[(i*CACHE_WORDS_PER_BLOCK)+j];
|
||||
unsigned new_addr = this->refill_addr + (4*curr_e);
|
||||
|
||||
|
||||
unsigned addr_without_byte = new_addr >> 2;
|
||||
unsigned bank_num = addr_without_byte & 0x7;
|
||||
unsigned addr_wihtout_bank = addr_without_byte >> 3;
|
||||
unsigned offset_num = addr_wihtout_bank & 0x3;
|
||||
|
||||
unsigned value;
|
||||
ram.getWord(new_addr, &value);
|
||||
|
||||
// printf("-------- (%x) i_m_readdata[%d][%d] (%d) = %d\n", new_addr, bank_num, offset_num, curr_e, value);
|
||||
vortex->i_m_readdata[bank_num][offset_num] = value;
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if (vortex->o_m_valid)
|
||||
{
|
||||
// printf("Valid o_m_valid\n");
|
||||
if (vortex->o_m_read_or_write)
|
||||
{
|
||||
unsigned ordered_mem[32];
|
||||
// printf("Valid write\n");
|
||||
|
||||
// Create unordered mem
|
||||
unsigned unordered_mem[32];
|
||||
for (int i = 0; i < CACHE_NUM_BANKS; i++)
|
||||
for (int curr_e = 0; curr_e < (CACHE_NUM_BANKS*CACHE_WORDS_PER_BLOCK); curr_e++)
|
||||
{
|
||||
for (int j = 0; j < CACHE_WORDS_PER_BLOCK; j++)
|
||||
{
|
||||
unordered_mem[(i*CACHE_WORDS_PER_BLOCK)+j] = vortex->o_m_writedata[i][j];
|
||||
}
|
||||
unsigned new_addr = vortex->o_m_evict_addr + (4*curr_e);
|
||||
|
||||
|
||||
unsigned addr_without_byte = new_addr >> 2;
|
||||
unsigned bank_num = addr_without_byte & 0x7;
|
||||
unsigned addr_wihtout_bank = addr_without_byte >> 3;
|
||||
unsigned offset_num = addr_wihtout_bank & 0x3;
|
||||
|
||||
|
||||
unsigned new_value = vortex->o_m_writedata[bank_num][offset_num];
|
||||
|
||||
ram.writeWord( new_addr, &new_value);
|
||||
|
||||
// printf("+++++++ (%x) writeback[%d][%d] (%d) = %d\n", new_addr, bank_num, offset_num, curr_e, new_value);
|
||||
// printf("+++++++ (%x) i_m_readdata[%d][%d] (%d) = %d\n", new_addr, bank_num, offset_num, curr_e, value);
|
||||
}
|
||||
|
||||
// Order the memory
|
||||
int num_iter = 0;
|
||||
for (int i = 0; i < CACHE_NUM_BANKS; i++)
|
||||
{
|
||||
for (int j = 0; j < (CACHE_NUM_BANKS*CACHE_WORDS_PER_BLOCK); j+=CACHE_WORDS_PER_BLOCK)
|
||||
{
|
||||
printf("i: %d, j: %d, num_iter: %d\n", i, j, num_iter);
|
||||
ordered_mem[i+j] = unordered_mem[num_iter];
|
||||
num_iter++;
|
||||
}
|
||||
}
|
||||
// unsigned ordered_mem[32];
|
||||
|
||||
// Save the memory
|
||||
for (int i = 0; i < (CACHE_WORDS_PER_BLOCK * CACHE_NUM_BANKS); i++)
|
||||
{
|
||||
unsigned addr = (vortex->o_m_evict_addr) + (4*i);
|
||||
unsigned * data_addr = ordered_mem + i;
|
||||
ram.writeWord( addr, data_addr);
|
||||
}
|
||||
// // Create unordered mem
|
||||
// unsigned unordered_mem[32];
|
||||
// for (int i = 0; i < CACHE_NUM_BANKS; i++)
|
||||
// {
|
||||
// for (int j = 0; j < CACHE_WORDS_PER_BLOCK; j++)
|
||||
// {
|
||||
// unordered_mem[(i*CACHE_WORDS_PER_BLOCK)+j] = vortex->o_m_writedata[i][j];
|
||||
// }
|
||||
// }
|
||||
|
||||
// // Order the memory
|
||||
// int num_iter = 0;
|
||||
// for (int i = 0; i < CACHE_NUM_BANKS; i++)
|
||||
// {
|
||||
// for (int j = 0; j < (CACHE_NUM_BANKS*CACHE_WORDS_PER_BLOCK); j+=CACHE_WORDS_PER_BLOCK)
|
||||
// {
|
||||
// printf("i: %d, j: %d, num_iter: %d\n", i, j, num_iter);
|
||||
// ordered_mem[i+j] = unordered_mem[num_iter];
|
||||
// num_iter++;
|
||||
// }
|
||||
// }
|
||||
|
||||
// // Save the memory
|
||||
// for (int i = 0; i < (CACHE_WORDS_PER_BLOCK * CACHE_NUM_BANKS); i++)
|
||||
// {
|
||||
// unsigned addr = (vortex->o_m_evict_addr) + (4*i);
|
||||
// unsigned * data_addr = ordered_mem + i;
|
||||
// ram.writeWord( addr, data_addr);
|
||||
// }
|
||||
|
||||
}
|
||||
|
||||
@@ -268,122 +307,6 @@ bool Vortex::dbus_driver()
|
||||
}
|
||||
}
|
||||
|
||||
// uint32_t data_read;
|
||||
// uint32_t data_write;
|
||||
// uint32_t addr;
|
||||
// // std::cout << "DBUS DRIVER\n" << std::endl;
|
||||
// ////////////////////// DBUS //////////////////////
|
||||
|
||||
// bool did = false;
|
||||
|
||||
// for (unsigned curr_th = 0; curr_th < NT; curr_th++)
|
||||
// {
|
||||
// if ((vortex->out_cache_driver_in_mem_write != NO_MEM_WRITE) && vortex->out_cache_driver_in_valid[curr_th])
|
||||
// {
|
||||
// did = true;
|
||||
// data_write = (uint32_t) vortex->out_cache_driver_in_data[curr_th];
|
||||
// addr = (uint32_t) vortex->out_cache_driver_in_address[curr_th];
|
||||
|
||||
// if (addr == 0x00010000)
|
||||
// {
|
||||
// std::cerr << (char) data_write;
|
||||
// }
|
||||
|
||||
// // if ((addr >= 0x810002cc) && (addr < 0x810002d0))
|
||||
// // {
|
||||
// // int index = (addr - 0x810002cc) / 4;
|
||||
// // // std::cerr << GREEN << "1done[" << index << "] = " << data_write << DEFAULT << "\n";
|
||||
// // }
|
||||
|
||||
// // if ((addr >= 0x810059f4) && (addr < 0x810059f4))
|
||||
// // {
|
||||
// // int index = (addr - 0x810059f4) / 4;
|
||||
// // // std::cerr << RED << "2done[" << index << "] = " << data_write << DEFAULT << "\n";
|
||||
// // }
|
||||
|
||||
// if (vortex->out_cache_driver_in_mem_write == SB_MEM_WRITE)
|
||||
// {
|
||||
// data_write = ( data_write) & 0xFF;
|
||||
// ram.writeByte( addr, &data_write);
|
||||
|
||||
// } else if (vortex->out_cache_driver_in_mem_write == SH_MEM_WRITE)
|
||||
// {
|
||||
// data_write = ( data_write) & 0xFFFF;
|
||||
// ram.writeHalf( addr, &data_write);
|
||||
// } else if (vortex->out_cache_driver_in_mem_write == SW_MEM_WRITE)
|
||||
// {
|
||||
// // printf("STORING %x in %x \n", data_write, addr);
|
||||
// data_write = data_write;
|
||||
// ram.writeWord( addr, &data_write);
|
||||
// }
|
||||
|
||||
// }
|
||||
|
||||
// }
|
||||
|
||||
|
||||
|
||||
|
||||
// // printf("----\n");
|
||||
// for (unsigned curr_th = 0; curr_th < NT; curr_th++)
|
||||
// {
|
||||
|
||||
// if ((vortex->out_cache_driver_in_mem_read != NO_MEM_READ) && vortex->out_cache_driver_in_valid[curr_th])
|
||||
// {
|
||||
// did = true;
|
||||
// addr = (uint32_t) vortex->out_cache_driver_in_address[curr_th];
|
||||
// ram.getWord(addr, &data_read);
|
||||
|
||||
// if (vortex->out_cache_driver_in_mem_read == LB_MEM_READ)
|
||||
// {
|
||||
|
||||
// vortex->in_cache_driver_out_data[curr_th] = (data_read & 0x80) ? (data_read | 0xFFFFFF00) : (data_read & 0xFF);
|
||||
|
||||
// } else if (vortex->out_cache_driver_in_mem_read == LH_MEM_READ)
|
||||
// {
|
||||
|
||||
// vortex->in_cache_driver_out_data[curr_th] = (data_read & 0x8000) ? (data_read | 0xFFFF0000) : (data_read & 0xFFFF);
|
||||
|
||||
// } else if (vortex->out_cache_driver_in_mem_read == LW_MEM_READ)
|
||||
// {
|
||||
// // printf("Reading mem - Addr: %x = %x\n", addr, data_read);
|
||||
// // std::cout << "READING - Addr: " << std::hex << addr << " = " << data_read << "\n";
|
||||
// // std::cout << std::dec;
|
||||
// vortex->in_cache_driver_out_data[curr_th] = data_read;
|
||||
|
||||
// } else if (vortex->out_cache_driver_in_mem_read == LBU_MEM_READ)
|
||||
// {
|
||||
|
||||
// vortex->in_cache_driver_out_data[curr_th] = (data_read & 0xFF);
|
||||
|
||||
// } else if (vortex->out_cache_driver_in_mem_read == LHU_MEM_READ)
|
||||
// {
|
||||
|
||||
// vortex->in_cache_driver_out_data[curr_th] = (data_read & 0xFFFF);
|
||||
|
||||
// }
|
||||
// else
|
||||
// {
|
||||
// vortex->in_cache_driver_out_data[curr_th] = 0xbabebabe;
|
||||
// }
|
||||
// }
|
||||
// else
|
||||
// {
|
||||
// vortex->in_cache_driver_out_data[curr_th] = 0xbabebabe;
|
||||
// }
|
||||
|
||||
// }
|
||||
|
||||
// if (did && (NW > 1))
|
||||
// {
|
||||
|
||||
// if (NW < NT)
|
||||
// {
|
||||
// this->stats_total_cycles += NT % (NW -1);
|
||||
// }
|
||||
// }
|
||||
// printf("******\n");
|
||||
|
||||
|
||||
return false;
|
||||
}
|
||||
@@ -465,9 +388,11 @@ bool Vortex::simulate(std::string file_to_simulate)
|
||||
// unsigned cycles;
|
||||
counter = 0;
|
||||
this->stats_total_cycles = 12;
|
||||
while (this->stop && ((counter < 2)))
|
||||
while (this->stop && ((counter < 5)))
|
||||
// while (this->stats_total_cycles < 10)
|
||||
{
|
||||
|
||||
// printf("-------------------------\n");
|
||||
// std::cout << "Counter: " << counter << "\n";
|
||||
// if ((this->stats_total_cycles) % 5000 == 0) std::cout << "************* Cycle: " << (this->stats_total_cycles) << "\n";
|
||||
// dstop = !dbus_driver();
|
||||
@@ -478,6 +403,7 @@ bool Vortex::simulate(std::string file_to_simulate)
|
||||
vortex->eval();
|
||||
istop = ibus_driver();
|
||||
dstop = !dbus_driver();
|
||||
io_handler();
|
||||
|
||||
#ifdef VCD_OUTPUT
|
||||
m_trace->dump((2*this->stats_total_cycles)+1);
|
||||
|
||||
Reference in New Issue
Block a user