CN117242434A - 在单个uart中引入和检测错误的停止条件 - Google Patents

在单个uart中引入和检测错误的停止条件 Download PDF

Info

Publication number
CN117242434A
CN117242434A CN202280030846.2A CN202280030846A CN117242434A CN 117242434 A CN117242434 A CN 117242434A CN 202280030846 A CN202280030846 A CN 202280030846A CN 117242434 A CN117242434 A CN 117242434A
Authority
CN
China
Prior art keywords
bit
register
reversal
frame
uart
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.)
Pending
Application number
CN202280030846.2A
Other languages
English (en)
Inventor
A·哈拉格里
S·纳拉亚南
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microchip Technology Inc
Original Assignee
Microchip Technology Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Priority claimed from US17/948,616 external-priority patent/US20230101045A1/en
Application filed by Microchip Technology Inc filed Critical Microchip Technology Inc
Priority claimed from PCT/US2022/045137 external-priority patent/WO2023055871A1/en
Publication of CN117242434A publication Critical patent/CN117242434A/zh
Pending legal-status Critical Current

Links

Landscapes

  • Communication Control (AREA)

Abstract

一种通用异步接收器/发射器包括:发射寄存器,该发射寄存器包括待发射的信息;接收寄存器,该接收寄存器包括所接收的信息;帧错误校验电路,该帧错误校验电路针对帧错误评估接收寄存器的内容;以及控制逻辑部件。控制逻辑部件将发射寄存器的内容路由到接收寄存器。在通过可重编程引脚将发射寄存器的内容传输到接收寄存器期间,控制逻辑部件修改位反转寄存器以产生待提供给接收寄存器的修改内容。修改内容引起帧错误。控制逻辑部件确定帧错误校验电路是否检测到帧错误。

Description

