展开Verilog BUS信号名的方法
来源:互联网 发布:华康少女字体mac 编辑:程序博客网 时间:2024/05/20 07:13
假如我有一些信号需要展开,信号的格式如下所示:
input.file
Hello/My/name/is/AAAAA[9:0]Hello/My/name/is/BBBBB[0:7]Hello/My/name/is/CCCCC[3:3]Hello/My/name/is/DDDDD
展开之后的格式如下所示:
Hello/My/name/is/AAAAA[9]Hello/My/name/is/AAAAA[8]Hello/My/name/is/AAAAA[7]~~~此处省略若干行~~~Hello/My/name/is/CCCCC[1]Hello/My/name/is/CCCCC[0]Hello/My/name/is/CCCCC[3]Hello/My/name/is/DDDDD
下面的python脚本(python2)可以实现这个功能:
expand_bus_bits.py
#!/usr/bin/pythonimport refh = open('./input.file')for line in fh.readlines():# print line m = re.match(r'(.*)\[(\d+):(\d+)\]', line) if m: signal_name = m.group(1) index0 = int(m.group(2)) index1 = int(m.group(3))# print signal_name# print index0# print index1# print signal_name + "[" + str(index0) + ":" + str(index1) + "]" if (index0 > index1): while (index0 >= index1): print signal_name + "[" + str(index0) + "]" index0 = index0 - 1 elif (index0 < index1): while (index0 <= index1): print signal_name + "[" + str(index1) + "]" index1 = index1 - 1 else: print signal_name + "[" + str(index0) + "]" else: print line
执行的结果默认输出到屏幕上。
下面是输出的结果:
0 0
- 展开Verilog BUS信号名的方法
- Verilog一种检测信号上升沿的方法
- Verilog的信号强度学习
- verilog中对于inout信号的处理
- verilog中对inout信号的处理
- 展开对数的方法
- 如何列举D-Bus的service以及信号订阅者。
- verilog 信号强度
- Verilog HDL 测量输入信号的正、负脉宽
- verilog计算某个时钟信号clk_dut的频率[附源代码]
- verilog学习笔记——8位带置位信号的计数器
- VHDL:信号、端口以及和Verilog的区别
- vc++ 宏展开的方法
- 展开宏的一种方法
- 用D-Bus连接A2DP的方法
- verilog入门经验(三)取某个信号的上升沿或下降沿信号
- zen cart首页展开所有的分类名
- 连续信号(模拟信号)在有限区间上的傅立叶级数展开,离散频谱
- OKVIS 中的 propagation 代码公式版
- MapReduce 1底层实现原理
- Imooc_Java实现消息摘要算法加密_2-2MD算法实现
- centos7下快速安装mysql
- SpringMVC引入静态org.webjars中资源404
- 展开Verilog BUS信号名的方法
- OKVIS 中的 propagation 公式版
- Imooc_Java实现消息摘要算法加密_3-2SHA算法实现
- JAVA中值传递和引用传递的三种情况
- Java之路第一天
- eclipse的svn连不上SVN Server服务器
- Imooc_Java实现消息摘要算法加密_4-1 消息摘要算法MAC实现与应用
- 原型链
- SDK学习笔记-Windows消息机制