FPGA流水线考虑因素

流水线考虑因素
另一种提升性能的方法是对拥有多个逻辑级数的长数据路径进行重新组织,并将其分配在多个时钟周期上。这种方法
以时延和流水线开销逻辑管理为代价,来达到加快时钟周期和提高数据吞吐量的目的。
由于 FPGA 器件带有大量的寄存器,额外的寄存器和开销逻辑通常不是问题。但是,数据路径跨多个周期,您必须对
设计的其余部分进行特殊注意,以考虑所添加的路径时延。
考虑 SSI 器件的流水线
在对需要 SLR 边界交汇的高性能寄存器间连接进行设计时,必须在 HDL 代码中描述正确的流水线,同时在综合中加以
控制。这样可以确保移位寄存器 LUT (SRL) 推断和其它优化工作不会发生在必须跨 SLR 边界的逻辑路径上。以这种方式
修改代码加上适当使用 Pblock 可以设定 SLR 边界交汇发生的位置。
预先考虑流水线
预先而不是滞后考虑流水线可以降低时序收敛的难度。在较晚阶段对特定路径添加流水线常常会跨越电路传输时延差
异。这样一个看似微小的修改可能需要对部分代码进行大规模的重新设计。
在设计中尽早发现需要使用流水线的地方往往可以大幅度提升时序收敛、实现运行时间 (因时序问题更容易解决)和
器件功耗 (因逻辑转换数量下降)。
检查推断的逻辑
在对您的设计进行编码时,应注意正在推断的逻辑。在想要添加流水线时,应注意下列条件:
带有大扇入的逻辑椎
例如,需要大量总线或多个组合信号来计算输出的代码
具有布局限制、输出相对于时钟时延 (clock-to-out) 更短或大量建立要求的块
例如,没有输出寄存器的块 RAM 或没有正确流水线化的算术代码
强制布局导致长布线
例如一个管脚强制一条跨越芯片的布线,可能需要流水线来实现高速运行
包括大型 XOR 函数的逻辑
大型 XOR 函数通常具有会造成大量动态功耗的高转换速率。流水线化函数能减少转换,从而对所述电路的功耗产
生积极影响。
下图中,时钟速度受下列因素限制:
源触发器的时钟到输出时间;
贯穿四个逻辑级数的逻辑延迟;
四个函数发生器的相关布线;
目的地寄存器的建立时间。
。由于触发器与函数发生器位于相同的 slice 中,时钟速度受源触发器的输出相
对于 clock-to-out 延迟、贯穿一个逻辑级数的逻辑延迟、一个布线延迟和目的地寄存器的建立时间限制。在这个例子
中,流水线化后的系统时钟的运行速度明显高于流水线化之前。
确定是否需要管道
常用的流水线技术可以识别大的组合逻辑路径,将其分成较小的路径,并在这些路径之间引入寄存器级,理想地平衡
每个流水线级。
要确定设计是否需要流水线,请确时序钟的频率和分布在每个时钟组中的逻辑数量。您可以使用
report_design_analysis Tcl 命令与 -logic_level_distribution 选择来确定每个时钟组的逻辑级分布。
提示: 设计分析报告还突出显示具有零逻辑层的路径数,您可以使用这些路径确定在代码中进行修改的位置。
平衡时延
要通过添加流水线级来平衡时延,请将该级添加到控制路径而不是数据路径。数据路径包括更宽的总线,这增加了所
使用的触发器和寄存器资源的数量。
例如,如果您有 128 位数据路径, 2 级寄存器,并且需要 5 个周期的时延,则可以插入 3 个寄存器级: 3 x 128 = 384
触发器。或者,您可以使用寄存器来控制逻辑使能数据路径。使用 5 级单比特寄存器来控制数据路径触发器的使能信
号,进而相应地控制多周期路径时序例外。
注释: 此示例仅适用于某些设计。例如,在存在来自中间数据路径触发器的扇出的情况下,仅具有 2 个级不工作。
建议: FPGA 中的最佳 LUT FF 比为 1 1 。具有显着更多 FF 的设计将增加不相关的逻辑打包成片,这将增加布线复杂
性并且可以降低 QoR
平衡管线深度和 SRL 使用
如果存在深度寄存器流水线,应将尽可能多的寄存器映射在 SRL 中,以避免寄存器利用率的显著增加。例如, 9 层深
的流水线 (对于 32 的数据宽度)导致每个比特的 9 个寄存器,使用 32×9 = 288 个寄存器。将相同的结构映射到 SRL
使用 32 SRL 。每个 SRL 都连接到 5’b01000 的地址引脚 (A4A3A2A1A0) ,以实现 9 级深度。
在综合期间推断 SRL 有多种方法,包括以下:
• SRL
• REG -> SRL
• SRL -> REG
• REG -> SRL -> REG
您可以使用 RTL 代码中的 srl_style 属性创建这些结构,如下所示:
• (* srl_style = “srl” *)
• (* srl_style = “reg_srl” *)
• (* srl_style = “srl_reg” *)
• (* srl_style = “reg_srl_reg” *)
常见的错误是在较深的流水线阶段使用不同的使能 / 复位控制信号。下面是在 9 深度流水线级中使用的复位的示例,其
中复位连接到第三,第五和第八流水线级。使用这种结构,工具只将流水线级映射到寄存器,因为 SRL 原语有一个复
位引脚。
FF->FF->FF(reset) -> FF->FF(reset)->FF->FF->FF(reset)->FF
利用 SRL 推断:
确保没有用于流水线级的复位。
分析是否真的需要复位。
在一个触发器上使用复位 (例如,在管道的第一级或最后一级)。
避免不必要的流水线
对于高度利用的设计,太多的流水线可能导致次优的结果。例如,不必要的流水线级增加了触发器和布线资源的数量,
如果利用率高,这可能限制布局和布线算法。
注释: 如果有许多具有 0/1 逻辑级别的路径,请检查以确保这是有意这么做的。
考虑流水线宏原语
基于目标架构,如果使用足够的流水线,专用原语 (如块 RAM DSP )可在 500 MHz 以的上的频率范围工作。对于
高频设计,赛灵思建议使用这些块中的所有流水线。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/945118.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

