Code Monkey home page Code Monkey logo

2catycm / sustech-cs202_214-computer_organization-project Goto Github PK

View Code? Open in Web Editor NEW
13.0 2.0 0.0 107.14 MB

This is the mirror for gitee in github for project assignment of cs202 / 214 Computer Organization course of Southern University of Science and Technology, which is to manufacture a CPU. 这是南方科技大学CS202/214计算机组成原理课程的大作业——实现一个CPU。

Home Page: https://gitee.com/yecanming/SUSTech-CS202_214-Computer_Organization-Project

License: Other

C 0.37% Assembly 3.14% Verilog 93.53% Tcl 2.96%
computer-organization-and-design cpu digital-logic mips sustech-course-code

sustech-cs202_214-computer_organization-project's Introduction

南方科技大学CS202/214计算机组成原理课程大作业

Fork me on Gitee star

这是南方科技大学CS202/214计算机组成原理课程的大作业——实现一个CPU。 本项目的基本功能为,实现了基于FPGA和Verilog语言的支持MIPS指令集的单周期**处理器。

编译说明

本项目使用Vivado作为EDA工具,下载代码后可以快速创建可编译的Vivado项目, 步骤如下:

  1. 克隆项目到本地

    git clone https://gitee.com/yecanming/SUSTech-CS202_214-Computer_Organization-Project.git
  2. 新建Vivado 项目

    image-20220530004739327

    选择RTL Project

    image-20220530004806679

    进入添加代码环节

    image-20220530004844350
  3. 导入verilog源代码(可合成文件)

    点击Add Directories,在弹出来的文件筐中选择ip_invoke(xci文件,用于生成IP核的调用)和mips_cpu(主要的源代码)两个文件夹导入。

    image-20220530004950623
  4. 添加管脚约束文件

    image-20220530005242969

    找到xdc文件夹。

    image-20220530005217981

    逐个导入其中所有xdc文件(包括子文件夹中的文件)。

    导入时可以按住ctrl多选,提高效率。

  5. 开发板型号选择

    本项目使用Xilinx的Minisys开发板测试,该开发板的设置如下:

    image-20220530005445591
  6. 导入自定义IP核

    这些IP核的源代码在本项目当中,并不是vivado自带的,因此需要导入vivado的IP Catalog。

    我们的项目主要用到了东南大学计算机系提供的串口COE接收IP核,很有帮助,在此致谢。

    首先点击IP Catalog

    image-20220530005928253

    选择Add Repository

    image-20220530010005020

    找到ip_import文件夹,直接导入

    image-20220530010125596
  7. 导入Verilog测试(仿真)文件(可选)

    选择Add or create simulation sources

    image-20220530010303825

    找到test/verilog 文件夹,直接导入文件夹

    image-20220530010351991

如何参与开发

  1. 克隆项目到本地

    git clone https://gitee.com/yecanming/SUSTech-CS202_214-Computer_Organization-Project.git

    切换到develop分支

    cd SUSTech-CS202_214-Computer_Organization-Project
    git checkout develop
    
  2. 用喜欢的编辑器修改项目

    • 方法1:用vivado本地工程引用项目,见编译说明
    • 方法2:用vscode修改文件
  3. 使用喜欢的git管理工具提交更改

    • 方法1:git命令行

      git add . # .表示工作文件夹都被加入(除了gitignore)
      git status # 确认add命令加入的是你想要提交的文件,如果不是,用git reset --soft HEAD^取消git add
      git commit -m "提交的名字" # 尽量遵守 Commitizen 规范
    • 方法2:VS Code

    • 方法3:Jetbrains IDE

  4. 使用喜欢的git管理工具推送到云端

    • 方法1:git命令行

      git push -u origin develop # 不是master。
    • 方法2:VS Code

    • 方法3:Jetbrains IDE

项目进度

yecanming/南方科技大学-CS202_214-计算机组成原理-大作业

sustech-cs202_214-computer_organization-project's People

Contributors

2catycm avatar zly7 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.