搜索
查看
编辑修改
首页
UNITY
NODEJS
PYTHON
AI
GIT
PHP
GO
CEF3
JAVA
HTML
CSS
搜索
人工智能uu
这个屌丝很懒,什么也没留下!
关注作者
热门标签
jquery
HTML
CSS
PHP
ASP
PYTHON
GO
AI
C
C++
C#
PHOTOSHOP
UNITY
iOS
android
vue
xml
爬虫
SEO
LINUX
WINDOWS
JAVA
MFC
CEF3
CAD
NODEJS
GIT
Pyppeteer
article
热门文章
1
C++之stringstream类-基本用法详解_c++ stringstream
2
org.apache.flink.table.client.SqlClientException: Could not read from command line【Flink解决方案】
3
规则引擎技术选型-qlExpress
4
Spring Cloud Eureka 详解_spring cloud + eureka
5
Kimi:文本解析利器,你相信光么?_kimi没有解析出文字
6
智能检测的边缘计算:优化与实践
7
数据结构:实验七:数据查找_(1)编写程序,利用顺序查找,从控制台给定的十个数据中查找一个数据是否存在。
8
UG476-Xilinx-7Series-FPGA高速收发器使用学习—TX发送端
9
Oracle RAC集群安装,从零开始_it邦德 rac
10
VS Code 终端打开当前路径_vscode 集成终端没有切换到目录
当前位置:
article
> 正文
防止ISE优化信号_ise防止信号
作者:人工智能uu | 2024-06-21 14:49:28
赞
踩
ise防止信号
综合是将我们的设计转化为FPGA可以读懂的配置文件的第一个步骤。本文努力从0基础开始向大家说明综合的基本知识和高级技巧。
话说所有的功能都有它应用的环境。在了解某个按钮选项有某个功能的时候,我们更应该了解应该在什么时候什么情况使用它。所以我以这种问答的形式,向大家展示综合过程中可能遇到的方方面面的问题以及解决的方法。
-----------基础知识--------------
1. 什么是综合?
综合就是把HDL语言/原理图转换为综合网表的过程。
2. 什么是综合网表?
综合网表就是综合的结果啦。
综合网表的业界标准是EDIF格式。文件后缀通常为.edn, .edf, .edif。EDIF网表是可以用文本编辑器打开的文本文件。
Xilinx自家的综合结果是NGC网表。NGC网表是二进制的文件,不能用文本编辑器打开观察。
3. 综合网表中包含一些什么内容?
综合网表中除了包含从HDL语言中infer出的与门、非门等组合逻辑和寄存器等时序逻辑之外,还包含FPGA特有的各种原语(Primitive)比如LUT,BRAM,DSP48,甚至PowerPC,PCIe等硬核模块,以及这些模块的属性和约束信息。
4. 综合工具有哪些?
Xilinx自家的XST,Synopsys(收购了Synplicity)的Synplify,Mentor Graphic的Precision 都是使用最广泛的综合工具。
5. 这些综合工具有什么特点呢?
XST - 随ISE自带,免费,对新器件支持快。但是对loop循环支持不如Synpilfy。综合结果的时序有时没有Synplify好。
Synplify - 应用最广泛。综合结果的时序性能和占用面积都不错,大器件的综合时间也相比XST有优势。但是非常贵,对新器件支持比XST晚一拍。
Precison - 没用过,不发表评论。
-----------XST基础--------------
1. XST的使用手册在哪里?
XST User Guide。可以在ISE界面中点Help --> Reference Manuals --> XST User Guide,或者在开始菜单中找到ISE --> Documentation --> Reference Manuals --> XST User Guide,或者ISE安装目录doc子目录中搜索xst.pdf。
2. XST支持哪些语言?
VHDL, Verilog-2002, 以及Mixed Language of VHDL and Verilog。
所支持的可综合的VHDL和Verilog的子集可以查看XST User Guide。
-----------XST中更多的控制--------------
1. 综合器插入的Buffer类型不是我想要的,如何控制XST插入buffer的类型?
- 用buffer_type约束控制某个信号驱动的buffer的类型。具体使用方法在XST User Guide。
- 如果用了很多门控时钟,XST会给他们分别都插入BUFG,而真正需要BUFG的信号可能却因此没有BUFG可分配了。此时可以手动例化插入BUFG,然后在XST属性中设置允许使用BUFG的数量,那么手动例化BUFG的将拥有高优先级而先占用了规定的可用BUFG数量。
2. 怎样防止逻辑被合并优化?
- 在默认情况下,综合器会将有相同输入信号并且实现相同功能的逻辑认为是重复的逻辑而将他们合并优化。
- 为防止这种情况发生,可以关闭XST的"Resource Sharing"和"Equivalant Register Removal"选项
- 也可以在特定的逻辑上加上Keep约束或S约束
3. 用综合约束控制产生电路
- 综合器也需要添加约束。通常使用的UCF只在布局布线时才起作用。在越早的步骤中使用约束,就能对设计进行更早的干预和优化,时序收敛的可能性就越大。
- 在XST的属性中添加XCF约束
- Period, Offset, From To的约束语法都和UCF一样。
--------复制寄存器相关事项--------
1. 什么时候要复制寄存器?
- Fanout太多导致延时增大(在FPGA中不是最主要的因素)
- Fanout太分散相距太远导致布局布线后出现过长的走线
2. 复制寄存器有哪些方法?
- 手动作HDL Coding,并且为了防止这些寄存器再次被综合器优化合并,需要将“Equivalant Register Removal”设置为False。
- 让工具自动复制。为需要复制的寄存器添加Max_Fanout约束,并关闭Resource Sharing和Equivalent Register Removal。注意当Max_Fanout约束设置得过小时,可能不会生效。
--------使用BlackBox注意事项------------
1. 什么是BlackBox
- 一个大的设计中可以用到一系列网表文件作为输入的一部分而并不全部使用HDL文件。当综合这个大设计时综合器不需要知道这个网表文件是怎样实现的,而只需要知道它的输入输出接口就可以了。这样的网表就称为黑盒子,因为我们不需要看到它的内部情况。
- 通常付费IP都会以BlackBox的形式
2. 如何使用BlackBox
- BlackBox网表可以是EDIF或NGC文件。
- 每个BlackBox网表都需要有一个与之相对应的HDL文件来注明它的端口。这个HDL只说明BlackBox的端口信息,而不提供具体实现信息。这个只提供端口信息的HDL文件称为Wrapper。Wrapper的名字通常需要与BlackBox网表的名字相同。
- 在ISE工程中使用BlackBox时只需要将它的Wrapper添加到工程中。然后像普通的模块一样在其上层声明和例化就可以使用。
- BlackBox网表文件可以放在ISE工程目录中,也可以放在其他任意文件夹内。当不放在ISE工程目录时,需要在Translate属性中将Macro Search Path指向这个目录。多个目录使用"|"分割。
3. 如何制作BlackBox
- BlackBox只是普通网表而已。XST的综合结果就可以直接作为BlackBox使用。
- 通常BlackBox外部还会连接其他逻辑,所以BlackBox中一般不插入IOBUF。在XST属性中去除Insert IO Buffer的选项。
---------设计相关问题讨论-----------
1. 什么时候用例化,什么时候用infer
- 使用厂商特定的Primitive时用例化
- 使用Coregen产生的IP时用例化
- 大多数使用BRAM/FIFO/Distributed RAM的情况用例化
- 各种时钟资源BUFG/BUFR/BUFIO用例化
- 不是非要例化的情况就尽量用Infer,因为可移植
声明:
本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:
https://www.wpsshop.cn/w/人工智能uu/article/detail/743394
推荐阅读
article
前端
启动
本地服务
的
四种
方法
,
看完不会你锤我_
前端
启动
命令...
基础知识是
前端
一面必问
的
,
如果你在基础知识这一块翻车了
,
就算你框架玩
的
再6
,
webpack、git、node学习
的
再好也...
赞
踩
article
玩转
ChatGPT
:最全学术
论文
提示
词
分享
【合集】_
gpt
论文
提示
词
...
在研究主题内缩小的范围“在[广泛的主题领域]内生成符合我的专业知识和当前研究趋势的研究主题。我对探索[特定方面]及其对[...
赞
踩
article
【
开源
】基于
Vue
+
SpringBoot
的
图书
管理系统
...
图书
管理系统
是一个用于管理
图书
馆资源的软件系统,该系统包括
图书
馆模块、
图书
类型模块、
图书
模块、
图书
借阅模块和公告模块_图...
赞
踩
article
git
子
模块
操作_
git
子
模块
提交
...
1. 添加子
模块
git
submodule add -b
git
submod...
赞
踩
article
Python
Tkinter
之
Button
控件(
Python
GUI
系列6)_
python
tb...
Python
Tkinter
之
Button
控件(
Python
GUI
系列6)1. 序言 本章介绍
Tkinter
的Bu...
赞
踩
article
Xilinx
PCIE
DMA
仿真环境搭建_
xilinnx
pcie
map...
目录1、前言2、仿真环境搭建3、BMD工程的PIO仿真4、xapp1052
DMA
仿真4.1 testcase4.2 配置...
赞
踩
article
AI
大
模型
的
使用-
让
AI
帮你写
单元测试
_
ai
生成
单元测试
...
2.定义prompt跟Ai说明需求,这里需求是“
让
它写
单元测试
,并用Python 3.10和pytest高级特性写代码出...
赞
踩
article
蓝桥
杯
比赛
的
语言
有
php
吗
,
你
真
的
要参加
蓝桥
杯
吗?...
最近
有
很多大二
的
同学加我,问我如何备战
蓝桥
杯
,其中一个典型
的
对话是下面这样
的
而每次我
的
回答都是,不建议参加,别人还很不解...
赞
踩
article
git
强制
pull
线上版本_
git
强制
pull
...
当本地文件有改动,但是不想在用本地的改动了,直接替换成
git
分支版本时,直接用
git
pull
会提示本地版本没有comm...
赞
踩
article
论文阅读:
Memory
Networks_
deep
memory
connected
network
...
一、论文所解决的问题实现长期记忆(大量的记忆),并且实现如何从长期记忆中读取和写入,此外还加入了推理功能为什么长期记忆很...
赞
踩
article
Linux
:超级管理员(
root
用户
)
创建
用户
、
用户
组_
linux
创建
管理员
用户
root
...
a、选项:-g指定
用户
的组,不指定-g,会
创建
同名组并自动加入,指定-g需要组已经存在,如已存。a、选项:-r,删除
用户
...
赞
踩
article
基于Jsp+
Servlet
+
Mysql
学生
信息管理系统
_jsp+
servlet
学生
...
项目类型:Java web项目/Java EE项目/项目名称:基于sevelet的
学生
信息管理系统
当前版本:V1.0.0...
赞
踩
article
【深度
学习
】【NLP】
Bert
理论,
代码
_
bert
文本
编码
公式
...
BERT (Bidirectional Encoder Representations from Transformer...
赞
踩
article
Avalonia
框架
MVVM
模式
打开和
关闭
当前界面_
avalonia
communitytoolki...
Avalonia
框架
MVVM
模式
打开和
关闭
当前界面 跨平台 十月的寒流 CommunityToolkit.Mvvm库...
赞
踩
article
docker
-
compose
pull
出现
net
/
http
: TLS
handshake
timeo...
在本地执行
docker
-
compose
,出现如下情况[root@localhost djangotest]# dock...
赞
踩
article
Docker
常用命令详解_
docker
操作命令
...
1、 查看
docker
版本
docker
version 2、 显示
docker
系统的信息
docker
info 3、...
赞
踩
article
如何使用
Selenium
处理
Cookie
,
今天彻底学会了!_
selenium
获取
cookies
(1)...
session是另一种记录客户状态的机制
,
不同的是cookie保存在客户端浏览器中
,
而session保存在服务器上。客户...
赞
踩
article
【
链表
OJ
3
】
链表
的
中间
结点
...
【
链表
OJ
3
】
链表
的
中间
结点
,数据结构刷题,用c语言实现,动图解析。_oj
3
oj
3
...
赞
踩
article
想学
接口
测试
,
不
知道那个
工具
适合
?...
接口
测试
是软件
测试
中的一项重要任务
,
它主要关注系统的
不
同组件之间的数据交换和通信。
接口
测试
是一种黑盒
测试
方法
,
它可以帮助...
赞
踩
article
git
回滚
到
某一次
提交
_
git
回退
到
某个
提交
...
git
回滚
到
某一次
提交
_
git
回退
到
某个
提交
git
回退
到
某个
提交
...
赞
踩
相关标签
前端
chatgpt
人工智能
spring boot
开源
vue.js
git
Python
Tkinter
Button
蓝桥杯比赛的语言有php吗
记忆网络 RNN
linux
运维
服务器
java
servlet
mysql
深度学习
自然语言处理
bert
docker
容器
selenium