您的当前位置:首页正文

Cadence Design entry HDL 教程

2024-02-27 来源:榕意旅游网
Design entry HDL 教程

Concept是Cadence公司自身开发的原理图输入工具,在业界拥有广泛的用户。

在Concept环境当中,你可以搜索与摆放Part、进行Part的连接、定义网络名、通过Port完成拼接式原理图的绘制,用Block完成层次式原理图的绘制…等等。 在此教程中,我们将比较详细的介绍concept的使用。

在concept中有两种操作模式:post-select和pre-select。在post-select模式中,如果需要对某个对象执行某种操作,需要先选择操作命令,再选择被执行的对象;而在pre-select模式中,顺序刚好相反。(后续章节,我们将会具体介绍)

Concept在整个PCB设计流程中所处的位置:

在本教程中,我们将通过实例来说明concept的具体使用,读者可以根据文中介绍的操作步骤一步步循序渐进的学习,通过这些实例,一定可以快速掌握本软件的使用方法。

在进入正式学习之前,请读者将光盘中的实例local_lib.zip解压缩到本机。

本教程包含三大章节: 第一章:创建一个项目

在本章节中,将具体介绍项目的概念,库,cds_lib,project file以及如何创建项目。 第二章:原理图的绘制:

在本章中将具体介绍多页原理图的绘制,内容涉及如何添加part,绘制连接线,绘制bus,检查整个设计等等。

第三章:原理图绘制的高级应用:

在本章中将具体介绍层次式原理图的绘制,原理图网络表的产生,使用global find的功能来寻找整个设计中的某个元件以及对元件的属性进行编辑等等。

第一章:创建项目 内容概要:

● 第一节 概念

1、 什么是库

2、 什么是cds.lib file 3、 什么是project file

● 第二节 创建一个项目(project) ● 第三节 用project setup 来增加库

第一节 概念

在cadence中,一个project包含如下的对象: 1、 涉及到的库;

2、 本地库(design libraries) 3、 Cds.lib 文件

4、 Project file(.cpm) 接下来,将详细介绍

什么是库?

从设计原理图、PCB Layout直到进行真正的制造,不同的阶段,需要用到的元件的表现形式是不一样的。原理图中,我们需要元件的符号,如果需要仿真,我们就需要元件的电器模型参数,在PCB Layout阶段,我们则需要元件的PCB Footprint。在设计的不同阶段,我们把每个阶段软件所需要的同一类型元件(符号、模型或PCB Footprint)组织在一起,就构成了库。

◎Schematic libraries

原理图中库就是一些逻辑符号,插脚引线以及一些封装信息; ◎Layout libraries

Layout Libraries就是和原理图对应的元件的Foot Print。

◎Simulation Libraries

这些库就是用Verilog 或 VHDL硬件描述语言来模拟实际元件行为的信息。

Cadence提供很多参考库,另外,还有一个经常要用到的Standard库,Standard库是参考库的一个。(后续章节将会详细介绍)Standard库位于/share/library目录之下。

在Cadence提供的参考库中,包含如下几个文件夹:sym_1,entity,chips,part_table

下表给出了各个文件的简介: 文件名 描述 描述了原理图的符号 描述了原理图符号各个pin 原理图与物理封装的匹配信息 描述了用户为元件自定义的信息,如为元件定义适合各个企业自身需要的属性。 sym_1 entity chips part_table 下图是一个库文件结构的例子。

Local Libraries 就是工程师创建一个项目后,依附项目本身的库。设计师可以导入Cadence提供的参考库,加以编辑作为local Libraries来使用。 下图是Local Libraries的结构。

什么是CDS.Lib

Cds.lib定义了设计一个项目所涉及到的库,以及这些库所在的物理地址。如:

DEFINE 54alsttl ../../library/54alsttl DEFINE 54fact ../../library/54fact DEFINE tutorial_lib worklib

INCLUDE $CONCEPT_INST_DIR/share/cdssetup/cds.lib DEFINE local_lib local_lib

什么是Project File?

当你创建好一个项目的时候,Allegro Project Manager就会自动产生一个Project File。Project File其文件名称是.cpm。 察看Project File包含的信息,可以用记事本打开。 在这里不作详细陈述。

创建一个Project

1、选择:开始〉程序〉Allegro SPB15.5〉Project Manager

其中,Open Project是用来打开一个现存的项目,而Create Design Project就是新建一个项目。我们点击Create Design Project,出现一个对话框,我们照下图所示输入相应内容:

Project Name就是所要创建的项目的名称,在该例中,软件将会产生一个tutorial.cpm的project File. Location就是定义该项目所处的路径。 2、点击Next,出现新的对话框:

注意:如果在上述的对话框的左侧,Available Libraries中出现的库,和你的出现的不一致,是因为Cds.lib还没有将Cadence所提供的参考库加入到您的设计中。请参考如下方法添加: 请先安装Cadence提供的参考库。(第三张光盘)

·打开\\share\\cdssetup,找到该文件夹中的Cds文件,用记事本

打开;

·在该文本中添加:include \\share\\library\\cds.lib

如:

也可以将所有需要用的库文件统一放在一个文件夹下,然后在Cds.lib文件中自定义一个库名

称,如:

Define My D:\\cadence\\lib\\

关于Define 和Include的区别:

1、 Define :可以加载单独的某个库,或者包含多个库的某个文件夹的,但是一定需要给出一个

自定义的名称,如 Define my D:\\cadence\\lib\\,或者 Define actel D:\\cadence\\lib\\actel

2、 Include: 已经存在一个类似Cds.lib的其他*.lib的文件,我们只需用Include把它包含进来即可。

保存,关闭。

4、 点击Next,出现Design Name对话框:

在Libraries下拉选择框中,我们选择tutorial_lib,Design Name中,我们输入desexample。

这样,Desexample便存放在Tutorial_lib中。

5、 点击Next,出现Summary对话框,这个对话框显示了前面几步定义好的信息,如果需要修改,请点

击Previous返回到前面几步做修改。

6、 点击Finish。

这样,Project Manager 便创建好一个项目,并显示出PCB板设计流程的界面。

使用Project Manager Setup来增加库

通过向导创建好一个项目之后,我们也可以使用Setup对项目作一些改变,如增加Libraries或Cell等。在本节,我们将介绍将项目添加Local_lib到项目中。

3、 首先,请打开/doc/concepthdl_tut/tutorial_examples文

件夹,将该文件夹中的local_lib.zip的文件释放到D:\\Designs\\local_lib。 4、

点击Project Manager界面中的Setup,在出现的Project Setup对话框选择Global面板,

在写在板中增加如下内容:

DEFINE local_lib local_lib 这样,cds.lib就增加了local_lib库。

5、 6、

点击Edit,Project Manager用写字板打开Cds.lib。

7、 保存并关闭写字板,Project Manager会出现下面的对话框:

选择Yes。

8、 9、

在Available libraries列表中选择Local_lib. 点击Add。

10、 11、

选中Local_lib,点击Up按钮,直到Local_lib处于tutorial_lib之下; 选中lsttl库,点击add;

12、 点击Allply;

13、 切换到Part Table面板,如下图点击Add,增加Physical Part Table Files;

在出现的Add Physical Part Table对话框中选择File;

14、

15、

打开Local_lib文件夹;

16、

选中local_lib.ptf然后点击Open;

Add Physical Part Table对话框出现Local_lib.ptf的路径:

17、 点击Ok。

16、 Physical Part Table Files一栏显示出了新增的Local_lib.ptf的路径:

17、 点击OK。

第三章 原理图的绘制 本章内容概要:

·Design Entry HDL起步; ·增加页边框; ·增加文字(注释); ·选择并添加元件; ·元件的连接; ·给网络线命名; ·增加Port;

·增加Power 和Ground; ·保存原理图; ·察看Verilog描述; ·绘制总线;

·总线接入线绘制; ·增加元件的电气属性; ·保存并察看错误信息。

Design Entry HDL起步

画原理图的第一步是用启动Design Entry HDL。通过Design Entry HDL中,才能从提供的库中调用相应得元件,然后进行连接,完成逻辑设计。

在Project Manager界面中,点击Design Entry图标即可启动Design Entry HDL。

启动之后,我们可以在Design Entry HDL的Title Bar看到Design Name。

在本例中是DESEXAMPLE.SCH.1.1。

下面我们具体解释该名称:

在Title bar Design Name 的后面,我们还可以看到用方括号括住的in hierarchy字样。In hierarchy是

Design Entry HDL 三种使用模式的一种。

in hierarchy 模式

当用户打开一个设计的时候,最先打开的是处于顶层的原理图页,并且,顶层的设计名称也会显示在Title Bar,紧跟在名称之后的是方括号内的in hierarchy字样。这表示Design Entry HDL已经识别出设计的层级。

你可以使用ascend和descend命令来察看层级式的原理图。具体命令是:

File > Edit>Hierarchy > Ascend 或 File > Edit Hierarchy > Descend。你也可以使用File > Return来返回之前察看得原理图页。

使用Pre-Select模式

Pre-select和post-select两种模式都可以使用,Design Entry HDL默认的是Post-select模式,如果需要切换到Pre-select模式,必须重新设置。 1、打开Tools > Options.

出现Design Entry HDL option对话框,在General面板一栏,找到Enable Pre-select Mode,并打上√;

2、点击OK,保存并退出设置。

