DVC Native Command 用户手册
DVC Native Command 用户手册1. 环境配置(仅限CAD/IT)1.1 服务器路径与全局变量设置SVN服务器路径全局变量管理1.2 初始化SVN服务器2. 基础命令2.1 项目管理创建项目检出项目2.2 设计与版本操作目录层次结构Phase(阶段)Block(模块)Stage(步骤)Version(版本)创建设计版本检出设计检入设计完整操作流程3. 数据管理3.1 容器与对象操作容器管理对象操作3.2 完整操作流程3.3 设计质量指标(DQI)设置DQI值4. 高级操作4.1 多步骤设计文件夹(如APR流程)4.2 多模式设计文件夹(如STA分析)5. 设计审查与检出版本5.1 递归检出版本6. 附录:常用命令速查表全部命令说明目录层次结构说明注意事项
1. 环境配置(仅限CAD/IT)
1.1 服务器路径与全局变量
设置SVN服务器路径
默认路径为 $HOME/svn_root,可通过以下命令修改:
xsetenv SVN_ROOT /nfs/disks/svn_root # 设置SVN根目录setenv SVN_MODE svn # 设置SVN模式(默认:file)
全局变量管理
xxxxxxxxxxdvc_set_server <var_name> <value> # 设置服务器变量(如端口、主机名)dvc_get_server --info # 查看所有服务器变量
所有变量存储于 $SVN_ROOT/dop/env/。
1.2 初始化SVN服务器
xxxxxxxxxxdvc_init_server \--root $SVN_ROOT \ # 服务器根目录(默认:$HOME/svn_root)--mode $SVN_MODE \ # 模式(默认:file)--host $SVN_HOST \ # 主机名(默认:localhost)--port $SVN_PORT \ # 端口(默认:3690)[start|stop|restart|status]
| Variable Name | Default Value | Comments |
|---|---|---|
| SVN_ROOT | $env(SVN_ROOT) | Must be set with unix environment variable |
| SVN_MODE | file | Available value are [svn | file] |
| SVN_HOST | $(shell hostname) | Default svn server hostname |
| SVN_PORT | 3690 | Default svn server port |
2. 基础命令
2.1 项目管理
创建项目
xxxxxxxxxxdvc_create_project testcase # 创建名为 "testcase" 的项目 检出项目
xxxxxxxxxxdvc_checkout_project testcase [<PROJT_PATH>] # 检出项目到指定路径(默认:当前目录) 2.2 设计与版本操作
目录层次结构
DVC采用 4级设计层次:
- Phase(阶段,如
P1-trial) - Block(模块,如
chip) - Stage(步骤,如
000-DATA) - Version(版本,如
2017_0910-xxx)
Phase(阶段)
定义:划分项目生命周期,由项目经理(project manager)定义。
命名规则:
格式:P<数字>-<阶段描述>,数字从1开始递增。
示例:
| PhaseID | Phase Name (阶段名称) | Phase Title |
|---|---|---|
| S4 | S4-presale | Project Firmed |
| P0 | P0-kickoff | Project Kicoff |
| P1 | P1-trial | Initial Design Trial Run |
| P2 | P2-stable | Stable Design Implementation |
| P3 | P3-final | Final Design Implementation |
| P4 | P4-tapeout | Design Tapeout for Wafer Fabrication |
| P5 | P5-pilot | Pilot Run Test with Assembled Chip |
注意事项:
阶段名称需全局唯一,不可重复。
推荐使用标准名称,非特殊情况不自定义。
Block(模块)
定义:划分设计的功能模块,由设计经理(design manager)定义。
命名规则:
格式:小写英文缩写
示例:
| 模块名称 | 描述 |
|---|---|
| top | 顶层芯片模块 |
| cpu | CPU核心模块 |
| ddr | DDR控制器模块 |
| sub1 | 子模块1 |
注意事项:
模块名称需与物理设计层次对齐。
避免使用特殊字符(如 _, – )。
Stage(步骤)
定义:标识设计流程的里程碑节点,区分数据输入/输出,由团队负责人基于使用的工具执行流程(tool execution flow)定义。
命名规则:
格式:<三位数字>-_<用途>_<类型>
示例:
| Stage 名称 | Description | Sub-Stages |
|---|---|---|
| 000-DATA | Initial Design Data | 010-doc, 020-flow, 030-pdk, 040-library, 050-design |
| 100-CIRCUIT | Circuit Design & Simulation | 110-spice, 120-layout, 130-lpe |
| 200-LOGIC | Logic Design & Simulation | 210-simulation, 220-synthesis, 230-formal |
| 300-DFT | Design For Test | 310-jtag, 320-scan, 330-mbist, 340-lbist, 350-atpg |
| 400-APR | Physical Implementation | 410-floorplan, 420-place, 430-cts, 440-route, 450-opt_timing, 460-opt_power, 470-eco |
| 500-TIMING | Design Signoff | 510-rcxt, 520-sta, 530-power, 540-ir_drop, 550-noise, 560-thermal, 570-reliability |
| 600-POWER | Tapeout | 610-drc, 620-dfm, 630-lvs, 640-erc |
| 700-TAPEOUT | Die & Chip Testing | 710-wafer_probe, 720-final_test |
| 800-TESTING | Package Design | |
| 900-PACKAGE | System Validation |
自定义规则:
允许在Stage下创建子Stage(如330-mbist)。
Version(版本)
定义:同一Stage下的设计版本,由设计工程师(designer)命名。
命名规则:
格式:<DBSRC_DATE>–<用途>_<子版本>,日期格式为YYYYMMDD。
示例:
| 版本名称 | 描述 |
|---|---|
| 20240501-scan_v1 | 2024年5月1日提交的扫描链版本1 |
| 20240615-apr_eco_v2 | 2024年6月15日提交的APR ECO版本2 |
| 20240701-tapeout_final | 2024年7月1日最终流片版本 |
注意事项:
日期必须与客户提供的网表日期一致。
子版本号从V1开始递增,禁止跳号。
创建设计版本
xxxxxxxxxxdvc_create_design P1-trial/chip/000-DATA/2017_0910-xxx # 创建设计路径(Phase/Block/Stage/Version) 检出设计
xxxxxxxxxxdvc_checkout_design # 检出当前设计版本到工作空间 检入设计
xxxxxxxxxxdvc_checkin_design # 提交设计版本到SVN仓库 完整操作流程
xxxxxxxxxxdvc_create_design P1-trial/chip/000-DATA/2017_0910-xxx # 创建设计路径(Phase/Block/Stage/Version) dvc_checkout_design # 检出当前设计版本到工作空间 ***容器与对象完整操作, dvc_create_container place # 在设计中创建名为 "place" 的容器 dvc_copy_object /sfs/disks/rundir/design.v design.v # 将文件复制到容器并可重命名 dvc_link_object /nfs/disks/rundir RUNDIR # # 创建符号链接到容器 dvc_checkin_container # 提交容器内容到SVN仓库 ***具体请看《3.数据管理》dvc_checkin_design # 提交设计版本到SVN仓库 3. 数据管理
3.1 容器与对象操作
容器管理
xxxxxxxxxxdvc_create_container place # 创建容器dvc_checkin_container # 提交容器
对象操作
xxxxxxxxxxdvc_copy_object /path/source/file.v design.v # 复制对象到容器dvc_link_object /nfs/disks/rundir RUNDIR # 链接对象到容器dvc_remove_object design.v # 删除容器中的对象
3.2 完整操作流程
xxxxxxxxxxdvc_create_container place # 在设计中创建名为 "place" 的容器 dvc_copy_object /sfs/disks/rundir/design.v design.v # 将文件复制到容器并可重命名 dvc_link_object /nfs/disks/rundir RUNDIR # # 创建符号链接到容器 dvc_checkin_container # 提交容器内容到SVN仓库 3.3 设计质量指标(DQI)
设置DQI值
xxxxxxxxxxdvc_set_dqi CELL_COUNT 11566 # 设置当前设计的单元数量指标 4. 高级操作
4.1 多步骤设计文件夹(如APR流程)
xxxxxxxxxx# 创建APR设计版本 dvc_create_design P1-trial/chip/400-APR/2017_0910-xxx dvc_checkout_design # 处理步骤1:Place dvc_create_container place dvc_copy_object src/design.v design.v dvc_set_dqi CELL_COUNT 11566 dvc_checkin_container # 处理步骤2:CTS dvc_create_container cts dvc_copy_object cts/design.v design.v dvc_set_dqi CELL_COUNT 12345 dvc_checkin_container # 提交完整设计 dvc_checkin_design 4.2 多模式设计文件夹(如STA分析)
x
# 创建STA设计版本 dvc_create_design P1-trial/chip/520-sta/2017_0910-xxx dvc_checkout_design # 模式1:Functional dvc_create_container func/0p80V/ttt_85C_rctyp dvc_copy_object src/design_func.sdc design.sdc dvc_set_dqi WNS 50 dvc_checkin_container # 模式2:Scan dvc_create_container scan/0.72V/sss_125c_rcmax dvc_copy_object src/design_scan.sdc design.sdc dvc_set_dqi WNS -100 dvc_checkin_container # 提交完整设计 dvc_checkin_design 5. 设计审查与检出版本
5.1 递归检出版本
xxxxxxxxxx# 检出整个项目 dvc_checkout_project --recursive projects_name # 检出projects下所有Phase/Block/Stage/Version# 按层级检出 dvc_checkout_phase --recursive Phase_name # 检出Phase下所有Block/Stage/Version dvc_checkout_block --recursive block_name # 检出Block下所有Stage/Version dvc_checkout_stage --recursive stage_name # 检出Stage下所有Version dvc_checkout_version --recursive version_name # 检出Version下所有容器 6. 附录:
常用命令速查表
| 命令 | 功能 |
|---|---|
dvc_init_server | 初始化/管理SVN服务器 |
dvc_create_project | 创建项目 |
dvc_create_design | 创建设计版本路径 |
dvc_checkin_design | 提交设计到仓库 |
dvc_create_container | 创建数据容器 |
dvc_copy_object | 复制文件到容器 |
dvc_set_dqi | 设置设计质量指标 |
全部命令说明
| 命令类别 | 具体命令 | 参数/说明 |
|---|---|---|
| Initialize Server | dvc_set_server; dvc_get_server | 设置/获取服务器变量 |
dvc_init_server | [start\|stop] 启停服务器 | |
| Create Project | dvc_create_project | 创建新项目 |
dvc_checkout_project | 检出项目 | |
| Create Design | dvc_create_design | 创建设计(Phase/Block/Stage/Version) |
dvc_checkout_design | 检出设计 | |
dvc_checkin_design | 检入设计 | |
| Data Management | dvc_create_container; dvc_update_container; dvc_commit_container | 容器操作(创建/更新/提交) |
dvc_copy_object; dvc_link_object; dvc_rename_object; dvc_remove_object | 对象操作(复制/链接/重命名/删除) | |
| DQI Setting | dvc_set_dqi | 设计质量指标设定(WNS/CELL_COUNT/…) |
| Website | https://github.com/icdop/dvc/ | |
| Archive | 2017_1025a.zip |
目录层次结构说明
- Phase:项目阶段(如P1-trial、P4-tapeout)
- Block:设计模块(如chip、cpu)
- Stage:设计步骤(如000-DATA、200-LOGIC、400-APR)
- Version:版本标识(格式:
<日期>-<备注>,如20240501-release-v1)
注意事项
- 所有操作需在设置
SVN_ROOT和DVC_WORKING环境变量后进行。 - 使用前请确保已通过
dvc_init_server启动SVN服务。 - 检入前需通过
dvcpath confirm完成版本审批流程。
版本:20250507v1 维护者:CAD Team
