planahead允许导入多种不同类型的源文件,包括hdl和ngc核。在rtl编辑器中可以打开、编辑、开发rtl源文件。下面我们介绍【sources】源文件视图和rtl编辑器的使用。
1. 认识【sources】源文件视图。
源文件视图显示方式:在【sources】源文件视图窗口单击,最大化此窗口,如图10-9所示。
图10-9 【sources】源文件视图—按类型分组
图中【name】栏显示文件名,其中有三个文件类型core、verilog和vhdl。【library】栏显示相应的源文件属于哪个库。【location】栏显示文件路径。【local】显示导入文件是不是成功。
在源文件视图窗口的右上角显示有分组方式,共有4种分组方式,分别是【group by type】按类型分组,如图10-9所示,【group by source root】按源文件位置分组,如图10-10所示,【flat view】打平,按字母顺序分组,如图10-11所示。
图10-10 【sources】源文件视图—按位置分组
图10-11 【sources】源文件视图—按字母顺序分组
2. 指定库文件的方法。
在图10-9所示【sources】源文件视图窗口选择vhdl目录下除了bft.vhdl的文件,单击鼠标右键,在弹出菜单中选择【set library…】,在【set library】窗口输入bftlib库名。如图10-12所示。这样,就为这几个vhdl文件指定了库文件。
图10-12 【set library】窗口
3. rtl源文件编辑器。
在【sources】窗口双击hdl文件,就会打开rtl源文件编辑器。在编辑窗口,用右键弹出菜单,设计者可以进行各种编辑操作,例如:删除、复制、查找、替换等。如果单击【find in file】,出现图10-13所示对话框,键入clk,软件就会找到所有源文件中含有clk的字段,如图10-14所示,选择一个查找结果并双击,会打开相应的源文件,并在源文件中定位。
图10-13 在文件中查找
图10-14 查找结果
三、 创建rtl源文件
在planahead中可以新建hdl源文件,还可以使用语言模板。
1. 在【sources】窗口单击鼠标右键,在弹出菜单中选择【create source…】打开图10-15所示对话框。输入源文件名,指定存储路径、语言类型和库名。
图10-15 新建源文件对话框
2. 单击【ok】按钮,打开myfile.vhdl窗口,在此窗口空白处单击右键菜单选择【insert template…】打开xilinx语言模板,选择一个模板,例如选择一个计数器,单击【ok】按钮,此模板就会出现在myfile.vhdl文件中,如图10-16所示。当然,设计者可以在这里输入自己的hdl代码。
图10-16 用语言模板创建源程序
四、 探测和分析rtl设计
planahead提供rtl源码探测功能,可以对导入的rtl源码进行编译,编译的错误和警告信息可以被显示出来,可以用这些信息进行交叉定位,很方便地定位到错误或警告源。rtl逻辑层次可以展开,可以用来进行各种分析。一旦使用探测功能,所有rtl视图都允许逻辑对象的交叉探测。rtl网表和层次视图显示了设计的逻辑层次结构。rtl原理图视图允许交互逻辑探测。查找命令可以用来查找逻辑对象。实例属性视图显示了所选实例的信息,包括资源使用信息。rtl drc工具会告诉设计者设计中哪些地方可以进行功耗和性能优化。
1. 运行rtl探测。在菜单栏选择【tools】→【run elaboration…】,弹出【run elaboration】对话框,如图10-17所示,在顶层模块名中输入top,单击【options】域的浏览按钮,设置综合属性,这里单击【cancel】,使用默认值,在【run elaboration】对话框单击【ok】,开始rtl探测。
图10-17 【run elaboration】对话框
探测结果如图10-18所示。其中有很多warning,可以单击这些warning,交叉探测功能会将警告定位在相应的源码中,这样就可以很方便地找到源码中存在的问题。
还可以通过单击【elaboration】窗口中的图标,切换显示/隐藏warning信息。如果设计中存在错误,错误信息也会显示在此窗口。
图10-18 【elaboration】窗口
2. 通过rtl网表视图和层次视图检查rtl层次。在图10-19所示的rtl视图中选中一个实例化模块iwb_biu,在右键弹出菜单中选择【show definition】、【show source】或【show hierarchy】,分别会显示功能定义窗口、源代码窗口和层次窗口。图10-20的【show definition】窗口显示了所选实例的功能定义文件,图10-21的【show source】窗口显示了对所选实例进行例化的位置,图10-22的【show hierarchy】窗口显示了所选实例在整个设计中的层次关系。
图10-19 rtl 实例右键弹出菜单
图10-20 【show definition】窗口
图10-21 【show source】窗口
图10-22 【show hierarchy】窗口
3. 检查rtl原理图。在图10-19所示rtl视图中选中实例化模块iwb_biu,在鼠标右键弹出菜单中选择【schematic】命令,打开图10-23所示的【rtl schematic】原理图窗口,窗口中显示了所选实例的原理图。
图10-23 【rtl schematic】窗口
在【rtl schematic】窗口,分别双击iwb_biu的biu_cyc引脚(外部和内部),则biu_cyc引脚的源和负载会显示出来,如图10-24所示。
在【rtl schematic】窗口,选择图中的mux,单击鼠标右键选择【show source】命令,会打开mux在源文件中位置。
在【rtl schematic】窗口,单击鼠标左键,按住不放,从左下方拖拉到右上方,松开左键,图中所显示的图就会缩小一些,向相反的方向拖拉,图就会放大一些,放大/缩小倍数取决于拖拉位移的大小。
图10-24 【rtl schematic】窗口
图10-25 【rtl schematic】查找对话框
4. rtl原理图中查找命令的使用。
在【rtl schematic】视图窗口,运行【edit】→【find】命令,打开图10-25所示查找对话框,按图中所示设置各选项,单击【ok】按钮。可以找到设计中用到的所有bram资源,如图10-26所示,用右键弹出菜单可以定位每一个bram在不同的设计文件中的位置。
5. 检查rtl资源统计结果。
在rtl网表列表窗口,选择top顶层文件,这时,在网络列表属性窗口可以看到top的相关属性,包括,rtl资源的使用、rtl层次资源、存储资源、原语统计、接口网络数和时钟报告。如图10-27所示。
图10-26 bram 查找结果交叉探测
图10-27 rtl 资源统计
6. rtl 的drc 检查。
运行【tools】→【run drc】打开rtl drc 设置对话框,如图10-28 所示。使用默认设置,单击【ok】按钮,开始drc 检查。
运行结束,drc 检查结果如图10-29 所示,图中,错误标识为红色,警告标识为橙色,信息标识为黄色。选择最后一个latch 的警告rpld #1,【violation properties】窗口显示相应的信息,并出现一个蓝色的链接,单击此链接,rtl 网表窗口会出现相应的实例,选择此实例,右键菜单可以将此实例定位到多个文件中,如【rtl schematic】窗口。
图10-28 rtl drc 检查设置对话框
图10-29 drc 结果
7. 配置多个综合策略。
对rtl 源码进行综合时,需要设置综合属性,例如综合时是以速度为目标,以面积为目标,还是以功耗为目标,综合时是否使用dsp48 资源,状态机用哪种编码方式等,这些属性的设置会影响综合过程,产生不同的综合结果。综合策略是指由多个综合属性的不同设置组成的不同综合方式,以指导综合工具按照这些综合方式对源码进行解析。接下来简单介绍在planahead 中是如何应用多种综合策略的。
运行【tools】→【run multiple strategies】,打开【run multiple strategies】对话框,单击【next】,打开图10-30 所示【set up synthesis runs】对话框,使用默认值。
在图10-30 中,单击【next】打开图10-31 选择综合策略对话框,在此窗口单击【more】会增加一个综合策略,单击浏览按钮,弹出图10-32 所示对话框,在此对话框中可以选择综合策略。
图10-32中有已经存在的几种不同的综合策略,对每种综合策略,都有简短的描述,以说明此种综合策略的作用。在右键弹出菜单中选择【edit strategy】,打开图10-33所示对话框,在这里可以看到每一种综合策略是由哪些属性组合而成的。除了planahead软件提供的综合策略,用户还可以创建自定义综合策略。
图10-30 【set up synthesis runs】对话框
图10-31 选择综合策略对话框
图10-32 选择综合策略
图10-33 planahead策略属性对话框
在图10-31 中单击【more】两次,单击浏览按钮选择不同的综合策略,设置好的策略窗口如图10-34 所示。共设置了3 个综合策略, synth_1(iob 打包, 优化时序) 、synth_2(planahead 默认设置)、synth_3(面积优化)。单击【next】按钮,进入图10-35 启动选项设置对话框,选择【do not launch now】,先不运行多策略进程。这里重点介绍操作流
程。
图10-34 设置好的综合策略
图10-35 启动选项设置
在随后出现的对话框中,单击【next】、【finish】退出综合策略设置。planahead 窗口最下方会增加【design runs】对话框,选择一个【runs】进程,这时在属性窗口会出现图10-36 所示【synthesis run properties】窗口,单击其中的【options】选项卡,在这里可以改变综合属性的设置。选择一个综合进程,单击【design runs】对话框旁边的按钮启动综合进程,如图10-37 所示。
图10-36 【synthesis run properties】窗口
仙知常见FAQ集 (六)
华为正在准备发布鸿蒙操作系统来取代美国的安卓系统
关于OLED电视的几点常见认识误区
基于一个建立在EOS区块链之上的战斗游戏Chain Clash介绍
光峰科技发布全球首个PPI破万AR光学模组
Xilinx可编程逻辑器件设计与开发(基础篇)连载38:Spartan
详述华为的5G新空口技术
跨界玩法: 全新主控首发!影驰推超高性价比SSD
逆变电路电路图分析 逆变电路基本原理图 逆变电路工作原理图
兼容光模块的概念、优势与其质量判断方法
如何用会议平板进行无线投屏
印刷电路板的优缺点
并联电阻的特点是什么_并联电阻故障处理
三星曲面屏技术疑似泄密 或将导致损失58亿美元
温湿度轻松读取!OpenHarmony物联网套件开发-I2C
飞机发动机进了水会报废吗
中性接地电阻的特性及型号,功率小的电阻万用表辅助电路图解析
学习单片机时需要掌握的好方法
西门子1200PLC程序如何从设备上传至电脑
金属表面处理工艺流程