- UID
- 1029342
- 性别
- 男
|
一、工程建立规范:
1、工程的组成:
(1) 一个顶层文件夹
(2) 顶层文件夹下,至少包括以下四个子文件夹
a) project文件夹:存放ISE工程文件,包括ise、bit、mac等文件
b) source文件夹:存放verilog源文件
c) explain文件件:存放注释说明文档
d) test文件夹:存放测试程序代码,可进一步分为软件调试程序、硬件调试程序
2、 工程的命令:
(3) 定层文件夹命令为top_xxx,xxx为工程的识别名称
(4) 顶层文件夹的子文件夹分别命名为:project、source、explain、test
二、 RTLCODE 规范
1.标准的文件头
在每一个版块的开头一定要使用统一的文件头,其中包括作者名,模块名,创建日期,概要,更改记录,版权等必要信息。
统一使用以下的文件头:
//**************************************************************
// COPYRIGHT(c)2005, Hislicon Technologies Co, Ltd
// All rights reserved.
//
// IP LIB INDEX : IP lib index just sa UTOPIA_B
// IP Name : the top module_name of this ip,usually, is same
// as the small ip classified name just as UTOPIA
// File name : file_name of the file just as “tx_fifo.v”
// Module name : module_name of this file justas “TX_FIFO”
// Full name : complete Emglish nme of thisabbreviated
//
// Author : Athor/ID
// Email : Author’s email
// Data :
// Version : V 1.0
//
//Abstract :
// Called by : Father Module
//
// Modification history
//------------------------------------------------------------------------------------------------------
// //
// $Log$
//
//*********************************************************************
2. 标准的module格式 (module 整体结构)
对于模块的书写采用统一的格式便于项目内部成员的理解和维护,我们用批处理建立了一个MODULE模块,其内容解释如下:
l 端口定义按照输入,输出,双向的顺序:
l 模块名、模块例化名统一,例化名前加大写U_以区分 (多次例化另加标识 ),三者关系:
文件名 :xxx .v (小写)
模块名 :Xxx (首字母大写)
例化名 :U1_xxx (首字母大写)
IP 内部所有的模块名都要加IP名或者IP名简称作前缀,如USB_CTRL、USB_TX_FIFO。
// *****************************
// DEFINE MODULE PORT //
//******************************
//
// module MODULE_NAME (
// INPUT
input_port_1,
…
input_port_m,
// OUTPUT
output_port_1,
…
output_port_m,
);
//*****************************
// DEFINE PARAMETER //
// ******************************
parameter…
//******************************
// DEFINE INPUT
//******************************
input rst_n ; // reset, active low .
input clk_* ; // clock signal , 50M .
input [n:0] a_din ; // *****
input [k:0] b_din ; // *****
//****************************** |
|