<kbd id='jac42HuJWKTJQEi'></kbd><address id='jac42HuJWKTJQEi'><style id='jac42HuJWKTJQEi'></style></address><button id='jac42HuJWKTJQEi'></button>

              <kbd id='jac42HuJWKTJQEi'></kbd><address id='jac42HuJWKTJQEi'><style id='jac42HuJWKTJQEi'></style></address><button id='jac42HuJWKTJQEi'></button>

                      <kbd id='jac42HuJWKTJQEi'></kbd><address id='jac42HuJWKTJQEi'><style id='jac42HuJWKTJQEi'></style></address><button id='jac42HuJWKTJQEi'></button>

                              <kbd id='jac42HuJWKTJQEi'></kbd><address id='jac42HuJWKTJQEi'><style id='jac42HuJWKTJQEi'></style></address><button id='jac42HuJWKTJQEi'></button>

                                      <kbd id='jac42HuJWKTJQEi'></kbd><address id='jac42HuJWKTJQEi'><style id='jac42HuJWKTJQEi'></style></address><button id='jac42HuJWKTJQEi'></button>

                                              <kbd id='jac42HuJWKTJQEi'></kbd><address id='jac42HuJWKTJQEi'><style id='jac42HuJWKTJQEi'></style></address><button id='jac42HuJWKTJQEi'></button>

                                                      <kbd id='jac42HuJWKTJQEi'></kbd><address id='jac42HuJWKTJQEi'><style id='jac42HuJWKTJQEi'></style></address><button id='jac42HuJWKTJQEi'></button>

                                                              <kbd id='jac42HuJWKTJQEi'></kbd><address id='jac42HuJWKTJQEi'><style id='jac42HuJWKTJQEi'></style></address><button id='jac42HuJWKTJQEi'></button>

                                                                  凯发娱乐平台客户端_操作LabVIEW优化多核处理赏罚器情形中的自动化测试应用

                                                                  发布时间:2018-03-08      点击:865     作者:凯发娱乐平台客户端

                                                                  操纵LabVIEW优化多核处理赏罚奖惩器气象中的自动化测试应用

                                                                  1. 多线程编程的挑衅

                                                                  迄今,处理赏罚器技能规模中的创新已经使得计较机具备了事变于更高时钟速度的中央处理赏罚器单位(CPU)。然而,跟着时钟速度迫近其理论上的物理极限,具有多个(而不是单个)处理赏罚核的新型处理赏罚器正处于研发之中。操作这些新型多核处理赏罚器自动化测试应用操作并行编程技能,便可以到达最佳机能和最高吞吐量。Edward Lee博士——加州大学伯克利分校电气与计较机工程系的精巧传授——这样描写并行处理赏罚的技能上风:

                                                                  本文引用地点:

                                                                  “很多技能专家预言,回应摩尔定律的终结的将是日趋并行的计较机架构。假如我们但愿继承进步计较机能,计较机措施必需可以或许操作这种并行机制。”

                                                                  并且,操作多核处理赏罚器的编程应用是一个庞大的编程挑衅,这是广为接管的。比尔盖茨——微软公司的创造者——关于这一挑衅有这样一段话:

                                                                  “要想充实操作并行事变的处理赏罚器的威力,…软件必需可以或许处理赏罚并发性题目。但正如任何一位编写过多线程代码的开拓者汇报你的那样,这是编程规模最难题的使命之一。”

                                                                  荣幸的是,LabVIEW为多核处理赏罚器提供了一个抱负的编程情形,由于它为建设并行算法提供了一个直观的情形,并且它可以动态指派多个线程至一项给定的应用。究竟上,操作多核处理赏罚器的自动化测试应用,可以利便地被优化以获取最佳机能。并且,PXIe模块化仪器加强了这一技能上风,由于PCIe总线使高数据传输速度成为也许。从多核处理赏罚器和PXIe仪器的两个详细应用是:多通道信号说明和线上处理赏罚(硬件在环)。在本文的后续部门,我们将评估各类并行编程技能,并刻画每项技能所带来的机能上风。

                                                                  至页首

                                                                  2. 实现并行测试算法

                                                                  得益于并行处理赏罚的一项常见自动化测试应用(ATE),即是多通道信号说明。因为频率说明是一项占据处理赏罚器较多的操纵,通过并行化处理赏罚测试代码使得每个通道的信号处理赏罚被分派至多个处理赏罚器核,可以进步执行速率。从编程职员的角度来看,为得到这一技能上风,所需的独一改变即是仅仅重构测试算法。

                                                                  为描写这一进程,我们将较量用于多通道频率说明(傅立叶调动或FFT)的两个算法的执行时刻,它们别离位于一个高速数字化仪的两个通道上。在该测试中,我们行使PXIe-5122 14-位高速数字化仪的两个通道,以最高采样率(100 MS/s)收罗信号。起首,我们这一操纵在LabVIEW中的传统的次序编程模子。

                                                                  操纵LabVIEW优化多核处理赏罚奖惩器气象中的自动化测试应用

                                                                  图1。操作次序执行的LabVIEW代码

                                                                  在上述模块框图中,两个通道的频率说明均在一个FFT快速VI中完成,它次序说明每个通道信号。固然上述算法也可以在多核处理赏罚器中有用执行,但仍存在通过并行处理赏罚每个通道进步算法机能的也许。

                                                                  假如我们分解上述算法,我们会发明完成FFT所需的时刻要比从高速数字化仪收罗数据长得多。通过每次获取一个通道的数据并并行执行两次FFT,我们可以明显低落处理赏罚时刻。下图暗示了一个回收并行要领的新的LabVIEW模块框图。

                                                                  操纵LabVIEW优化多核处理赏罚奖惩器气象中的自动化测试应用

                                                                  图2。操作并行执行的LabVIEW代码

                                                                  如上面代码所示,将次序获取数字化仪的每个通道的数据。留意,假如两次数据获取均来自差异的仪器,那么完全可以并行完成这些操纵。然而,因为傅立叶调动占用大量的处理赏罚器时刻,我们仍可以仅通过将信号处理赏罚并行化改进机能。故而镌汰了总的执行时刻。两种实现的执行时刻如下所示:

                                                                  操纵LabVIEW优化多核处理赏罚奖惩器气象中的自动化测试应用

                                                                  图3。次序算法与并行算法(时刻)的执行时刻较量

                                                                  如上图所示,跟着数据块巨细(每次获取的采样数)的增进,通过并行处理赏罚节省的处理赏罚时刻愈为明显。究竟上,对付更大的数据块,并行算法实现近2倍的机能改造。下图描写了机能增添的准确百分比随收罗数据块巨细(以采样数为单元)的变革。

                                                                  操纵LabVIEW优化多核处理赏罚奖惩器气象中的自动化测试应用

                                                                  图4。并行算法带来的机能增添(百分比)

                                                                  图4表现,当数据块大于1百万采样(100 Hz精度带宽)时,并行方法实现80%或更高的机能增添。

                                                                  在多核处理赏罚器之上,我们可以利便地实现自动化测试应用的机能改造,由于LabVIEW动态地分派每一个线程。究竟上,用户不必要建设非凡的代码以支持多线程,而是通过起码的编程调解,并行测试应用便可以获益于多核处理赏罚器。

                                                                  3. 设置定制的并行测试算法

                                                                  将信号处理赏罚并行化的技能上风在于它支持LabVIEW在多个处理赏罚器核平分别CPU的费用。在下图中,我们描写了CPU处理赏罚算法每一部门的序次。

                                                                  操纵LabVIEW优化多核处理赏罚奖惩器气象中的自动化测试应用

                                                                  图5。CPU的处理赏罚执行

                                                                  如图所示,LabVIEW可以或许并行处理赏罚很多收罗数据,从而节减了执行时刻。对付LabVIEW,并行处理赏罚的需求之一即是拷贝(或克隆)每个信号处理赏罚子例程。缺省环境下,LabVIEW的很多信号处理赏罚算法设置为“重入执行”。这就意味着LabVIEW将动态分派每个子例程的一个差异实例,包罗独立线程和存储空间。因而,定制子例程必需被设置为事变于重入方法。这可以通过LabVIEW中一个简朴的设置步调完成。欲配置这一属性,选择文件菜单下VI属性并选中“执行”栏;然后,选中“重入执行”标志(如下所示)。

                                                                  操纵LabVIEW优化多核处理赏罚奖惩器气象中的自动化测试应用

                                                                  图6。在LabVIEW中设置重入执行属性

                                                                  通过上图所示的简朴步调,我们可以并行执行多个定制子例程,就犹如尺度LabVIEW说明函数那样。因此,在多核处理赏罚器之上,自动化测试应用通过简朴的编程技能就可以实现机能的改造。

                                                                  4. 优化硬件在环应用

                                                                  得益于并行信号处理赏罚技能的又一个应用即是为同时输入与输出行使多个仪器。一样平常,这些应用被称为硬件在环(HIL)或在线处理赏罚应用。在此场景下,高速数字化仪或高速数字I/O模块用于信号收罗,其软件执行数字信号处理赏罚算法。最后,通过另一个模块化仪器天生功效。其典范模块框图如下所示:

                                                                  图7。在线信号处理赏罚(HIL)模块框图

                                                                  常见HIL应用包罗在线数字信号处理赏罚(滤波、插值等)、传感器仿真和定制组件模仿。在这篇出格筹备的白皮书中,我们将探讨用于在在线数字信号处理赏罚应用中得到最佳吞吐量的技能。

                                                                  凡是可以行使两种根基的编程布局,单轮回布局和带有行列的管道式多轮回布局。单轮回布局实现简朴,对付小数据块具有低时延。对比之下,多轮回布局可以或许支持高得多的吞吐量,由于它们可以或许更好地操作多核CPU。

                                                                  对付传统的单轮回方法,一个高速数字化仪的读函数、信号处理赏罚算法和高速数字I/O顺次组织。如下面模块框图所示,这些子例程中的每一个都必需凭证LabVIEW数据流编程模子确定的次序执行。

                                                                  操纵LabVIEW优化多核处理赏罚奖惩器气象中的自动化测试应用

                                                                  图8。在轮回中依单轮回方法举办处理赏罚