在单个UART中引入和检测错误的停止条件
优先权
本申请要求于2021年9月29日提交的印度申请202111044129号的优先权,该印度申请的内容据此全文并入本文。
技术领域
本申请涉及电子通信,并且更具体地涉及在单个通用异步接收器/发射器(UART)中引入并检测错误的停止条件。
背景技术
UART用于实现电子设备之间的多种通信协议。UART可用于串行通信。由UART进行的数据传输可以由起始位和停止位框定,以便促进不同设备上的UART之间的定时。
在UART之间的数据传输中可以出现不同的错误。可由于例如发送设备、传输介质或接收设备中的噪声或者这些元件中的一个元件的错误配置而出现此类错误。一个此类错误可包括错误的停止条件错误。错误的停止条件错误可能引起帧错误。例如,两个UART以不同的波特率通信可能会导致帧错误。
本公开的示例的发明人已经发现了UART电路、设备和模块的测试经常使用两个或更多个此类UART电路、设备或模块。数据由一个此类UART生成并由其他此类UART接收。为了测试操作的正确性,诸如帧错误或停止条件错误的检测可人为地创建此类错误。然而,通过使用单独的UART电路、设备或模块(其可以继而位于与原始UART电路、设备或模块分开的微控制器或系统上),本公开的示例的发明人已经发现了这种对另一个UART电路、设备或模块的依赖可能导致附加错误。此类附加错误可包括由测试UART的错误测试能力产生的正误识结果或负误识结果。例如,可以将数据从发送UART发送到接收UART。发送UART中的测试机制可通过例如发送具有以失配波特率发送的数据的错误帧而引入帧错误。然而,如果例如当通过接收UART接收并处理帧时,噪声导致错误反转,则可能无法检测到该错误。在UART的测试或验证中,即使此类帧错误校验正确地工作,也可能出现帧错误校验没有正确地工作的情况。此外,可能不清楚是发送UART的帧错误校验没有正确地工作还是接收UART的帧错误校验没有正确地工作,或者在发送UART、传输介质或接收UART中是否存在噪声。
在另一示例中,中断信号可在回送配置中从UART的发射器引脚发送到接收引脚,以便生成帧错误。然而,在此类示例中,附加数据字节可能与中断信号一起被发送以引起帧错误。可利用中断服务例程(ISR)来执行帧错误的处理。也可利用ISR来完成中断信号的处理。这些也可能通过这些处理系统的故障而意外地引入附加错误。
在又另一示例中,可将微控制器上的接收器引脚驱动为低电平,以便引入帧错误。然而,将接收器引脚驱动为低电平以便充分引起帧错误的定时可根据被测UART所使用的波特率而变化。因此,可能会增加额外的复杂性,使得用于引入帧错误的技术可适应各种UART可能使用的不同波特率。本公开的示例的发明人已经发现了本公开的示例解决了这些问题中的一个或多个问题。
附图说明
图1是根据本公开的示例的用于在UART传输中引入并检测停止条件错误的示例性系统的图示。
图2是根据本公开的示例的利用发射寄存器的位反转将停止条件错误引入到UART传输中的时序图。
图3是根据本公开的示例的用于在UART传输中引入并检测停止条件错误的方法的图示。
具体实施方式
图1是根据本公开的示例的用于在单个UART中引入并检测帧错误的示例性系统100的图示。可通过例如引入停止条件错误来引入帧错误。停止条件错误可包括例如引入停止位错误。UART之间的通信可使用帧来执行。每一帧可具有起始条件和停止条件,指示帧的开始和帧的结束。可通过帧的序列中的预期值来实现停止条件。当UART在帧传输期间没有在停止位的预期时间看到停止位时,给定的UART可检测到成帧错误。由于起始位用于标识输入字符或帧的开始,所以起始位的定时可用作剩余位的参考,并且因此用于当预期停止位时的参考。如果当预期停止位时,数据线不处于预期状态(诸如逻辑高电平),考虑到UART设置的数据和奇偶位的数量,给定UART可确定成帧错误。
系统100可以在任何合适的环境内实现,诸如在控制器、微控制器、管芯、集成电路、片上系统、专用集成电路、现场可编程门阵列、计算机、移动设备或任何其他合适的电子设备内实现。在图1的示例中,系统100可由微控制器来实现。
系统100可包括UART 116。UART 116可由用于由处理器执行的指令、模拟电路、数字电路、控制逻辑部件、通过硬件描述语言编程的数字逻辑电路、专用集成电路(ASIC)、现场可编程门阵列(FPGA)、可编程逻辑器件(PLD)或它们的任何合适的组合来实现,无论是在单一设备中还是分布在若干设备上。系统100可包括比所示更多的UART 116的实例。然而,单个此类UART 116可被配置为引入并检测停止位错误。在UART 116的多个实例的情况下,UART 116的多个实例中的每个实例可引入并检测停止位错误。
系统100可包括用于提供来往于UART 116的通信的任何合适的外部端口,诸如TX端口130和RX端口118。此类端口130、118可由任何合适的电连接来实现。在各种示例中,端口130、118可为UART 116的管芯、板、芯片或其他封装的外部连接部。端口130、118可被配置为提供UART 116与其他设备上的UART的其他实例之间的通信。
系统100可包括任何其他合适种类和数量的元件。例如,系统100可包括通信地耦接到存储器104的处理器102。存储器104可包括指令,该指令当由处理器102加载和执行时可以实现由系统100执行的软件。系统100可包括系统总线106。系统总线106可以被配置为提供处理器102与系统100的其他部分(诸如UART 116)之间的通信。
在一个示例中,UART 116可为系统100的微控制器的外围设备。此类外围设备可以代表处理器102和系统100执行任务。该任务可由命令、用户输入、软件或处理器102的其他操作发起。一旦发起,此类任务可由外围设备独立于处理器102来执行。因此,处理器102可以将任务卸载到此类外围设备。当完成任务时,或根据其中处理器102或在其上执行的软件采取进一步动作的其他合适的标准,外围设备可例如生成对处理器102的中断。系统100的其他可能的外围设备可包括例如计数器108、数模转换器110、模数转换器112或I2C通信电路114。
UART 116可包括控制逻辑部件140。控制逻辑部件140可由模拟电路、数字电路、用于由处理器执行的指令或它们的任何合适的组合来实现。控制逻辑部件140可被配置为指导并控制UART 116引入帧错误或停止位错误的操作,如本公开中所述。
UART 116可包括接收寄存器诸如RXREG 126。RXREG 126可被配置为存储在UART116处被接收的一个或多个信息位(包括待接收的实质数据、帧信息或错误信息(诸如奇偶位)),诸如通过RX端口118接收的信息位。在RX端口118上接收的数据通常可从UART的另一实例接收,或者如果以回送方式配置则从UART 116接收。RXREG 126中的数据可由系统100的任何合适的部分(诸如由控制逻辑部件140)读取并使用。
UART 116可包括发射寄存器,诸如TXREG 128。TXREG 128可被配置为存储待由UART 116通过例如TX端口130发送的一个或多个信息位,包括待发送的实质数据、帧信息或错误信息(诸如奇偶位)。可由系统100的任何合适的部分(诸如由控制逻辑部件140、在处理器102上执行的软件或系统100的另一外围设备)生成待存储在TXREG 128中并通过TX端口130发送的数据。
UART 116可包括传输电路152以及错误和事件检测电路150。电路150、152可由用于由处理器执行的指令、模拟电路、数字电路、控制逻辑部件、通过硬件描述语言编程的数字逻辑电路、ASIC、FPGA、PLD或它们的任何合适的组合来实现,无论是在单一设备中还是分布在若干设备上。错误和事件检测电路150可被配置为检测所接收的帧中的错误。传输电路152可被配置为引起TXREG 128的内容的传输,并且可被配置为在传输期间添加起始位和停止位。
在一个示例中,UART 116可被配置为使用UART 116内可用的资源来引入帧错误。在另一示例中,UART 116可被配置为在不使用UART的附加实例的情况下引入帧错误。
UART 116可包括或被配置为使用任何合适的回送机制或反馈机制来将TX端口130和RX端口118绑定在一起,或者将TXREG 128和RXREG 126的输出绑定在一起。
在一个示例中,UART 116可包括或可以访问一个或多个虚拟可重新映射引脚。为了简化讨论,本文描述了单个虚拟可重新映射引脚,应当理解,可以提供多于一个虚拟可重新映射引脚。此类虚拟可重新映射引脚可以被配置为提供系统100的给定外围设备(诸如UART 116)之间或之内的连接。虚拟可重新映射引脚可由例如UART 116内部的或UART 116与系统100的其他元件之间的交换结构来实现。在一个示例中,虚拟可重新映射引脚可由软件控制的互连矩阵来实现。矩阵可以完全在UART 116内实现,或者在UART 116和UART 116所驻留的较大系统(诸如微控制器)内实现。虚拟可重新映射引脚通过控制逻辑部件140可为可编程的。控制逻辑部件140可继而对系统的其他部分进行编程调用以设置虚拟可重新映射引脚。该虚拟可重新映射引脚可为可编程的,以电绑定(即,连接)UART 116或系统100的两个端口。虚拟可重新映射引脚可用于将例如TX端口和RX端口或寄存器绑定在一起,或将RX端口或寄存器绑定到已知信号。例如,UART 116可包括可重新映射引脚RP 120。RP 120被示为在UART 116的外部,就好像这些是用于演示目的的物理引脚。此外,图1中示出了为了可读性提供的可重新映射引脚RP 120的两个表示。可重新映射引脚RP 120的单个实例被示为单独的实例,以示出来往于可重新映射引脚的信号的等效路由,尽管这些是单个实例。控制逻辑部件130可以被配置为将两个或更多个信号路由到同一可重新映射引脚。这可以具有连接两个或更多个信号的效果。这可以发生在UART 116内或系统100内。通过可重新映射引脚RP 120路由信号可由控制逻辑部件130通过指派和重新指派可重新映射引脚RP 120来编程地执行。然而,为了说明的目的,控制逻辑部件130通过可重新映射引脚RP 120路由信号的能力可被示为开关124。
在另一示例中,UART 116可利用使用端口130、118的外部回送连接。TX端口130的输出可连接到RX端口118。这可用任何合适的电路来选择性地启用或禁用,诸如通过开关138。开关138可由例如控制逻辑部件140控制。
待发送到TX端口130或RP 120的数据帧可存储在TXREG 128中。可根据针对UART设计的任何合适的传输方案来设置该数据帧。可包括任何合适的基础数据、奇偶信息、起始条件或停止条件。例如,可使用帧内的停止位或任何其他合适的停止信号或信息。在另一示例中,停止位可在帧内的第十位位置中,在起始位和八个数据位之后。在另一示例中,停止位可预期为逻辑高电平值。
本公开中示出的示例可以遵循该方案。在其他示例中,停止位可预期为逻辑低电平值或可出现于给定帧内的其他预期位置中。
帧信息(诸如停止条件)可由UART 116的任何合适的部分设置或检查。例如,UART116可包括帧错误校验电路136。帧错误校验电路136可由用于由处理器执行的指令、模拟电路、数字电路、控制逻辑部件、通过硬件描述语言编程的数字逻辑电路、ASIC、FPGA、PLD或它们的任何合适的组合来实现,无论是在单一设备中还是分布在若干设备上。此外,帧错误校验电路136可被配置为检查RXREG 126的内容并评估是否已经发生了帧错误。如上文所讨论,当未观察到停止条件(诸如停止位的正确值)时,可出现此类帧错误。帧错误校验电路136可部分地由事件和错误检测电路150来实现,反之亦然。
帧错误校验电路136可被配置为当在RXREG 126被接收时评估其内容并确定是否已经发生了帧错误。当RXREG 126的内容在预期位置中不包括停止位或停止条件时,可确定帧错误。如果已经发生了帧错误,则UART 116可采取任何合适的校正动作。如果未发生帧错误,则UART 116可继续处理RXREG 126中的信息。
控制逻辑部件140可被配置为使UART 116在测试模式和正常模式之间进行切换。测试模式可以基于任何合适的标准来使用。例如,测试模式可以在系统100启动时、周期性地、作为较大诊断测试的一部分、或者根据用户或系统软件的要求来执行。
在正常操作模式期间,其中不测试UART 116的帧错误校验能力,TXRED 128的输出可能不通过RP 120、TX端口130或RX端口118路由回到RXREG 126。开关138可例如断开TX端口130与RX端口118之间的回送路径。控制逻辑部件140可被配置为将TXREG 128的内容路由(未图示)到TX端口130。数据可从TX端口130发送到连接到TX端口130的其他实体(未示出)。此外,控制逻辑部件140可被配置为将内容从RX端口118路由(未示出)到RXREG 126。可由帧错误校验电路136针对在RXREG 126中接收到的数据对可能的帧错误进行校验。如果未检测到帧错误,则可处理所接收的数据。如果检测到帧错误,则可采取任何合适的校正动作。这些可包括例如请求信息的发送方(诸如另一个UART)重新发送数据,或者通知用户或系统100的软件实体。
在测试模式期间,其中待测试UART 116的帧错误校验能力,控制逻辑部件140可将TXREG 128的输出连接到UART 116的输入。在一个示例中,控制逻辑部件140可将TXREG 128的输出连接到RP 120,该RP可被连接到UART 116的输入用于进入RXREG 126。在另一示例中,控制逻辑部件140可通过开启开关138将TXREG 128的输出连接到TX端口130,并且将TX端口130连接到RX端口118。
在测试模式期间,控制逻辑部件140可被配置为在从TXREG 128发出并路由到RXREG 126的帧中引起帧错误。在一个示例中,控制逻辑部件140可被配置为当从TXREG 128发出帧时在该帧中引起的帧错误。帧错误可由人为产生的不正确停止条件或停止位引起。在另一示例中,控制逻辑部件140可被配置为当在RXREG 126处接收到帧时在帧中引起帧错误。控制逻辑部件140可被配置为以任何合适的方式在帧中引起帧错误。在各种示例中,控制逻辑部件140可被配置为改变位反转寄存器,以便在所传输帧中引起帧错误。位反转寄存器可用于引起人为产生的不正确停止条件或停止位。在各种示例中,控制逻辑部件140可被配置为在帧中引入错误的停止位,以便引起帧错误。在各种示例中,控制逻辑部件140可被配置为在帧中引入错误的停止位,以便通过改变位反转寄存器而引起帧错误。
位反转可包括将位的状态改变为相反状态,或者根据其相反状态来评估位。位反转寄存器可定义给定寄存器的内容是待用位反转来传输还是解释。尽管被称为寄存器,但是位反转寄存器可以任何合适的方式实现,诸如通过单个位,以及任何合适的控制逻辑部件。在一个示例中,UART 116可包括或可通信地耦合到用于数据传输的反转位寄存器。反转位寄存器可针对任何合适的数量和种类的寄存器定义反相位传输或解释。例如,可由TXINV寄存器或控制信号134定义TXREG 126将用位反转来传输还是解释。
在各种示例中,控制逻辑部件140选择性地设置TX INV寄存器或控制信号134,以便引起帧错误。帧错误可由错误的停止位引起。控制逻辑部件140可被配置为选择性地设置TX INV寄存器或控制信号134,以便在给定帧的停止位中引起错误从而引起帧错误。在一个示例中,控制逻辑部件140可被配置为选择性地改变TX INV寄存器或控制信号134的值,以便引起停止位错误。在各种示例中,控制逻辑部件140可被配置为在帧的传输期间选择性地改变TX INV寄存器或控制信号134的值,以便引起停止位错误。在各种示例中,控制逻辑部件140可被配置为在帧的传输期间并在起始位或起始条件之后选择性地改变TX INV寄存器或控制信号134的值,以便引起停止位错误。在各种示例中,控制逻辑部件140可被配置为在帧的传输期间选择性地改变TX INV寄存器或控制信号134的值,以便引起停止位错误。在各种示例中,控制逻辑部件140可被配置为在帧的传输期间、在起始位或起始条件之后并在帧的结束之前(涵盖当预期停止位时)选择性地改变TX INV寄存器或控制信号134的值,以便引起停止位错误。
在接收到帧后,在预期停止位的时间,帧错误校验电路136可校验RXREG 126的内容以确定停止位是否为逻辑一。在正常、正确的传输中可预期逻辑一。为了引起由停止位错误引起的帧错误,控制逻辑部件140可被配置为在测试模式中的帧的传输期间选择性地改变TX INV寄存器或控制信号134的值或引起该值的改变。TX INV寄存器或控制信号134的改变值可被配置为人为地引起停止位为逻辑零。如上文所讨论,这可在测试模式中执行,以便测试UART 116的错误校验能力。在预期停止位的时间处的逻辑零可使得帧错误校验电路136产生帧错误。
在各种实施方案中,可替代地在停止位的时间处预期逻辑零值。
UART 116可被实现为例如功能安全诊断软件的一部分,其中诊断的目的是测试包括设备中可用的硬件错误检测机制的模块的功能。该用于UART的软件诊断用于在汽车ECU中运行的应用软件,以校验UART中的帧错误校验制是否正在工作。UART 116的测试可在不依赖于其他UART的情况下进行测试。
图2是根据本公开的示例将停止条件错误引入到UART传输中的时序图。为了简化说明,省略了系统的各个部分之间的传播延迟,并且传输被示为瞬时的。图2所示的数据可反映TXREG 128的内容,可由例如控制逻辑部件140或系统100的任何其他合适的部分生成该内容。图2中示出的迹线是TXREG 128的内容、TXINV寄存器或控制信号134、作为来自UART116或在UART 116内的输出的到RXREG 126的TXREG 128的输出(表示为TX)(其可包括通过RP 120或TX 130的传输)、作为来自UART 116或在UART 116内的从TXREG 128到RXREG 126的输入(表示为RX)(其可包括通过RP 120或TX 130的传输)以及RXREG 126的内容。
Y轴可由任何合适的时间增量定义。例如,微秒在图2中示出。
在图2的示例中,可发送包括起始条件、数据位00011100、奇偶位1和停止位1的数据帧。该帧可被加载到TXREG 128中。
在2微秒处,可开始从TXREG 128发送帧。可清除或以其他方式设置TX INV寄存器或控制信号134,使得不使用位反转并影响起始条件。可传输起始条件(诸如起始位)。RXREG126处的预期值和接收值可为在2微秒处的起始位的逻辑低电平值。
在4微秒处,可开始传输帧的数据。根据传输协议和帧数据长度的定义,可在任何合适的时间长度内传输帧的数据。例如,可传输八比特数据。出于测试帧错误的目的,可忽略图2所示的示例中在该时间范围中的数据值,但可操纵该值以用于其他测试,诸如奇偶错误测试。
在帧的数据传输中的任何点处,在起始位的传输之后并且在停止位的传输之前,位反转寄存器的值可改变。
在图2中,TX INV寄存器或控制信号134可在2微秒与4微秒之间改变,使得将位反转应用于从TXREG 128发送的数据。TX INV寄存器或控制信号134可在22微秒与24微秒之间复位。
结果,在22微秒处,在RXREG 126处接收到的数据值可以是逻辑低电平,而不是逻辑高电平。这可能是停止位错误,并且可能引起帧错误。帧错误校验电路136观察到该情况,并可能产生帧错误。控制逻辑部件140可评估帧错误校验电路136是否响应于人为产生的停止位错误而正确地产生帧错误,如果否,则采取任何合适的校正动作。
在引起停止位错误之后,可再次切换位反转寄存器的值,使得位反转寄存器的值与3微秒处的值相同。因此,UART 116可能不会将TXREG 128的接收值上的连续逻辑低电平值解释为中断信号。
图3是根据本公开的示例的用于在UART(即,在单个UART中)引入并检测帧错误的示例性方法300的图示。
方法300可由任何合适的机制执行,诸如图1至图3的系统,并且特别是控制逻辑部件140和帧错误校验电路136。方法300可包含比图3所示更多或更少的步骤。此外,方法300的各个步骤可重复、省略、跳过、以不同的顺序执行、并行地执行或递归地执行。
在305处,可初始化UART。
在310处,可确定是在正常模式下操作UART还是在测试模式下操作UART。可由UART的用户按需、周期性地、在启动时、或在任何其他合适的基础上作出进入测试模式的决定。如果在正常模式下操作UART,则方法300可前进到315。否则,如果在测试模式下操作UART,则方法300可前进到330。
在315处,可将数据从UART传输到另一UART,或者可在UART处接收来自另一UART的数据。待传输的数据可存储在TXREG中。所接收的数据可存储在RXREG中。可检查所接收的数据以寻找预期的停止位。
在320处,可确定是否存在停止位错误。如果否,则方法300可返回到310。如果是,则方法30可前进到325。
在325处,可对停止位错误采取任何合适的校正动作,诸如生成错误信号、生成警报或请求由发送UART重新发送帧。方法300可返回到310。
在330处,可将TXREG的内容发送到RXREG。内容可通过可重新映射引脚发送,该可重新映射引脚可在TXREG与RXREG之间映射,使得TXREG的输出将传播到RXREG,或者通过设置开关138发送。可开始倒计时直到设置控制信号或反转寄存器(诸如TXINV 134)的合适时间为止。可在发送TXREG的停止位之前设置和发送控制信号。控制信号可使得在TXREG与RXREG之间发送的内容反转,其可包括停止位。停止位的反转值可引起停止位错误,并且更具体来说引起帧错误。
在335处,可确定是否将设置并发送控制信号或反转寄存器。如果是,则方法300可前进到340。否则,方法300可重复335一个或多个附加时钟周期。
在340处,系统可等待到当停止位传播到RXREG时。
在345处,可确定是否接收到预期的停止位。如果是,则方法300可前进到355。否则,方法300可前进到350。
在350处,可确定执行345的帧错误校验电路不正常地工作。可以执行任何合适的校正动作,诸如向UART的用户的警报。方法300可返回到310。
在355处,可确定执行350的帧错误校验电路正常地工作。方法300可返回到310。
本公开的实施方案可包括一种装置。装置可包括发射寄存器,该发射寄存器包括待由UART发射的信息。装置可包括接收寄存器,该接收寄存器包括由UART接收的信息。装置可包括位反转寄存器或控制信号,该位反转寄存器或控制信号被配置为使得所发射或所接收的信息被反转。装置可包括帧错误校验电路,该帧错误校验电路被配置为针对帧错误评估接收寄存器的内容。装置可包括控制逻辑部件,该控制逻辑部件被配置为将发射寄存器的内容路由到接收寄存器。控制逻辑部件可由用于由处理器执行的指令、模拟电路、数字电路、控制逻辑部件、通过硬件描述语言编程的数字逻辑电路、ASIC、FPGA、PLD或它们的任何合适的组合来实现,无论是在单一设备中还是分布在若干设备上。控制逻辑部件可被配置为修改位反转寄存器或发出位反转信号,以使得修改内容被提供给接收寄存器。修改内容可被配置为引起帧错误。控制逻辑部件可被配置为确定帧错误校验电路是否检测到帧错误。
结合上述实施方案中的任一者,控制逻辑部件可被配置为从错误的停止位的检测来确定是否存在帧错误。错误的停止位可由位反转寄存器或位反转信号引入。位反转寄存器或位反转信号可由传输电路处理。帧的错误可由错误和事件处理电路或帧错误校验电路来检测。这些电路可由用于由处理器执行的指令、模拟电路、数字电路、控制逻辑部件、通过硬件描述语言编程的数字逻辑电路、ASIC、FPGA、PLD或它们的任何合适的组合来实现,无论是在单一设备中还是分布在若干设备上。
结合上述实施方案中的任一者,位反转寄存器或位反转信号可以是反转位或用于对发射寄存器的内容的传输进行反转的信号。
结合上述实施方案中的任一者,位反转寄存器或位反转信号可以是用于对接收寄存器的内容的接收进行反转的反转位。
结合上述实施方案中的任一者,控制逻辑部件可用于在接收寄存器处接收到帧的起始位之后修改位反转寄存器或发出位反转信号。
结合上述实施方案中的任一者,控制逻辑部件可用于在接收寄存器处预期帧的停止位之前修改位反转寄存器或发出位反转信号。
结合上述实施方案中的任一者,控制逻辑部件可用于修改位反转寄存器或发出位反转信号以引起停止位错误,该停止位错误引起帧错误。
结合上述实施方案中的任一者,控制逻辑部件可用于修改位反转寄存器或发出位反转信号,以通过在当预期停止位时的时间处对在接收寄存器处的预期值进行反转而引起停止位错误。
尽管上文已描述了示例,但在不脱离这些示例的实质和范围的情况下,本公开可具有其他变型和示例。

