Lattice Diamond 学习之编译、检查和设置约束
在新建工程以及完成代码的输入之后。则就要进行编译,并检测错误。
一、 Generate Hierarchy(产生层次结构)。
1、 点击Generate Hierarchy 图标或者Design --》Generate Hierarchy,
编译之后就会生成响应的层次视图。同时点击双击实例则可以查看RTL视图。


二、运行BKM检查。
1、 点击Design--》Run BKM Check 或者BKM Check.图标。

运行BKM检查之后,您可能会遇到警告和错误消息。错误和警告消息显示在输出,警告和错误栏。
在输出、错误或警告框,如果你双击消息,则可以定位到程序中错误的地方。
2、运行分析工具之后在左侧File List 中顶层文件会变为粗黑体。

3、 窗口的分离方法与还原方法。分离时。点击右上角的分离符号;合并式点击分离后的窗口的windows--》 Attach Windows .

三、设置策略
策略是一个在实现过程中控制不同阶段(综合、映射、布局布线等)的设置的集合。
策略可以控制是否为区域或设计优化速度,布局布线需要多长时间,以及许多其他因素。Diamond提供了一个默认的策略。在刚开始,
它可能是一个很好的采集。你也可以试一试它的一些变化。您可以在不同的情况下修改Strategy1并创建其他规则试验并使用。
设置方法如下图:
1、双击File List 中的 Strategy1,在弹出的对话框中单击Synthesis Design --> Synplify Pro 。默认的策略对话框出现,Synplify Pro默认的
设置也在其中。

关于在综合中的SDC文件用法的信息,在Synplif安装字典中,参考 在Synplify Pro 中的 Lattice 综合手册内的Synplif和Synplify Pro。
2、对Synplify Pro 指定如下设置,Number of Critical Paths :10.
注意:当任何策略被选中之后,它响应的txt描述就会出现在对话框的面板底层。
3、点击OK,则本设计的全局综合操作被设置。
具体的设置内容因工程而异。
四、资源检测:
Diamond 提供了可视化工具去帮助你理解和记录物理资源关于驱动芯片资源和使用资源,你可以浏览和定位工程资源文件中芯片的独立特性。
综合之后你可以看到使用资源的计算。
浏览芯片的资源的步骤:
1、Tool --> Device View . Device View 出现,点击右上角的分离图标
是他成为一个单独的窗口。出现目标资源芯片的索引。
2、点击
展开芯片文件夹,几个文件夹组织通过文件类型来出现。

3、展开sysDSP Blocks 和sysMEM Blocks 文件夹。 8个 sysDSP Blocks 和18 个 sysMEM Blocks 出现。
4、键入EBR_R17C11(会有变化,可能是其他的)在上面的查找对话框中,回车,查找到会会出现高亮。
5、 在列表中点击 EBR_R17C11,右键,show in --> Floorplan View.

