FPGA开发中的脚本语言有哪些?

多数FPGA开发者都习惯图形化界面(GUI)。GUI方式简单易学,为小项目提供了一键式流程。然而,随着FPGA项目越来越复杂,在很多情况下GUI工具就阻碍了工作效率。因为GUI工具不能对整个开发过程提供足够的灵活性和控制。另一方,GUI工具本身会占用很大一部CPU资源和内存。

 FPGA开发中的脚本语言有哪些?_设计制作_嵌入式技术

 脚本语言的选择

在IC和FPGA的最常用的是TCL,Perl以及Shell。除此之外,还有可能用到其他的脚本语言。比如,Xilinx工具脚本语言还有Ruby和Python。

 TCL

顾名思义,Tool Command Language,它的工具交互性要好些,可以很好地运用于书写工具命令脚本。尤其是目前很大一部分EDA工具是支持TCL语言的,应该说它们的母语就是TCL。综合功能的EDA软件都采用TCL语言,比如,DC、Vivado、quartus、Synplify等。TCL是面向ASIC和FPGA设计工具的一种近乎标准的脚本语言。EDA工具都按这种格式下约束(Vivado的时序约束和管脚物理约束),TCL本身就是为了配合工具使用的,没有太大的独立价值。TCL语法不同于其他脚本语言,许多开发者很难习惯。TCL具有良好的文档和团队支持。Xilinx在Vivado的安装中附带了一个自定义的TCL——xtclsh。如果要启动TCL输入:

$ xtclsh –v #display TCL version。

 Perl

Perl 是一种流行的脚本语言,广泛应用于EDA等工具中,特别是在ASIC的验证和后端设计中。Perl用来做一些极其强大的文字处理,减少重复性工作。比如修改ECO,将小design整合成大design,自动跑各种随机化的仿真,极其有用。Vivado也附带了自定义的Perl解释器xilperl。perl在文本处理上应该是无人能及,寥寥几行代码就可以做到别的代码很多行才能处理好的文本。但Perl脚本的可读性比较差。

 Shell

Linux的发行版默认的一般都是bash。Unix发行版比如,FreeBSD默认的shell是csh。因为早期EDA软件都是运行在Unix操作系统上,而且csh的脚本语言类似于C语言,所以,ASIC开发中会用到很多csh脚本。然而,bash 除了拥有csh 的很多特性外,还能提供shell 函数,命令行编辑,过程处理等特性。所以bash在Linux发行版中占有很大的份额。

维特根斯坦说:“我的语言界限便是我世界的界限。”不存在完美的语言描述这个世界,每种语言都其特定的用途。选择何种语言会考虑很多因素,如现有项目设置、设计团队的经验、熟悉的工具和脚本、灵活性以及与其他工具的定制和集成。如果偏处理文本学perl,偏工具交互学tcl。一方面,语言都是相通的,只要有C语言基础,学什么都快。另一方面,我们选学习哪儿语言是因为我们不想学习所有这些语言。实际的开发中除了脚本语言会极大地提高工作外,许多开发者也喜欢用make 工具进行FPGA编译,因为make能够是自动跟踪检查。

语言的存在是为了解决问题,而工业社会的特点是分工,效率。所以,选择合适语言解决合适的问题才是王道。

89
145
0
75

相关资讯

  1. 1、教你怎样在电子锁没电的情况下打开3941
  2. 2、实例讲解!搞定PLC硬件配置问题原来这么简单1979
  3. 3、“开瓶器”微型机器人能有效杀死癌细胞用于靶向药物输送1113
  4. 4、智慧校园安全设备视频监控检测系统方案4201
  5. 5、2019年全球BAS市场规模将达到750亿美元4492
  6. 6、5G+智能制造=?130
  7. 7、工业互联网将成为2019年软件业发展的重点之一773
  8. 8、英特尔、高通、博世等巨头上演物联网争霸赛TOP17156
  9. 9、受市场竞争环境变化三超新材2018年净利润降48.46%1340
  10. 10、基于图像处理技术实现零件专用检测系统的设计207
全部评论(0)
我也有话说
0
收藏
点赞
顶部