Claims (21)

1.一种装置,包括:
发射寄存器,所述发射寄存器包括待由通用异步接收器/发射器(UART)发射的信息;
接收寄存器,所述接收寄存器包括由所述UART接收的信息;
帧错误校验电路,所述帧错误校验电路针对帧错误评估所述接收寄存器的内容;和
控制逻辑部件,所述控制逻辑部件:
将所述发射寄存器的内容路由到所述接收寄存器;
修改位反转寄存器或发出位反转信号以使得修改内容被提供给所述接收寄存器,所述修改内容引起帧错误,所述位反转寄存器或位反转信号使得所发射或所接收的信息被反转;以及
确定所述帧错误校验电路是否检测到所述帧错误。
2.根据权利要求1所述的装置,其中所述位反转寄存器是用于对所述发射寄存器的所述内容的传输进行反转的位反转位。
3.根据权利要求1至2中任一项所述的装置,其中所述位反转寄存器是用于对所述接收寄存器的所述内容的接收进行反转的位反转位。
4.根据权利要求1至3中任一项所述的装置,其中所述控制逻辑部件在所述接收寄存器处接收到所述帧的起始位之后修改所述位反转寄存器。
5.根据权利要求1至4中任一项所述的装置,其中所述控制逻辑部件在所述接收寄存器处预期所述帧的停止位之前修改所述位反转寄存器。
6.根据权利要求1至5中任一项所述的装置,其中所述控制逻辑部件修改所述位反转寄存器以引起停止位错误,所述停止位错误引起所述帧错误。
7.根据权利要求6所述的装置,其中所述控制逻辑部件修改所述位反转寄存器,以通过在当预期所述停止位时的时间处对在所述接收寄存器处的预期值进行反转而引起所述停止位错误。
8.一种方法,包括在通用异步接收器/发射器(UART)中,所述UART:
将发射寄存器的内容路由到接收寄存器,所述发射寄存器包括待由所述UART发射的信息,所述接收寄存器包括由所述UART接收的信息;
修改位反转寄存器或发出位反转信号以使得修改内容被提供给所述接收寄存器,所述修改内容引起帧错误,所述位反转寄存器或位反转信号使得所发射或所接收的信息被反转;
以及帧错误校验电路,所述帧错误校验电路针对帧错误评估所述接收寄存器的内容;以及
确定所述帧错误校验电路是否检测到所述帧错误。
9.根据权利要求8所述的方法,其中所述位反转寄存器或位反转信号是用于对所述发射寄存器的所述内容的传输进行反转的位反转位,并且使得修改内容包括对所述发射寄存器的所述内容进行反转。
10.根据权利要求8至9中任一项所述的方法,其中所述位反转寄存器或位反转信号是用于对所述接收寄存器的所述内容的接收进行反转的位反转位,并且使得修改内容包括对所述接收寄存器的所述内容进行反转。
11.根据权利要求8至10中任一项所述的方法,包括在所述接收寄存器处接收到所述帧的起始位之后修改所述位反转寄存器或发出所述位反转信号。
12.根据权利要求8至11中任一项所述的方法,包括在所述接收寄存器处预期所述帧的停止位之前修改所述位反转寄存器或发出所述位反转信号。
13.根据权利要求8至12中任一项所述的方法,包括修改所述位反转寄存器或发出所述位反转信号以引起停止位错误,所述停止位错误引起所述帧错误。
14.根据权利要求13所述的方法,包括修改所述位反转寄存器或发出所述位反转信号,以通过在当预期所述停止位时的时间处对在所述接收寄存器处的预期值进行反转而引起所述停止位错误。
15.一种微控制器,包括:
通用异步接收器/发射器(UART),
发射寄存器,所述发射寄存器包括要由所述UART发射的信息;
接收寄存器,所述接收寄存器包括由所述UART接收的信息;
帧错误校验电路,所述帧错误校验电路针对帧错误评估所述接收寄存器的内容;和
控制逻辑部件,所述控制逻辑部件:
将所述发射寄存器的所述内容路由到所述接收寄存器;
修改位反转寄存器或发出位反转信号以使得修改内容被提供给所述接收寄存器,所述修改内容引起帧错误,所述位反转寄存器或位反转信号使得所发射或所接收的信息被反转;以及
确定所述帧错误校验电路是否检测到所述帧错误。
16.根据权利要求15所述的微控制器,其中所述位反转寄存器或或位反转信号是用于对所述发射寄存器的所述内容的传输进行反转的位反转位。
17.根据权利要求15至16中任一项所述的微控制器,其中所述位反转寄存器或位反转信号是用于对所述接收寄存器的所述内容的接收进行反转的位反转位。
18.根据权利要求15至17中任一项所述的微控制器,其中所述控制逻辑部件在所述接收寄存器处接收到所述帧的起始位之后修改所述位反转寄存器或发出所述位反转信号。
19.根据权利要求15至18中任一项所述的微控制器,其中所述控制逻辑部件在所述接收寄存器处预期所述帧的停止位之前修改所述位反转寄存器或发出所述位反转信号。
20.根据权利要求15至19中任一项所述的微控制器,其中所述控制逻辑部件修改所述位反转寄存器或发出所述位反转信号以引起停止位错误,所述停止位错误引起所述帧错误。
21.根据权利要求20所述的微控制器,其中所述控制逻辑部件修改所述位反转寄存器或发出所述位反转信号,以通过在当预期所述停止位时的时间处对在所述接收寄存器处的预期值进行反转而引起所述停止位错误。
CN202280030846.2A 2021-09-29 2022-09-29 在单个uart中引入和检测错误的停止条件 Pending CN117242434A (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
IN202111044129 2021-09-29
US17/948,616 US20230101045A1 (en) 2021-09-29 2022-09-20 Introduction and Detection of Erroneous Stop Condition in a Single UART
US17/948,616 2022-09-20
PCT/US2022/045137 WO2023055871A1 (en) 2021-09-29 2022-09-29 Introduction and detection of erroneous stop condition in a single uart

Publications (1)

Publication Number Publication Date
CN117242434A true CN117242434A (zh) 2023-12-15

Family

ID=89091639

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202280030846.2A Pending CN117242434A (zh) 2021-09-29 2022-09-29 在单个uart中引入和检测错误的停止条件

Country Status (1)

Country Link
CN (1) CN117242434A (zh)

Similar Documents

Publication Publication Date Title
US6675284B1 (en) Integrated circuit with multiple processing cores
US7681093B2 (en) Redundant acknowledgment in loopback entry
JP2017528830A (ja) 修正型uartインターフェースを有する可変フレーム長仮想gpio
US7631229B2 (en) Selective bit error detection at a bus device
CN108920401B (zh) 多主多从的i2c通信方法、系统及节点设备
CN111078614A (zh) 一种基于fpga的功能模块
TW201716924A (zh) 具有位元級確認及錯誤校正之串列介面
CN117242434A (zh) 在单个uart中引入和检测错误的停止条件
US20230101045A1 (en) Introduction and Detection of Erroneous Stop Condition in a Single UART
CN109582634B (zh) 总线系统
US20050262184A1 (en) Method and apparatus for interactively training links in a lockstep fashion
US6862647B1 (en) System and method for analyzing bus transactions
WO2023055871A1 (en) Introduction and detection of erroneous stop condition in a single uart
US11928022B2 (en) Introduction and detection of parity error in a UART
CN113778796A (zh) 一种通过usb监控串口通信的方法
WO2023283074A1 (en) Introduction and detection of parity error for self testing of a universal asynchronous receiver transmitter
CN116888914A (zh) 用于通用异步接收器发射器的自测的奇偶错误的引入和检测
JP3473951B2 (ja) データ処理装置およびシステム
KR102519484B1 (ko) PCIe 인터페이스 장치 및 이를 포함하는 시스템
KR102663807B1 (ko) 자체 진단 기능을 가지는 비동기식 직렬 통신장치
CN107835012B (zh) 现场可编程门阵列及其模块间同步信号的传递方法
US7596724B2 (en) Quiescence for retry messages on bidirectional communications interface
KR920000701Y1 (ko) 자기고장 진단기능을 구비한 인터페이스장치
CN118101554A (zh) 板载双系统通信链路备份方法、装置及电子设备
JPS6387050A (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