一键格式化:看效果就够了

2026-08-14 · svfic · 格式化

代码风格之争是团队效率最大的内耗。svfic 的答案是:把风格问题交给工具,一键完成。 不解释原理,直接看效果。

整体效果:一个 SPI 控制器

打开文件,一键格式化。左侧是源码,右侧立刻输出整理后的结果—— 端口、参数、例化全部对齐,块缩进统一。

SPI 控制器一键格式化效果:右侧输出面板显示对齐后的代码
SPI 控制器 · 一键格式化输出

示例一:端口混乱的异步 FIFO

格式化前,端口声明挤作一团,参数等号两边没有空格:

异步 FIFO 模块格式化前:端口声明未对齐
格式化前 · fifo_dc 模块

格式化后,端口 6 列对齐、参数 4 列对齐,信号类型和位宽一眼看清:

异步 FIFO 模块格式化后:端口和参数列对齐
格式化后 · 端口/参数列对齐

示例二:例化映射混乱的 I2C 控制器

格式化前,例化端口名长短不一,连接关系看不清:

I2C 控制器模块格式化前:例化映射未对齐
格式化前 · i2c_top 模块

格式化后,例化映射 7 列对齐,连接关系整齐得像一张表格:

I2C 控制器模块格式化后:例化映射列对齐
格式化后 · 例化映射 7 列对齐

为什么可以放心一键

格式化不增删任何非空字符——只调整空白、缩进与对齐。 格式化前后的代码逻辑完全等价,每一行注释都原封不动。 对"祖传代码"一键格式化,不用担心改坏逻辑。

128 个文件闭环测试兜底

格式化管道的正确性不是靠嘴说 —— svfic 维护着一个 128 个真实 Verilog 文件的测试集, 覆盖各种端口写法、参数形式、generate 块、宏定义和注释陷阱。 每次改动格式化代码,都必须跑完全部 128 个文件的格式化闭环,全部通过才能发布。 你在工程里会遇到的写法,大概率已经被测试集覆盖过了。

小结

统一代码风格最省力的方式,不是靠 Code Review 拉扯,而是让工具一键完成。 上面这些效果,全都只花了一次按键的时间。

上一篇:svfic:为 FPGA 工程师打造的 Verilog 效率工具
下一篇:告别手抄端口列表:Verilog 例化自动生成