Commit Graph

253 Commits

Author SHA1 Message Date
Donald Sebastian Leung 2e2300e5c8 Update insns/README.md 2020-08-07 12:54:31 +08:00
Donald Sebastian Leung a8cf15e123 Add generic instruction class 2020-08-07 12:28:52 +08:00
Donald Sebastian Leung 56048099b3 Correct typo in insns/README.md 2020-08-06 16:44:54 +08:00
Donald Sebastian Leung 9a3cb8e88a Fix table formatting in insns/README.md 2020-08-06 14:45:51 +08:00
Donald Sebastian Leung 7c420cce7a Categorize all (to be) supported instructions 2020-08-06 14:13:00 +08:00
Donald Sebastian Leung 3eaed129c2 Begin re-organization of project structure 2020-08-06 12:36:01 +08:00
Donald Sebastian Leung 7c60451bfa Add README for instructions 2020-08-05 12:54:46 +08:00
Donald Sebastian Leung c4e30e9c55 Add REMU instruction 2020-08-04 17:17:37 +08:00
Donald Sebastian Leung af8704cea0 Add REM instruction 2020-08-04 17:14:46 +08:00
Donald Sebastian Leung 78fb149761 Add DIVU instruction 2020-08-04 17:12:13 +08:00
Donald Sebastian Leung 2a809073a5 Add DIV instruction 2020-08-04 17:09:21 +08:00
Donald Sebastian Leung 7b39ce135f Add MULHU instruction 2020-08-04 17:06:49 +08:00
Donald Sebastian Leung ee38e3a61d Add MULHSU instruction 2020-08-04 17:04:04 +08:00
Donald Sebastian Leung a26813835f Add MULH instruction 2020-08-04 17:00:43 +08:00
Donald Sebastian Leung e1bbf567c2 Add MUL instruction 2020-08-04 16:57:43 +08:00
Donald Sebastian Leung aa47b866a1 Add AND instruction 2020-08-04 12:54:46 +08:00
Donald Sebastian Leung 9429403616 Add OR instruction 2020-08-04 12:51:48 +08:00
Donald Sebastian Leung a3a9592c19 Add SRA instruction 2020-08-04 12:47:35 +08:00
Donald Sebastian Leung 907f7240bf Add SRL instruction 2020-08-04 12:42:39 +08:00
Donald Sebastian Leung 0c7c929983 Add XOR instruction 2020-08-04 12:39:20 +08:00
Donald Sebastian Leung cf9e1c741c Add SLTU instruction 2020-08-04 12:37:26 +08:00
Donald Sebastian Leung 4d313ed54a Add SLT instruction 2020-08-04 12:34:06 +08:00
Donald Sebastian Leung a6a09ac120 Add SLL instruction 2020-08-04 12:31:36 +08:00
Donald Sebastian Leung 67c57c4d7d Add SUB instruction 2020-08-04 12:25:12 +08:00
Donald Sebastian Leung aad9a3f2b5 Add ADD instruction 2020-08-04 12:20:52 +08:00
Donald Sebastian Leung 3abdcf07d2 Add R-type instruction format 2020-08-04 12:06:01 +08:00
Donald Sebastian Leung 19099edee3 Add SRAI instruction 2020-08-03 15:10:58 +08:00
Donald Sebastian Leung eaf475ee04 Add SRLI instruction 2020-08-03 14:54:02 +08:00
Donald Sebastian Leung 0234b65890 Add SLLI instruction 2020-08-03 14:51:36 +08:00
Donald Sebastian Leung a9cff77a82 Add I-type (shift variation) instruction format 2020-08-03 14:44:33 +08:00
Donald Sebastian Leung c3821bc885 Add SW instruction 2020-08-03 14:29:52 +08:00
Donald Sebastian Leung 948a3db1c1 Add SH instruction 2020-08-03 14:27:08 +08:00
Donald Sebastian Leung 84454e7048 Add SB instruction 2020-08-03 14:23:40 +08:00
Donald Sebastian Leung eebb39ee27 Add S-type instruction format 2020-08-03 14:15:09 +08:00
Donald Sebastian Leung 62ae797737 Add BGEU instruction 2020-08-03 11:33:57 +08:00
Donald Sebastian Leung 596d7fcf6d Add BLTU instruction 2020-08-03 11:30:16 +08:00
Donald Sebastian Leung f6008f3096 Add BGE instruction 2020-08-03 10:42:27 +08:00
Donald Sebastian Leung 8d1b070a02 Add BLT instruction 2020-08-03 10:38:54 +08:00
Donald Sebastian Leung 680042b9ee ADD BNE instruction 2020-08-03 10:33:45 +08:00
Donald Sebastian Leung 486c77a108 Fix BEQ instruction 2020-08-03 10:29:17 +08:00
Donald Sebastian Leung c17ccdf897 Add BEQ instruction 2020-08-03 10:28:01 +08:00
Donald Sebastian Leung 33ecb317b2 Add SB-type instruction 2020-08-03 10:19:01 +08:00
Donald Sebastian Leung 663b0b3b48 Add ANDI instruction 2020-07-31 16:51:59 +08:00
Donald Sebastian Leung 912580dda8 Add ORI instruction 2020-07-31 16:49:59 +08:00
Donald Sebastian Leung bf80a13d55 Add XORI instruction 2020-07-31 16:48:00 +08:00
Donald Sebastian Leung e49476746e Add SLTIU instruction 2020-07-31 16:45:15 +08:00
Donald Sebastian Leung 305d2195be Add SLTI instruction 2020-07-31 16:42:29 +08:00
Donald Sebastian Leung a9bc0629bd Add ADDI instruction 2020-07-31 16:39:32 +08:00
Donald Sebastian Leung cf8033a8bb Add LHU instruction 2020-07-31 16:35:06 +08:00
Donald Sebastian Leung e3f0727e9c Add LBU instruction 2020-07-31 16:31:25 +08:00
Donald Sebastian Leung dc31087f73 Add LW instruction 2020-07-31 16:27:36 +08:00
Donald Sebastian Leung 96015ee5d9 Add LH instruction 2020-07-31 16:19:04 +08:00
Donald Sebastian Leung ecfe8b11c4 Fix JALR instruction 2020-07-31 16:15:17 +08:00
Donald Sebastian Leung d525a89ccb Add LB instruction 2020-07-31 16:14:48 +08:00
Donald Sebastian Leung ecba1dc3e7 Add JALR instruction 2020-07-31 16:07:15 +08:00
Donald Sebastian Leung 08150e1ecd Add I-type instruction class 2020-07-31 14:26:27 +08:00
Donald Sebastian Leung 67cba5bf12 Add JAL instruction 2020-07-31 14:06:55 +08:00
Donald Sebastian Leung b6a68b5b15 Add UJ-type instruction class 2020-07-31 13:57:52 +08:00
Donald Sebastian Leung 7ddfa890dc Add AUIPC instruction 2020-07-31 13:44:22 +08:00
Donald Sebastian Leung 05266b8474 Add LUI instruction 2020-07-31 13:40:40 +08:00
Donald Sebastian Leung 9cbed8f147 Add U-type instruction class 2020-07-31 13:29:48 +08:00
Donald Sebastian Leung 5274e5b1f1 Add generic instruction class 2020-07-31 13:06:03 +08:00
Donald Sebastian Leung 29c5e52574 Categorize RV32IM instructions by type 2020-07-31 11:56:22 +08:00
Donald Sebastian Leung aa9967e83d Start over in insns/ 2020-07-31 11:17:58 +08:00
Donald Sebastian Leung e3273c7e51 Fix BGEU instruction 2020-07-30 17:37:13 +08:00
Donald Sebastian Leung 83e7ab1f05 Fix BLTU instruction 2020-07-30 16:33:49 +08:00
Donald Sebastian Leung b8e8d10648 Fix BGE instruction 2020-07-30 16:31:23 +08:00
Donald Sebastian Leung d0de67d09c Fix BLT instruction 2020-07-30 16:28:52 +08:00
Donald Sebastian Leung 65e4b68517 Fix BNE instruction 2020-07-30 16:26:29 +08:00
Donald Sebastian Leung 4146a2ed20 Fix BEQ instruction 2020-07-30 16:24:04 +08:00
Donald Sebastian Leung 9ddc5563f7 Fix JALR instruction 2020-07-30 16:19:01 +08:00
Donald Sebastian Leung b583ab728f Fix JAL instruction 2020-07-30 16:16:06 +08:00
Donald Sebastian Leung 6cff1038be Fix AUIPC instruction 2020-07-30 16:12:10 +08:00
Donald Sebastian Leung 4d62caadc7 Fix U-type instruction format 2020-07-30 16:08:24 +08:00
Donald Sebastian Leung e24ddd4269 Fix LUI instruction 2020-07-30 16:07:47 +08:00
Donald Sebastian Leung 9974db7e7b Refactor BGEU instruction 2020-07-30 15:53:39 +08:00
Donald Sebastian Leung 331cfda279 Refactor BLTU instruction 2020-07-30 15:49:56 +08:00
Donald Sebastian Leung 847099e4de Refactor BGE instruction 2020-07-30 15:46:18 +08:00
Donald Sebastian Leung 583d165ec1 Refactor BLT instruction 2020-07-30 15:42:10 +08:00
Donald Sebastian Leung 31f6847640 Refactor BNE instruction 2020-07-30 14:14:24 +08:00
Donald Sebastian Leung 3d1bb14bae Refactor BEQ instruction 2020-07-30 14:10:48 +08:00
Donald Sebastian Leung 4a695c950d Add SB-type instruction format 2020-07-30 14:03:59 +08:00
Donald Sebastian Leung f4f5e94843 Refactor JALR instruction 2020-07-30 13:56:30 +08:00
Donald Sebastian Leung e6c6f0462e Add I-type instruction format 2020-07-30 13:48:01 +08:00
Donald Sebastian Leung 7846ba95ac Refactor JAL instruction 2020-07-30 13:34:52 +08:00
Donald Sebastian Leung a84b6d50b8 Add UJ-type instruction format 2020-07-30 13:15:17 +08:00
Donald Sebastian Leung 3dc2a174fd Refactor AUIPC instruction 2020-07-30 13:01:13 +08:00
Donald Sebastian Leung 927c12e97c Refactor LUI instruction 2020-07-30 12:55:57 +08:00
Donald Sebastian Leung 34c8b6cf3d Create U-type instruction format 2020-07-30 12:45:32 +08:00
Donald Sebastian Leung c9c47ddc35 Create general instruction class 2020-07-30 12:06:51 +08:00
Donald Sebastian Leung 2421f1f6b6 Add RV32IM ISA 2020-07-24 13:51:04 +08:00
Donald Sebastian Leung 5bce84836c Add REMU instruction for RV32M 2020-07-24 13:32:43 +08:00
Donald Sebastian Leung 4600eaeb74 Add REM instruction for RV32M 2020-07-24 13:30:06 +08:00
Donald Sebastian Leung 7f3f88cb69 Add DIVU instruction for RV32M 2020-07-24 13:27:48 +08:00
Donald Sebastian Leung 2b198303c6 Add DIV instruction for RV32M 2020-07-24 13:25:17 +08:00
Donald Sebastian Leung f13208455d Add MULHU instruction for RV32M 2020-07-24 13:22:41 +08:00
Donald Sebastian Leung 7a61919a88 Add MULHSU instruction for RV32M 2020-07-24 13:20:05 +08:00
Donald Sebastian Leung 9b4f6ac359 Add MULH instruction for RV32M 2020-07-24 13:16:47 +08:00
Donald Sebastian Leung c72205d433 Modify MUL instruction to use alternative operations 2020-07-24 13:13:03 +08:00
Donald Sebastian Leung dec39cb11d Re-add MUL instruction 2020-07-24 12:55:11 +08:00
Donald Sebastian Leung f33d229b2c Fix XOR instruction 2020-07-24 12:49:33 +08:00
Donald Sebastian Leung d54269d3f0 Fix SUB instruction 2020-07-24 12:48:08 +08:00
Donald Sebastian Leung fe2ff5150a Fix SRL instruction 2020-07-24 12:46:24 +08:00
Donald Sebastian Leung 6d35ecdc80 Fix SRA instruction 2020-07-24 12:44:44 +08:00
Donald Sebastian Leung 3c1510ebbc Fix SLT instruction 2020-07-24 12:42:27 +08:00
Donald Sebastian Leung 18e43d9689 Fix SLL instruction 2020-07-24 12:40:28 +08:00
Donald Sebastian Leung d59ebda628 Fix OR instruction 2020-07-24 12:32:59 +08:00
Donald Sebastian Leung 3028246b73 Fix AND instruction 2020-07-24 12:24:43 +08:00
Donald Sebastian Leung eedfc843f7 Fix ADD instruction 2020-07-24 12:21:07 +08:00
Donald Sebastian Leung 73005eb3c3 Revert MUL instruction 2020-07-24 12:17:02 +08:00
Donald Sebastian Leung 14c87fdde2 Add MUL instruction for RV32M 2020-07-24 12:13:40 +08:00
Donald Sebastian Leung 35a53071aa Complete generator for RV32I ISA 2020-07-23 14:33:25 +08:00
Donald Sebastian Leung 2e7cc106aa Add missing return in ports in RV32I ISA 2020-07-23 12:57:32 +08:00
Donald Sebastian Leung badd480a45 Prepare generator script for RV32I ISA 2020-07-23 12:42:59 +08:00
Donald Sebastian Leung d54a60879d Add list of supported instructions for RV32I 2020-07-23 11:18:41 +08:00
Donald Sebastian Leung 61393b9a4f Add AND instruction for RV32I 2020-07-22 16:39:08 +08:00
Donald Sebastian Leung 93978ccdb4 Add OR instruction for RV32I 2020-07-22 16:36:40 +08:00
Donald Sebastian Leung 4eae7064fb Add SRA instruction for RV32I 2020-07-22 16:32:51 +08:00
Donald Sebastian Leung ada2a09818 Add SRL instruction for RV32I 2020-07-22 16:16:27 +08:00
Donald Sebastian Leung 192aec2347 Add XOR instruction for RV32I 2020-07-22 16:11:58 +08:00
Donald Sebastian Leung c6c18765f5 Add SLTU instruction for RV32I 2020-07-22 16:08:09 +08:00
Donald Sebastian Leung adcf7dc4ab Add SLT instruction for RV32I 2020-07-22 16:04:47 +08:00
Donald Sebastian Leung 728e24b0df Add SLL instruction for RV32I 2020-07-22 16:00:46 +08:00
Donald Sebastian Leung 6940574d73 Add SUB instruction for RV32I 2020-07-22 15:55:44 +08:00
Donald Sebastian Leung e80a9a2672 Add ADD instruction for RV32I 2020-07-22 15:52:43 +08:00
Donald Sebastian Leung 5503b9327c Add SRAI instruction for RV32I 2020-07-22 14:35:03 +08:00
Donald Sebastian Leung 4c1acf5d16 Add SRLI instruction for RV32I 2020-07-22 13:58:02 +08:00
Donald Sebastian Leung 846b2ad4b8 Add SLLI instruction for RV32I 2020-07-22 13:52:49 +08:00
Donald Sebastian Leung 0349ebdbb2 Add ANDI instruction for RV32I 2020-07-22 13:43:56 +08:00
Donald Sebastian Leung c97ba62a21 Add ORI instruction for RV32I 2020-07-22 13:42:03 +08:00
Donald Sebastian Leung 74eb0a9df5 Add XORI instruction for RV32I 2020-07-22 13:39:29 +08:00
Donald Sebastian Leung 4878d88d5b Add SLTIU instruction for RV32I 2020-07-22 13:36:04 +08:00
Donald Sebastian Leung 7a767ed038 Add SLTI instruction for RV32I 2020-07-22 13:33:02 +08:00
Donald Sebastian Leung 94286cef74 Add ADDI instruction for RV32I 2020-07-22 13:29:16 +08:00
Donald Sebastian Leung 13210f6002 Add SW instruction for RV32I 2020-07-22 13:12:37 +08:00
Donald Sebastian Leung d8285db0a1 Add SH instruction for RV32I 2020-07-22 13:09:53 +08:00
Donald Sebastian Leung efbc009559 Fix SB instruction for RV32I 2020-07-22 13:05:46 +08:00
Donald Sebastian Leung 9d8e230d70 Add SB instruction for RV32I 2020-07-22 13:01:34 +08:00
Donald Sebastian Leung b3fdeea0f8 Add LHU instruction for RV32I 2020-07-22 12:50:45 +08:00
Donald Sebastian Leung 37f21b317b Add LBU instruction for RV32I 2020-07-22 12:46:56 +08:00
Donald Sebastian Leung 83c9b8c664 Add LW instruction for RV32I 2020-07-22 12:42:47 +08:00
Donald Sebastian Leung fb002c622e Add LH instruction for RV32I 2020-07-22 12:30:52 +08:00
Donald Sebastian Leung 644612dc7e Add LB instruction for RV32I 2020-07-22 12:25:46 +08:00
Donald Sebastian Leung 0f59fbc2d4 Add BGEU instruction for RV32I 2020-07-22 12:09:00 +08:00
Donald Sebastian Leung c1196e23c6 Add BLTU instruction for RV32I 2020-07-22 12:03:38 +08:00
Donald Sebastian Leung 83e859ea27 Add BGE instruction for RV32I 2020-07-22 11:59:28 +08:00
Donald Sebastian Leung a6ab3264c7 Add BLT instruction for RV32I 2020-07-22 11:55:26 +08:00
Donald Sebastian Leung 56005333d3 ADD BNE instruction for RV32I 2020-07-22 11:48:45 +08:00
Donald Sebastian Leung 013679fbf2 Add BEQ instruction for RV32I 2020-07-22 11:40:21 +08:00
Donald Sebastian Leung ffb71e0751 Add JALR instruction for RV32I 2020-07-21 17:20:34 +08:00