Post

《各类脚本工具语言记录》

时序图工具WaveDrom Hitchhiker’s Guide to the WaveDrom

vitis_user_guide: User Managed Mode in Vitis Unified Embedded IDE • Vitis Tutorials: Embedded Software • 阅读器 • AMD 技术信息门户

scala语法

参数声明格式

1
virtualChannelParams: Seq[UserVirtualChannelParams] = Seq(UserVirtualChannelParams())

在这里,Seq[UserVirtualChannelParams]类型注解,用于指定参数 virtualChannelParams 的类型。它不是返回类型的定义。

在 Scala 中,参数的声明格式通常是:参数名: 参数类型 = 默认值

1
channelGen: Parameters => ChannelOutwardNode => ChannelOutwardNode = p => u => u

在这里也是,参数类型为Parameters => ChannelOutwardNode => ChannelOutwardNode,该类型为一个函数。接受Parameters并返回一个xx函数,xx函数接受一个类型为 ChannelOutwardNode 的参数,最终返回一个类型为 ChannelOutwardNode 的值。

tcl

vivado的tcl用法

  • 变量置换:set y [expr $x+100]
  • 赋值:set b ${a.1}
  • List:list 1 2 {3 4}

Makefile

  1. 关于部分makefile的路径管理
    • \$(abspath ./sim_c/include)

      abspath函数会将给定的相对路径转换为绝对路径。在这个例子中,./sim_c/include是一个相对路径,$(abspath ./sim_c/include)会将其转换为绝对路径

    • \$(addprefix -I, $(INC_PATH))

      :函数会将指定的前缀-I添加到INC_PATH变量中的每个路径前面

    • $@

      1
      2
      3
      4
      
      target: dependency1 dependency2
       echo "Target is $@"  # target
       echo "First dependency is $<" # dependency1
       echo "All dependencies are $^" # dependency1 dependency2
      

python

官方帮助: https://docs.python.org/zh-cn/3/

python正则表达匹配规则

  • r'/\*.*$ r'^.*\*/'
  • ^表示行的开始,
  • .*表示任何字符(除了换行符)0次或多次
  • re.sub('//.*$','',lines[i]) 替换
  • re.findall(r'/\*',lines[i]) 找到所有匹配模式,返回元组列表
  • re.search(pattern, string, flags)描整个字符串并返回第一个成功的匹配。
This post is licensed under CC BY 4.0 by the author.