【教程】f4pga-arch-defs 配置及操作手册

参考文档

f4pga 官方文档

环境准备

下载

通过git下载源码

# 官方仓库
git clone https://github.com/f4pga/f4pga-arch-defs.git --recursive

编译环境

完成后,安装编译工具make(已有可跳过此步)

sudo apt-get install make -y

进入项目路径,利用makefile编译所需环境

# 此处需要有魔法上网
# 第一次执行时较慢
cd f4pga-arch-defs
make env

# 若没有C++编译环境则:
sudo apt-get install build-essential
# 若提示版本冲突,可以尝试更换镜像源
# 进入网址:https://mirrors.tuna.tsinghua.edu.cn/help/ubuntu/
# 选择系统版本,如:ubuntu 20.04
# 将系统镜像配置作备份,之后更换镜像源。
# 系统镜像源位置:/etc/apt/sources.list

注意事项:

  • 注意1:
    • 执行mk的过程中,会下载miniconda,如果本机已有conda环境,可以修改mk文件,指定使用本机的conda,mk文件在
    • f4pga-arch-defs/third_party/make-env/conda.mk
  • 注意2:
    • 如果网络连接不畅(比如我),那么可以拷贝他人已配置好的env,之后需要将conda.sh、activate、conda这三个文件中的他人路径修改为本机的conda路径

测试环境

环境编译完成后,在f4pga-arch-defs路径下将产生build文件夹

进入build路径,用35t架构文件测试counter实例

# f4pga-arch-defs/build/xilinx/xc7/tests/counter
make counter_arty_bit
  • 注意:
    • 如果make过程中提示如下信息,需要安装包管理工具pip以及fasm依赖后重新make
# 报错信息
required dependencies and then reinstalling the fasm package with:
    pip uninstall
    pip install -v fasm

# pip安装
sapt isntall python3-pip

# fasm安装
pip install fasm

完成。

生成 arch.timing.xml

arch.timing.xml用于描述 FPGA 架构中的时序信息。其提供了关于不同逻辑元件、时钟信号以及各种时序约束的详细信息,主要供布局(placement)和布线(routing)阶段使用。

# f4pga-arch-defs/build/xilinx/xc7/archs/artix7/devices/xc7a50t-virt
cd f4pga-arch-defs/build/xilinx/xc7/archs/artix7/devices/xc7a50t-virt

make file_xilinx_xc7_archs_artix7_devices_xc7a50t-virt_arch.timing.xml

生成 rr_graph.bin 和 grid_map 文件

到 f4pga-arch-defs 的 xc7 系列对应的 devices 目录

cd f4pga-arch-defs/build/xilinx/xc7/archs/artix7/devices

make file_xilinx_xc7_archs_artix7_devices_rr_graph_xc7a50t_test.rr_graph.real.bin

主要输出文件:

  • arch.timing.xml
  • rr_graph_xc7a50t_test.lookahead.bin
  • rr_graph_xc7a50t_test.place_delay.bin
  • rr_graph_xc7a50t_test.rr_graph.real.bin
  • vpr_grid_map.csv
posted @ 2023-05-12 15:31  小拳头呀  阅读(135)  评论(0编辑  收藏  举报