再次提醒:在Pre-select模式下,只有先选中需要执行某个命令的对象,才能激活命令。比如,你需要Copy电阻R1,在不选中R1的情况下,Edit〉Copy命令是处于灰色状态,非激活。只有在选中了R1之后,才能将Copy命令激活。而Post-Select模式可以先选中某个命令,再选中需要执行该命令的对象。在本教程中,我们采用Post-select模式。

增加图幅边框

绘制原理图的第一步,是添加图幅边框。当然,你也可以不用图幅边框进行绘制,但,添加图幅边框然后绘制原理图是一个标准的操作规范。当你对设计作Cross Reference的时候,图幅边框是必须的。当打印好原理图,如果没有图幅边框,我们将很难定位某个信号线或者某个元件。而有了图幅边框之后,我们便可以利用Cross Reference来定位任意一个元件或信号线。 ·手动添加图幅边框

Design Entry HDL认为图幅边框也是元件的一种。

1、要选择并放置某个图幅边框,打开Component > Add.

出现Component Browser对话框,如下图:

2、点击Browse Libraries文件夹,在右边的Libraries中选择Standard; 3、在Cell一栏找到Cadence A Size Page,点击Add; 4、在原理图编辑窗口中点击,放置边框; 5、关闭component browser。

在Setting Option中设置默认的图幅边框

如果嫌每次手动添加比较麻烦,你也可以在Setting Option中设置默认的图幅边框。这样,只要产生新的原理图页,便会自动加载默认的边框。

1、 选择Tools > Options.在出现的对话框中,选择General面板;

2、 在Page Border区域,点击Browser,在出现的对话框中,找到存放边框的库,并选中相

应的边框,点击Open;(如Standard库的Cadence a size page)

3、在Option对话框中点击OK,保存并关闭该设置。

4、选择File〉New,新增了一页UNNAMED.SCH.1.1的原理图页,同时,该页自动加载了边框。

5、 选择File〉close关闭该页。

添加文字(Adding Text )(Notes)

你可以在图幅边框中添加诸如以下的信息:

·标题栏-Title (name of the design)

·工程师信息-Engineer (name of the Engineer who created the design) ·日期-Date (date of creation) ·页码-Page (page number)

添加文字信息之前,先放大图幅边框,定位到要添加文字的位置。

放大指定的区域

1、 在工具栏上找到Zoom Points摁钮,点击

2、 在需要添加文字的图幅边框区域单击鼠标,拉出一个方形的框,覆盖所要放大的区域,松开鼠标左键,

放大;

调整放大,直到合适的视觉效果:

接下来我们就可以添加文字了:

1. 选择菜单 Text > Note.

出现Note对话框:

在文本框里输入需要添加的文字,Mode选择Queue模式。 2、添加如下文字:

·DESEXAMPLE · JIM

· 2-2-2000 · 1

3、 在图幅边框的下列区域分别添加文字: a. TITLE

b. ENGINEER c. DATE d. PAGE

4、 关闭Note对话框: 5、 Zoom fit

摁钮查看整个视图;

选择并添加元件

编辑原理图所需要的元件存放在不同的库中,我们可以用Component Browser 来搜索需要的元件,

然后添加到原理图页面。

1、放大原理图编辑页面,如下图所示:

2、 选择菜单:Component > Add.出现 Component Browser对话框:

3、 选择 local_lib

在Cells 一栏,列出所有local_lib的元件. 4、 选择 LS74并点击 Add.

5、将元件摆放到原理图编辑页面上 ; 6、连续点击,摆放另外一个LS74;

6、 关闭comopent browser窗口.

注意:如果在comopent browser中你已经尝试通过给定条件来搜索元件,操作总不能成功的话,请不用着急,

这里牵涉到元件Part table表的配置.我们在后续章节中将做介绍.

电气线的连接

摆放好元件之后,我们就可以将它们连接.在本节,我们将对元件的连接做具体介绍;

1. 选择 Wire > Draw.

2. 单击I1的pin脚 Q 连接到I2的pin脚D

如下图连接好的样子.

3. 搜索元件库,摆放另外一个元件LS04,摆放在I1和I2之间. 4. 关闭comopent browser窗口. 5. 按下图所示连接个元件;

6. 选择File > Save 保存设计. 7. 添加更多的连接线,如下图所示:

Note: 在没有pin或wire的区域双击左键可以结束画线.

8. 单击鼠标右键,选择Done.

为连接线命名(Naming Wires)

Design Entry HDL环境中,在一个设计中不同原理图页面的网络线,只要有相同的网络名称,那么,Design Entry HDL认为他们是同一网络.在 多页原理图中,就不一定需要off-page 连接符来表示同一信号线.

1. 选择Wire > Signal Name.

出现Signal Name对话框.

2. 按照下列的顺序在Signal Names文本框中输入文字.

