{"id":22283200,"url":"https://github.com/guntas-13/mips-processor-basys3","last_synced_at":"2026-01-06T00:34:44.412Z","repository":{"id":263060008,"uuid":"860157849","full_name":"guntas-13/mips-processor-basys3","owner":"guntas-13","description":"Full FPGA Implementation of 32-bit FSM-based Multi-State MIPS Processor","archived":false,"fork":false,"pushed_at":"2024-12-24T14:00:15.000Z","size":97215,"stargazers_count":1,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-01-30T17:39:05.560Z","etag":null,"topics":["mips-assembly","mips-processor","processor-architecture","verilog"],"latest_commit_sha":null,"homepage":"","language":"Verilog","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/guntas-13.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-09-19T23:40:45.000Z","updated_at":"2025-01-29T09:57:24.000Z","dependencies_parsed_at":"2024-11-15T22:26:46.997Z","dependency_job_id":"b93b16e8-c672-4c7d-8e2b-5c9e1cdbb9a1","html_url":"https://github.com/guntas-13/mips-processor-basys3","commit_stats":null,"previous_names":["guntas-13/mips-processor-basys3"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/guntas-13%2Fmips-processor-basys3","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/guntas-13%2Fmips-processor-basys3/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/guntas-13%2Fmips-processor-basys3/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/guntas-13%2Fmips-processor-basys3/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/guntas-13","download_url":"https://codeload.github.com/guntas-13/mips-processor-basys3/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245535274,"owners_count":20631292,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["mips-assembly","mips-processor","processor-architecture","verilog"],"created_at":"2024-12-03T16:39:15.896Z","updated_at":"2026-01-06T00:34:39.372Z","avatar_url":"https://github.com/guntas-13.png","language":"Verilog","funding_links":[],"categories":[],"sub_categories":[],"readme":"# mips-processor-basys3\n\n# Team ALUminati - ES215 Computer Organization and Architecture\n\nThe processor is implemented on the **Basys3 FPGA board**. The datapath has been modified carefully to expand the ISA - allowing _recursive programs_ to run as well.\n\nCheck out the final report **[here](https://github.com/guntas-13/mips-processor-basys3/blob/master/Final%20Report%20Team22%20-%20ALUminati.pdf)** and the final presentation **[here](https://github.com/guntas-13/mips-processor-basys3/blob/master/Final%20Presentation%20Team22%20-%20ALUminati.pdf)**, it includes video demonstrations as well.\n\nSome MIPS assembly codes are available in the **[codes](https://github.com/guntas-13/mips-processor-basys3/tree/master/codes)** directory. The **[utils](https://github.com/guntas-13/mips-processor-basys3/tree/master/utils)** directory contains a Python script to convert human-readable MIPS assembly code to machine code.\n\nIn the **`utils`** directory, write your human-readable MIPS assembly code in **`mips_instructions.txt`** run **`coe_generator.py`**:\n\n```console\npython3 ./utils/coe_generator.py\n```\n\n**`data.coe`** will be ready to be used in the FPGA and even the 32-bit machine code will be available in **`mips_machine_code.txt`**.\n\n## Versions of the Processor\n\n**`mips_v3.2`** is the stable and FPGA-implementation ready version of the MIPS processor.\n\u003cdiv align = \"center\"\u003e\n    \u003cimg src = \"https://github.com/guntas-13/mips-processor-basys3/blob/master/media/Illustration.png\" style=\"width: 80%\"\u003e\n\u003c/div\u003e\n\n## Modified Datapath\n\n\u003cdiv align = \"center\"\u003e\n    \u003cimg src = \"https://github.com/guntas-13/mips-processor-basys3/blob/master/media/DataPath.png\" style=\"width: 80%\"\u003e\n\u003c/div\u003e\n\n## The FSM\n\n\u003cdiv align = \"center\"\u003e\n    \u003cimg src = \"https://github.com/guntas-13/mips-processor-basys3/blob/master/media/FSM.png\" style=\"width: 50%\"\u003e\n\u003c/div\u003e\n\n## The Complete ISA\n\n\u003cdiv align = \"center\"\u003e\n    \u003cimg src = \"https://github.com/guntas-13/mips-processor-basys3/blob/master/media/ISA.png\" style=\"width: 70%\"\u003e\n\u003c/div\u003e\n\n## BRAM\n\n\u003cdiv align = \"center\"\u003e\n    \u003cimg src = \"https://github.com/guntas-13/mips-processor-basys3/blob/master/media/MemOrganization.png\" style=\"width: 100%\"\u003e\n\u003c/div\u003e\n\n\u003cdiv align = \"center\"\u003e\n    \u003cimg src = \"https://github.com/guntas-13/mips-processor-basys3/blob/master/media/MemReadWrite.png\" style=\"width: 100%\"\u003e\n\u003c/div\u003e\n\n## ALU\n\n\u003cdiv align = \"center\"\u003e\n    \u003cimg src = \"https://github.com/guntas-13/mips-processor-basys3/blob/master/media/ALU.png\" style=\"width: 100%\"\u003e\n\u003c/div\u003e\n\n\u003cdiv align = \"center\"\u003e\n    \u003cimg src = \"https://github.com/guntas-13/mips-processor-basys3/blob/master/media/our_alu.png\" style=\"width: 45%; float: left;\"\u003e\n    \u003cimg src = \"https://github.com/guntas-13/mips-processor-basys3/blob/master/media/ALU_modification1.png\" style=\"width: 35%;\"\u003e\n\u003c/div\u003e\n\n\u003cdiv align = \"center\"\u003e\n    \u003cimg src = \"https://github.com/guntas-13/mips-processor-basys3/blob/master/media/ALU_waveform_after_modification_latest.png\" style=\"width: 100%\"\u003e\n\u003c/div\u003e\n\n\u003cdiv align = \"center\"\u003e\n    \u003cimg src = \"https://github.com/guntas-13/mips-processor-basys3/blob/master/media/ALU_waveform.png\" style=\"width: 100%\"\u003e\n\u003c/div\u003e\n\n## Factorial Waveform\n\n\u003cdiv align = \"center\"\u003e\n    \u003cimg src = \"https://github.com/guntas-13/mips-processor-basys3/blob/mips_v1/media/factorial_waveform.png\" style=\"width: 100%\"\u003e\n\u003c/div\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fguntas-13%2Fmips-processor-basys3","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fguntas-13%2Fmips-processor-basys3","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fguntas-13%2Fmips-processor-basys3/lists"}