CN111819806A - 使用线性反馈移位寄存器的紧凑时间戳系统以及相关系统和方法 - Google Patents
使用线性反馈移位寄存器的紧凑时间戳系统以及相关系统和方法 Download PDFInfo
- Publication number
- CN111819806A CN111819806A CN201980017921.XA CN201980017921A CN111819806A CN 111819806 A CN111819806 A CN 111819806A CN 201980017921 A CN201980017921 A CN 201980017921A CN 111819806 A CN111819806 A CN 111819806A
- Authority
- CN
- China
- Prior art keywords
- data
- lfsr
- information
- bit
- bits
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/28—Timers or timing mechanisms used in protocols
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/25—Error detection or forward error correction by signal space coding, i.e. adding redundancy in the signal constellation, e.g. Trellis Coded Modulation [TCM]
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/35—Unequal or adaptive error protection, e.g. by providing a different level of protection according to significance of source information or by adapting the coding according to the change of transmission channel characteristics
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/37—Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
- H03M13/373—Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35 with erasure correction and erasure determination, e.g. for packet loss recovery or setting of erasures for the decoding of Reed-Solomon codes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04J—MULTIPLEX COMMUNICATION
- H04J3/00—Time-division multiplex systems
- H04J3/02—Details
- H04J3/06—Synchronising arrangements
- H04J3/0635—Clock or time synchronisation in a network
- H04J3/0638—Clock or time synchronisation among nodes; Internode synchronisation
- H04J3/0658—Clock or time synchronisation among packet nodes
- H04J3/0661—Clock or time synchronisation among packet nodes using timestamps
- H04J3/067—Details of the timestamp structure
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/12—Applying verification of the received information
- H04L63/123—Applying verification of the received information received data contents, e.g. message integrity
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q9/00—Arrangements in telecontrol or telemetry systems for selectively calling a substation from a main station, in which substation desired apparatus is selected for applying a control signal thereto or for obtaining measured values therefrom
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/58—Random or pseudo-random number generators
- G06F7/582—Pseudo-random number generators
- G06F7/584—Pseudo-random number generators using finite field arithmetic, e.g. using a linear feedback shift register
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2463/00—Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00
- H04L2463/121—Timestamp
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Computer Security & Cryptography (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Error Detection And Correction (AREA)
Abstract
本发明描述了紧凑时间戳以及相关的方法、系统和设备。编码器被配置为通过对线性反馈移位寄存器(LFSR)的状态进行采样来生成本公开的紧凑时间戳。解码器可被配置为响应于该紧凑时间戳而确定定时信息。
Description
优先权声明
本申请要求2018年3月9日提交的名称为“Compact Timestamp System UsingLinear Feedback Shift Registers(使用线性反馈移位寄存器的紧凑时间戳系统以及相关系统和方法)”的美国临时专利申请序列号62/641,112的提交日期的权益,并且要求2018年10月24日提交的名称为“Compact Timestamp,Encoders and Decoders That Implementthe Same,and Related Services,Systems and Methods(紧凑时间戳、实现其的编码器和解码器以及相关服务、系统和方法)”的待决美国专利申请序列号16/169,501的提交日期的权益,该申请还要求美国专利申请序列号62/641,112的优先权,这些申请各自的内容和公开据此全文以引用方式并入本文。
技术领域
本公开的实施方案整体涉及用于数据传输的时间戳,并且更具体地讲,涉及从线性反馈移位寄存器生成的紧凑时间戳。
背景技术
对所传输的数据(例如,从源微控制器或微处理器传输到目标主机)的准确加时间戳是在从源到主机的数据记录期间的常见任务。在定期采样数据系统(诸如马达驱动器或电池充电器)中,系统通常以固定速率执行控制周期中的代码,并且传输在给定控制周期中使用的数据的样本(例如,电压、电流、状态标志等),以及其中发生该数据的控制周期(也称为“记号计数”)的某种关联。
一些数据系统使用线性反馈移位寄存器(LFSR)的状态来编码和恢复可用于确定定时数据的计数。例如,图1示出了处于伽罗瓦配置的12位LFSR 100,其由一系列移位寄存器单元组成,每个移位寄存器单元存储一位。在每个LFSR更新周期中,每个单元从先前单元的内容接收其输入,此处从右向左移位。当对系统进行计时时,所有单元的内容向左移位。非抽头的单元中的位未改变地向左移位一个位置。为抽头的单元中的位与最后(即,保持最高有效位的单元)单元102中的位进行XOR并且结果被存储在下一个位置中。最后单元102中的新位是用于XOR运算的下一个输入位。对是否执行XOR的选择由LFSR抽头104、106和108决定,这些抽头对应于LFSR的特征多项式中的非零项。例如,图1示出了具有特征多项式x12+x6+x4+x+1的12位LFSR 100,其具有二进制表示“1000001010011”。
LFSR 100由本原多项式表征,该本原多项式产生周期为212–1=4095的最大长度LFSR,从而覆盖除全零模式之外的所有值。如果LFSR 100在采样数据系统上实现,其中记号技术0下的初始LFSR状态为“000000000001”,并且在任何后续记号下将LFSR状态发送到主机,则主机可使用基于LFSR状态的离散对数计算来恢复记号计数。LFSR大小越大,周期就越长。LFSR 100可更紧凑地表示为LFSR 110,其中在抽头之前未示出XOR门。值得注意的是,LFSR 100和LFSR 110是相同LFSR的不同表示。
在数据系统在每个记号计数时传输单个位(例如,最后单元102中的输入位)的情况下,如果在没有丢失样本的情况下接收到d单个位的连续样本,则可以在接收N个连续输出位之后重建N位LFSR状态。
本公开的发明人现在应当理解,在资源有限的系统中,在通信速度与处理器对于除准备和发送数据之外的活动(诸如发送记号计数或时间戳)可花费的时间之间存在折衷。此外,对于较小数据包(例如,约100字节或更小),有效负载的空间有限,因此如果使用更多字节来加时间戳,则更少字节可用于实际数据,从而影响数据传输系统的通信带宽。因此,对于一些系统,另外具有足够周期的LFSR状态的大小使得其不适用于加时间戳。
附图说明
虽然本公开通过特别指出并清楚地要求保护一个或多个实施方案的权利要求作出结束,但本领域的普通技术人员可通过以下具体实施方式并结合附图容易地确定本公开的实施方案的各种特征、目的和优点:
图1示出了根据本领域的开头的处于编码布置的线性反馈移位寄存器。
图2A示出了根据本公开的一个或多个实施方案的能够与数据传输系统一起使用的时间戳恢复系统的功能框图。
图2B示出了根据本公开的一个或多个实施方案的LFSR编码器的功能框图。
图2C示出了根据本公开的一个或多个实施方案的被实现为选择和XOR门的采样函数。
图3A示出了根据本公开的一个或多个实施方案的软件LFSR解码器的简化框图。
图3B示出了根据本公开的一个或多个实施方案的软件LFSR解码器和状态恢复逻辑的简化框图。
图3C、图3D和图3E示出了根据本公开的一个或多个实施方案的状态恢复逻辑的简化状态转变图。
图3F、图3G、图3H和图3I示出了根据本公开的一个或多个实施方案的状态恢复逻辑的简化状态转变图。
图3J、图3K和图3L示出了根据本公开的一个或多个实施方案的状态恢复逻辑的简化状态转变图。
图4A和图4B示出了根据本公开的一个或多个实施方案的恢复逻辑状态机的示例性操作的表。
图5示出了根据本公开的一个或多个实施方案的具有被配置用于位选择的采样函数的LFSR编码器的功能框图。
图6A示出了根据本公开的一个或多个实施方案的多LFSR状态编码器的功能框图。
图6B示出了根据本公开的一个或多个实施方案的双LFSR状态编码器的功能框图。
图6C示出了根据本公开的一个或多个实施方案的针对通过双LFSR编码器生成的时间戳的解码过程的流程图。
图7示出了根据本公开的一个或多个实施方案的数据系统的功能框图。
图8示出了根据本公开的一个或多个实施方案的数据系统的功能框图。
具体实施方式
在以下具体实施方式中,参考了形成本公开的一部分的附图,并且在附图中以举例的方式示出了可实施本公开的实施方案的特定示例。充分详细地描述了这些实施方案,以使本领域的普通技术人员能够实践本公开。然而,可利用其他实施方案,并且可在不脱离本公开的范围的情况下进行结构、材料和过程的变化。
本文所呈现的图示并不旨在为任何特定方法、系统、设备或结构的实际视图,而仅仅是用于描述本公开的实施方案的理想化表示。本文所呈现的附图未必按比例绘制。为了读者的方便,各附图中的类似结构或部件可保持相同或相似的编号;然而,编号的相似性并不意味着该结构或部件在尺寸、组成、配置或任何其他属性方面必须是相同的。
应当容易理解,如本文一般所述并且在附图中示出的实施方案的部件可以许多种不同的配置来布置和设计。因此,对各种实施方案的以下描述并不旨在限制本公开的范围,而是仅代表各种实施方案。虽然实施方案的各个方面可在附图中呈现,但是附图未必按比例绘制,除非特别指明。
以下描述可包括示例以帮助本领域的普通技术人员实践本发明所公开的实施方案。使用术语“示例性的”、“通过示例”和“例如”是指相关描述是说明性的,虽然本公开的范围旨在涵盖示例和法律等同形式,但使用此类术语并不旨在将实施方案或本公开的范围限制于指定的部件、步骤、特征或功能等。
此外,所示出和描述的特定实施方式仅为示例,并且不应理解为实施本公开的唯一方式,除非本文另外指明。元件、电路和功能可以框图形式示出,以便不以不必要的细节模糊本公开。相反,所示出和描述的特定实施方式仅为示例性的,并且不应理解为实施本公开的唯一方式,除非本文另外指明。另外,块定义和各个块之间逻辑的分区是特定实施方式的示例。对于本领域的普通技术人员将显而易见的是,本公开可通过许多其他分区解决方案来实践。在大多数情况下,已省略了关于定时考虑等的细节,其中此类细节不需要获得本公开的完全理解,并且在相关领域的普通技术人员的能力范围内。
本领域的普通技术人员将会理解,可使用多种不同技术和技法中的任何一者来表示信息和信号。例如,可在整个本说明书中参考的数据、指令、命令、信息、信号、位、符号和芯片可由电压、电流、电磁波、磁场或粒子、光场或粒子或者它们的任何组合来表示。为了清晰地呈现和描述,一些附图可以将信号示出为单个信号。本领域的普通技术人员应当理解,信号可表示信号总线,其中总线可具有多种位宽度,并且本公开可在包括单个数据信号在内的任意数量的数据信号上实现。
结合本文所公开的实施方案描述的各种例示性逻辑块、模块和电路可使用通用处理器、专用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或者被设计成执行本文所述的功能的其他可编程逻辑设备、离散栅极或晶体管逻辑、离散硬件部件或它们的任何组合来实现或实施。通用处理器(在本文中也可称为主机处理器或仅称为主机)可以是微处理器,但在替代方案中,处理器可以是任何常规处理器、控制器、微控制器或状态机。处理器也可实现为计算设备的组合,诸如DSP和微处理器的组合、多个微处理器、与DSP核结合的一个或多个微处理器或任何其他此类配置。在通用计算机被配置为执行与本公开的实施方案相关的计算指令(例如,软件代码)时,包括处理器的通用计算机被认为是专用计算机。
实施方案可根据被描绘为流程图、流程示意图、结构图或框图的过程来描述。虽然流程图可将操作动作描述为顺序过程,但是这些动作中的许多动作可在另一序列中、并行地或基本上同时地执行。此外,可重新安排动作的顺序。过程可以对应于方法、线程、函数、程序、子例程、子程序等。此外,本文所公开的方法可以在硬件、软件或两者中实现。如果在软件中实现,这些函数可作为一个或多个指令或代码存储或传输到计算机可读介质上。计算机可读介质包括计算机存储介质和通信介质两者,该通信介质包括有利于将计算机程序从一个位置传递到另一个位置的任何介质。
除非明确说明此类限制,否则使用名称诸如“第一”、“第二”等对本文的元件的任何引用不限制那些元件的数量或顺序。相反,这些名称可在本文中用作在两个或更多个元件或元件的实例之间进行区分的便利方法。因此,提及第一元件和第二元件并不意味着在那里只能采用两个元件,或者第一元件必须以某种方式在第二元件之前。此外,除非另外指明,一组元件可包括一个或多个元件。
如本文所用,“数据寄存器”和“寄存器”意指能够由处理器或其他数字逻辑电路快速访问以结合其所执行的任何操作存储和访问数据的存储器存储装置。如本文所用,“数据寄存器”并非旨在限于特定架构或接口,并且例如包括其中结合一个或多个地址寄存器和中间数据寄存器(例如,存储器缓冲器寄存器和累积寄存器)访问数据的布置。
为方便起见,有时可使用符号或变量来描述本公开的实施方案。虽然关于本公开中的符号的使用可采用某些约定,但它们旨在阐明和扩展本公开,而不是限制本公开。如本文所用,N是以位为单位的LFSR长度,S是LFSR状态,m是用于重建LFSR状态的LFSR状态样本y的数量,y是从LFSR状态导出的样本(其在本文中也可被表征为“样本输出”和“LFSR状态样本”),Ny是以位为单位的样本长度,k是记号计数,并且d是记号计数之间的间隔。
在一个或多个实施方案中,记号计数k可对应于时钟速率T。例如,k可随着每个时钟周期递增。在其他实施方案中,k可根据T的某个函数递增,例如,每2、3、4或更多个时钟周期递增一次。
使用数据系统的情况来说明上述符号,LFSR状态S的每个LFSR状态样本y[k]可与消息的数据有效负载一起被传输。如果每d个记号传输数据有效负载,并且使用特定采样函数f(S)来生成y,则m个连续值y[k]、y[k+d]、y[k+2d]、...y[k+(m-1)d]形成m×Ny≥N位的LFSR状态样本Y=F(S)的集合。Y的位可用于重建LFSR状态S[k]的N个位,并且可使用LFSR状态S[k]来恢复记号计数k。
如本文所用,“编码成本”意指m个样本,其也可对于Ny位样本被表征为m×Ny位,并且表示恢复完整LFSR状态所需或发送的样本或位的数量。
如本文所用,“编码效率”意指N/(m×Ny),并且表示LFSR状态长度与其编码成本的比率。例如,使用具有48位的组合长度的样本来恢复48位LFSR状态的系统具有为1.0的编码效率或完美的编码效率。
图2A示出了根据本公开的一个或多个实施方案的能够与数据传输系统一起使用的时间戳恢复系统200的功能框图。在一个或多个实施方案中,编码器204可被配置为管理和更新记号计数k,并且源202可被配置为以规则的间隔(例如,记号计数k的每个间隔长度d)输出消息。具体地,编码器204可被配置为管理LFSR和LFSR状态S,并且输出对应于记号计数k的LFSR状态样本y。对应于记号计数k的LFSR状态样本y在本文中可以表征为y[k]。
通信信道206可被配置为例如在编码器204的接口处接收LFSR状态样本,并且将LFSR状态样本提供给解码器208的接口。在一个实施方案中,通信信道206可为数据总线。解码器208可被配置为接收一个或多个LFSR状态样本,并且输出记号计数。
本公开的一个或多个实施方案整体涉及具体地由LFSR编码器的实施方案在源编码器处执行的用于紧凑加时间戳的技术。向主机提供LFSR状态的样本。样本比LFSR状态更短(以位为单位)。在每T秒对LFSR进行计时的系统中,可每d×T秒发送LFSR的样本,其中d为样本之间的间隔或“采样间隔”(其也可通过采样率来表征)。只要主机“知道”采样率(例如,预先接收其的采样率,在传输期间接收其的采样率,恢复其的采样率,猜测其的采样率等)并且编码器遵守采样率(即,样本的传输始终是周期性的),则其可恢复LFSR状态和记号计数。
本公开的一些实施方案整体涉及例如由LFSR解码器在主机(例如,包括解码器208)处执行的用于对时间戳进行解码的技术。LFSR状态的多个样本可用于恢复LFSR的全状态,并且随后恢复记号计数。只要LFSR状态样本的总长度至少与所采样的LFSR的总长度一样长(或更长),并且足够数量的LFSR样本是线性独立的(如下文所讨论),则样本可用于在与样本相关联的时间恢复LFSR的一个或多个状态。LFSR状态样本可以是从目标接收的样本、由主机预测的样本,以及它们的组合。
图2B示出了根据本公开的一个或多个实施方案的LFSR编码器210的功能框图。LFSR编码器210包括LFSR 212、线性采样函数214(或仅“采样函数”214)和样本寄存器216。采样函数214可以是可操作地耦接到LFSR 212的寄存器单元的选定子集的选择和XOR门的组合。
图2C示出了根据本公开的一个或多个实施方案的被实现为选择(例如,位218)和XOR门(例如,子集位220)的采样函数214。LFSR编码器210可以可操作地耦接到以规则速率(例如,T)进行计时的系统时钟,并且LFSR 212被配置为以规则速率进行计时。虽然采样函数214的输出和存储在样本寄存器216处的LFSR状态样本通常将在每次对LFSR 212进行计时时改变,但样本寄存器216的输出可能以每d×T秒发生的较低速率使用。
关于LFSR 212的特征多项式,可使用任何本原特征多项式。在软件实现的实施方案中,形式x否+g(x)的本原多项式可为有利的,其中g(x)为程度15或更小的多项式。此类LFSR可通过一系列向左旋转指令(每个字一个指令)以及表示g(x)的系数的有条件跳过和XOR来有效地实现,其中LFSR状态有最低有效16位。
特征多项式的系数的数量可影响样本的线性独立性。具有太少系数的某些特征多项式可限制样本的线性独立性。因此,在一个或多个实施方案中,可以基于给定特征多项式的可用线性独立位子集的标准来选择系数的数量。
在一个或多个实施方案中,采样函数214可被实现为以固件或硬件的组合逻辑,其被配置为计算LFSR状态S[k]的纯无状态函数。采样函数214(即f(S))可被选择为从LFSR状态S(具有N个位)映射到采样状态y(具有Ny个位)。因此在每个时间记号k,LFSR状态S[k]的N个位可用于计算由Ny个位(位大小Ny<N)组成的样本y[k]=f(S[k]),并且y=f(s)的m个连续样本可用于恢复状态S。换句话讲,如果Y=F(S)被定义为y=f(S)的m个连续样本,其以间隔d获取,即Y[k]=y[k]|y[k-d]|…|y[k-(m-1)d],其中垂直线“|”意指串联,则可通过计算合适的函数S=G(Y)来恢复S。采样函数f(s)和聚合采样函数F(S)可以是线性的,在这种情况下,针对某个矩阵A,Y=F(S)=AS,并且针对采样矩阵Ay,y=f(S)=AyS。例如,假设S是53位的列矢量,f(S)产生8位样本,并且Y=F(S)是56位的列矢量,由f(S)的七个连续样本组成。则A为56×53矩阵。从Y=F(S)=AS重建S的条件是A具有的行和列至少一样多,并且具有满秩(在示例中,A必须具有秩53)。
值得注意的是,采样函数214是线性的,即y的每个位由特定状态位的选择,或输入连接到特定状态位的XOR门的输出组成。如果f(S)被选择为使得位y[k]、y[k-d]、y[k-2d]、...y[k-(m+1)d]的集合对于值d是线性独立的,则可能不容易或甚至不可能选择对于d的其他值将具有完美编码效率的相同位子集。因此,为了使一个或多个实施方案适应不同的延迟值d,可提供冗余以使得编码成本大于状态大小(m×ny>N),或它们的组合。换句话讲,上面讨论的矩阵A具有满秩,但不是方矩阵(例如,其具有的行比列更多),使得编码效率小于1。
可基于用于在特定记号计数下恢复LFSR状态的样本的期望数量来选择每个样本的长度。一般来讲,用于恢复LFSR状态的样本的总长度(实际长度和预测长度)将比LFSR状态的长度更长(以位为单位)。
采样函数214可能难以(就存储器而言)直接表示为矩阵Ay。例如,如果N=48并且Ny=8,则需要384位(48字节)来直接指定矩阵Ay。该形式包括可表示为矩阵Ay的所有可能的线性采样函数。这可被表征为“直接形式”,其可导致矩阵Ay的过度复杂的实施方式以及传送和存储矩阵Ay的规格的大成本(384位)。虽然一个或多个实施方案可利用矩阵Ay的直接形式,但本公开的发明人认识到需要允许可能矩阵A的足够大子集的技术,该子集具有足够的灵活性以适应多项式的适当范围和采样间隔d的不同值。
在一个或多个实施方案中,可以二进制掩码形式表示矩阵Ay。例如,采样矩阵Ay可由以下二进制掩码表示:
当与采样间隔d=2的m=6个连续样本和LFSR多项式0x10000000000b7(x48+x7+x5+x4+x2+x+1)一起使用时,该矩阵Ay产生48个线性独立位的完整集合;通过为矩阵的每行产生一个输出位来利用掩码,其中根据二进制掩码的LFSR状态的各个位的总和(模2)如表1所示:
表1
行 | equation(+mod 2=XOR) |
0 | y<sub>0</sub>=S<sub>31</sub>+S<sub>41</sub> |
1 | y<sub>1</sub>=S<sub>15</sub>+S<sub>27</sub> |
2 | y<sub>2</sub>=S<sub>27</sub>+S<sub>42</sub> |
3 | y<sub>3</sub>=S<sub>14</sub>+S<sub>47</sub> |
4 | y<sub>4</sub>=S<sub>21</sub>+S<sub>30</sub> |
5 | y<sub>5</sub>=S<sub>20</sub>+S<sub>31</sub> |
6 | y<sub>6</sub>=S<sub>6</sub>+S<sub>32</sub> |
7 | y<sub>7</sub>=S<sub>7</sub>+S<sub>13</sub> |
在二进制掩码形式的一个实施方案中,矩阵可被约束为使得其每行总是具有两位。指定二进制掩码的一种方式是使用位数:
31,41,15,27,27,42,14,47,21,30,20,31,6,32,7,13
值得注意的是,在该示例中,存在16个非零系数,如果每个位索引使用一个字节,则需要16个字节。
在一个或多个实施方案中,可以使用修改的运行长编码(RLE),其中每个数量k指定(k-1)个零和“1”。RLE方法的一个优点是编码器不必假定每行恰好具有两位。基于RLE方法的采样矩阵的缺点是即使其被约束为每行具有两位,其也不会转化成简单的硬件或软件。存在过多可能性;硬件实施方式将需要多个大型复用器以从LFSR状态位进行选择,并且软件实施方式将非常缓慢。
在一个或多个实施方案中,对矩阵Ay进行某些限制,其转化成更容易的软件或硬件实施方式并且其可能以更少的位进行编码,同时仍然允许足够的灵活性以实现宽范围的多项式和采样间隔的期望性能要求。
在一个或多个实施方案中,限定了矩阵Ay,其每行具有至多三个非零位;非零位处于三个对角线c=8gi+r内,其中c、r为列数和行数,并且g0、g1和g2为任意不同值以使得0≤g0<g1<g2<8;并且非零位由三个位掩码M0、M1和M2确定:如果c=8gi+r并且对于i=0、1或2,掩码Mi的位r为1,则行r的列c为1,否则行r的列c为0。该限制允许针对N≤64以非常紧凑的形式来指定这种矩阵Ay,该形式利用至多32位(4字节):有8位用于三个掩码M0、M1、M2中的每一者,并且有8位用于使用8位字内的三个1位的位置来对g0、g1、g2进行编码,例如,g0=2、g1=5、g2=6将通过将位2、5和6设置为1(即二进制01100100)来编码。
值得注意的是,该特定结构本身不会提高将发生全状态恢复的可能性。这有利于简单的硬件/软件实施方式,并且允许有利于全状态恢复的灵活性。
在一个或多个实施方案中,样本寄存器216可包括被配置为存储记号计数k下的Ny位的样本y的一个或多个数据寄存器。样本寄存器216可被配置为存储当前样本y[k],然而,可以预见可能存在一些应用,其中有利的是存储历史样本(例如,先前样本y[k-d])。
图3A示出了根据本公开的一个或多个实施方案的软件LFSR解码器的简化框图。图3A所示的LFSR解码器300包括解码参数310、预先计算的LUT 320和恢复逻辑330。解码参数310在解码之前是已知的,并且可包括LFSR多项式312p(x)、采样函数314f(S)、采样间隔316d和状态恢复函数318G(Y)。
在一个或多个实施方案中,预先计算的LUT 320可包括离散对数LUT 322和预测样本LUT 324(或仅“LFSR状态样本LUT 324”)。离散对数LUT 322可以是查找表,该查找表被配置为利用LFSR状态的冗余性和可预测性,并且预先计算能够用于从状态样本恢复LFSR状态的离散对数或对数的部分。在一个实施方案中,在数据传输之前计算存储在离散对数LUT322处的预先计算的离散对数,并且其在数据传输期间不改变。可使用任何合适的技术来计算LFSR的有限字段中的某个未知元素u=xk的离散对数并且由此确定k。例如,离散对数可通过以下方式计算:将LFSR的周期分解成小素数因子的幂的乘积,然后使用适用于顺序为素数幂的组的离散对数计算算法,诸如Silver-Pohlig-Hellman算法。
在一个或多个实施方案中,预测样本LUT 324可以是查找表,该查找表被配置为存储和更新预测样本、状态和记号计数的数量L(在本文中也被表征为“前沿长度”)。在前沿长度L、关键y[k]和当前记号计数k的情况下,则包含LFSR状态和记号计数值的值可以是:
y[k+d](S[k+d],k+d)
y[k+2d](S[k+2d],k+2d)
y[k+3d](S[k+3d],k+3d)
…
y[k+Ld]S([k+Ld],k+Ld)
在一个或多个实施方案中,可基于存储器和计算成本之间的期望折衷来选择前沿长度L。也就是说,与使用相对较长的前沿长度相比,较小的前沿长度L将需要更少的存储器并且LUT将更快地更新。较长的前沿长度L将向传输中的间隙提供更多稳健性,即前沿长度L越大,则越有可能在间隙之后,可在预测的样本LUT 324中找到接收样本。
如先前所述,在一个或多个实施方案中,LFSR状态恢复函数318G(y[k],y[k-d],y[k-2d],…)可通过计算从状态S[k]到Y=F(S)(即,m×Ny个接收位)的传递函数矩阵A以及计算广义逆矩阵B以使得AB=I来构造。然后,初始状态S=G(Y)=BY的估计,其中接收样本Y的组合集合是级联成单行并转置成列矢量的接收样本(例如,=y[k]|y[k-d]|y[k-2d]…)。在一个或多个实施方案中,可合并附加计算逻辑以进一步利用冗余、传输间隔316d,以及编码器和/或LFSR的其他先验知识。
在一些实施方案中,A和B可包括子矩阵和对应的子逆矩阵,其结合恢复逻辑330增加了状态和记号计数恢复过程的效率。此外,本领域的普通技术人员将会理解,传递函数矩阵A和广义逆矩阵B可能以其他形式(例如,等式)表示。
在一个实施方案中,当主机提前知道采样间隔d,但不知道LFSR的特征多项式时,则主机可被配置为例如使用Berlekamp-Massey算法(给定了2N个连续样本)来推断特征多项式。
一个或多个实施方案整体涉及校准过程,该校准过程以举例的方式使得解码器能够确定用于生成LFSR状态样本的采样函数。当主机提前知道采样间隔d和LFSR的特征多项式,但主机不知道采样函数f(S)时,则主机可以被配置为响应于校准过程(给定足够的连续采样并且知道记号计数或采样间隔d)而推断采样函数f(S)。
例如,给定60位LFSR(其中每个LFSR状态样本y[k]具有8位),主机可被配置为使用LFSR状态样本y[k]的位和LFSR状态S[k]的位的60个连续样本,从而构建60×8矩阵DY和60×60矩阵DS,,并且针对60×8矩阵M求解DY=DSM;其中M的每个列表示用于LFSR状态样本y[k]的每个位的位掩码,其指定S的哪些位被XOR在一起以确定LFSR状态样本y[k]的位。本领域的普通技术人员将会理解,存在用于求解M的其他合适技术。在接收到60个校准LFSR状态样本并发现采样函数之后,解码器可仅接收m个LFSR状态样本以恢复LFSR状态。在一个或多个实施方案中,矩阵DY由y的样本组成(每行有一个样本),并且矩阵DS由S[jd]的样本组成(每行有一个样本),针对j=0至59。
在一个或多个实施方案中,当采样输出位纯粹是对各个状态位的选择并且按位数的顺序排序时,则主机可被配置为查询源以发送位掩码形式的采样位。(例如,对于位数0、1、2、3、4、7,则掩码0x9F足以描述这些位(如果已知它们是按顺序的))。因此,返回到较早示例,其中矩阵Ay被限定为每行有至多三个非零位并且处于三个对角线内,则值g0、g1、g2、M0、M1和M2可以从源传输到主机。
恢复逻辑330被配置为响应于m个样本Y而恢复LFSR的状态,并且响应于LFSR的恢复状态而恢复计数记号。状态恢复逻辑器330可被配置为通过以下从Y和S[k]确定k:(i)使用离散对数;(ii)使用状态演化;和/或(iii)使用预测样本的LUT。对于离散对数,恢复逻辑330可被配置为响应于状态恢复函数318G(Y)而处理m个样本Y,对于S求解Y=AS,并且然后求解k作为S的离散对数。状态演化涉及给定S[k+d]=xdS[k]下使用k并且计算预期y[k+d]=f(S[k+d]),并且如果其匹配下一个接收样本,则将d添加到记号计数k并且用S[k+d]更新状态S。LUT方法涉及将当前样本y与存储在LUT处的样本匹配以及使用与样本y匹配的状态S的值,并且当存在足够的置信度时,使用状态演化来更新S[k]和y[k]的下一个L前沿值。
一般来讲,如果不存在样本损耗,则恢复逻辑330可通过执行状态演化来恢复状态S[k],以检查下一个接收样本y[k]是否匹配y[k]的下一个预期值。然而,可能存在缺失的样本。因此,在一个或多个实施方案中,图3B所示的恢复逻辑330通过状态机332来实现分层置信度解码的形式。
如下所述,恢复逻辑330可被配置为使用LFSR的更多(或更少)先验信息,并且在计算强度方面更有效(或更不有效)地操作。换句话讲,在几乎不依赖过去历史与不依赖过去的历史之间存在折衷。如果恢复逻辑330尽可能少地依赖于过去历史,则其使用Y=y[k]、y[k-d]、y[k-2d]…最近样本,而不考虑任何更早样本或计算LFSR状态或记号计数的任何先前尝试。这是一种简单的方法,包括在代数方面和实施方式结构的方面,但引起更高的计算成本来计算记号计数(因为它使用离散的对数),并且如果Y由不一致样本组成,则它不产生正确输出。
在一个或多个实施方案中,状态机332(如图3B所示)可被配置为实现三种状态:OKAY状态334、DISORIENTED状态336和LOST状态338。这些状态反映了恢复逻辑330被配置为或多或少依赖于过去历史,并且尝试转变回其可依赖于过去历史的状态的程度。本文中的词语“状态”的使用并非旨在要求特定的操作模式。
在OKAY状态334中,接收样本y[k](或在计数间隔中限定的最近接收样本y[k]的数量)按顺序跟随,并且更新状态S仅是在LFSR的有限字段中乘以xd的问题。
在DISORIENTED状态336中,可能存在几个缺失样本,并且解码器300被配置为响应于存储在预测样本LUT 324中的值而更新状态S。在LOST状态338中,可能存在许多缺失样本,并且解码器300被配置为尝试收集足够的样本以执行完整离散对数。在一个实施方案中,响应于与接收样本y[k]的连续程度相关联的置信度水平而发起状态转变。置信度水平阈值或置信度启发法可用于实现状态机332的状态转变。此外,缺失样本可包括丢失的样本(例如,针对给定传输间隔的预期样本不存在)和不正确的样本(例如,样本值不正确或被损坏)。
在LOST状态338中,可能没有足够的样本来重建LFSR状态S,并且恢复逻辑330可被配置为尝试增加置信度(例如,收集足够的样本以示出样本连续并且可用于重建状态S的高概率),以及使用离散对数来从S计算k。
一般来讲,在所有三种状态中,解码器300被配置为按照接收消息的顺序保持所接收的消息,并且如果有歧义,则直到发生以下两种情况中的一者才向消费方释放消息:
(1)已经接收到足够的附加样本来解决关于所有保持样本的记号计数的任何歧义,此时释放保持样本(按照接收它们的顺序)并且将其与每个消息的适当记号计数相关联;或者
(2)接收器已确定无法确定保持样本中的一些保持样本的记号计数,此时释放(按照接收它们的顺序)并且相应地标记它们,使得消费方知道这些在未知时间发生。存在这种情况发生的至少两个原因:
(2a)已接收到足够的较晚样本,使得可以重建那些较晚样本的时间戳,但较早样本与较晚样本不一致;或者
(2b)接收器在长于某个预定超时的长时间段内停止接收样本。超时的存在使得任何新样本可能将在长间隙之后发生,并且可能无法确定在间隙之前接收的保持样本的记号计数。超时的使用还确保了在接收消息时以及在将其释放给消费方时之间界定的延迟。
现在将描述根据一个或多个实施方案的结合状态机332操作的恢复逻辑330。以举例的方式,如果d=7且L=5,并且解码器300已经接收到样本y[0]、y[7]、y[14]和y[21],并且记号计数k=21以及LFSR状态S[21]是已知的,则预测样本LUT 324包含以下条目:
y[28]:(S[28],28),
y[35]:(S[35],35)
y[42]:(S[42],42)
y[49]:(S[49],49)
y[56]:(S[56],56)
恢复逻辑330基于预测样本LUT 324处的条目来预期y[28]为下一个接收样本。如果接收到预期样本,则恢复逻辑330更新状态信息340。记号计数346被更新为k=28,并且LFSR状态344被更新为S[28]。另外,更新预测样本LUT 324:从表中丢弃y[28],并将y[63]:(S[63],63)添加到表中。
如果接收到y[42]而不是预期样本,则由于这在LUT 324中,因此恢复逻辑330可被配置为将记号计数更新为k=42以及将LFSR状态更新为S[42],并且状态机332转变为DISORIENTED状态,因为看起来跳过几个样本。
如果接收到y[637]而不是预期样本,并且y[637]不在LUT 324中,则状态机332转变到LOST状态338,并且恢复逻辑330忽略LUT 324中的信息的相关性,以及收集接收样本直到其具有足够的信息以使用全状态恢复(例如,S=BY和用于从状态S确定记号计数k的离散对数)来确定状态和记号计数。
在一个或多个实施方案中,恢复逻辑330可被配置为使用比所需更多的样本(即,>m)以增加恢复逻辑330恢复足够的样本来重建LFSR状态的置信度。例如,假设48位LFSR,其具有16位输出样本和48位的编码成本(即,三个16位样本)。用于重建状态S的样本的最小数量为三个,但恢复逻辑330可被配置为使用两个“置信度样本”并且因此等待直到有五个样本y[k1]、y[k2]、y[k3]、y[k4]、y[k5],以及然后从(y[k1],y[k2],y[k3])重建状态S1,从(y[k2],y[k3],y[k4])重建状态S2,并且从(y[k3],y[k4],y[k5])重建状态S3。在一个实施方案中,恢复逻辑330可被配置为响应于当前置信度水平和阈值、启发法或它们的组合来确定置信度样本的数量。
继续该示例,如果在LFSR的有限字段中S2=xd S1且S3=xd S2(其中x是有限字段的生成元素),则恢复逻辑330确定三个重建状态S1、S2和S3是一致的,否则这些状态被认为是不一致的。如果恢复逻辑330确定重建状态是一致的,则恢复逻辑330确定接收样本可能来自给定间隔d下的连续样本(或至少与其一致)。在任何情况下,在恢复状态的一致集合下,恢复逻辑330可以执行离散对数以从第一恢复状态S1获得k1并且可以将d添加到每个连续样本以确定k2、k3等。
图3C至图3L示出了根据本公开的一个或多个实施方案的根据状态机332的恢复逻辑330的状态转变。仅为了便于描述而非限制,每个图示出了单个状态转变。在每种情况下,假设触发事件是接收新样本。
图3C、图3D和图3E示出了根据本公开的一个或多个实施方案的响应于接收样本的从OKAY状态334的示例性状态转变。
图3C示出了根据一个或多个实施方案的状态机332处于OKAY状态334的恢复过程。当接收样本与预期样本匹配时(条件342),则状态转变341是自转变(其也可被表征为无转变)。此处,样本中存在高置信度,因为给定计数间隔的样本y[k+d]匹配该计数间隔的预期样本。恢复逻辑330使k递增传输间隔d(操作343)并且从S[k]计算S[k+d](操作344)。样本LUT 324可以通过k+(L+1)d更新k+d的条目(操作345),并且解码器300可以通过时间戳k+d释放数据(操作346)。值得注意的是,预测样本LUT 324中的最旧条目现在是k+2d的条目,下一个接收消息的预期LFSR样本是y[k+2d],并且时间戳k+d不再处于预测样本LUT 324中。
图3D示出了根据一个或多个实施方案的状态机332处于OKAY状态334的恢复过程。当接收样本与预期样本不匹配(条件352),并且接收样本在预测样本LUT 324中(条件352)时,则状态转变351是OKAY→DISORIENTED。恢复逻辑330从预测样本LUT 324获得状态S(操作353),并且设置计数器R=0和计数器D=0(操作354)。以举例的方式,如果所接收的消息的LFSR样本匹配针对某个值j的y[k+jd],其中j是预测样本LUT 324中的位置(即,恢复逻辑330将检查在LUT 324中向前多远),并且1≤j≤L;则可从预测样本LUT 324检索相关联的状态和时间戳S[k+jd]和k+jd,并且下一个预期LFSR样本将为y[k+(j+1)d]。值得注意的是,当前时间戳k仍然表示与预期LFSR样本值匹配的该最后接收消息的时间戳,即使最近接收消息的时间戳计数为k+jd。因此,最近接收消息的时间戳计数与k偏离,直到状态机332返回OKAY状态334。
R是连续接收的一致LFSR样本的计数,并且在恢复逻辑330尝试错误校正时由解码器300以所接收的顺序保持这些样本。D是在恢复逻辑330处于DISORIENTED状态336时不一致的接收样本的数量。恢复逻辑330在操作355中保持接收的样本和数据。
图3E示出了根据一个或多个实施方案的状态机332处于OKAY状态334的恢复过程。当接收样本与预期样本不匹配(条件362),并且未在预测样本LUT 324中找到接收样本(条件362)时,则状态转变361是OKAY→LOST。值得注意的是,不更新预测样本LUT 324。恢复逻辑330在操作365中保持接收的样本。
图3F、图3G、图3H和图3I示出了根据本公开的一个或多个实施方案的响应于接收样本的从DISORIENTED状态336的示例性状态转变。
图3F示出了根据一个或多个实施方案的状态机332处于DISORIENTED状态336的恢复过程。如果接收样本确实与预期样本匹配(条件372),并且R尚未达到Rmax(条件372),则状态转变371是自转变(或无转变)。计算下一个预期时间戳k+(j+1)d、LFSR状态S[k+(j+1)d]和预期样本y[k+(j+1)d](操作373)。使R递增(操作374)。通过未决时间戳k+jd保持所接收的消息(数据和样本)(操作375)。
图3G示出了根据一个或多个实施方案的状态机332处于DISORIENTED状态336的恢复过程。如果接收样本与预期样本不匹配(条件382),并且R已达到Rmax(条件382),则状态转变381是DISORIENTED→OKAY。使用预测样本LUT 324来从S[k+jd]计算状态S[k+(j+d)](操作383)。通过针对预测样本LUT 324中匹配或使用状态演化来预测的j值的待决时间戳k+jd来释放保持的数据(操作384),并且更新预测样本LUT 324(操作385)。值得注意的是,k在处于DISORIENTED状态336时保持固定,并且是指向消费方释放的消息的最后记号计数。
图3H示出了根据一个或多个实施方案的状态机332处于DISORIENTED状态336的恢复过程。如果接收样本与预期样本不匹配(条件392),接收样本与预测样本LUT 324处的预测样本匹配(条件392),并且D尚未达到Dmax(条件392),则状态转变391是自转变(或无转变)。换句话讲,并且通过进一步解释,如果接收样本y匹配y[k+jd],其中k是在OKAY状态期间匹配的最后记号,j是LUT 324中的位置,并且d是计数间隔,则可以从LUT 324检索S[k+jd]和k+jd(操作393)。可使D递增并且将R设置为0(操作394)。通过未决时间戳k+jd保持所接收的数据和样本(操作395)。
图3I示出了根据一个或多个实施方案的状态机332处于DISORIENTED状态336的恢复过程。如果接收样本与预期样本不匹配(条件402),接收样本不在预测样本LUT 324中(条件402),并且D已达到Dmax(条件402),则状态转变401是DISORIENTED→LOST。保持接收样本(操作403),但不存在足够的样本来恢复状态。
图3J、图3K和图3L示出了响应于接收样本的从LOST状态338的示例性状态转变。
图3J示出了根据本公开的实施方案的状态机332处于LOST状态338的恢复过程。如果已保持小于m+c(其中c为用于提高置信度水平的附加样本的数量)个样本(条件412),则状态转变411是LOST→LOST。保持接收样本(操作413),但不存在足够的样本来恢复状态。
图3K示出了根据一个或多个实施方案的状态机332处于LOST状态338的恢复过程。如果已保持至少m+c个样本并且重建状态是一致的(条件422),则状态过渡421是LOST→OKAY。恢复逻辑330从保持的样本恢复状态S(操作423)。使用离散对数计算从最近恢复状态S中计算计数k,如果特定算法使用离散对数表,则这可涉及使用离散对数表322(操作424)。通过针对总共m+c个消息的时间戳k-(m+c-1)d、k-(m+c-2)d、…k-d、k来释放保持的数据(操作425)。使用所计算的S、k和接收样本y[k]来更新/重建预测样本LUT 324(操作426)。
图3L示出了根据本公开的实施方案的状态机332处于LOST状态338的恢复过程。如果已保持至少m+c个样本并且重建状态是不一致的(条件432),则状态过渡是LOST→LOST。在没有时间戳的情况下释放最旧的保持样本及其相关联的数据(434),并且从保持样本S重建状态S(操作435)。
由编码器生成的LFSR状态样本连同相关联的数据可作为报告(例如,作为消息、日志文件中的记录、数据库中的记录等)传输或存储。以举例的方式,可以基于一个事件或多个事件来生成报告。事件可由事件报告系统生成,并且可与系统的操作有关或由系统(例如,嵌入式系统)的操作生成。事件可基于事件间隔或在事件间隔期间生成,并且那些间隔可基于嵌入式系统的操作,或者它们可基于包括操作的至少一部分或若干操作的操作间隔。
在报告(诸如消息)中接收的状态样本和相关联的数据可被接收和进行解码。在报告(诸如事件记录)中接收的其他状态样本和相关联的数据可在其被创建之后的某个稍后时间被解码。例如,根据本公开,状态样本和数据可从一个或多个事件日志文件的记录中读取,并且由从LFSR状态样本恢复定时信息的解码器解码。
在上述恢复过程的各种实施方案中,保持数据和样本,但这并不旨在意味着必须从消息中提取数据和样本。消息本身可与数据和样本一起保持,并且当释放消息时,样本可由记号计数(或以主机预期的格式的其他时间戳)替换。
图4A和图4B示出了根据本公开的一个或多个实施方案配置的恢复逻辑状态机的示例性操作。图4A和图4B是示出根据本公开的一个或多个实施方案的使用示例性LFSR和示例性输出样本寄存器进行的紧凑时间戳编码和解码的表。
图4A示出了根据本公开的一个或多个实施方案的使用具有P(x)=x13+x10+x9+x4+x1的示例性13位LFSR(例如,如图2C所示的LFSR)和示例性8位输出样本寄存器(例如,如图2C所示的输出寄存器)的紧凑时间戳编码和解码。使用状态恢复和离散对数而不是状态机来执行图4A所示的解码。在图4A中,k是记号计数,km是记号计数k mod 2N-1=8191(针对N=13),Δk是接收样本之间的记号计数,S是以十六进制的LFSR状态S[k],y是以十六进制的采样输出y[k],Sr是从样本y[k]和先前接收的样本y[k-d]导出的已恢复LFSR状态,kr是从Sr的离散对数导出(例如,使用查找表)的已恢复记号计数mod 8191,并且match指示是否S=Sr。
对应于记号计数9004的恢复状态442(为简单起见,这里描述记号计数的最后四位)是空白的,换句话讲,没有状态被恢复。恢复状态442是空的,这是因为在该示例中,m=2并且因此使用至少两个连续样本来恢复LFSR状态。记号计数9004可对应于启动、缺失样本、或样本中的间隙。恢复状态444对应于记号计数9020,并且是第一实际恢复状态,因为已经接收到两个连续样本(样本446和样本448)。
图4B示出了根据上述状态机方法的一个或多个实施方案的使用示例性13位LFSR和示例性8位输出寄存器的紧凑时间戳编码和解码。使用状态机来执行图4B所示的解码。在图4B中,i是接收器的接收消息的计数,km是实际记号计数modulo 2N-1,Δk是输入记号计数的变化,y是接收样本,state是在处理输入消息i之后的解码器状态,S是已恢复LFSR状态,Snext是下一个接收样本的预期LFSR状态,when是解码器输出列S和kr时的i的值,并且kr是已恢复记号计数modulo 2N-1。
在图4B中,用于表示记号计数的规定是km(即,表示为k modulo 2N-1)。此外,还示出了紧接在处理输入消息(即,样本y)之后的解码器300的恢复逻辑330的状态。值得注意的是,m+c=4,因为使用四个8位输出样本来恢复13位LFSR状态,即所需的两个样本和两个附加样本。
如图4B所示,在启动阶段460中,直到记号计数km=48才有足够的已接收连续样本来恢复LFSR状态。这里,列“when”仅是信息性的,以示出可存在足够连续样本以恢复LFSR状态的最早条目(这里,i=3,其中i是接收分组的索引,其对应于第四接收分组样本)。在记号计数64下,恢复逻辑330已接收到四个分组样本,并且这些样本是一致的,因此恢复逻辑330可恢复LFSR状态和下一个状态(Snext)。
如图4B中进一步所示,在记号计数2608下,恢复逻辑330转变为LOST状态464,因为接收样本y[2608]=80不是预期样本,也不是预测样本LUT 324中的预测样本中的一者。具体地,记号计数176和记号计数2608之间的为2432的Δ466指示大间隙或缺失数据。在已经接收到四个一致样本(80、8b、60、60)之后,恢复逻辑330在记号计数2656下转变回OKAY状态468,因为然后存在足够的一致样本以用于全状态恢复和离散对数计算。
如图4B中进一步所示,在记号计数2704下,恢复逻辑330转变为DISORIENTED状态470,因为接收样本y[2704]=90不是预期样本,但它是预测样本LUT 324中的预测样本中的一者。值得注意的是,样本之间的Δ472为32,指示一个缺失样本。在已经接收到足够的一致样本(此处为四个:90、49、a3和9b)之后,恢复逻辑330在记号计数2752下转变为OKAY状态474。
如图4B中进一步所示,在记号计数209下,恢复逻辑330转变为LOST状态476,因为接收样本y[209]=01不是预期样本,也不在预测样本LUT 324中。具体地,记号计数2864和209之间的Δ478为5536,指示大间隙或缺失数据。在接收到四个一致样本(01、6d、b6和f2)之后,恢复逻辑330转变回OKAY状态480。
值得注意的是,重复最后两个样本(两者均为60)。在一些情况下,输出样本可短时间连续重复。这可因为由较少位组成的采样输出表示LFSR状态而发生,因此即使LFSR状态是唯一的并且在2N-1的周期之后重复,采样输出也可更频繁地重复。在一个或多个实施方案中,解码器300可被配置为解决由重复样本值引起的潜在歧义。
图5示出了LFSR编码器500的实施方案,其中采样函数504被配置用于位选择,并且LFSR状态样本是LFSR状态的掩蔽子集(例如,取决于所使用的惯例从未掩蔽位或掩蔽位中选择)。图5示出了具有特征多项式x48+x7+x5+x4+x2+x+1的N=48位的LFSR 502,LFSR 502是具有周期248–1≈2.815×1014的最大长度LFSR。LFSR状态样本寄存器506是被配置为接收采样函数504的输出的Ny=16位寄存器。由于针对m=3和d=8的矩阵A具有秩48,因此编码器500产生足够的位集。具体地,考虑到连续样本y之间不存在冗余,当已获取三个样本时,总共有16×3=48位的时间戳数据可用于重建LFSR状态。
图6A示出了具有两个(或更多个)LFSR 610和620的多LFSR状态编码器600的实施方案。由于不对称的计算成本,包括多个LFSR可具有优势。例如,当一起使用小LFSR和较大LFSR时,小LFSR可被配置为确定具有较少样本(即,较小m值)的记号计数(以其周期为模);由于其具有较小周期,因此当在消息之间不存在记号计数的任何大间隙时,该技术效果良好,但在大间隙的情况下,不可能恢复绝对记号计数。因此,与小LFSR相比,大LFSR可被配置为使用更多样本(即,更大的m值),但具有更大的周期,因此大LFSR可有助于保证绝对记号计数的恢复。
转到图6A,在一个或多个实施方案中,LFSR 610和620通过其相应采样函数612和622来同时计时和采样。在一个或多个实施方案中,采样函数612和采样函数622可以是不同的。
在一个实施方案中,LFSR 610和620的周期不同。在一个实施方案中,周期不具有共同因素,并且总体周期是各个LFSR周期的最小公倍数。
以举例的方式,可以每个记号更新LFSR 610和LFSR620的状态S1和S2。然后,每d个记号,计算y1[k]=f1(S1[k])和y2[k]=f2(S2[k]),其中f1(S)和f2(S)是线性采样函数612和622,并且y1和y2与要加时间戳的数据有效负载一起在相同消息中传输。
值得注意的是,当消息由{y1|y2|data}组成,其中第一8位为y1并且第二8位为y2(并且剩余位是任意数据内容)时,则发送器和接收器(或至少编码器和解码器)均可被配置为使用公共协议。换句话讲,消息结构可由通信协议限定,接收器可根据该通信协议从所接收的消息中提取由发送器组装到消息中的相同元素。
在一个实施方案中,具有使用根据本公开的一个或多个实施方案的多LFSR状态编码的编码器的发射器可被配置为使输出样本中的一个输出样本的传输延迟d个记号,使得例如y1[k]和y2[k-d]被一起传输(例如,在相同消息中)。该信息描述了k-d和k之间的间隔,并且该间隔可用于传输间隔d不频繁变化的情况,使得接收器/解码器可区分缺失样本和传输速率变化。
例如,假设以下情况:每个消息包含时间戳信息,每个消息包含传输的消息之间的间隔内的数据有效负载,间隔的长度可变化,但不频繁地变化,并且有时(很少)在主机处没有接收到一个或多个消息。如果消息丢失,如果在消息中仅传输开始时间,则会导致接收器有一定程度的疑问。例如,当接收到丢失消息之后的消息时,接收器无法将缺失分组与间隔长度的变化区分开来,除非该信息作为数据有效负载的一部分进行传送(这减少了其他数据的可用有效负载)。因此,在一个实施方案中,可传输间隔的开始和结束两者。当使用紧凑时间戳时,可使用第一LFSR来对开始记号计数kstart进行编码,并且可使用第二LFSR来对结束记号计数kend进行编码。恢复逻辑330可被配置为基于kstart和kend之间限定的间隔对时间戳进行解码。
图6B示出了根据一个或多个实施方案的被配置为对多个样本进行解码的多LFSR状态解码器630。接收样本(例如,y1和y2)可被单独解码并且然后使用例如中国剩余理论来合并在一起,以确定一个总周期内的记号计数。在一个或多个实施方案中,多LFSR状态解码器630可包括第一解码器632和第二解码器634。在另一个实施方案中,解码器630可以是被配置用于多LFSR状态解码的一个解码器。这里示出解码器632和634以突出显示解码过程的功能方面。
第一解码器632可被配置为响应于第一状态样本而对第一LFSR状态进行解码,并且响应于已恢复的第一LFSR状态而恢复第一记号计数k1。第二解码器634可被配置为响应于第二状态样本而对第二LFSR状态进行解码,并且响应于已恢复的第二LFSR状态而恢复第二记号计数k2。第一LFSR状态和第二LFSR状态的长度不同,换句话讲,状态中的一个状态具有比另一个状态更多的位。此外,取决于实施方式,第一状态样本和第二状态样本的长度可以不同或者可以相同。因此,在一个实施方案中,样本可具有相同的长度,并且在另一个实施方案中,状态样本中的一个状态样本可具有比其他状态样本更多的位。因此,相比于与多LFSR状态解码器中的其他解码器相关联的其他状态或周期,第一LFSR状态和周期以及第二LFSR状态和周期中的一者可被表征为长或短。
以举例的方式,假设以下情况:N1=48、Ny1=8、N2=13、Ny2=8,针对(N1,N2)(Ny1,Ny2)(即(48,13)(8,8)),其中编码成本为48位(6个样本)和16位(2个样本)。N=13LFSR状态可用于在少量样本之后确定记号计数k1=k mod p1,其中p1=213–1=8191。可响应于已恢复的k1而对N=48LFSR状态进行解码,并且可响应于LFSR状态而确定记号计数k2,例如可使用中国剩余理论来组合k1和k2以确定k使得k mod 2N1-1=k1以及k mod 2N2-1=k2。N=48LFSR采集至少六个样本以重建完整的LFSR状态。因此,N=13LFSR状态可通过减小N=48LFSR状态的可能值的数量来加速N=48LFSR状态的恢复。
图6C示出了根据本公开的实施方案的使用复合LFSR状态的解码过程的流程图。在操作642中,多LFSR状态解码器630接收第一采样LFSR状态和第二采样LFSR状态。在操作644中,多LFSR状态解码器630响应于第一采样LFSR状态而恢复LFSR状态。在操作646中,多LFSR状态解码器630响应于已恢复的第一LFSR状态而恢复第一记号计数。在操作648中,多LFSR状态解码器630响应于已恢复的第一记号计数和第二采样LFSR状态而恢复LFSR状态。在操作650中,多LFSR状态解码器630响应于已恢复的第二LFSR状态而恢复第二记号计数。
一个或多个实施方案整体涉及能够用于数据传输的数据同步系统。图7示出了根据本公开的一个或多个实施方案的数据系统700。在一个或多个实施方案中,数据系统700包括嵌入式系统703、数据采集系统(DAS)712和主机718。嵌入式系统703可包括任何数量的部件,包括本领域的普通技术人员已知的通常部件。具体地,嵌入式系统703包括微控制器单元(MCU)702,其可为例如数字信号处理器控制器、根据Harvard架构的微控制器、可编程接口控制器、组合逻辑等。
在一个或多个实施方案中,数据系统700可被配置为移动关于嵌入式系统703的数据,该嵌入式系统可以是例如由MCU 802控制的器具或设备(诸如泵、电池充电器、无线电控制的车辆等)的电路组件。
MCU 702可操作地耦接到嵌入式系统703,并且被配置为控制该嵌入式系统。在一个实施方案中,MCU 702可被配置为促进信息708通过数据路径710从嵌入式系统703到主机718的传输。在一个或多个实施方案中,MCU 702可包括紧凑LFSR时间戳编码器704(例如,在固件或硬件中实现,例如,作为外围设备),其被配置为根据本公开的一个或多个实施方案对LFSR状态进行采样并生成LFSR状态样本。MCU 702可以可操作地耦接到主机718,并且可被配置为通过数据路径710将LFSR状态样本连同其他信息一起传输到主机718。MCU 702还可以可操作地耦接到DAS 712,并且MCU 702可被配置为通过数据路径706将LFSR状态数据705传输到DAS 712。LFSR状态数据705可以是LFSR状态样本,并且在一个实施方案中,可以一次一位地(例如,根据1位采样函数)传输到DAS 712以最小化MCU 702处的I/O利用和资源成本。一般来讲,MCU 702和DAS 712之间的信号传输质量将足够好,使得不存在LFSR状态数据的缺失样本,并且因此可使用例如本公开中描述的状态和记号计数恢复技术从1位LFSR的N个连续样本对时间戳进行解码。
在一个或多个实施方案中,编码器704可被配置为针对不同的数据路径使用不同的采样函数。例如,可针对数据路径710选择第一采样函数,并且可针对数据路径706选择第二采样函数。基于本公开,本领域的普通技术人员将理解,可基于任何数量的考虑为数据路径选择特定采样函数,包括但不限于信号传输质量、带宽、处理能力和可用存储器。
在一个实施方案中,编码器704可以是独立外围设备,或者是独立于MCU 702的CPU内核运行的内核独立外围设备。在一个实施方案中,编码器可被结合到与外部设备通信以促进调试的调试外围设备中。
在一个或多个实施方案中,DAS 712可以可操作地耦接到嵌入式系统703。任选地,DAS 712可以可操作地耦接到一个或多个监测或传感器系统或测试系统,该一个或多个监测或传感器系统或测试系统继而被配置为将关于嵌入式系统703的测量数据707直接或间接地提供给DAS 712。可例如通过测试夹具、探针等直接从嵌入式系统703接收测量数据707。可以例如通过温度测量或其他实验室传感器间接地接收关于嵌入式系统703的测量数据707。
测量数据707可以是指示嵌入式系统的状态(例如,操作、健康等)的模拟信号和数字信号中的一者或两者;或关于嵌入式系统中的其他地方存在的被测设备,例如温度、压力、电压、电流等。测量值能够由主机718经由DAS 712访问,并且DAS 712可被配置为通过数据路径716传输包括测量信息的测量消息714。
主机718可被配置为记录由嵌入式系统703通过数据路径710发送的信息消息708,并且基于与信息消息708和测量消息714一起提供的时间戳信息来同步信息消息708和测量消息714。在一个或多个实施方案中,主机718可以是被配置为至少部分地基于信息消息708和测量消息714来测试和/或诊断嵌入式系统703的诊断系统。在一个或多个实施方案中,主机718可包括紧凑LFSR时间戳解码器720,该紧凑LFSR时间戳解码器被配置为根据本文所述的一个或多个实施方案从采样的LFSR状态恢复LFSR状态数据。在一个或多个实施方案中,解码器720可被配置为从信息消息708和/或测量消息714恢复定时信息。主机718可被配置为基于已恢复的定时信息来同步信息消息708和测量消息714,以及同步由这些消息承载的信息和测量值。以此方式,主机718可被配置为同步通过数据路径710接收的消息和通过数据路径716接收的消息。
在一个或多个实施方案中,数据路径710、706和716可被配置为使得它们具有倾向于不同量的噪声/误差的特定特性。
在一个实施方案中,数据路径706(该数据路径承载从MCU 702到DAS 712的1位LFSR输出流705)可被滤波、屏蔽和/或隔离以减小噪声。所需带宽可不远大于通过总线708发送的时间戳信息的采样率。
在一个实施方案中,数据路径710(MCU到DAS)可被配置用于比数据路径706更高的位速率。以举例的方式,数据路径706和710可被配置用于串行通信。在一个或多个实施方案中,数据路径706和710可以是UART(通用异步接收器发射器)、USART(通用同步/异步接收器发射器)或I2C(内部集成电路)、串行外围接口(SPI)、以太网、Wifi、Zigbee以及它们的数据路径的组合。在一个实施方案中,数据路径706可以是原始数据信号。
图8示出了根据本公开的一个或多个实施方案的数据系统800。数据系统800可包括源处理器802和主机820,两者均被配置为通过信道818进行通信。源处理器802可被配置为通过信道818传输消息802。源处理器802可被配置为从作为源处理器802的一部分或可操作地耦接到该源处理器的数据生产方816接收数据812。源处理器802可包括根据本公开的一个或多个实施方案的被配置用于紧凑加时间戳的编码器804。在一个实施方案中,编码器804可包括LFSR 808、计数器810和采样函数806。采样函数806可被配置为响应于LFSR 808的状态而提供LFSR状态样本814。消息802可包括例如以分组格式的数据812和LFSR状态样本814。
主机820可被配置为接收和消费消息822。主机820可包括解码器828,该解码器被配置为响应于所接收的消息822中的LFSR状态样本826而恢复定时信息(例如,记号计数k)。在一个或多个实施方案中,解码器828可包括最近消息历史830,该最近消息历史被配置为按照在主机820处接收的顺序存储所接收的消息822,包括其数据832和LFSR状态样本834。在恢复记号计数840时,可释放一个或多个所接收的消息822。释放的消息836可包括数据838(其对应于所接收的消息中的数据)和记号计数840。在一些情况下,释放的消息836可不包括记号计数840,例如,当解码器828未能从LFSR状态样本恢复记号计数时。数据消费方842可以可操作地耦接到解码器828并且被配置为接收释放的消息836。
对数据生产方816和数据消费方842的描述并非旨在意指数据系统800需要任一元件或者它们必须存在因为将会字面违反权利要求。
本说明书中描述的许多功能单元可被示出、描述或标记为编程代码的模块、线程或其他分类,以便更具体地强调它们的实施独立性。模块可至少部分地以一种或另一种形式在硬件中实现。例如,模块可实现为硬件电路,该硬件电路包括定制的VLSI电路或门阵列、现有半导体诸如逻辑芯片、晶体管或其他分立部件。模块也可在可编程硬件设备诸如现场可编程门阵列、可编程阵列逻辑、可编程逻辑设备等中实现。
模块也可使用存储在物理存储设备(例如,计算机可读存储介质)上、存储器中或其组合以由各种类型的处理器执行的软件或固件来实现。
可执行代码的所识别模块可例如包括计算机指令的一个或多个物理块或逻辑块,这些物理块或逻辑块可例如被组织为线程、对象、过程或功能。然而,所识别模块的可执行文件不需要物理地定位在一起,而是可包括存储在不同位置中的不同指令,这些指令在被逻辑地结合在一起时包括模块并实现模块的所述目的。
实际上,可执行代码的模块可以是单个指令或许多指令,并且甚至可分布在若干不同的代码段上、不同程序之间以及若干存储装置或存储器设备上。类似地,操作数据在本文中可在模块内被识别和示出,并且能够以任何合适的形式实施并在任何合适类型的数据结构内被组织。操作数据可作为单个数据集被收集,或者可分布在不同位置上,包括分布在不同存储设备上,并且可至少部分地仅作为系统或网络上的电子信号存在。在模块或模块的部分在软件中实现的情况下,软件部分存储在一个或多个物理设备上,这些物理设备在本文中被称为计算机可读介质。
在一些实施方案中,软件部分以非暂态状态存储,使得软件部分或其表示在同一物理位置持续一段时间。另外,在一些实施方案中,软件部分存储在一个或多个非暂态存储设备上,这些非暂态存储设备包括能够存储非暂态状态和/或表示软件部分的信号的硬件元件,尽管非暂态存储设备的其他部分可能能够改变和/或传输信号。非暂态存储设备的示例是闪速存储器和随机存取存储器(RAM)。非暂态存储设备的另一个示例包括只读存储器(ROM),该只读存储器可将表示软件部分的信号和/或状态存储一段时间。然而,存储信号和/或状态的能力不会因传输与所存储的信号和/或状态相同或表示所存储的信号和/或状态的信号的其他功能而减弱。例如,处理器可访问ROM以获得表示所存储的信号和/或状态的信号,以便执行对应的软件指令。
在实践水平上,可以在各种介质中的任何一种上提供使计算机系统能够执行本文描述的操作的软件。另外,本发明的方法和操作的实际实施方式实际上是以计算机语言编写的语句。此类计算机语言语句在由计算机执行时致使计算机根据语句的特定内容来起作用。另外,可能以任何数量的形式(包括但不限于原始源代码、汇编代码、目标代码、机器语言、前述内容的压缩或加密版本、以及任何和所有等效物)提供使得计算机系统能够根据本发明起作用的软件。
本领域普通技术人员将理解,如本文所使用的“介质”或“计算机可读介质”可以包括软盘,磁带,光盘,集成电路,ROM,CD,DVD,BLU-RAY,盒带,闪速存储器,存储棒或卡,或计算机可使用的任何其他非破坏性存储介质,包括现在已知或以后开发的那些。
尽管启用软件可以“写在”光盘上,“体现在”集成电路中,“承载在”通信电路上,“存储在”存储器芯片中,或“加载在”高速缓存存储器中,但应当理解,出于本申请的目的,该软件将被简单地称为在计算机可读介质“之中”或“之上”。因此,术语“之中”或“之上”旨在涵盖软件可以与计算机可读介质相关联的上述以及所有等效和可能的方式。
因此,为简单起见,术语“计算机程序产品”因此用于指代如上定义的计算机可读介质,其上具有使得计算机系统能够根据本发明的任何实施方案进行操作的任何形式的软件。
本公开中任何将某物表征为“典型”、“常规”或“已知”不一定意味着它在现有技术中公开或在现有技术中理解所讨论的方面。其也不一定意味着在相关领域它是众所周知的、易于理解的或常规使用的。
本公开的附加非限制性实施方案包括:
实施方案1:一种用于提供用于关联数据组的定时信息的编码器,所述编码器包括:一个或多个线性反馈移位寄存器(LFSR),所述一个或多个线性反馈移位寄存器被配置为存储针对多个LFSR状态中的每个LFSR状态的LFSR状态信息的N个位,其中所述多个LFSR状态中的每个LFSR状态与定时信息相关联;一个或多个样本输出寄存器,所述一个或多个样本输出寄存器被配置为存储针对多个LFSR状态样本中的每个LFSR状态样本的LFSR状态样本信息的Ny个位;以及一个或多个采样器,所述一个或多个采样器被配置为将LFSR状态信息的N个位减小到LFSR状态样本信息的Ny个位。
实施方案2:根据实施方案1所述的编码器,其中所述一个或多个采样器包括数字逻辑电路,所述数字逻辑电路被配置为:将所述一个或多个LFSR的采样寄存器单元可操作地耦接到所述一个或多个样本输出寄存器的样本输出寄存器单元,其中所述采样寄存器单元是所述一个或多个LFSR的所有寄存器单元的子集;以及向所述样本输出寄存器单元提供从所述采样寄存器单元的所述位导出的输出位。
实施方案3:根据实施方案1和2所述的编码器,其中所述数字逻辑电路被配置为:对于所述采样寄存器单元的所述位执行一个或多个XOR运算;以及向所述样本输出寄存器单元提供所述XOR运算的一个或多个结果。
实施方案4:根据实施方案1至3所述的编码器,其中所述数字逻辑电路被配置为响应于所述LFSR的每d个更新而向所述样本输出寄存器单元提供所述输出位,其中d是采样间隔。
实施方案5:根据实施方案1至4所述的编码器,其中所述一个或多个采样器被配置为提供至少m个连续LFSR状态样本,其中m*Ny>N,并且定时信息能够从所述至少m个连续LFSR状态样本恢复。
实施方案6:根据实施方案1至5所述的编码器,其中所述一个或多个采样器被配置为提供至少m个连续LFSR状态样本,其中m*Ny=N,并且定时信息能够从所述至少m个连续LFSR状态样本恢复。
实施方案7:根据实施方案1至6所述的编码器,其中所述一个或多个采样器中的采样器被配置为响应于采样矩阵而将LFSR状态信息的N个位减小到LFSR状态样本信息的Ny个位。
实施方案8:根据实施方案1至7所述的编码器,其中所述一个或多个采样器中的采样器被配置为响应于至少一个位掩码而将LFSR状态信息的N个位减小到LFSR状态样本信息的Ny个位。
实施方案9:根据实施方案1至8所述的编码器,其中所述一个或多个采样器中的采样器被配置为响应于运行长度编码(RLE)定义而将LFSR状态信息的N个位减小到LFSR状态样本信息的Ny个位。
实施方案10:根据实施方案1至9所述的编码器,其中所述一个或多个LFSR包括单个LFSR。
实施方案11:根据实施方案1至10所述的编码器,其中所述一个或多个LFSR包括至少第一采样寄存器单元和第二采样寄存器单元,所述一个或多个样本输出寄存器包括至少第一样本输出寄存器单元和第二样本输出寄存器单元,并且所述一个或多个采样器包括至少第一数字逻辑电路和第二数字逻辑电路,其中:所述第一数字逻辑电路将所述第一采样寄存器单元可操作地耦接到所述第一样本输出寄存器单元;并且所述第二数字逻辑电路将所述第二采样寄存器单元可操作地耦接到所述第二样本输出寄存器单元。
实施方案12:根据实施方案1至11所述的编码器,其中所述一个或多个采样器被配置为在所述相同的采样间隔期间对所述第一采样寄存器单元和所述第二采样寄存器单元进行采样。
实施方案13:根据实施方案1至12所述的编码器,其中所述一个或多个LFSR的所述第一采样寄存器单元和所述第二采样寄存器单元的周期是相对主要的。
实施方案14:根据实施方案1至13所述的编码器,其中所述第一数字逻辑电路根据第一采样函数进行配置,并且所述第二数字逻辑电路根据与所述第一采样函数不同的第二采样函数进行配置。
实施方案15:根据实施方案1至14所述的编码器,其中所述一个或多个样本输出寄存器可操作地耦接到数据总线,所述数据总线被配置为接收所述一个或多个样本输出寄存器的输出位。
实施方案16:根据实施方案1至15所述的编码器,其中所述多个LFSR状态中的至少一些LFSR状态与数据传输系统的传输间隔相关联,并且所述一个或多个样本输出寄存器处的所述多个LFSR状态样本中的至少一些LFSR状态样本能够由所述数据传输系统访问。
实施方案17:根据实施方案1至16所述的编码器,其中所接收的输出位在串行位流中。
实施方案18:一种提供用于关联数据的定时信息的方法,所述方法包括:响应于多个事件间隔中的一个或多个事件间隔而改变线性反馈移位寄存器(LFSR)状态的N个位;响应于所述一个或多个事件间隔而将LFSR状态信息的N个位减小到LFSR状态样本信息的Ny个位,其中Ny<N;以及响应于所述一个或多个事件间隔而提供LFSR状态样本信息和事件数据。
实施方案19:根据实施方案18所述的方法,还包括跳过所述多个事件间隔中的至少一个事件间隔,其中所述一个或多个事件间隔包括第一事件间隔和第二事件间隔,并且所述至少一个事件间隔介于所述第一事件间隔和所述第二事件间隔之间。
实施方案20:根据实施方案18和19所述的方法,其中跳过至少一个事件间隔包括跳过固定数量的事件间隔。
实施方案21:根据实施方案18至20所述的方法,其中所述一个或多个事件间隔包括至少两个连续事件间隔。
实施方案22:根据实施方案18至21所述的方法,其中提供所述LFSR状态样本信息和事件数据包括传输所述LFSR状态样本信息和事件数据。
实施方案23:根据实施方案18至22所述的方法,其中提供所述LFSR状态样本信息和事件数据包括在记录处存储LFSR状态样本信息和数据。
实施方案24:根据实施方案18至23所述的方法,还包括提供至少m个连续LFSR状态样本,其中m*Ny>N,并且定时信息能够从所述至少m个连续LFSR状态样本恢复。
实施方案25:根据实施方案18至24所述的方法,还包括提供至少m个连续LFSR状态样本,其中m*Ny=N,并且定时信息能够从所述至少m个连续LFSR状态样本恢复。
实施方案26:根据实施方案18至25所述的方法,还包括响应于采样矩阵而将所述LFSR状态信息的N个位减小到所述LFSR状态样本信息的Ny个位。
实施方案27:根据实施方案18至26所述的方法,还包括通过以下方式将所述LFSR状态信息的N个位减小到所述LFSR状态样本信息的Ny个位:响应于一个或多个位掩码而掩蔽所述LFSR状态信息的N个位中的至少一些;以及响应于所述LFSR状态信息的N个位中的所述至少一些的每个掩蔽而组合所述LFSR状态信息的N个位中的未掩蔽位。
实施方案28:根据实施方案18至27所述的方法,其中组合所述LFSR状态信息的N个位中的未掩蔽位包括响应于LFSR状态信息的仅一位未掩蔽而选择所述LFSR状态信息的N个位中的未掩蔽位。
实施方案29:根据实施方案18至28所述的方法,其中组合所述LFSR状态信息的N个位中的未掩蔽位包括对所述LFSR状态信息的N个位中的所述未掩蔽位执行一个或多个XOR操作。
实施方案30:根据实施方案18至29所述的方法,还包括响应于运行长度编码(RLE)定义而将所述LFSR状态信息的N个位减小到所述LFSR状态样本信息的Ny个位。
实施方案31:一种提供用于关联数据的定时信息的方法,所述方法包括:响应于多个事件间隔中的一个或多个事件间隔而改变第一线性反馈移位寄存器(LFSR)状态的N1个位和第二LFSR状态的N2个位;响应于所述一个或多个事件间隔而将LFSR状态信息的N1个位减小到LFSR状态样本信息的Ny1个位,并且将LFSR状态信息的N2个位减小到LFSR状态样本信息的Ny2个位,其中Ny1<N1且Ny2<N2;以及响应于所述一个或多个事件间隔而提供减小的LFSR状态信息的一个或多个LFSR状态样本。
实施方案32:根据实施方案31所述的方法,还包括跳过所述多个事件间隔中的至少一个事件间隔,其中所述一个或多个事件间隔包括第一事件间隔和第二事件间隔,并且所述至少一个事件间隔介于所述第一事件间隔和所述第二事件间隔之间。
实施方案33:根据实施方案31和32所述的方法,其中所述一个或多个事件间隔包括至少两个连续事件间隔。
实施方案34:根据实施方案31至33所述的方法,其中提供所述定时信息包括传输所述一个或多个LFSR状态样本和数据。
实施方案35:根据实施方案31至34所述的方法,其中提供所述定时信息包括在数据日志处存储所述一个或多个LFSR状态样本和数据。
实施方案36:根据实施方案31至35所述的方法,还包括在相同事件间隔期间对所述LFSR状态的N1个位和所述LFSR状态的N2个位进行采样。
实施方案37:根据实施方案31至36所述的方法,还包括在所述多个事件间隔中的不同事件间隔期间,减小所述LFSR状态信息的Ny1个位和所述LFSR状态信息的Ny2个位。
实施方案38:根据实施方案31至37所述的方法,还包括:向所述一个或多个第一样本输出寄存器提供从所述Ny1个采样位导出的一个或多个第一输出位;以及向所述一个或多个第二样本输出寄存器提供从所述Ny2个采样位导出的一个或多个第二输出位。
实施方案39:根据实施方案31至38所述的方法,还包括根据第一采样函数修改所述Ny1个采样位并且根据第二采样函数修改所述Ny2个采样位,其中所述第一采样函数不同于所述第二采样函数。
实施方案40:一种用于恢复用于关联数据的定时信息的解码器,所述解码器包括:存储器,所述存储器被配置为存储与多个事件间隔相关联的事件报告,所述事件报告中的每个事件报告包括至少数据和Ny位定时数据;处理器,所述处理器被配置为:响应于数量m的Ny位定时数据而恢复N位定时数据,其中Ny为<N;以及响应于所述已恢复的N位定时数据而确定定时信息。
实施方案41:根据实施方案40所述的解码器,其中所述事件报告是事件记录,并且所述事件间隔与嵌入式系统的操作或所述嵌入式系统的操作的时间段相关联。
实施方案42:根据实施方案40和41所述的解码器,其中所述事件报告是消息,并且所述事件间隔是数据传输间隔。
实施方案43:根据实施方案40至42所述的解码器,其中所述处理器被配置为恢复所述N位定时数据并且响应于关于生成所述事件报告的报告系统的先验信息而确定所述定时信息。
实施方案44:根据实施方案40至43所述的解码器,其中所述处理器被进一步配置为响应于所述报告系统正根据所述先验信息操作的置信度而使用或多或少的先验信息。
实施方案45:根据实施方案40至44所述的解码器,其中所述处理器被配置为执行置信度增加操作,所述置信度增加操作被选择以增加所述报告系统正根据所述先验信息操作的所述置信度。
实施方案46:根据实施方案40至45所述的解码器,其中所述置信度增加操作包括除了所述数量m的Ny位定时数据之外还使用一个或多个置信度定时数据。
实施方案47:根据实施方案40至46所述的解码器,其中所述置信度增加操作包括使用存储的Ny位定时数据,以及用存储的Ny位定时数据替换所述数量m的Ny位定时数据中的至少一个Ny位定时数据。
实施方案48:根据实施方案40至47所述的解码器,其中所述处理器被配置为响应于未能增加所述报告系统在定义周期内根据所述先验信息操作的所述置信度而丢弃所接收的Ny位定时数据中的至少一些。
实施方案49:根据实施方案40至48所述的解码器,其中所述处理器被配置为响应于离散对数和多个接收的Ny位定时数据而确定定时信息。
实施方案50:根据实施方案40至49所述的解码器,其中所述处理器被配置为向数据消费方提供释放的报告,所述释放的报告包括所接收的报告的数据和对应于所接收的报告的所述Ny位定时数据的定时信息。
实施方案51:根据实施方案40至50所述的解码器,其中所述先验信息包括冗余、报告间隔、过去历史以及它们的组合中的一者或多者。
实施方案52:根据实施方案40至51所述的解码器,其中过去历史包括先前接收的定时数据。
实施方案53:根据实施方案40至52所述的解码器,其中所述存储器被配置为存储包括所述事件报告的一个或多个事件日志文件。
实施方案54:根据实施方案40至53所述的解码器,还包括被配置为接收消息的通信接口,其中所述消息包括所述事件报告。
实施方案55:一种恢复用于关联数据的定时信息的方法,所述方法包括:接收和存储事件报告,所述事件报告中的每个事件报告包括数据和Ny位定时数据;响应于数量m的Ny位定时数据而恢复至少一个N位定时数据,其中N>Ny;以及响应于所述已恢复的N位定时数据而确定定时信息。
实施方案56:根据实施方案55所述的方法,其中接收和存储事件报告包括从事件日志文件检索记录,所述记录与嵌入式系统的操作或所述嵌入式系统的操作的时间段相关联。
实施方案57:根据实施方案55和56所述的方法,其中接收和存储事件报告包括接收和存储通过数据传输接收的消息。
实施方案58:根据实施方案55至57所述的方法,还包括恢复所述至少一个N位定时数据以及响应于关于数据传输系统的先验信息而确定至少一个定时信息。
实施方案59:根据实施方案55至58所述的方法,还包括响应于所述数据传输系统正根据所述先验信息操作的置信度而使用关于所述数据传输系统的或多或少的先验知识。
实施方案60:根据实施方案55至59所述的方法,还包括执行置信度增加操作,所述置信度增加操作被选择以增加与所述数据传输相关联的所述置信度。
实施方案61:根据实施方案55至60所述的方法,还包括使用除了所述数量m的Ny位定时数据之外的一个或多个置信度定时数据来执行所述置信度增加操作。
实施方案62:根据实施方案55至61所述的方法,其中执行所述置信度增加操作包括:将至少一个接收的Ny位定时数据与预先计算的Ny位定时数据匹配;以及选择与所述预先计算的Ny位定时数据相关联的预先计算的N位定时数据。
实施方案63:根据实施方案55至62所述的方法,还包括在未能增加所述数据传输系统在定义周期内根据所述先验信息操作的所述置信度时,丢弃所接收的Ny位定时数据中的至少一些。
实施方案64:根据实施方案55至63所述的方法,还包括响应于离散对数和多个接收的Ny位定时数据而确定定时信息。
实施方案65:根据实施方案55至64所述的方法,还包括向数据消费方提供释放的消息,所述释放的消息包括所接收的消息的数据有效负载和对应于所接收的消息的所述Ny位定时数据的定时信息。
实施方案66:一种用于将关于被监测系统的监测数据与来自所述被监测系统的系统数据相关联的方法,所述方法包括:接收系统数据消息,每个系统数据消息包括系统数据和第一定时数据;接收监测数据消息,每个监测数据消息包括监测数据和第二定时数据;响应于在所接收的系统数据消息中的一个或多个系统数据消息中接收的第一定时数据而恢复第一定时信息;响应于在所接收的监测数据消息中的一个或多个监测数据消息中接收的第二定时数据而恢复第二定时信息;以及响应于所述第一定时信息和所述第二定时信息而将至少一个系统数据和至少一个监测数据相关联。
虽然本文关于某些图示实施方案描述了本发明,但本领域的普通技术人员将认识到并理解本发明不受此限制。相反,在不脱离下文所要求保护的本发明的范围及其法律等同形式的情况下,可对图示实施方案和所述实施方案进行许多添加、删除和修改。此外,来自一个实施方案的特征可与另一个实施方案的特征组合,同时仍被包括在发明人所设想的本发明的范围内。
Claims (66)
1.一种用于提供用于关联数据组的定时信息的编码器,所述编码器包括:
一个或多个线性反馈移位寄存器(LFSR),所述一个或多个线性反馈移位寄存器被配置为存储针对多个LFSR状态中的每个LFSR状态的LFSR状态信息的N个位,其中所述多个LFSR状态中的每个LFSR状态与定时信息相关联;
一个或多个样本输出寄存器,所述一个或多个样本输出寄存器被配置为存储针对多个LFSR状态样本中的每个LFSR状态样本的LFSR状态样本信息的Ny个位;和
一个或多个采样器,所述一个或多个采样器被配置为将LFSR状态信息的N个位减小到LFSR状态样本信息的Ny个位。
2.根据权利要求1所述的编码器,其中所述一个或多个采样器包括数字逻辑电路,所述数字逻辑电路被配置为:
将所述一个或多个LFSR的采样寄存器单元可操作地耦接到所述一个或多个样本输出寄存器的样本输出寄存器单元,其中所述采样寄存器单元是所述一个或多个LFSR的所有寄存器单元的子集;以及
向所述样本输出寄存器单元提供从所述采样寄存器单元的所述位导出的输出位。
3.根据权利要求2所述的编码器,其中所述数字逻辑电路被配置为:
对于所述采样寄存器单元的所述位执行一个或多个XOR运算;以及
向所述样本输出寄存器单元提供所述XOR运算的一个或多个结果。
4.根据权利要求2所述的编码器,其中所述数字逻辑电路被配置为响应于所述LFSR的每d个更新而向所述样本输出寄存器单元提供所述输出位,其中d是采样间隔。
5.根据权利要求1所述的编码器,其中所述一个或多个采样器被配置为提供至少m个连续LFSR状态样本,其中m*Ny>N,并且定时信息能够从所述至少m个连续LFSR状态样本恢复。
6.根据权利要求1所述的编码器,其中所述一个或多个采样器被配置为提供至少m个连续LFSR状态样本,其中m*Ny=N,并且定时信息能够从所述至少m个连续LFSR状态样本恢复。
7.根据权利要求4所述的编码器,其中所述一个或多个采样器中的采样器被配置为响应于采样矩阵而将LFSR状态信息的N个位减小到LFSR状态样本信息的Ny个位。
8.根据权利要求4所述的编码器,其中所述一个或多个采样器中的采样器被配置为响应于至少一个位掩码而将LFSR状态信息的N个位减小到LFSR状态样本信息的Ny个位。
9.根据权利要求4所述的编码器,其中所述一个或多个采样器中的采样器被配置为响应于运行长度编码(RLE)定义而将LFSR状态信息的N个位减小到LFSR状态样本信息的Ny个位。
10.根据权利要求1所述的编码器,其中所述一个或多个LFSR包括单个LFSR。
11.根据权利要求1所述的编码器,其中所述一个或多个LFSR包括至少第一采样寄存器单元和第二采样寄存器单元,所述一个或多个样本输出寄存器包括至少第一样本输出寄存器单元和第二样本输出寄存器单元,并且所述一个或多个采样器包括至少第一数字逻辑电路和第二数字逻辑电路,其中:
所述第一数字逻辑电路将所述第一采样寄存器单元可操作地耦接到所述第一样本输出寄存器单元;以及
所述第二数字逻辑电路将所述第二采样寄存器单元可操作地耦接到所述第二样本输出寄存器单元。
12.根据权利要求11所述的编码器,其中所述一个或多个采样器被配置为在所述相同的采样间隔期间对所述第一采样寄存器单元和所述第二采样寄存器单元进行采样。
13.根据权利要求11所述的编码器,其中所述一个或多个LFSR的所述第一采样寄存器单元和所述第二采样寄存器单元的周期是相对主要的。
14.根据权利要求11所述的编码器,其中所述第一数字逻辑电路根据第一采样函数进行配置,并且所述第二数字逻辑电路根据与所述第一采样函数不同的第二采样函数进行配置。
15.根据权利要求1所述的编码器,其中所述一个或多个样本输出寄存器可操作地耦接到数据总线,所述数据总线被配置为接收所述一个或多个样本输出寄存器的输出位。
16.根据权利要求15所述的编码器,其中所述多个LFSR状态中的至少一些LFSR状态与数据传输系统的传输间隔相关联,并且所述一个或多个样本输出寄存器处的所述多个LFSR状态样本中的至少一些LFSR状态样本能够由所述数据传输系统访问。
17.根据权利要求15所述的编码器,其中所接收的输出位在串行位流中。
18.一种提供用于关联数据的定时信息的方法,所述方法包括:
响应于多个事件间隔中的一个或多个事件间隔而改变线性反馈移位寄存器(LFSR)状态的N个位;
响应于所述一个或多个事件间隔而将LFSR状态信息的N个位减小到LFSR状态样本信息的Ny个位,其中Ny<N;以及
响应于所述一个或多个事件间隔而提供LFSR状态样本信息和事件数据。
19.根据权利要求18所述的方法,还包括跳过所述多个事件间隔中的至少一个事件间隔,其中所述一个或多个事件间隔包括第一事件间隔和第二事件间隔,并且所述至少一个事件间隔介于所述第一事件间隔和所述第二事件间隔之间。
20.根据权利要求19所述的方法,其中跳过至少一个事件间隔包括跳过固定数量的事件间隔。
21.根据权利要求18所述的方法,其中所述一个或多个事件间隔包括至少两个连续事件间隔。
22.根据权利要求18所述的方法,其中提供所述LFSR状态样本信息和事件数据包括传输所述LFSR状态样本信息和事件数据。
23.根据权利要求18所述的方法,其中提供所述LFSR状态样本信息和事件数据包括在记录处存储LFSR状态样本信息和数据。
24.根据权利要求18所述的方法,还包括提供至少m个连续LFSR状态样本,其中m*Ny>N,并且定时信息能够从所述至少m个连续LFSR状态样本恢复。
25.根据权利要求18所述的方法,还包括提供至少m个连续LFSR状态样本,其中m*Ny=N,并且定时信息能够从所述至少m个连续LFSR状态样本恢复。
26.根据权利要求18所述的方法,还包括响应于采样矩阵而将所述LFSR状态信息的N个位减小到所述LFSR状态样本信息的Ny个位。
27.根据权利要求18所述的方法,还包括通过以下方式将所述LFSR状态信息的N个位减小到所述LFSR状态样本信息的Ny个位:
响应于一个或多个位掩码而掩蔽所述LFSR状态信息的N个位中的至少一些;以及
响应于所述LFSR状态信息的N个位中的所述至少一些的每个掩蔽而组合所述LFSR状态信息的N个位中的未掩蔽位。
28.根据权利要求27所述的方法,其中组合所述LFSR状态信息的N个位中的未掩蔽位包括响应于LFSR状态信息的仅一位未掩蔽而选择所述LFSR状态信息的N个位中的未掩蔽位。
29.根据权利要求27所述的方法,其中组合所述LFSR状态信息的N个位中的未掩蔽位包括对所述LFSR状态信息的N个位中的所述未掩蔽位执行一个或多个XOR操作。
30.根据权利要求18所述的方法,还包括响应于运行长度编码(RLE)定义而将所述LFSR状态信息的N个位减小到所述LFSR状态样本信息的Ny个位。
31.一种提供用于关联数据的定时信息的方法,所述方法包括:
响应于多个事件间隔中的一个或多个事件间隔而改变第一线性反馈移位寄存器(LFSR)状态的N1个位和第二LFSR状态的N2个位;
响应于所述一个或多个事件间隔而将LFSR状态信息的N1个位减小到LFSR状态样本信息的Ny1个位,并且将LFSR状态信息的N2个位减小到LFSR状态样本信息的Ny2个位,其中Ny1<N1且Ny2<N2;以及
响应于所述一个或多个事件间隔而提供减小的LFSR状态信息的一个或多个LFSR状态样本。
32.根据权利要求31所述的方法,还包括跳过所述多个事件间隔中的至少一个事件间隔,其中所述一个或多个事件间隔包括第一事件间隔和第二事件间隔,并且所述至少一个事件间隔介于所述第一事件间隔和所述第二事件间隔之间。
33.根据权利要求31所述的方法,其中所述一个或多个事件间隔包括至少两个连续事件间隔。
34.根据权利要求31所述的方法,其中提供所述定时信息包括传输所述一个或多个LFSR状态样本和数据。
35.根据权利要求31所述的方法,其中提供所述定时信息包括在数据日志处存储所述一个或多个LFSR状态样本和数据。
36.根据权利要求31所述的方法,还包括在相同事件间隔期间对所述LFSR状态的N1个位和所述LFSR状态的N2个位进行采样。
37.根据权利要求31所述的方法,还包括在所述多个事件间隔中的不同事件间隔期间减小所述LFSR状态信息的Ny1个位和所述LFSR状态信息的Ny2个位。
38.根据权利要求31所述的方法,还包括:
向所述一个或多个第一样本输出寄存器提供从所述Ny1个采样位导出的一个或多个第一输出位;以及
向所述一个或多个第二样本输出寄存器提供从所述Ny2个采样位导出的一个或多个第二输出位。
39.根据权利要求31所述的方法,还包括根据第一采样函数修改所述Ny1个采样位并且根据第二采样函数修改所述Ny2个采样位,其中所述第一采样函数不同于所述第二采样函数。
40.一种用于恢复用于关联数据的定时信息的解码器,所述解码器包括:
存储器,所述存储器被配置为存储与多个事件间隔相关联的事件报告,所述事件报告中的每个事件报告包括至少数据和Ny位定时数据;
处理器,所述处理器被配置为:
响应于数量m的Ny位定时数据而恢复N位定时数据,其中Ny为<N;以及
响应于所述已恢复的N位定时数据而确定定时信息。
41.根据权利要求40所述的解码器,其中所述事件报告是事件记录,并且所述事件间隔与嵌入式系统的操作或所述嵌入式系统的操作的时间段相关联。
42.根据权利要求40所述的解码器,其中所述事件报告是消息,并且所述事件间隔是数据传输间隔。
43.根据权利要求40所述的解码器,其中所述处理器被配置为恢复所述N位定时数据并且响应于关于生成所述事件报告的报告系统的先验信息而确定所述定时信息。
44.根据权利要求43所述的解码器,其中所述处理器被进一步配置为响应于所述报告系统正根据所述先验信息操作的置信度而使用或多或少的先验信息。
45.根据权利要求44所述的解码器,其中所述处理器被配置为执行置信度增加操作,所述置信度增加操作被选择以增加所述报告系统正根据所述先验信息操作的所述置信度。
46.根据权利要求45所述的解码器,其中所述置信度增加操作包括除了所述数量m的Ny位定时数据之外还使用一个或多个置信度定时数据。
47.根据权利要求45所述的解码器,其中所述置信度增加操作包括使用存储的Ny位定时数据,以及用存储的Ny位定时数据替换所述数量m的Ny位定时数据中的至少一个Ny位定时数据。
48.根据权利要求43所述的解码器,其中所述处理器被配置为响应于未能增加所述报告系统在定义周期内根据所述先验信息操作的所述置信度而丢弃所接收的Ny位定时数据中的至少一些Ny位定时数据。
49.根据权利要求48所述的解码器,其中所述先验信息包括冗余、报告间隔、过去历史以及它们的组合中的一者或多者。
50.根据权利要求49所述的解码器,其中过去历史包括先前接收的定时数据。
51.根据权利要求40所述的解码器,其中所述处理器被配置为响应于离散对数和多个接收的Ny位定时数据而确定定时信息。
52.根据权利要求40所述的解码器,其中所述处理器被配置为向数据消费方提供释放的报告,所述释放的报告包括所接收的报告的数据和对应于所接收的报告的所述Ny位定时数据的定时信息。
53.根据权利要求40所述的解码器,其中所述存储器被配置为存储包括所述事件报告的一个或多个事件日志文件。
54.根据权利要求40所述的解码器,还包括被配置为接收消息的通信接口,其中所述消息包括所述事件报告。
55.一种恢复用于关联数据的定时信息的方法,所述方法包括:
接收和存储事件报告,所述事件报告中的每个事件报告包括数据和Ny位定时数据;
响应于数量m的Ny位定时数据而恢复至少一个N位定时数据,其中N>Ny;以及
响应于所述已恢复的N位定时数据而确定定时信息。
56.根据权利要求55所述的方法,其中接收和存储事件报告包括从事件日志文件检索记录,所述记录与嵌入式系统的操作或所述嵌入式系统的操作的时间段相关联。
57.根据权利要求55所述的方法,其中接收和存储事件报告包括接收和存储通过数据传输接收的消息。
58.根据权利要求55所述的方法,还包括恢复所述至少一个N位定时数据以及响应于关于数据传输系统的先验信息而确定至少一个定时信息。
59.根据权利要求58所述的方法,还包括响应于所述数据传输系统正根据所述先验信息操作的置信度而使用关于所述数据传输系统的或多或少的先验知识。
60.根据权利要求59所述的方法,还包括执行置信度增加操作,所述置信度增加操作被选择以增加与所述数据传输相关联的所述置信度。
61.根据权利要求60所述的方法,还包括使用除了所述数量m的Ny位定时数据之外的一个或多个置信度定时数据来执行所述置信度增加操作。
62.根据权利要求61所述的方法,其中执行所述置信度增加操作包括:
将至少一个接收的Ny位定时数据与预先计算的Ny位定时数据匹配;以及
选择与所述预先计算的Ny位定时数据相关联的预先计算的N位定时数据。
63.根据权利要求60所述的方法,还包括在未能增加所述数据传输系统在定义周期内根据所述先验信息操作的所述置信度时,丢弃所接收的Ny位定时数据中的至少一些Ny位定时数据。
64.根据权利要求55所述的方法,还包括响应于离散对数和多个接收的Ny位定时数据而确定定时信息。
65.根据权利要求55所述的方法,还包括向数据消费方提供释放的消息,所述释放的消息包括所接收的消息的数据有效负载和对应于所接收的消息的所述Ny位定时数据的定时信息。
66.一种用于将关于被监测系统的监测数据与来自所述被监测系统的系统数据相关联的方法,所述方法包括:
接收系统数据消息,每个系统数据消息包括系统数据和第一定时数据;
接收监测数据消息,每个监测数据消息包括监测数据和第二定时数据;
响应于在所接收的系统数据消息中的一个或多个系统数据消息中接收的第一定时数据而恢复第一定时信息;
响应于在所接收的监测数据消息中的一个或多个监测数据消息中接收的第二定时数据而恢复第二定时信息;以及
响应于所述第一定时信息和所述第二定时信息而将至少一个系统数据和至少一个监测数据相关联。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201862641112P | 2018-03-09 | 2018-03-09 | |
US62/641,112 | 2018-03-09 | ||
US16/169,501 | 2018-10-24 | ||
US16/169,501 US11082544B2 (en) | 2018-03-09 | 2018-10-24 | Compact timestamp, encoders and decoders that implement the same, and related devices, systems and methods |
PCT/US2019/021010 WO2019173512A1 (en) | 2018-03-09 | 2019-03-06 | Compact timestamp system using linear feedback shift registers, and related systems and methods |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111819806A true CN111819806A (zh) | 2020-10-23 |
CN111819806B CN111819806B (zh) | 2023-01-17 |
Family
ID=67843648
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201980017921.XA Active CN111819806B (zh) | 2018-03-09 | 2019-03-06 | 使用线性反馈移位寄存器的紧凑时间戳系统以及相关系统和方法 |
Country Status (5)
Country | Link |
---|---|
US (2) | US11082544B2 (zh) |
CN (1) | CN111819806B (zh) |
DE (1) | DE112019001239T5 (zh) |
TW (1) | TW201939904A (zh) |
WO (1) | WO2019173512A1 (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10820068B2 (en) * | 2019-02-07 | 2020-10-27 | Simmonds Precision Products, Inc. | Configurable sensing systems and methods for configuration |
US20210197986A1 (en) * | 2019-12-27 | 2021-07-01 | Simmonds Precision Products, Inc. | Configurable sensing systems and methods for configuration |
TWI839079B (zh) * | 2022-01-24 | 2024-04-11 | 國立清華大學 | 位元串列運算裝置與測試方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1355984A (zh) * | 1999-06-18 | 2002-06-26 | 艾利森电话股份有限公司 | 实时分组通信中时间戳的估计 |
CN102227888A (zh) * | 2008-12-02 | 2011-10-26 | 株式会社泛泰 | 用于在宽带无线通信系统中产生伪随机序列的方法和装置 |
CN106452450A (zh) * | 2015-08-06 | 2017-02-22 | Sap欧洲公司 | 数据压缩 |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4161041A (en) | 1978-10-06 | 1979-07-10 | The United States Of America As Represented By The Secretary Of The Air Force | Pseudo random number generator apparatus |
FR2600440B1 (fr) * | 1986-06-23 | 1988-09-09 | Enertec | Circuit de registres a decalage a rebouclage lineaire, a architecture systolique |
US6680955B1 (en) * | 1999-08-20 | 2004-01-20 | Nokia Networks Oy | Technique for compressing a header field in a data packet |
US6535925B1 (en) * | 1999-11-09 | 2003-03-18 | Telefonaktiebolaget L M Ericsson (Publ) | Packet header compression using division remainders |
US6760764B1 (en) * | 2000-08-09 | 2004-07-06 | Alcatel Canada Inc. | Real time stamp distribution |
US7194400B2 (en) | 2002-04-04 | 2007-03-20 | International Business Machines Corporation | Method and system for reducing storage and transmission requirements for simulation results |
KR100708462B1 (ko) * | 2005-05-27 | 2007-04-18 | 연세대학교 산학협력단 | 천이감시 윈도우를 이용한 lfsr 천이수 감소방법 및 그장치 |
US7719996B2 (en) | 2006-09-25 | 2010-05-18 | Hewlett-Packard Development Company, L.P. | Encoding timestamps |
US8190942B2 (en) | 2008-07-02 | 2012-05-29 | Cradle Ip, Llc | Method and system for distributing a global timebase within a system-on-chip having multiple clock domains |
US20100287402A1 (en) | 2009-05-11 | 2010-11-11 | Electronics And Telecommunications Research Institute | Timestamping apparatus and method |
US9164065B2 (en) | 2013-03-12 | 2015-10-20 | Telefonaktiebolaget L M Ericsson (Publ) | Automated fault localization in pipelines and electrical power transmission lines |
JP6197708B2 (ja) * | 2014-03-17 | 2017-09-20 | 富士通株式会社 | 動画像伝送システム、動画像符号化装置、動画像復号装置及び動画像符号化用コンピュータプログラムならびに動画像復号用コンピュータプログラム |
GB2536655B (en) | 2015-03-24 | 2017-09-20 | Imagination Tech Ltd | Logging events with timestamps |
US10037240B2 (en) | 2015-09-24 | 2018-07-31 | Qualcomm Incorporated | Timestamp repair mechanism in case of decompression failure |
-
2018
- 2018-10-24 US US16/169,501 patent/US11082544B2/en active Active
-
2019
- 2019-03-06 DE DE112019001239.8T patent/DE112019001239T5/de active Pending
- 2019-03-06 CN CN201980017921.XA patent/CN111819806B/zh active Active
- 2019-03-06 WO PCT/US2019/021010 patent/WO2019173512A1/en active Application Filing
- 2019-03-08 TW TW108107852A patent/TW201939904A/zh unknown
-
2021
- 2021-08-02 US US17/444,248 patent/US11671520B2/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1355984A (zh) * | 1999-06-18 | 2002-06-26 | 艾利森电话股份有限公司 | 实时分组通信中时间戳的估计 |
CN102227888A (zh) * | 2008-12-02 | 2011-10-26 | 株式会社泛泰 | 用于在宽带无线通信系统中产生伪随机序列的方法和装置 |
CN106452450A (zh) * | 2015-08-06 | 2017-02-22 | Sap欧洲公司 | 数据压缩 |
Also Published As
Publication number | Publication date |
---|---|
US20190281144A1 (en) | 2019-09-12 |
US11082544B2 (en) | 2021-08-03 |
US20210368030A1 (en) | 2021-11-25 |
TW201939904A (zh) | 2019-10-01 |
WO2019173512A1 (en) | 2019-09-12 |
CN111819806B (zh) | 2023-01-17 |
DE112019001239T5 (de) | 2020-12-24 |
US11671520B2 (en) | 2023-06-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111819806B (zh) | 使用线性反馈移位寄存器的紧凑时间戳系统以及相关系统和方法 | |
JPH0380727A (ja) | データストリームのフレーム同期検出方法及び装置 | |
JP5473275B2 (ja) | レイテンシを減らし、処理量を増加させうるエラー訂正デコーダ構造を含むメモリシステム | |
CA2250510C (en) | Data communications systems and methods using interspersed error detection bits | |
US20170075754A1 (en) | Apparatus and method for parallel crc units for variably-sized data frames | |
WO2015071622A1 (en) | Coding and decoding methods and apparatus | |
KR20120058556A (ko) | 인코딩 및 디코딩 프로세스들을 위해 심볼들의 영속적 비활성화에 의한 fec 코드들을 활용하는 방법 및 장치 | |
US8700971B2 (en) | Parallel residue arithmetic operation unit and parallel residue arithmetic operating method | |
WO2016058262A1 (zh) | 一种基于二进制域里德所罗门码的数据编解码方法 | |
JP7429223B2 (ja) | ターボ積符号の復号方法、装置、デコーダー及びコンピュータ記憶媒体 | |
CN107306140B (zh) | 一种gel码字结构编码和译码的方法、装置及相关设备 | |
KR20190059827A (ko) | 1개의 서브-심볼의 선형 복구 스킴 | |
US8621333B2 (en) | Encoding device, controller and system including the same | |
CN103401566A (zh) | 参数化的bch纠错码的并行编码方法及装置 | |
KR101476560B1 (ko) | 채널 복호화 방법과 테일 바이팅 길쌈부호 복호기 | |
EP0263175A1 (en) | Apparatus and method for encoding and decoding attribute data into error checking symbols of main data | |
Kracht et al. | Using the Davey-MacKay code construction for barcodes in DNA sequencing | |
Boyd et al. | Recovery of unknown constraint length and generator polynomials for linear convolutional encoders | |
CN102811066B (zh) | 伴随式计算装置及解码器 | |
US8327243B1 (en) | System and method for generating locator polynomials | |
KR101187154B1 (ko) | 채널 부호화의 선형성을 이용한 미지 신호의 코드워드 길이 추정 및 정규블록 인터리버 복원 방법 및 이를 수행하는 장치 | |
GB2253974A (en) | Convolutional coding | |
RU2759801C1 (ru) | Способ кодовой цикловой синхронизации для каскадного кода при применении жестких решений | |
Albatoosh et al. | A VHDL Code for Offset Pulse Position Modulation Working with Reed Solomon System by Using ModelSim | |
JP2018515985A (ja) | 巡回冗長検査でのアルゴリズムの構成方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |