1  synthesis steps

1)  Search Paths    

    rc:/> set_attribute  lib_search_path path /
    rc:/> set_attribute  script_search_path  path / 
    rc:/> set_attribute  hdl_search_path  path /

2)  Target Technology Library

    rc:/> set_attribute   library  lib_name.lib 

   - Target Library: Design Compiler uses the target library to build a circuit. During mapping, Design Compiler selects functionally correct gates from the target library. It also calculates the timing of the circuit, using the vendor-supplied timing data for these gates.

3)  Loading the HDL Files

   - sequentially:   read_hdl   file1.v  read_hdl   file2.v  read_hdl   file3.v 

   - simultaneously: read_hdl  { file1.v file2.v file3.v }  

read_hdl [-v1995 | -v2001 | -sv
| -vhdl [-library library_name ]
| -netlist]
[-define macro=value ] ... file_list

4)  Performing Elaboration

    This is only required for top-level design. The elaborate command automatically elaborates the top-level design and all of its references.

5)  Applying Constraints

     - Operating conditions; clock waveforms; I/O timing

6)  Applying Optimization Constraints

7)  Performing Synthesis

    rc:\> synthesize -to_mapped

8)  Analyzing the Synthesis Results

    - generate a detailed area report, use report area

    - generate a detailed gate selection and area report, use report gates

    - generate a detailed timing report, including the worst critical path of the current design, use report timing

9)  Exporting the Design

   - gate-level netlist  rc:/> write_hdl > design.v

   - design constraints  rc:/> write_script > constraints.g 

   - constraints in SDC format rc:/> write_sdc > constraints.sdc

10)  Exiting RTL Compiler

    quit or exit

2  recommended flow

#general setup
#--------------
set_attributer lib_search_path ...
set_attribute hdl_search_path ..
#load the library
#------------------------------
set_attribute library library_name
#load and elaborate the design
#------------------------------
read_hdl design.v
elaborate
#specify timing and design constraints
#--------------------------------------
read_sdc sdc_file
# add optimization constraints
#----------------------------
.....
#synthesize the design
#---------------------
synthesize -to_mapped
#analyze design
------------------
report area
report timing
report gates
#export design
#-------------
write_hdl > dessign.vm
write_sdc > constraints.sdc
write_script > constraints.g
# export design for EDI
#-----------------------
write_design [-basename string ] [-gzip_files] [-tcf]
[-encounter] [-hierarchical] [ design ]

3  working in the top-level(root) directory

  Root is a special object that contains all other objects represented as a ‘tree’ underneath it.

  The root object is always present in RTL Compiler and is represented by a “/”, as shown in above Figure.

  Root attributes contain information about all loaded designs.

最新文章

  1. HTML5 & 三年二班周杰伦
  2. 渡轮问题Ship
  3. Mysql函数:Last_insert_id()语法讲解
  4. C/C++ 结构体 简单输入输出
  5. LeetCode189——Rotate Array
  6. 解决wamp的Apache服务器不能重启
  7. Android 学习笔记多媒体技术之 Drawable类+Tween(补间动画)+Frame(帧动画)
  8. 【bzoj1300】大数计算器
  9. javascript基础学习(三)
  10. FFMPEG 视频旋转设置
  11. (转) iOS深入学习(Block全面分析)
  12. VSS的配置和使用
  13. 【Java】实现一个根据日期判断星座程序的编写
  14. BNU Online Judge-34976-数细菌
  15. 如何手写JDK锁
  16. MySQL之ORM框架SQLAlchemy
  17. winfrom导出DataGridView为Excel方法
  18. gensim自然语言处理
  19. IntelliJ IDEA(2017)安装和破解
  20. C# 串口导致电脑蓝屏一个可能的原因

热门文章

  1. HDU——2588 GCD
  2. ORACLE-020:ORACLE技巧002 批量操作表
  3. pg_dump: [archiver (db)] connection to database “dbase” failed: FATAL: Peer authentication failed for user “postgres”
  4. 有用 .htaccess 使用方法大全
  5. 设置默认訪问项目的client的浏览器版本号(IE版本号)
  6. java学习总结——你的前世今生
  7. HDU 5090 Game with Pearls(二分匹配)
  8. word2vec 中的数学原理具体解释(六)若干源代码细节
  9. (C语言版)链表(三)——实现双向链表创建、删除、插入、释放内存等简单操作
  10. Linux ALSA声卡驱动之七:ASoC架构中的Codec