用于耦合fpga模块的自适应接口的制作方法

文档序号:6540203阅读:253来源:国知局
用于耦合fpga模块的自适应接口的制作方法
【专利摘要】本发明涉及一种用于在至少一个带有至少一个FPGA应用程序(8)的FPGA(2)和至少一个用于与所述FPGA(2)连接的I/O模块(5)之间实现自适应接口的方法,它们构成为对应的发送器侧(3)或接收器侧(4),其中,在FPGA(2)与I/O模块(5)之间构成有串行接口(6),所述方法包括如下步骤:针对每个FPGA应用程序(8)配置最大数目的要传输的寄存器(9);针对所有寄存器(9)配置共同的固定寄存器宽度;针对要传输的寄存器(9)在发送器侧(3)上设置使能信号(EN);将所述使能信号从所述发送器侧传输至所述接收器侧(4);以及将针对其设置所述使能信号的寄存器从所述发送器侧传输至所述接收器侧。此外,本发明还涉及一种FPGA控制系统(1)。
【专利说明】用于耦合FPGA模块的自适应接口

【技术领域】
[0001] 本发明涉及一种用于在至少一个带有至少一个FPGA应用程序的FPGA和至少一个 用于与所述FPGA连接的I/O模块之间实现接口的方法,所述FPGA和所述I/O模块构成为 对应的发送器侧或接收器侧。此外,本发明涉及一种FPGA控制系统,该FPGA控制系统具有 至少一个带有至少一个FPGA应用程序的FPGA和至少一个用于与所述FPGA连接的I/O模 块,所述FPGA和所述I/O模块构成为对应的发送器侧或接收器侧。

【背景技术】
[0002] 在高端应用中,要求调节回路模型的循环时间越来越小。因此,这样的调节回路模 型基于调节算法通常在FPGA控制系统中实现在现场可编程门阵列(FPGA)上,由此可以实 现采样率为l〇〇ns到5 μ s的非常快速的调节回路。调节回路模型在此可以模块化地构造。 这些模块化的FPGA电路或模型FPGA电路在样机系统中通常并不具有适合的I/O布线,以 便能够直接响应所必需的传感器和/或执行器。
[0003] 因此,需要对传感器和/或执行器进行适配,所述适配通过I/O模块进行。I/O模 块例如可以通过插接系统建立至模型硬件、亦即FPGA的连接,其中,直接的插接器可以用 于插上I/O模块或线缆插接器。
[0004] 在这种模块化的系统中有问题是,将具有小等待时间和高带宽的任意I/O模块连 接到模型FPGA上。
[0005] 为了解决该问题,现有技术中已知,对于每种特定的I/O模块定义具有适合协议 的适合接口。由此可以在带宽尽可能高的情况下实现小的等待时间。不过,每个所定义的 接口都必须不仅在FPGA应用程序侧而且对相应的I/O模块被特定地创建,这与大的耗费相 联系。
[0006] 备选地,在现有技术中已知实现模块化总线,这些总线通常具有固定的最大可达 到的带宽和等待时间。已知不同的模块化系统,在这些系统中通过地址数据总线进行连接。 在此,原理上在并行总线例如PHS总线或ISA总线与串行总线例如PCIExpress之间予以区 分。
[0007] 在并行总线的情况下,带宽通常通过存在的数据线路的数目来确定。在具有N个 数据线路的总线的情况下,在传输1比特或N比特时的等待时间相同。最大可达到的带宽 和等待时间对于所有I/O模块而言是相同的。
[0008] 在模块化系统的总线为串行的情况下,使用嵌入了实际有用数据的协议。这些已 知的协议具有最小协议附加头,该最小协议附加头在通过协议确定最小有用数据量时与传 输例如1比特或32比特无关地是相同的。例如,可以总是仅传输η*字节(8比特)或n*32 比特。如果仅传输一个有用数据位,则仍然必须传输完整的最小有用数据量。由于协议附 加头和最小有用数据量相对于接口的特定实现而使带宽和等待时间变差。
[0009] 也可以根据所使用的FPGA模型需要恒定数据率。与恒定数据率的偏差称作抖动。
[0010] 上述实施方式分别涉及发送器侧和接收器侧,亦即单向接口。在此,FPGA应用程 序和I/O模块作为发送器侧或接收器侧的实现可互换。此外,接口也可以实施为双向接口。


【发明内容】

[0011] 因此从上述的现有技术出发,本发明的任务在于,给出一种上面所说明的方法以 及一种上面所述类型的FPGA控制系统,所述方法和所述FPGA控制系统在提供高数据率和 低等待时间的情况下能实现具有所期望的数据率和所期望的等待时间的、在发送器侧与接 收器侧之间的可变的数据传输,并且能以低耗费实施或提供。
[0012] 该任务根据本发明通过独立权利要求的特征来解决。本发明的有利的实施方案在 从属权利要求中予以说明。
[0013] 根据本发明,因此说明了一种用于在至少一个带有至少一个FPGA应用程序的 FPGA和至少一个用于与所述FPGA连接的I/O模块之间实现自适应接口的方法,所述FPGA 和所述I/O模块构成为对应的发送器侧或接收器侧。在所述至少一个FPGA与所述至少一 个I/O模块之间构成有串行接口。该方法包括如下步骤:针对每个FPGA应用程序配置最大 数目的要传输的寄存器,针对所有寄存器配置共同的固定寄存器宽度、针对所述最大数目 的要传输的寄存器中的要传输的寄存器在发送器侧上设置使能信号,将使能信号从所述发 送器侧传输至所述接收器侧,将针对其设置所述使能信号的寄存器从发送器侧传输至接收 器侧。
[0014] 此外,根据本发明说明了一种FPGA控制系统,该FPGA控制系统具有至少一个带有 至少一个FPGA应用程序的FPGA和至少一个用于与所述FPGA连接的I/O模块,所述FPGA 和所述I/O模块构成为对应的发送器侧或接收器侧。在所述至少一个FPGA与所述至少一 个I/O模块之间构成有串行接口。所述FPGA控制系统构成为用于根据上述方法在所述至 少一个FPGA与所述至少一个I/O模块之间实现自适应接口。
[0015] 本发明的基本构思因此在于,通过提供在FPGA应用程序与I/O模块之间的自适应 接口能实现简单的实现,其方式为:能够使用标准实现和分别能够针对所期望的需要来配 置。通过该配置仅对于I/O功能的具体应用而言重要的数据通过自适应接口来传输。通过 针对每个FPGA应用程序配置最大数目的要传输的寄存器和配置共同的固定寄存器宽度, 可以使FPGA应用程序和I/O模块简单地匹配于不同的FPGA功能,以便提供具有高效率的 简单的控制和调节系统。
[0016] 优选地,所述针对每个FPGA应用程序配置最大数目的要传输的寄存器和所述针 对所有寄存器配置共同的固定寄存器宽度包括:针对每个FPGA模型以及寄存器的最大要 传输的位数目来选择最大要传输的寄存器的数目。该配置优选是对所有FPGA应用的全局 配置。FPGA模型在此涉及所有FPGA应用程序的整体,其中,FPGA模型可以具有多个单独的 模型。
[0017] 在发送器侧上设置使能信号使得不传输未被使用的寄存器的数据,由此可以高效 地利用可用的带宽。此外,可以动态地匹配带宽的利用,从而对于小数据量可以达到小的等 待时间。这样,利用同一个自适应接口可以实现提供高数据率以及低等待时间。相应地不 仅可以可靠且简单地实现在少的通道上具有最小等待时间的应用而且可以可靠且简单地 实现具有高通道数目的应用。在此,仅需预定较少的配置参数,由此可以简单且舒适地利用 自适应接口。
[0018] 在FPGA中实现的寄存器的数目对FPGA代码的生成时间而言取决于FPGA模型和/ 或I/O模块的相应选择的I/O功能的要求。对于实现I/O功能所需的FPGA资源可以根据 配置来匹配。在静态确定的使能信号的情况下,FPGA资源可以借助未使用的寄存器进一步 优化。例如,如果仅需要一个寄存器,则将FPGA资源减少到最小。在FPGA应用程序的寄存 器中的位的数目在此与发送器侧的输入端相同。
[0019] 优选地,一旦在所基于的FPGA模型中使用数据通道,则在从FPGA应用程序至I/O 模块的传输方向中激活使能信号。相应内容适用于在从I/O模块至FPGA应用程序的传输 方向中的使能信号,所述使能信号可以通过在FPGA模型中实现I/O模块自动地设置。
[0020] 优选地,寄存器中未使用的位设置到恒定的值。通过预定义的值简化操作。
[0021] 串行接口优选实施为LVDS (低电压差分信号)接口,所述LVDS接口能实现高数据 传输率。通过将多个LVDS接口并联可以将带宽灵活地提高。LVDS接口通常实施为用于传 输具有固定长度(例如8位)的数据块。优选地,LVDS接口的数据块的长度配置为配置调整 (Konfigurationseinstellung)。优选地,寄存器的位的数目这样选择,使得该数目连同用 于信号化的附加头一起是LVDS接口的数据块的长度的多倍。例如,每个寄存器可以包括34 位,34位连同6位附加头一起以LVDS接口的总共五个数据块来传输。
[0022] 在FPGA与I/O模块之间所使用的物理接口、亦即串行接口于是通过上级的协议来 抽象。上级的协议的被抽象的部件可以简单地集成到其他模块和模型中,例如通过块组或 者IP核和/或网表来集成。自适应接口由于类属允许不同种的I/O模块的耦合。在此仅 需要,接口的配置是相同的。优选地,针对所有I/O模块初始地进行接口的相应配置,由此 可以确保共同的使用。通常,FPGA的多个寄存器各映射一个端口。
[0023] 上述实施分别涉及发送器侧和接收器侧、亦即单向接口。FPGA应用程序和I/O模 块实现为发送器侧或接收器侧可互换。此外,接口也可以实施为双向接口。
[0024] 在本发明的有利实施方案中,所述将针对其设置所述使能信号的寄存器从发送器 侧传输至接收器侧包括:在所述发送器侧上提供选通信号,以便显示要传输的寄存器对于 传输就绪。选通信号优选在发送器侧上由该模型设置,以便显示寄存器中的数据是一致的 并且可以启动传输。选通信号优选实施为单个位。选通信号对发送器侧信号化,在寄存器 中存在数据以便经由串行接口进行传输。因此,所述数据可以以在发送器侧上的选通信号 开始从寄存器读取和传输,以便在接收器侧上将数据写入适合的寄存器中。发送器侧可以 借助选通信号可靠地以如下内容为根据,即,所有寄存器被数据一致地相互传递。原则上, 通过选通信号可以同步多个I/O模块。
[0025] 在本发明的有利的实施方案中,所述将针对其设置所述使能信号的寄存器从发送 器侧传输至接收器侧包括:在发送器侧上提供就绪信号,以便显示所述寄存器到接收器侧 上的传输结束。通过就绪信号于是在发送器侧上对FPGA模型信号化传输成功结束,使得该 FPGA模型可以重新填充寄存器来传输其他数据。因此随着传输结束,重新传输就绪。就绪信 号优选实施为单个位。如果应从发送器侧发送寄存器中的数据,首先检验就绪信号的状态。 如果传输已运行,则这通过缺失的就绪信号来显示,并且数据传输是不可能的。优选地,就 绪信号在接口初始化、亦即至少使能信号从发送器侧传递到接收器侧上之后才被激活。一 旦就绪信号允许数据发送,则FPGA应用程序开始传递。由此,具有小等待时间的接口可以 从空闲状态开始数据传输,在空闲状态中不进行数据传输。
[0026] 在本发明的有利的实施方案中,所述将针对其设置所述使能信号的寄存器从发送 器侧传输至接收器侧包括:在接收器侧上提供就绪信号,以便显示从发送器侧接收寄存器 结束。由此在接收器侧上,相应的硬件实现部可以从被传输的寄存器读取针对其确定的数 据。阻止在读取中的延迟,使得随后对其他数据的传输同样不被延迟。
[0027] 选通信号和/或就绪信号的实现可以任意地作为高电平或低电平来进行,即作为 零或一。
[0028] 在本发明的有利的实施方案中,所述将针对其设置所述使能信号的寄存器从发送 器侧传输至接收器侧包括:空出每个寄存器的同样的前导位。因此,所有要传输的数据量可 以减少了同样的前导位的数目。原理上在此可以选择实施如下的实现,所述实现根据需要 来检测和空出作为前导位的前导的零或一,亦即在实现中将前导的一被检测为同样的前导 位,而在另一种实现中,前导的零被检测为同样的前导位。在接收器侧上,可以补充未接收 的位、亦即空出的位作为具有同样的前导位的值的位。同样的前导位的类型优选可以被配 置。
[0029] 备选地,可以传输完整的寄存器,这可以通过用于每个单个的寄存器的相应控制 信号来信号化。
[0030] 在本发明的有利的实施方案中,所述空出每个寄存器的同样的前导位包括:空出 具有同样的前导位的预定义的寄存器区段。于是,当整个寄存器区段包含同样的前导位时 才空出同样的前导位。因此,与寄存器区段的长度相对应的前导位的数目必须是同样的,以 便空出前导位的传输。优选地,预定义的寄存器区段的长度这样选择,使得该长度与串行接 口的传输块的长度相等。特别优选地,预定义的寄存器区段的长度这样选择,使得该长度与 LVDS接口的传输块的长度相等。在此,寄存器区段的长度可以这样选择,使得寄存器区段的 长度连同用于信号化的附加头一起与传输块的长度相等。传输块在此分别完全或基本上完 全用于预定义的寄存器区段。预定义的寄存器区段的参量可以定义为全局值,或动态地在 实施FPGA模型期间进行匹配。由此,可以通过节约串行接口的传输块来加速数据传递。
[0031] 备选地,可以传输完整的寄存器区段,这通过用于每个单个的寄存器区段的相应 控制信号来信号化。
[0032] 在本发明的有利的实施方案中,所述将针对其设置所述使能信号的寄存器从发送 器侧传输至接收器侧包括:添加前导位作为非同样的位。这迫使传输整个寄存器,使得接口 以恒定的数据率工作。相应地可以减少或避免数据传输的抖动。
[0033] 在本发明的有利的实施方案中,所述将针对其设置所述使能信号的寄存器从发送 器侧传输至接收器侧包括:对针对其设置使能信号的寄存器就改变的内容进行检验并且传 输具有改变的内容的寄存器。原则上,改变的寄存器能如现存那样地被传递。然而优选地 仅传输变化。因此在寄存器的位未改变的情况下,变化例如作为零被传输,而改变的位例如 作为一被传输。与空出同样的前导的位(在本情况下为零)的传输相组合地,因此即使以零 和一的任意编码的情况下也可以空出未改变的寄存器内容的传输。由此,例如在具有极少 变化的信号的系统中(所述信号为前导位),即使在该信号与同样的位、亦即零或一不对应 时也能实现要传输的数据的减少。因此,寄存器的所有位由于前导位不相同而不必传输。 [0034] 在本发明的有利的实施方案中,该方法包括同步发送器侧和接收器侧上的寄存器 内容。同步可以周期地、在时间界限之内和/或与事件有关地进行,以便确保或检验接收器 侧上的数据完整性。为此,数据如其在寄存器中那样被传输,亦即,寄存器被完全传输。这 通过用于每个单个的寄存器的相应控制信号来信号化。优选地,在正常运行中传输寄存器 内容的变化,其中,同步保证了寄存器内容的完整性、亦即校准发送器侧和接收器侧的寄存 器内容。特别优选地,周期地执行同步。
[0035] 在本发明的有利的实施方案中,所述针对最大数目的要传输的寄存器中的要传输 的寄存器在发送器侧上设置使能信号包括:在传输所述寄存器之前动态地设置使能信号, 以及所述将使能信号从发送器侧传输至接收器侧分别在传输寄存器之前进行。例如,使能 信号在每次数据传输之前被传输到接收器侧上。由此实现自适应接口的高灵活性。
[0036] 在本发明的有利的实施方案中,所述针对最大数目的要传输的寄存器中的要传输 的寄存器在发送器侧上设置使能信号包括:在要传输的寄存器改变时动态设置所述使能 信号,以及所述将使能信号从发送器侧传输至接收器侧分别在要传输的寄存器改变之后进 行。因此,使能信号例如可以在系统启动时被传输到接收器侧上。使能信号的改变仅在需 要时被传输。由此,使能信号的传输仅要求较少的资源并且对数据流量或等待时间仅产生 微小影响。
[0037] 在本发明的有利的实施方案中,所述将使能信号从所述发送器侧传输至所述接收 器侧在串行接口上的传输间歇内进行。使能信号的改变并且配置随之出现的改变于是在接 口在IDLE模式中不传输数据时执行。由此,使能信号的传输仅需要较少资源并且对数据流 量或等待时间仅产生微小影响。
[0038] 原则上,在IDLE模式中使能信号在其不改变时也能被重复传输。
[0039] 在本发明的有利的实施方案中,该方法包括以下附加步骤:向所述发送器侧以及 所述接收器侧添加类属功能块。因此,例如在FPGA应用程序中将块组"块"集成到模型中。 该块可以针对所有特定I/O模块保持相同。可选地,代替块组块将(V)HDL-IP核集成到用 户模型的(V)HDL源代码中或者作为网表集成到用户设计中。此外优选地,功能块可以作为 用于图形编程的块来添加,由此可以简单地实现编程。
[0040] 在本发明的有利的实施方案中,该方法包括以下附加步骤:自动地确定自适应接 口的配置。自动配置包括针对每个FPGA应用程序的最大数目的要传输的寄存器以及针对 所有寄存器的共同的固定寄存器宽度。可选地,也可以针对预定义的寄存器区段的长度进 行自动配置。自动配置的基础优选是用于将数据通过串行接口传输的块参量。通过自动配 置确保了达到优化的带宽和/或等待时间。

