Azure' WorkSpace

RTL风格建议规范

移动实验室的代码经验,又看了一下谭大哥的代码,总结一下。

1) 按照小组的统一要求要求。(没有谁谁合理与否,大家遵照同一个约定,方便管里)
 1.文件头信息
 2.模块名小写,例化时候的名称U_XXX(大写)
 3.端口名称是否大写,是否要_IN, _OUT后缀
 4.信号是高电平有效,还是低电平有效, _N后缀

2)好的习惯
 1.多用define,会发现最后还是自己得到方便
 2.信号的命名要统一,要花时间思考来命名。共同的约定要遵照。比如: _w, _reg,现在看来是不错的。
 2.注释要清晰,排版要好。比如
  ========================
  ==========    XXX START
  ========================
   // edit your code here
  ========================
  XXX END     ============
  ========================

3) 自己有统一的风格
 1.always 是否顶格,always 下一行是否缩进。都无所谓,但是自己必须一样。
 2.不要有些地方有 begin,end, 有些地方又没有。有些地方即使不需要begin,end 也加上,这样统一了缩进
 3.赋值语句前面空多少,后面空多少,最好是1个空格,不要TAB。TAB在这个时候可能会1~4个空格不等。

4)状态机
 1.三段式状态机。(这里对于Moore,Mealy状态机理解还是不够深刻。)
 2.一个always最好只对一个信号赋值。即使是状态机赋值,也应该是很相近(同一个状态)的几个输出在同一个always里面赋值/
 ~2. 不要把一个状态机的所有输出都在一个always 块里面。
 3.状态机的状态编码用: localparam

~~~~~~~~~~
推荐参考书: Motor Standard

posted on 2010-07-30 12:46  此用户有没昵称  阅读(441)  评论(0编辑  收藏  举报

导航