首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

Verilog代码标准(6)

Verilog代码标准(6)

2.流程
1. 完成第一个字模块时,请提交该模块代码,进行规范检查评审。
2. Coding 期间 每两星期 提交依次代码和review报告。

         Review报告主要包括内容:
             ·  Review工作时,review的代码模块
             ·  参与人
             ·  发现的缺陷和解决情况。

         Review建议:
(1)  制定review计划;(2) 每次review代码不超过500行。
















ANNEX
   CODESTYLE TEMPLATE
    This a template of verilog code file, including file header and themain body of code in which some coding rules are demonstrated.
//********************************************************
//
//  Copyright(c)2005, Hisilicon Technologies Co., Ltd
//  All rights reserved
//
//   IPLIB INDEX    :   IP lib index just as UTOPIA_B
//   IPName         :   the top module_name of this ip, usually, issame as
                        the small ipclassified name just as UTOPIA
//  File name        :   file_name of this file just as tx_fifo.v
//  Module name     :   module_name of this file just as TX_FIFO
//  Full name        :   complete English name of the abbreviatedmodule_name
//  Author          :   Author
//  Email           :   Author’s email
//  Data            :   2005/07/20
//  Version          :   current version, just this: v1.0, must sameas the CVS version
//
//  Abstract         :   
//
//  Called by         :   Father module just as TX_PROC
//
//  Modification history
//  ----------------------------------------------------------------------------
// Version       Data(yyyy/mm/dd)   name
// Description
//
// $Log$
//
//*************************************************************

//*******************
//DEFINE(s)
//*******************
//`define UDLY 1    //Unit delay, for non-blocking assignmentsin sequential logic

//*******************
//DEFINE MODULE PORT
//*******************
module MODULE_NAME(
                   //INPUT
                    rest_n         ,
                    clk_*          ,
                    a_din          ,
                    b_din          ,

                   //OUTPUT
                    a_dout         ,
                   b_dout

                        );

//*******************
//DEFINE PARAMETER
//*******************
//Parameter(s)

//*******************
//DEFINE INPUT
//*******************
input             rst_n        ;   //reset, active low .
input            clk_*        ;   //clock signal, 50M .
input [n:0]       a_din        ;   //*****
input [k:0]       b_din        ;   //*****

//*******************
//DEFINE OUTPUT
//*******************
output [m:0]    a_dout      ;   //*****
output [i:0]     b_dout     ;    //*****

//********************
//OUTPUT ATTRIBUTE
//********************
//REGS
reg  [m:0]     a_dout     ;   //*****

//WIRES
wire [i:0]      b_dout     ;   //*****

//*********************
//INNER SIGNAL DECLARATION
//*********************
//REGS
reg  [3:0]       counter     ;   //*****

//WIRES
wire [7:0]       temp1      ;   //*****

//*********************
//INSTANTCE MODULE
//*********************

//**************************************************************
//instance of module MODULE_NAME_Afilename:module_name_a.v
//**************************************************************
MODULE_NAME_A U_MUDULE_NAME_A(
                  .A               (A              ),
                  .B               (B              ),
                  .C               (C              )
                   );

//*********************
继承事业,薪火相传
返回列表