如何建设一个国际化的网站,徐州商城网站建设,wordpress 微信机器人,html编辑工具有哪些用python脚本从Cadence导出xdc约束文件 概述转换方法先导出csv文件修改CSV文件 CSV转XDC检查输出XDC文件csv2xdc源代码下载 概述
在Cadence设计完成带有FPGA芯片的原理图的时候#xff0c;往往需要将FPGA管脚和网络对应关系导入vivado设计软件中#xff0c;对于大规模FPGA管… 用python脚本从Cadence导出xdc约束文件 概述转换方法先导出csv文件修改CSV文件 CSV转XDC检查输出XDC文件csv2xdc源代码下载 概述
在Cadence设计完成带有FPGA芯片的原理图的时候往往需要将FPGA管脚和网络对应关系导入vivado设计软件中对于大规模FPGA管脚较多一一对照查找难免出错Cadence软件自带导出工具可支持UCF和CSV两种格式。本文利用Cadence导出的CSV文件编写转换脚本进行转换。
转换方法
先导出csv文件
测试原理图如下 在fpga器件上点右键选择 Export FPGA 修改CSV文件
修改的CSV文件只包含3列依次为 Pin Number 、网络名、电平标准电平标准根据实际bank电压输入如LVCMOS18、LVCOMS33示例如下 该示例包含了总线网络和普通信号线。
CSV转XDC
复制修改后的csv文件到 csv2xdc.exe 工具所在目录在该目录打开命令行终端输入转换指令
.\csv2xdc.exe -i .\s1_xc7z010clg225.csv命令帮助
参数格式.\csv2xdc -i inputfile.csv功能说明csv2xdc用于将orcad导出的csv网络映射文件转换为vivado的xdc管脚约束文件inputfile.csv格式要求csv要求三列顺序为管脚号网络名电平标准三列必须全部填写缺一不可。 检查输出XDC文件 csv2xdc源代码
Python 3.7.9 测试
# -*- coding: UTF-8 -*-import sys, getopt, csvdef mhelp():print (\
参数格式\n\n\
\t .\csv2xdc -i inputfile.csv \n\n\n\
功能说明\n\n\
\t csv2xdc用于将orcad导出的csv网络映射文件转换为vivado的xdc管脚约束文件 \n\n\n\
inputfile.csv格式要求\n\n\
\t csv要求三列顺序为管脚号网络名电平标准 \n\
\t 三列必须全部填写缺一不可。\n\n)def main(argv):inputfile outputfile try:opts, args getopt.getopt(argv,hi:o:,[ifile,ofile])except getopt.GetoptError:mhelp()sys.exit(2)for opt, arg in opts:if opt -h:mhelp()sys.exit()elif opt in (-i, --ifile):inputfile argoutputfile arg.xdcwith open(inputfile,rt) as f: cr csv.reader(f)fo open(outputfile,w)i 0for row in cr:# 替换总线为方括号row[1] row[1].replace(,[)row[1] row[1].replace(,])# 生成约束constraint_pinNumber set_property PACKAGE_PIN row[0] [get_ports {row[1]}]\nlevel_standard set_property IOSTANDARD row[2] [get_ports {row[1]}]\n# 写约束文件fo.write(constraint_pinNumberlevel_standard)print(row)fo.close()f.close()print (输入的文件为, inputfile)print (输出的文件为, outputfile)if __name__ __main__:if(len(sys.argv)1):main(sys.argv[1:])else :mhelp()
用 cx_Freeze 生成exe可执行文件 setup.py 配置如下
from cx_Freeze import setup, Executable
import sys#base WIN32GUI if sys.platform win32 else None # 带界面程序
base console if sys.platform win32 else None # 控制台程序executables [Executable(csv2xdc.py, basebase, icon)]
packages []
include_files[]options {build_exe: {packages:packages,include_files: include_files},
}
setup(name csv2xdc,options options,version 1.0,description desc of program,executables executables
)
主要注意生成控制台程序配置 base ‘console’
下载
源码、可执行程序及测试Demo下载 该资源主要包括csv2xdc源代码、可执行程序、示例程序、以及cx_Freeze配置文件脚本等全部文件之前用的excel转换表格也在其中仅供参考。