- 博客(10)
- 资源 (2)
- 收藏
- 关注
原创 NumberChange:用于把数字替换为状态机独热码定义的小插件
目标 写代码的时候,一个模块一个状态机,定义的时候有点多。就弄了这个,在sublime编辑器里把一个数字替换为状态机独热码的定义。 示例 敲一个数字,再按快捷键替换。 代码 import os, sublime, sublime_plugin # 用于将数字替换为状态机独热码定义 class NumberChangeCommand(sublime_plugin.TextCommand): def run(self, edit): view = self.view
2022-01-18 00:20:54
491
原创 verilog一组信号能否同时包含组合逻辑和时序逻辑
动机 写代码的时候突然想到一组信号能不能同时包含组合逻辑和时序逻辑,就简单尝试了一下。 代码 module test2 ( input clk, input rst, input B, input C, output reg [1:0] A ); always @(posedge clk or posedge rst) if (rst) A[1] <= 'b0; else A[1] <= C; alway
2022-01-07 15:26:05
741
2
原创 ReplaceChar:用于将文本替换为空格的sublime小插件
目标 把代码里面选中的字符直接替换为空格。用于复制粘贴的时候,多行代码快速修改。 代码 import os, sublime, sublime_plugin class ReplaceCharCommand(sublime_plugin.TextCommand): def run(self, edit): view = self.view position = view.sel()[0] changestr = view.substr(positio
2022-01-05 19:57:52
582
原创 verilog数1的个数参数化位宽
动机 想弄一个数1个数的电路,并且能够参数化,尝试了几种写法,记录一下。 系统函数$countones 先试试verilog自带的。 `define PORT_NUM 16 module test1_tb(); test1 U_test1(.access_port_r(16'b0100_0001_0011_1001)); endmodule module test1( (* DONT_TOUCH= "TRUE" *) input [`PORT_NUM-1:0] access_port_r ); (*
2022-01-03 20:34:46
2911
原创 奇怪的python代码
目录1. try-except-else-finally 1. try-except-else-finally for i in range(5): try: continue except: continue else: print('else'+str(i)) finally: print('finally'+str(i)) finally0 finally1 finally2 finally3 final
2021-05-05 00:42:31
246
原创 python学习笔记
fileObject.truncate( [ size ]) 2021年2月2日 想着写一个简单的脚本用来生成一些verilog的tb测试用例模板,脚本需要更新.v文件中的case语句,于是找了一下如何在文件中插入一行。 在这里看到了一段代码????Python中文网 names = [] with open('names.txt', 'r+') as fd: for line in fd: names.append(line.split(' ')[-1].strip())
2021-02-02 16:58:05
337
2
原创 VerilogSeeYourDefine:用于查看verilog信号是否定义的sublime插件
VerilogSeeYourDefine:用于查看verilog信号是否定义的sublime插件前言思路代码效果 前言 写verilog有时候会忘记定义信号,编译器综合的时候发现没定义的就直接默认为wire类型1bit信号,在某些时候会导致严重错误。 之前在看一个代码的时候就发现信号忘记定义了,因为代码是从另一个模块粘过来就没跑仿真,幸好发现。 干脆在之前verilogmod插件基础上改了一下,弄了这个。 思路 把当前打开的页面所有文本读入插件,依次匹配写好的正则表达式,如果都不匹配就跳过当前行,如果匹.
2020-12-25 22:17:21
798
3
原创 ExecCode:用于python代码快速执行的sublime插件
通过编写sublime插件实现python代码快速实现前言代码效果 前言 在写verilog代码的时候,碰上需要从0编号到100这种,会新建一个python代码,写个循环用sublime执行输出一下。但是有时候又觉得新建一个临时文件很烦,还要删掉。想起来python中还有exce()这个函数,通过编写一个插件,应该是可以直接执行代码片段的,无论这些代码是否保存在一个文件当中。 代码 插件代码: import os, sublime, sublime_plugin, re class ExecCodeC.
2020-12-13 22:41:05
451
2
原创 TextCopy: 用于重复复制粘贴的sublime插件
TextCopy: 用于重复复制粘贴的sublime插件启发功能使用方法安装方法下载链接 启发 在修改verilog代码时,有时给一个模块添加了新的输入输出,但是由于模块例化层级很多,需要在大量模块的输入输出定义处定义,再在例化处例化。虽然可以借助复制粘贴,但是需要重复“复制定义——粘贴定义——复制例化——粘贴例化”这一过程。 功能 利用快捷键,将需要的代码片段1和代码片段2分别存储在不同的txt中,再使用新的快捷键将这两个txt中的代码片段粘贴在光标行末尾。 使用方法 选中代码段1所在行,按下shif.
2020-12-09 20:49:41
848
1
原创 verilogmod:用于verilog代码规范的简单sublime插件
verilogmod:用于verilog代码规范的简单sublime插件(含源码)verilogmod插件功能使用方法安装方法其他说明下载链接 verilogmod插件 学正则表达式的时候想做点儿什么练习一下,然后写了一个python脚本。用的时候不太方便,就做成了插件。在这里分享一下。 功能 为了让verilog代码看起来更好看。 使用方法 选中需要转化代码(左),按下快捷键crtl+shift+a,得到转化结果(右): 插件自带代码转化前后的比对功能,如果转化失败,会跳出提示框: 另外,如果代码量比
2020-08-17 10:27:43
1210
verilogmod:用于verilog代码规范的简单sublime插件
2020-08-15
TextCopy: 用于重复复制粘贴的sublime插件
2020-12-09
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