https://github.com/buaadreamer/buaa-co-2020

2020年北航计组课设代码 This is the BUAA Computer Orgnization code project files.

https://github.com/buaadreamer/buaa-co-2020

Science Score: 13.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
  • DOI references
  • Academic publication links
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (1.9%) to scientific vocabulary

Keywords

computer-organization cpu logisim mars mips verilog
Last synced: 5 months ago · JSON representation

Repository

2020年北航计组课设代码 This is the BUAA Computer Orgnization code project files.

Basic Info
  • Host: GitHub
  • Owner: BUAADreamer
  • Language: Assembly
  • Default Branch: master
  • Homepage:
  • Size: 40.2 MB
Statistics
  • Stars: 16
  • Watchers: 1
  • Forks: 0
  • Open Issues: 0
  • Releases: 0
Topics
computer-organization cpu logisim mars mips verilog
Created about 5 years ago · Last pushed about 4 years ago
Metadata Files
Readme

README.md

BUAA-CO-2020

2020年秋季北航计组代码。This is My BUAA Computer Orgnization code project files.

introduction

由于2020年秋季的北航计组实验由于时间冲突的原因只开课开到P7,P8没有开放,笔者很幸运地通关了,在这里还是放一下本菜鸡的代码,纪念一下那些熬夜奋战的时光

北航的计组课程目标是开发支持MIPS指令集的CPU,在这个过程中学习数字电路,汇编语言,计算机软硬件组成等基础知识。

about Code

Pre 基础知识学习

主要是logisimverilogMIPS以及相关工具(ISE,Mars等)的基本使用,为之后的各个Project打基础

P0 logisim搭建基本电路

利用logisim搭建一些小的元件和状态机,难点主要在状态机搭建,要区分好MooreMealy

P1 verilog搭建基本电路

P1和P0内容差不多,只是工具变了,主要就是用verilog搭建小元件和状态机

P1课上初始化一定要注意!!!笔者就是在课上因为没有对一些变量初始化挂了一次。

P2 MIPS汇编语言

基本就是用MIPS写一些基本的简单算法题,如果有类似快排,二分查找这样的复杂一些的算法题会给参考的C源代码

课上难一些的也就是考递归算法翻译题,其他题基本都比较简单

P3 logisim单周期CPU开发(8条指令)

课下:利用logisim搭建一个支持{addu, subu, ori, lw, sw, beq, lui, nop}指令集的单周期CPU

课上:扩展给定的指令

P4 Verilog单周期CPU开发(10条指令)

课下:利用Verilog搭建一个支持{addu, subu, ori, lw, sw, beq, lui, jr,nop,jal}指令集的单周期CPU

课上:扩展给定的指令

P5 Verilog简单流水线CPU开发(11条指令)

课下:利用Verilog搭建一个支持{ addu, subu, ori, lw, sw, beq, lui, j, jal, jr, nop }指令集的流水线CPU

课上:扩展给定的指令

P6 Verilog复杂流水线CPU开发(51条指令)

课下:利用Verilog搭建一个支持{LB、LBU、LH、LHU、LW、SB、SH、SW、ADD、ADDU、SUB、 SUBU、 MULT、 MULTU、 DIV、 DIVU、 SLL、 SRL、 SRA、SLLV、SRLV、SRAV、AND、OR、XOR、NOR、ADDI、ADDIU、ANDI、ORI、XORI、LUI、SLT、SLTI、SLTIU、SLTU、BEQ、BNE、BLEZ、BGTZ、BLTZ、BGEZ、J、JAL、JALR、JR、MFHI、MFLO、MTHI、MTLO}指令集的流水线CPU

课上:扩展给定的指令

P7 Verilog处理器系统设计_支持中断异常(54条指令)

课下:在P6的基础上新增{eret,mfc0,mtc0}三条中断/异常相关指令,新增异常处理模块,系统桥模块和定时器模块,和原本的CPU组成一个系统。

课上:强测+扩展一条简单的异常中断指令(后者不一定会出现)

TestData

自己构造,或者从github收集,或者同学提供的测试数据,以及部分测试脚本 注:数据仅供参考,每年题目都可能会变化

Owner

  • Login: BUAADreamer
  • Kind: user
  • Location: Beijing
  • Company: Beihang University

GitHub Events

Total
  • Watch event: 1
Last Year
  • Watch event: 1

Issues and Pull Requests

Last synced: 11 months ago

All Time
  • Total issues: 0
  • Total pull requests: 0
  • Average time to close issues: N/A
  • Average time to close pull requests: N/A
  • Total issue authors: 0
  • Total pull request authors: 0
  • Average comments per issue: 0
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 0
  • Pull requests: 0
  • Average time to close issues: N/A
  • Average time to close pull requests: N/A
  • Issue authors: 0
  • Pull request authors: 0
  • Average comments per issue: 0
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
Pull Request Authors
Top Labels
Issue Labels
Pull Request Labels