语言模型的革命:大型概念模型(LCM)的崛起

在人工智能领域,Meta最近推出的一项重大突破正在引起研究人员和开发者的广泛关注:大型概念模型(Large Concept Models,简称LCM)。这一创新彻底改变了我们对语言模型的理解,并为未来AI技术的进展指明了新的方…

郴州年夜饭大数据分析:Python爬虫的美味之旅

在春节这个阖家团圆的日子里,年夜饭无疑是最具仪式感的一餐。郴州,这座美食之城,其年夜饭的餐桌上自然少不了那些让人垂涎三尺的地道美食。作为一名热爱美食的程序员,我决定用Python爬虫技术,为大家揭秘郴州年夜饭的必…

STM32-笔记17-PWM波型

一、介绍 PWM波形(Pulse Width Modulation,脉冲宽度调制波形)是一种占空比可变的脉冲波形。这种调制方式通过改变脉冲的宽度来控制电路中的信号强度和频率。具体来说,PWM波形中的高电平持续时间和低电平持续时间可以根据需要进行调…

HTML——16.相对路径

<!DOCTYPE html> <html><head><meta charset"UTF-8"><title></title></head><body><a href"../../fj1/fj2/c.html" target"_blank">链接到c</a><!--相对路径&#xff1a;-->…

【学生管理系统】整合JWT(完)

目录 5. 整合JWT 5.1 生成Token 5.2 携带Token 5.2.1 保存token 5.2.2 携带token 5.3 校验Token 5.4 获得Token 5. 整合JWT 5.1 生成Token 用户登录成功后&#xff0c;通过工具类&#xff0c;将用户信息转换成token 步骤&#xff1a; 拷贝工具类&#xff0c;及其Prop…

java计算机毕设课设—商品供应管理系统(附源码、文章、相关截图、部署视频)

这是什么系统&#xff1f; 资源获取方式再最下方 java计算机毕设课设—商品供应管理系统(附源码、文章、相关截图、部署视频) 项目名称&#xff1a; 基于Java的商品供应管理系统 一、项目介绍 项目背景&#xff1a; 在现代商业活动中&#xff0c;商品供应管理是企业运营的…

ipad如何直连主机(Moonlight Sunshine)

Windows 被连接主机&#xff08;Windows&#xff09; 要使用的话需要固定ip&#xff0c;不然ip会换来换去&#xff0c;固定ip方法本人博客有记载Github下载Sunshine Sunshine下载地址除了安装路径需要改一下&#xff0c;其他一路点安装完成后会打开Sunshine的Web UI&#xff…

B站推荐模型数据流的一致性架构

01 背景 推荐系统的模型&#xff0c;通过学习用户历史行为来达到个性化精准推荐的目的&#xff0c;因此模型训练依赖的样本数据&#xff0c;需要包括用户特征、服务端推荐的视频特征&#xff0c;以及用户在推荐视频上是否有一系列的消费行为。 推荐模型数据流&#xff0c;即为…

快速掌握Haproxy原理架构

文章目录 一、原理架构二、无负载均衡三、四层负载均衡的工作流程四、七层负载均衡工作流程五、基础属性mode 属性retries 属性maxconn 属性clitimeout 属性servtimeout 属性states uri 属性 一、原理架构 四层tcp代理&#xff1a;Haproxy仅在客户端和服务器之间双向转发流量&…