o PRESET o D o CLOCK o RESET o AB1 o Q o QB2 3. 按如下图示分别在相应网络线上点击输入相应名称.

添加 Ports

Cadence 提供 input和 output ports 连接符。这些符号存在Cadence的standard library中.你可以用Component Browser 选择相应的符号并添加到原理图中.

1. 选择菜单Component > Add.

出现 Component Browser 对话框. 2. 选择 Standard 库.

3. 在Cells一栏选择 INPORT,然后点击Add.

4. 点击网络线PRESET 一端添加INPORT. 这样就把网络线PRESET定义为inport. 5. 左击原理图空白处,再次调出INPORT. 6. 在网络线D 的一端点击,添加INPORT.

类似的,在剩余的网络线一端依次添加Inport, 如下图所示.

7. 返回到 Component Browser, 在Cell中选择 OUTPORT,添加到网络线Q端,

如下图所示:

8 、关闭Component Browser。

添加电源和地(Adding Power and Ground)

接下来,我们在网络线AB1一端添加Power,在QB2一端添加Ground,Power和Ground在Local_lib中.

1. 在工具栏上找到Zoom Fit

,单击.

2. 然后,找到Zoom Points,单击.

3. 选择需要放大的区域,如下图所示:

4. 选择菜单 Wire > Draw. 5. 绘制一条水平线,如下图所示。

6. 单击鼠标右键,在弹出的菜单中选择Done. 7. 选择菜单Edit > Copy.

8. 单击刚才绘制好的水平线,然后在其上方单击,完成Copy。如下图所示:

9. 右键鼠标,在弹出的菜单中选择Done. 10. 延长刚绘制好的两条线,如下图所示:

11. 单击鼠标右键,在弹出的菜单中选择Done. 12. 选择菜单Wire > Signal Name.

出现 Signal Name 对话框.

13. 输入AB1 和 QB2 ,并分别赋予刚绘制好的两条线。

具备网络名称的两条线如下图所示.

14. 关闭Signal Name 对话框. 15. 选择Component > Add.

出现 Component Browser. 16. 选择local_lib 库. 17. 在Cell一栏选择RES.

18. 将选择的电阻摆放到如下图所示的位置:

19. 选择 Edit > Rotate ,然后单击该电阻.

20. 单击鼠标右键,在弹出的菜单中选择 Done. 21. 选择 Edit > Copy.

22. 选择RES,在空白处单击,完成copy。如下图所示:

23. 选择菜单 Edit > Move.

24. 选择上面的电阻,将其连接到邻近的网络线一端。

25. 选择下面的电阻,同样将其连接到网络线的一端。完成连接后如下图所示:

26. 选择菜单 Wire > Draw. 27. 继续照下图所示添加连接线:

28. 选择菜单 Component > Add.

出现Component Browser 对话框. 29. 选择 local_lib.

30. 在Cell一栏选择 VCC 点击 Add. 31. 在原理图编辑页面放置VCC,如下图所示.

32. 在Cells栏选择 GND 点击 Add. 33. 在原理图编辑页面放置GND 如下图所示.

34. 在Cell一栏选择 LS04 .

35. 在原理图编辑页面将 LS04 摆放在AB1和 QB2 之间,如下图所示:

36. 关闭 Component Browser对话框. 37. 右键鼠标选择菜单Done. 38. 在工具栏点击Zoom Fit

Design Entry HDL 切换到最适合视图。

保存设计(Saving the Schematic)

保存设计,即将设计的所有数据存放到硬盘。 选择 File > Save.

在保存设计时,Design Entry HDL 同时会产生netlist 。

选择菜单 Tools > Options.选择Output面板。默认Create Netlist是勾选的,这样,HDL会生成Verilog Netlist。如果不需要,即去掉勾选。

如果勾选VHDL Netlist,在生成Verilog Netlist的同时,也会生成VHDL网表。 保存设计并生成网表之后,在命令窗口会出现下列信息: ...HDL Written

察看Verilog描述

1. 选择File> Open.

出现View Open对话框.

2. 在Library一栏选择tutorial_lib . 3. 在下面树形结构中,双击DESEXAMPLE. 4. 双击sch_1. 5. 选择verilog.v. 6. 选择Open.

这样,你即可察看DESEXAMPLE 的Verilog描述.

新增原理图页

单页原理图或许并不能满足设计要求, 因此,有时需要在现有的基础上新增页面。

1. 选择File > Edit Page/Symbol > Add New Page.

Design Entry HDL即新增一页,命名为 [DESEXAMPLE.SCH.1.2]

其名称含义,详见下图描述.

2. 新增的一页,自动添加了page border。

Add text on the page border to specify the name of the engineer

因篇幅问题不能全部显示,请点此查看更多更全内容