From f7b3dc8327c52a45a63c2ef5b9f730b6fbc9d511 Mon Sep 17 00:00:00 2001 From: liangkangnan Date: Sat, 4 Jul 2020 16:27:53 +0800 Subject: [PATCH] fpga: README: add uart download Signed-off-by: liangkangnan --- fpga/README.md | 18 +++++++++++++++++- fpga/images/uart_debug.png | Bin 0 -> 12831 bytes 2 files changed, 17 insertions(+), 1 deletion(-) create mode 100644 fpga/images/uart_debug.png diff --git a/fpga/README.md b/fpga/README.md index 91a37c5..2a89a7b 100644 --- a/fpga/README.md +++ b/fpga/README.md @@ -84,7 +84,9 @@ ![](./images/add_src_7.png) -勾选上Copy constraints files into project,然后点击Finish按钮。**如果你的开发板和我的不一样,则需要将约束文件里的引脚配置改成你的开发板上对应的引脚**。 +勾选上Copy constraints files into project,然后点击Finish按钮。 + +**注意:如果你的开发板和我的不一样,则需要将约束文件里的引脚配置改成你的开发板上对应的引脚**。 至此,约束文件添加完成。 @@ -118,6 +120,8 @@ # 3.下载程序到FPGA +## 3.1通过JTAG方式下载 + 将CMSIS-DAP调试器连接好FPGA板子和PC电脑。 打开一个CMD窗口,然后cd进入到tinyriscv项目的tools/openocd目录,执行命令: @@ -148,6 +152,18 @@ **注意:每次下载程序前记得先执行halt命令停住CPU。** +## 3.2通过UART方式下载 + +通过UART方式下载前需要先使能UART debug模块。在约束文件里指定的uart_debug_en引脚,当其输入为高电平时表示使能UART debug模块,输入为低电平时表示关闭UART debug模块。 + +当使能了UART debug模块后,就可以通过tools/tinyriscv_fw_downloader.py脚本来下载程序。 + +打开CMD窗口,进入到tools目录,比如输入以下命令: + +![uart_debug](./images/uart_debug.png) + +即可下载freertos.bin程序到软核里。下载完后,先关闭UART debug模块,然后按板子上的复位(rst)按键即可让程序跑起来。 + # 4.Vivado仿真设置 如果要在vivado里进行RTL仿真的话,还需要添加tb目录里的tinyriscv_soc_tb.v文件,具体方法和添加RTL源文件类似,只是在源文件类型里选择simulation sources,如下图所示: diff --git a/fpga/images/uart_debug.png b/fpga/images/uart_debug.png new file mode 100644 index 0000000000000000000000000000000000000000..cef267d3e802c25613f059807314f1232dd38fc7 GIT binary patch literal 12831 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 Q|5XQ)QIRf@d=vP80A<%6x&QzG literal 0 HcmV?d00001