Floorplan View提供了整体的布局设计,它显示用户约束,从逻辑优先文件(.lpf)和布局布线信息。
6、 关闭Floorplan view 和 Device view。
综合之后可以看到资源使用情况的计算。
查看综合设计和资源利用情况的步骤:
1、在Process View,双击Synthesize Design。
2、当综合进程完成,选择Hierarchy——》Post Synthesis Resources 表。在综合后,层次视图显示设计中每层使用的逻辑单元数量。
图片缺
远航路上ing 整理,仅供学习交流。转载请说明出处。
Lattice Diamond 学习之编译、检查和设置约束的更多相关文章
- 【心得】Lattice Diamond 后端约束实战小结
[博客导航] [导航]FPGA相关 IOB约束 参考<插入IO寄存器和位置约束---lattice&diamond>,推荐的方法是: 1.在strategy设置[Map Desig ...
- 数据库(学习整理)----3--Oracle创建表和设置约束
BBS论坛表设计 包含的表:BBSusers(用户表),BBSsection(版块表),BBStopic(主贴表),BBSreply(跟帖表) 表结构 1)BBSusers 字段名 字段说明 数据类型 ...
- Lattice Diamond 和 ispLEVER 的不同之处
Lattice Diamond 和 ispLEVER.有一些不同,尤其是如何管理工程的不同,包括以下几点: 1.ispLEVER 有多种工程类型,不同的程序文件类型需要不同的类型的工程:但是Diamo ...
- TVM将深度学习模型编译为WebGL
使用TVM将深度学习模型编译为WebGL TVM带有全新的OpenGL / WebGL后端! OpenGL / WebGL后端 TVM已经瞄准了涵盖各种平台的大量后端:CPU,GPU,移动设备等.这次 ...
- (二)我的Makefile学习冲动&&编译过程概述
前言 一 年轻的冲动 二 学习曲线 1 Makefile基本语法 2 bash基础 3 world 三 编译过程概述 1 主机预装工具 2 编译host工具 3 编译交叉工具链 4 编译内核模块 5 ...
- Centos 7 学习之静态IP设置
原文链接:http://blog.csdn.net/johnnycode/article/details/40624403 本学习主要针对 Centos 7.0.1406 版本进行学习整理! 如果你使 ...
- SQL反模式学习笔记5 外键约束【不用钥匙的入口】
目标:简化数据库架构 一些开发人员不推荐使用引用完整性约束,可能不使用外键的原因有一下几点: 1.数据更新有可能和约束冲突: 2.当前的数据库设计如此灵活,以至于不支持引用完整性约束: 3.数据库为外 ...
- unigui编译路径设置
unigui编译路径设置 先设路径变量 再追加如下路径,即可成功编译: ;$(uni)\uniTools\Dcu\Delphi2021;$(uni)\uniGUI\Dcu\Delphi2021;$(u ...
- 第二十五篇 jQuery 学习7 获取并设置 CSS 类
jQuery 学习7 获取并设置 CSS 类 jQuery动态控制页面,那么什么是动态呢?我们就说一下静态,静态几乎又纯html+css完成,就是刷新页面之后,不会再出现什么变动,一个实打实的静态 ...
随机推荐
- iOS开发——多线程篇——NSOperation(基于GCD多线程编程),下载图片并合成新图片
一.NSOperation的基本概念1.简介NSOperation的作用配合使用NSOperation和NSOperationQueue也能实现多线程编程 NSOperation和NSOperatio ...
- 9 DelayQueueEntry 延时队列节点类——Live555源码阅读(一)基本组件类
这是Live555源码阅读的第一部分,包括了时间类,延时队列类,处理程序描述类,哈希表类这四个大类. 本文由乌合之众 lym瞎编,欢迎转载 http://www.cnblogs.com/oloroso ...
- JavaWeb出现404一个很隐蔽的原因
- 线程池大小 & cpu core
http://stackoverflow.com/questions/14556037/number-of-processor-core-vs-the-size-of-a-thread-pool ht ...
- stty命令使用
stty [ -a ] [ -g ] [ Options ] stty(set tty)命令用于显示和修改当前注册的终端的属性. UNIX系统为键盘的输入和终端的输出提供了重要的控制手段,可以通过 ...
- php内核和瓦力上线部署
http://www.php-internals.com/ http://www.walle-web.io/
- JS插件之——ztree
很牛逼的一个树形菜单,树形下拉框插件.一年前用过,很好用.今天又有机会拿过来用,温故一下基本点,nice!! 官方文档说明的非常详细,按照API慢慢看,耐心解读,自然就可以解惑了. 官方文档及其源码下 ...
- oracle数据库常用plsql语句
(一)oracle中常用的数据类型 (二)PL-sql基本语法 1.创建数据库表.删除数据库表 create table table1--创建表 ( field1 number(8), field2 ...
- c++数据类型和定义
我们都知道,刚开始学习数学的时候.乘法口诀.99乘法口诀.这个是大家都需要背的.背熟了这个,大家才能知道遇到算术题如何计算.这个99乘法口诀就是一种定义. 同样任何的语言都会有很多的定义.比如语文:各 ...
- Appium+Robotframework实现Android应用的自动化测试-5:RIDE中AppiumLibrary的配置
可能很多朋友已经迫不及待的想要用RobotFramework+AppiumLibrary来写Android App的测试脚本了,那我们也废话少说,直接开始. 首先打开RIDE,这是编写RobotFra ...