【专利附图】

【附图说明】
[0041] 以下参照附图借助优选的实施形式来详细阐述本发明。图中:
[0042] 图1示出了根据一种优选的实施形式的具有一个FPGA和两个与FPGA通过串行接 口连接的I/O模块的FPGA控制系统的示意图,
[0043] 图2示出了图1中的FPGA控制系统的细节图,
[0044] 图3示出了用于根据一种优选的实施形式的方法的框图,以及
[0045] 图4示出了用于阐明自适应接口的功能的示图。

【具体实施方式】
[0046] 图1示出了根据一种优选的实施形式的FPGA控制系统1。FPGA控制系统1包括 作为一个发送器侧3的一个FPGA2和一个接收器侧4。接收器侧4在该实施例中包括两个 I/O模块5,如在图2中详细所示的那样。
[0047] 在发送器侧3与接收器侧4之间构成有串行接口 6。串行结构6是自适应接口 7 的基础,该自适应接口实现在FPGA2与I/O模块5之间,并且串行接口 6用作传输介质。串 行接口 6实施为具有8位的块参量的LVDS接口,以用于传输数据。
[0048] 在FPGA2上实施有多个FPGA应用程序8,这些FPGA应用程序分别通过寄存器9与 自适应接口 7连接。在接收器侧4上,在I/O模块5上构成有多个硬件实现部10,所述硬件 实现部同样通过寄存器9与自适应接口 7连接。
[0049] 此外,描述了一种用于在FPGA2与I/O模块5之间实现自适应接口 7的方法。
[0050] 首先在步骤S10中实施对FPGA应用程序8和硬件实现部10的模型化。在此,分 别将用于发送器侧3以及接收器侧4的类属功能块作为块组块集成到相应的模型中。该块 组块对于所有特定I/O模块5是相同的。添加块组块作为图形编程进行。
[0051] 在步骤S20中,自动地确定用于自适应接口 7的配置。自动配置包括用于每个FPGA 应用程序8的最大数目的要传输的寄存器9以及对于所有寄存器9的共同的固定的寄存器 宽度。配置基于用于通过串行接口 6传输数据的块参量来进行。在该实施例中,FPGA应用 程序8利用η个、m个、〇个寄存器9来实施,其中,寄存器9的数目n、m、〇分别设置为12 并且寄存器宽度选择为34位。在此,由寄存器9所使用的位以位编号0开始并且随后增加 至位B-1被占有。在寄存器9中未使用的位设置为恒定的值"零"。在FPGA2中实现的寄存 器9的数目在此针对FPGA代码的生成时间根据FPGA应用程序8和I//0模块5的相应所 选的I/O功能的要求来选择。在FPGA应用程序8的寄存器9中的位的数目在此与发送器 侧3的输入端(端口)同义。
[0052] 在一种备选的实施形式中,在步骤S10之前实施步骤S20。
[0053] 在步骤S30中,在发送器侧3上针对最大数目的要传输的寄存器9中的要传输的 寄存器9设置使能信号EN。一旦在所基于的FPGA模型中使用数据通道,则在从FPGA应用 程序8到I/O模块5的传输方向中自动激活使能信号EN。此外,使能信号EN从发送器侧3 经由串行接口 6被传输到接收器侧4,由此自适应接口 7被初始化。实施为单个位的就绪信 号RDY接着被激活。
[0054] 在步骤S40中,针对其设置使能信号EN的寄存器9被从发送器侧3传递至接收器 侧4。为此首先检验就绪信号RDY。如果已进行传输,则这通过缺失的就绪信号RDY显示并 且不能数据传输。
[0055] -旦存在就绪信号RDY,由相应的FPGA应用程序8要传输的数据被写入到寄存器 9中。
[0056] 数据从寄存器9经由串行接口 6的传递由FPGA2通过设置选通信号Str来启动。 就绪信号RDY相应地被去激活。选通信号Str和就绪信号RDY的实现在此作为高电平、即 作为逻辑一来进行。
[0057] 以选通信号Str开始,在发送器侧3上从寄存器9读取和传输数据。接着,数据在 接收器侧4上被写入到适合的寄存器9中。随后,在接收器侧4上提供就绪信号RDY以便 显示从发送器侧3接收寄存器9结束,并且在接收器侧4上,每个硬件实现部10从所传输 的寄存器9读取针对这些寄存器所确定的数据。
[0058] 在使能信号EN改变时,这些使能信号被传输到接收器侧4上。否则,直接进行寄 存器9的传输。在此,寄存器9的内容如接下来描述的那样被减少。
[0059] 在寄存器9从发送器侧3传输至接收器侧4时,首先针对每个寄存器9检验,是否 设置有使能信号EN。如果未设置使能信号EN,则不传输寄存器9,并且选择下一个寄存器 9〇
[0060] 针对剩余的针对其设置有使能信号EN的寄存器,将前导的零检测为同样的前导 位。同样的前导位针对每个寄存器9在传递时被空出。通过空出同样的前导位形成了对 LVDS接口 6的要传输的数据块的数目的匹配。在要传输的位的其余数目为1到6时形成了 具有8位的1个LVDS数据块;在要传输的位为7到13时,形成了各有8位的2个LVDS数 据块;在要传输的位为14到20时,形成了各有8位的3个LVDS数据块;在要传输的位为 21到27时,形成了各有8位的4个LVDS数据块;以及在要传输的位为28到34时,形成了 各有8位的5个LVDS数据块。附加地,在LVDS数据块中传输关于定义的控制位的信息"跟 随其他包"或"最后的包"。以下参照图4来阐述其他细节。
[0061] 在接收器侧4上,未被接收的位、即空出的位作为被接收的具有同样的前导位的 值的位被输出,亦即以"零"填充。如果寄存器9仅包含值"零",则寄存器9的传输整体上 被减少到控制结构。
[0062] 为了进一步传输寄存器9,在发送器侧3上按照需要可以改变针对最大数目的要 传输的寄存器9中的要传输的寄存器9的使能信号EN并且因此动态地设置所述使能信号。 在改变使能信号EN时这如上面所描述的那样在开始传递寄存器9时被传输。备选地,使能 信号EN从发送器侧3至接收器侧4的传输在串行接口 6上的传递间歇内、亦即在串行接口 6在IDLE (空闲)模式中没有数据传输时进行。此外备选地,在IDLE模式中与使能信号的 改变无关地也重复地传输相应存在的使能信号EN。
[0063] 在一种备选的实施形式中,寄存器内容的改变作为数据写入到寄存器9中。值的 改变信号化为1,未改变的位设置为零。另外,如上面所描述的那样执行该方法。
[0064] 在一种备选的实施形式中,省去上面所描述的寄存器9内容的减少。在该备选的 实施形式中因此与前导位无关地传输所有针对其设置使能信号EN的寄存器9。这通过针 对每个单个的寄存器9的相应控制信号来信号化。由此进行在发送器侧3和接收器侧4上 的寄存器内容的同步。所述同步周期地进行。在另一备选的实施形式中,对寄存器内容的 改变的与前面所描述的传递相组合地进行在发送器侧3和接收器侧4上的寄存器内容的同 步,亦即在传递寄存器内容的改变时通过传递完整的寄存器内容来进行同步。
[0065] 在另一种备选的实施形式中,在每个寄存器9中前导位被设置为并不同样的位, 即设置为1。这迫使传输所有寄存器9,从而自适应接口 7以恒定的数据率来工作。
[0066] 以下参照图4描述了数据传输的示例性过程。
[0067] 在接通之后,串行接口 6处于IDLE模式(SYNC=1、CMD=1、IDLE=1)。在该模式中, 循环地且持续地将FPGA应用程序8的12个使能信号ΕΝ的状态传输到接收器侧4上。所 有12位的传输在此需要四个各有8位的LVDS数据块并且也必须在接通之后完全结束至少 一次,以便寄存器9从发送器侧3到接收器侧4上的传输被初始化。
[0068] 一旦通过发送器侧2发送选通信号Str,则发送器侧3随下一个LVDS数据块开始 而变换到针对在寄存器9中的存在I/O数据的传输模式(SYNC=0)。现在,所有输入端口的 寄存器9以端口 1开始相继地被传输,其中,针对其未设置使能信号EN的寄存器被跳过。
[0069] 每个寄存器9的传输被划分成最大4X 7位包(SYNC=0)加上最后的用于端部识别 的6位包(SYNC=1、CMD=0),并且如上面所描述的那样以LSB开始。在传输寄存器9结束之 后,立即无缝地跟随后续的寄存器9。
[0070] 在处理所有12个寄存器9之后,控制器又返回到IDLE模式(SYNC=1、CMD=1、 IDLE=1)中并且重新循环地传输输入端的ENABLE位的状态。
[0071] 所描述的实施例分别涉及作为发送器侧3的FPGA2和作为接收器侧4的I/O模块 5。在一种备选的实施形式中,FPGA2形成接收器侧4而I/O模块5形成发送器侧3。在另 一种备选的实施形式中,自适应接口 7实施为双向接口。相应地,使能信号EN通过在FPGA 模型中实现I/O模块5自动地被设置。
[0072] 附图标记表
[0073] FPGA控制系统 1
[0074] FPGA 2
[0075] 发送器侧 3
[0076] 接收器侧 4
[0077] I/O 模块 5
[0078] 串行接口 6
[0079] 自适应接口 7
[0080] FPGA应用程序 8
[0081] 寄存器 9
[0082] 硬件实现部 10
【权利要求】
1. 一种用于在至少一个带有至少一个FPGA应用程序(8)的FPGA (2)和至少一个用 于与所述FPGA (2)连接的I/O模块(5)之间实现自适应接口的方法,所述FPGA和所述1/ 〇模块构成为对应的发送器侧(3)或接收器侧(4),其中,在所述至少一个FPGA (2)与所述 至少一个I/O模块(5)之间构成有串行接口(6),所述方法包括如下步骤: 针对每个FPGA应用程序(8 )配置最大数目的要传输的寄存器(9 ), 针对所有寄存器(9)配置共同的固定寄存器宽度, 针对所述最大数目的要传输的寄存器(9 )中的要传输的寄存器(9 )在发送器侧(3 )上 设置使能信号(EN), 将使能信号(EN)从所述发送器侧(3)传输至所述接收器侧(4),以及 将针对其设置所述使能信号(EN)的寄存器(9 )从所述发送器侧(3 )传输至所述接收器 侧⑷。
2. 根据权利要求1所述的方法,其特征在于,所述将针对其设置所述使能信号(EN)的 寄存器(9 )从所述发送器侧(3 )传输至所述接收器侧(4 )包括:在所述发送器侧(3 )上提供 选通信号(Str),以便显示要传输的寄存器(9)对于传输就绪。
3. 根据权利要求1或2所述的方法,其特征在于,所述将针对其设置所述使能信号 (EN)的寄存器(9 )从所述发送器侧(3 )传输至所述接收器侧(4 )包括:在所述发送器侧(3 ) 提供就绪信号(RDY),以便显示所述寄存器(9)到所述接收器侧(4)上的传输结束。
4. 根据上述权利要求1至3中任一项所述的方法,其特征在于,所述将针对其设置所述 使能信号(EN)的寄存器(9)从所述发送器侧(3)传输至所述接收器侧(4)包括:在接收器 侦W 4)上提供给就绪信号(RDY),以便显示从所述发送器侧(3 )接收所述寄存器(9 )结束。
5. 根据权利要求1至4中任一项所述的方法,其特征在于,所述将针对其设置所述使能 信号(EN)的寄存器(9 )从所述发送器侧(3 )传输至所述接收器侧(4 )包括:空出每个寄存 器(9)的同样的前导位。
6. 根据上述权利要求5所述的方法,其特征在于,所述空出每个寄存器(9)的同样的前 导位包括:空出具有同样的前导位的预定义的寄存器区段。
7. 根据上述权利要求5或6中任一项所述的方法,其特征在于,所述将针对其设置所述 使能信号(EN)的寄存器(9)从所述发送器侧(3)传输至所述接收器侧(4)包括:添加前导 位作为非同样的位。
8. 根据上述权利要求1至7中任一项所述的方法,其特征在于,所述将针对其设置所述 使能信号(EN)的寄存器(9)从所述发送器侧(3)传输至所述接收器侧(4)包括:对针对其 设置使能信号(EN)的寄存器(9)就改变的内容进行检验并且传输具有改变的内容的寄存 器(9)。
9. 根据权利要求8所述的方法,其特征在于,该方法包括同步在发送器侧(3)和接收器 侦仪4)上的寄存器内容。
10. 根据上述权利要求1至9中任一项所述的方法,其特征在于,所述针对最大数目的 要传输的寄存器(9)中的要传输的寄存器在发送器侧(3)上设置使能信号(EN)包括:在传 输所述寄存器(9)之前动态地设置使能信号(EN),以及 所述将使能信号(EN)从所述发送器侧(3 )传输至所述接收器侧(4)分别在传输所述寄 存器(9)之前进行。
11. 根据上述权利要求1至9中任一项所述的方法,其特征在于,所述针对最大数目的 要传输的寄存器(9)中的要传输的寄存器在发送器侧(3)上设置使能信号(EN)包括:在要 传输的寄存器(9)改变时动态地设置所述使能信号(EN),以及 所述将使能信号(EN)从所述发送器侧(3)传输至所述接收器侧(4)分别在要传输的寄 存器(9)改变之后进行。
12. 根据上述权利要求1至11中任一项所述的方法,其特征在于,所述将使能信号 (EN)从所述发送器侧(3 )传输至所述接收器侧(4 )在串行接口( 6 )上的传输间歇内进行。
13. 根据上述权利要求1至12中任一项所述的方法,其特征在于,该方法包括以下附加 步骤:向所述发送器侧(3)以及所述接收器侧(4)添加类属功能块。
14. 根据上述权利要求1至13中任一项所述的方法,其特征在于,该方法包括以下附加 步骤:自动地确定用于自适应接口(7)的配置。 15. FPGA控制系统(1),具有至少一个带有至少一个FPGA应用程序(8)的FPGA (2)和 至少一个用于与所述FPGA (2)连接的I/O模块(5),所述FPGA和所述I/O模块构成为对应 的发送器侧(3)或接收器侧(4),其中,在所述至少一个FPGA (2)与所述至少一个I/O模块 (5 )之间构成有串行接口( 6 ),其中,所述FPGA控制系统(1)构成为用于根据上述权利要求 之一在所述至少一个FPGA (2)与所述至少一个I/O模块(5)之间实现自适应接口(7)。
【文档编号】G06F13/40GK104142902SQ201410089777
【公开日】2014年11月12日 申请日期:2014年3月12日 优先权日:2013年5月10日
【发明者】D·哈塞, R·波尔诺 申请人:帝斯贝思数字信号处理和控制工程有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1