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完成,就是刷新页面之后,不会再出现什么变动,一个实打实的静态 ...
随机推荐
- MongoDB的学习和使用(查询find)
语法 MongoDB 查询数据的语法格式如下: >db.COLLECTION_NAME.find() find() 方法以非结构化的方式来显示所有文档. 如果你需要以易读的方式来读取数据,可以使 ...
- PHP 中的行为 ,与什么是切面
行为(Behavior)扩展以及插件(Plug or Hook)详解: 行为(Behavior)是ThinkPHP扩展机制中比较关键的一项扩展,行为即可以独立调用,也可以绑定到某个 标签中进行监听,官 ...
- BZOJ 4665: 小w的喜糖
Sol DP+容斥. 这就是一个错排的扩展...可是想到容斥却仅限于种数的容斥,如果种数在一定范围内我就会做了QAQ. 但是容斥的是一定在原来位置的个数. 发现他与原来的位置无关,可以先把每个同种的糖 ...
- TLS 与 python thread local
TLS 先说TLS( Thread Local Storage),wiki上是这么解释的: Thread-local storage (TLS) is a computer programming m ...
- wordpress迁移到本地404错误
线上wordpress迁移到本地可能出现找不到页面问题,可能是因为配置了url静态化,同时wordpress的文章链接是存在数据库中的 下面替换掉原来线上的文章链接,其中数据库名为wordpress ...
- 图解SSL/TLS协议(HTTPS的安全层)
http://blog.csdn.net/wallezhe/article/details/50977337 图解SSL/TLS协议 作者: 阮一峰 日期: 2014年9月20日 本周,Clo ...
- CSS——display和float
1.display 属性规定元素应该生成的框的类型. 值 描述 none 此元素不会被显示. block 此元素将显示为块级元素,此元素前后会带有换行符. inline 默认.此元素会被显示为内联元素 ...
- strcpy C++实现
#include <iostream> #include <assert.h> using namespace std; char *strcpy(char *strDest, ...
- Debian上安装Apache+Django全过程
-->start sudo apt-get install apache2 libapache2-mod-wsgi #https://wiki.debian.org/zh_CN/Apache s ...
- pip安装简单方法
前提:有网络 wget -c --no-check-certificate https://bootstrap.pypa.io/get-pip.py python get-pip.py