Pytest基础01: 入门demo脚本

目录 1 Pytest接口测试 1.1 最简单版hello world 1.2 pytest.ini 2 pytest兼容unittest 3 封装pytest执行入口 1 Pytest接口测试 Pyest是一个可以用于接口测试的强大框架&#xff0c;开源社区也有非常多的pytest插件。 按江湖传统&#xff0c;学习一个新语言或者新框架&…

《HelloGitHub》第 105 期

兴趣是最好的老师&#xff0c;HelloGitHub 让你对编程感兴趣&#xff01; 简介 HelloGitHub 分享 GitHub 上有趣、入门级的开源项目。 github.com/521xueweihan/HelloGitHub 这里有实战项目、入门教程、黑科技、开源书籍、大厂开源项目等&#xff0c;涵盖多种编程语言 Python、…

Linux day 1129

家人们今天继续学习Linux&#xff0c;ok话不多说一起去看看吧 三.Linux常用命令 3.1 Linux命令体验 3.1.1 常用命令演示 在这一部分中&#xff0c;我们主要介绍几个常用的命令&#xff0c;让大家快速感 受以下 Linux 指令的操作方式。主要包含以下几个指令&#xff1a; ls命…

python爬虫爬抖音小店商品数据+数据可视化

爬虫代码 爬虫代码是我调用的数据接口&#xff0c;可能会过一段时间用不了&#xff0c;欢迎大家留言评论&#xff0c;我会不定时更新 import requests import time cookies {token: 5549EB98B15E411DA0BD05935C0F225F,tfstk: g1vopsc0sQ5SwD8TyEWSTmONZ3cA2u6CReedJ9QEgZ7byz…

hadoop搭建

前言 一般企业中不会使用master slave01 slave02来命名 vmware创建虚拟机 打开vmware软件&#xff0c;新建虚拟机 典型 稍后安装系统 选择centos7 虚拟机名称和安放位置自行选择&#xff08;最小化安装消耗空间较少&#xff09; 默认磁盘大小即可 自定义硬件 选择centos7的i…

基于深度学习(HyperLPR3框架)的中文车牌识别系统-python程序开发测试

本篇内容为python开发&#xff0c;通过一个python程序&#xff0c;测试搭建的开发环境&#xff0c;读入一张带有车牌号的图片&#xff0c;成功识别出车牌号。 1、通过PyCharm新建一个工程&#xff0c;如&#xff1a;PlateRecognition&#xff0c;配置虚拟环境。 2、在工程中新…

c# RSA加解密工具,.netRSA加解密工具

软件介绍 名称: c# RSA加解密工具,.netRSA加解密工具依赖.net版本: .net 8.0工具类型: WinForm源码下载 c# RSA加解密工具,.netRSA加解密工具 依赖项 WinFormsRSA.csproj <Project

Ubuntu20.04安装Foxit Reader 福昕阅读器

Ubuntu20.04安装Foxit Reader 福昕阅读器 文章目录 Ubuntu20.04安装Foxit Reader 福昕阅读器 先更新一下源 sudo apt update sudo apt upgrade下载Foxit Reader的稳定版本 wget https://cdn01.foxitsoftware.com/pub/foxit/reader/desktop/linux/2.x/2.4/en_us/FoxitReader.e…

HUB、交换机、路由器和串口服务器

HUB&#xff1a;HUB是集线器&#xff0c;支持半双工的工作模式&#xff0c;就像对讲机那样。工作在物理层&#xff0c;收到数据后&#xff0c;会向其他端口转发&#xff0c;只是起到“中转站的作用”&#xff1b;而且对带宽是共享的&#xff0c;像河流一样&#xff0c;分的支流…

基于微信小程序的校园访客登记系统

基于微信小程序的校园访客登记系统 功能列表 用户端功能 注册与登录 &#xff1a;支持用户通过手机号短信验证码注册和登录。个人资料管理 &#xff1a;允许用户编辑和更新个人信息及其密码。站内信消息通知&#xff1a;通知公告。来访预约&#xff1a;提交来访预约支持车牌…

苹果叶病害图像分类数据集5类别:健康苹果叶、灰斑病、铁锈病、马赛克病、蛙眼叶斑病

数据集下载 苹果叶病害图像分类数据集5类别&#xff1a;健康苹果叶、灰斑病、铁锈病、马赛克病、蛙眼叶斑病&#xff08;7100张图片&#xff09;:https://download.csdn.net/download/m0_64879847/90181747 数据集展示 健康苹果叶 灰斑病 马赛克病 铁锈病 蛙眼叶斑病