diff --git a/FPGA/README.md b/FPGA/README.md new file mode 100644 index 0000000..1e2069a --- /dev/null +++ b/FPGA/README.md @@ -0,0 +1,115 @@ +# 1.概述 + +介绍如何将tinyriscv移植到FPGA平台上。 + +1.软件:xilinx vivado(以2018.1版本为例)开发环境。 + +2.FPGA:xilinx Artix-7 35T。 + +# 2.步骤 + +## 2.1创建工程 + +首先打开vivado软件,新建工程,方法如下图所示: + +![](./images/create_prj_1.png) + +或者通过File菜单新建工程,如下图所示: + +![](./images/create_prj_2.png) + +然后进入下一步,如下图所示: + +![](./images/create_prj_3.png) + +直接点击Next按钮,进入下一步,如下图所示: + +![](./images/create_prj_4.png) + +输入工程名字和工程路径,勾选上Create project subdirectiry选项,然后点击Next按钮,如下图所示: + +![](./images/create_prj_5.png) + +选择RTL Project,并勾选上Do not specify sources at this time,如下图所示: + +![](./images/create_prj_6.png) + +在Search框里输入256-1,然后选中xc7a35tftg256-1这个型号,然后点击Next按钮,如下图所示: + +![](./images/create_prj_7.png) + +直接点击Finish按钮。 + +至此,工程创建完成。 + +## 2.2添加RTL源文件 + +在工程主界面,点击左侧的Add Sources按钮,如下图所示: + +![](./images/add_src_1.png) + +进入到如下图的界面: + +![](./images/add_src_2.png) + +选中第二项Add or create design sources,然后点击Next按钮,如下图所示: + +![](./images/add_src_3.png) + +点击Add Directories按钮,选择tinyriscv项目里的整个rtl文件夹,如下图所示: + +![](./images/add_src_4.png) + +勾选上红色框里那两项,然后点击Finish按钮。 + +至此,RTL源文件添加完成。 + +## 2.3添加约束文件 + +在工程主界面,点击左侧的Add Sources按钮,如下图所示: + +![](./images/add_src_1.png) + +进入到如下图的界面: + +![](./images/add_src_5.png) + +选择第一项Add or create constraints,然后点击Next按钮,如下图所示: + +![](./images/add_src_6.png) + +点击Add Files按钮,选择tinyriscv项目里的FPGA/constrs/tinyriscv.xdc文件,如下图所示: + +![](./images/add_src_7.png) + +勾选上Copy constraints files into project,然后点击Finish按钮。 + +至此,约束文件添加完成。 + +## 2.4生成Bitstream文件 + +点击下图所示的Generate Bitstream按钮,即可开始生成Bitstream文件。 + +这包括综合、实现(布局布线)等过程,因此时间会比较长。 + +![](./images/add_src_8.png) + +## 2.5下载Bitstream文件到FPGA + +连接好下载器和FPGA开发板,将下载器插入PC,然后给板子上电,接着点击vivado主界面的左下角的Open Hardware Manager按钮,如下图所示: + +![](./images/download_1.png) + +接着,点击Open target按钮,然后选择Auto Connect,如下图所示: + +![](./images/download_2.png) + +连接成功后,点击Program device按钮,如下图所示: + +![](./images/download_3.png) + +弹出如下界面,然后直接点击Program按钮。 + +![](./images/download_4.png) + +至此,Bitstream文件即可下载到FPGA。 \ No newline at end of file diff --git a/FPGA/images/add_src_1.png b/FPGA/images/add_src_1.png new file mode 100644 index 0000000..e85bac1 Binary files /dev/null and b/FPGA/images/add_src_1.png differ diff --git a/FPGA/images/add_src_2.png b/FPGA/images/add_src_2.png new file mode 100644 index 0000000..00d8ba4 Binary files /dev/null and b/FPGA/images/add_src_2.png differ diff --git a/FPGA/images/add_src_3.png b/FPGA/images/add_src_3.png new file mode 100644 index 0000000..7c4c003 Binary files /dev/null and b/FPGA/images/add_src_3.png differ diff --git a/FPGA/images/add_src_4.png b/FPGA/images/add_src_4.png new file mode 100644 index 0000000..8ff8dd8 Binary files /dev/null and b/FPGA/images/add_src_4.png differ diff --git a/FPGA/images/add_src_5.png b/FPGA/images/add_src_5.png new file mode 100644 index 0000000..cc6e98f Binary files /dev/null and b/FPGA/images/add_src_5.png differ diff --git a/FPGA/images/add_src_6.png b/FPGA/images/add_src_6.png new file mode 100644 index 0000000..f70b7dd Binary files /dev/null and b/FPGA/images/add_src_6.png differ diff --git a/FPGA/images/add_src_7.png b/FPGA/images/add_src_7.png new file mode 100644 index 0000000..7c5702e Binary files /dev/null and b/FPGA/images/add_src_7.png differ diff --git a/FPGA/images/add_src_8.png b/FPGA/images/add_src_8.png new file mode 100644 index 0000000..c2eef25 Binary files /dev/null and b/FPGA/images/add_src_8.png differ diff --git a/FPGA/images/create_prj_1.png b/FPGA/images/create_prj_1.png new file mode 100644 index 0000000..91f0a76 Binary files /dev/null and b/FPGA/images/create_prj_1.png differ diff --git a/FPGA/images/create_prj_2.png b/FPGA/images/create_prj_2.png new file mode 100644 index 0000000..6de5cd8 Binary files /dev/null and b/FPGA/images/create_prj_2.png differ diff --git a/FPGA/images/create_prj_3.png b/FPGA/images/create_prj_3.png new file mode 100644 index 0000000..fc409ac Binary files /dev/null and b/FPGA/images/create_prj_3.png differ diff --git a/FPGA/images/create_prj_4.png b/FPGA/images/create_prj_4.png new file mode 100644 index 0000000..cd6b56d Binary files /dev/null and b/FPGA/images/create_prj_4.png differ diff --git a/FPGA/images/create_prj_5.png b/FPGA/images/create_prj_5.png new file mode 100644 index 0000000..4f962d9 Binary files /dev/null and b/FPGA/images/create_prj_5.png differ diff --git a/FPGA/images/create_prj_6.png b/FPGA/images/create_prj_6.png new file mode 100644 index 0000000..fc7b359 Binary files /dev/null and b/FPGA/images/create_prj_6.png differ diff --git a/FPGA/images/create_prj_7.png b/FPGA/images/create_prj_7.png new file mode 100644 index 0000000..be99b4f Binary files /dev/null and b/FPGA/images/create_prj_7.png differ diff --git a/FPGA/images/download_1.png b/FPGA/images/download_1.png new file mode 100644 index 0000000..3e50c4f Binary files /dev/null and b/FPGA/images/download_1.png differ diff --git a/FPGA/images/download_2.png b/FPGA/images/download_2.png new file mode 100644 index 0000000..7c004af Binary files /dev/null and b/FPGA/images/download_2.png differ diff --git a/FPGA/images/download_3.png b/FPGA/images/download_3.png new file mode 100644 index 0000000..076d97d Binary files /dev/null and b/FPGA/images/download_3.png differ diff --git a/FPGA/images/download_4.png b/FPGA/images/download_4.png new file mode 100644 index 0000000..6b45e82 Binary files /dev/null and b/FPGA/images/download_4.png differ