主要内容

选择一块HDL-Optimized定点矩阵运算

您可以使用定点设计师™HDL支持库块执行定点矩阵运算,生成高效的HDL代码。金宝app这些块模型设计模式为线性方程组和矩阵运算核心,例如QR分解和奇异值分解hardware-efficient fpga上的实现。介绍这些概念,看到分解奇异值

这个话题讨论了如何选择一个适当的块从定点设计师HDL支持库为您的应用程序。金宝app

定义要解决的问题

首先,定义您需要解决的数学问题和要使用的算法。

线性系统动力学

使用线性系统求解程序库的模块来解决这些线性方程组。

操作 描述
一个x=B 使用QR分解矩阵解决

使用QR分解求解线性方程组一个x=B。来计算x=一个1,设置B单位矩阵。

一个一个X=B 使用Q-less QR分解矩阵解决

解决线性方程组一个一个X=B使用QR分解,没有计算

一个一个X=B 矩阵解决使用Q-less QR分解和遗忘因子

解决线性方程组一个一个X=B使用QR分解,没有计算一个是一个无限高代表流数据矩阵。

矩阵分解

使用矩阵分解块图书馆执行QR分解,也称为QR分解。

操作 描述

QR分解

QR分解

使用QR分解计算RC=B,在那里R=一个,在那里一个B你的输入矩阵。的最小二乘解一个x=Bx=R\CR是一个上三角矩阵和是一个正交矩阵。来计算C=,设置B单位矩阵。

没有计算Q QR分解

Q-less QR分解

使用Q-less QR分解计算经济规模上三角RQR分解的因素一个=R,没有计算。的解决方案一个一个x=Bx=R\R“\b

QR分解没有计算Q和无限的行数

Q-less QR分解与遗忘的因素

使用Q-less QR分解计算经济规模上三角RQR分解的因素一个=R,没有计算一个是一个无限高代表流数据矩阵。

奇异值分解

方雅可比圣言HDL优化

使用方雅可比圣言会计算一个方形矩阵的奇异值分解一个使用双面的雅可比算法。

选择一个架构

块的定点设计师HDL支持>矩阵和线性代数金宝app图书馆在破裂和partial-systolic实现。Partial-systolic实现优先级计算的速度在空间限制,而破裂为代价实现优先考虑空间约束的操作速度。下面的表说明了矩阵分解实现之间的权衡和解决线性方程组。

实现 准备好了 延迟 区域
Partial-Systolic C O () O (n2)
破裂 O (n) O (2) O (n)

在哪里C是一个常数成正比的单词长度数据,矩阵的行数一个,n矩阵的列数一个

解决线性系统:选择同步或异步操作

使用QR分解矩阵解决块同步操作。这些块分解输入一个B矩阵为RC使用QR分解块矩阵。然后,用块计算RX=C。输入一个B并行矩阵传播通过系统,以同步的方式。

例子为同步信号路径矩阵解决街区。

使用Q-less QR分解矩阵解决块异步操作。首先,Q-less QR分解进行输入一个矩阵和由此产生的R矩阵是放到一个缓冲区。然后,向前向后替换块使用的输入B矩阵和缓冲R矩阵计算RRX=B。因为RB矩阵分别存储在缓冲区中,上游Q-less QR分解块和下游向前向后替代块可以独立运行。向前向后替代块开始处理当第一RB矩阵是可用的。然后它运行不断使用最新的缓冲RB矩阵,不管Q-less QR分解的状态。例如,如果上游块停止提供一个B矩阵,向前向后替代块继续使用的最后一对生成相同的输出RB矩阵。

例子为异步信号路径矩阵解决街区。

破裂(异步)矩阵解决使用Q-less QR分解块中可用的同步和异步操作变量,用块名称。

数据的复杂性

所有的块定点设计师HDL支持>矩阵和线性代数金宝app图书馆可以在现实和复杂的变体。选择物体的真实的或复杂的变体基于数据的复杂性。

硬件控制信号

重新启动信号

一些街区定点设计师HDL支持>矩阵和线性代数金宝app图书馆提供一个输入复位信号,清除内部状态。

安巴AXI握手过程

块的定点设计师HDL支持>矩阵和线性代数金宝app图书馆使用安巴AXI握手协议[1]。的有效/准备握手过程是用来传输数据和控制信息。这种双向控制机制允许经理和下属控制速率信息管理者和下属之间移动。一个有效的信号表明当数据是可用的。的准备好了信号表示可以接受的数据块。数据传输发生只有当了有效的准备好了信号是高。

另请参阅

相关的话题