CN114490488A - 一种低功耗uart串口系统 - Google Patents

一种低功耗uart串口系统 Download PDF

Info

Publication number
CN114490488A
CN114490488A CN202011267897.6A CN202011267897A CN114490488A CN 114490488 A CN114490488 A CN 114490488A CN 202011267897 A CN202011267897 A CN 202011267897A CN 114490488 A CN114490488 A CN 114490488A
Authority
CN
China
Prior art keywords
data
module
baud rate
rate detection
clock
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
Application number
CN202011267897.6A
Other languages
English (en)
Other versions
CN114490488B (zh
Inventor
王君竹
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.)
Xinyi Information Technology Shanghai Co ltd
Original Assignee
Xinyi Information Technology Shanghai Co ltd
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
Application filed by Xinyi Information Technology Shanghai Co ltd filed Critical Xinyi Information Technology Shanghai Co ltd
Priority to CN202011267897.6A priority Critical patent/CN114490488B/zh
Publication of CN114490488A publication Critical patent/CN114490488A/zh
Application granted granted Critical
Publication of CN114490488B publication Critical patent/CN114490488B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4282Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
    • G06F13/4291Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus using a clocked protocol
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/04Generating or distributing clock signals or signals derived directly therefrom
    • G06F1/08Clock generators with changeable or programmable clock frequency
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/04Generating or distributing clock signals or signals derived directly therefrom
    • G06F1/14Time supervision arrangements, e.g. real time clock
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/324Power saving characterised by the action undertaken by lowering clock frequency
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/3287Power saving characterised by the action undertaken by switching off individual functional units in the computer system
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Abstract

本发明提供了一种低功耗UART串口系统,包括数据收发模块、波特率检测模块、存储器模块、中断逻辑控制模块和外围总线模块,所述数据收发模块包括接收端和发射端,所述接收端的输入接口接收外部数据,所述接收端的输出接口与所述波特率检测模块连接,外部数据通过所述波特率检测模块进行波特率检测,所述波特率检测模块的输出端分别与所述存储器模块、所述发射端的输入接口连接,所述存储器模块与所述外围总线模块连接,所述外围总线模块的输出端与外部设备连接,所述存储器模块与所述外围总线模块之间还连接有中断逻辑控制模块以产生中断,能够对低频率的时钟信号进行数据收发并进行波特率自动检测,而且系统功耗低。

Description

一种低功耗UART串口系统
技术领域
本发明涉及芯片设计技术领域,尤其涉及一种低功耗UART串口系统。
背景技术
通用异步收发传输器通常称作UART,它将要传输的资料在串行通信与并行通信之间加以转换,作为把并行输入信号转成串行输出信号的芯片,UART通常被集成于其他通讯接口的连结上。
具体实物表现为独立的模块化芯片,或作为集成于微处理器中的周边设备,一般是RS-232C规格的,与类似Maxim的MAX232之类的标准信号幅度变换芯片进行搭配,作为连接外部设备的接口。
一般的UART包括如下结构:⑴输出缓冲寄存器,用于接收CPU从数据总线上送来的并行数据,并加以保存;⑵输出移位寄存器,用于接收从输出缓冲器送来的并行数据,以发送时钟的速率把数据逐位移出,即将并行数据转换为串行数据输出;⑶输入移位寄存器,用于接收时钟的速率把出现在串行数据输入线上的数据逐位移入,当数据装满后,并行送往输入缓冲寄存器,即将串行数据转换成并行数据;⑷输入缓冲寄存器,用于从输入移位寄存器中接收并行数据,然后由CPU取走;⑸控制寄存器,用于接收CPU送来的控制字,由控制字的内容,决定通信时的传输方式以及数据格式等。例如采用异步方式还是同步方式,数据字符的位数,有无奇偶校验,是奇校验还是偶校验,停止位的位数等参数;⑹状态寄存器,状态寄存器中存放着接口的各种状态信息,例如输出缓冲区是否空,输入字符是否准备好等。在通信过程中,当符合某种状态时,接口中的状态检测逻辑将状态寄存器的相应位置“1”,以便让CPU查询。
在现有技术中的UART串口使用工作的过程中,对于一些低频率的时钟,很难实现波特率的自动检测。
因此,有必要提供一种新型的低功耗UART串口系统以解决现有技术中存在的上述问题。
发明内容
本发明的目的在于提供一种低功耗UART串口系统,能够针对低频率的时钟信号可以准确有效的进行波特率检测。
为实现上述目的,本发明的所述一种低功耗UART串口系统,包括数据收发模块、波特率检测模块、存储器模块、中断逻辑控制模块和外围总线模块,所述数据收发模块包括接收端和发射端,所述接收端的输入接口接收外部数据,所述接收端的输出接口与所述波特率检测模块连接,外部数据通过所述波特率检测模块进行波特率检测,所述波特率检测模块的输出端分别与所述存储器模块、所述发射端的输入接口连接,所述存储器模块与所述外围总线模块连接,所述外围总线模块的输出端与外部设备连接,所述存储器模块与所述外围总线模块之间还连接有中断逻辑控制模块以产生中断。
本发明的有益效果在于:通过上述各个模块构成的UART串口系统,针对波特率较低的时钟信号,能够实现信号的正确收发,并对波特率进行准确检测,同时在没有数据收发的时候,整个系统暂停系统时钟以及波特率采样信号,从而降低系统功耗。
进一步的,还包括数据处理模块,所述数据处理模块设置在所述波特率检测模块内部,所述接收端的输出接口传输的外部数据通过所述数据处理模块处理后传输到所述波特率检测模块。其有益效果在于:通过数据处理模块采样时钟较低时进行处理,不仅避免了一部分采样误差,扩大了对于采样信号的误差容忍度,而且给输入数据信号确定了规则,保证最终数据信号的唯一性。
进一步的,所述数据处理模块包括第一触发器、第二触发器、第三触发器和数据选择器,所述第一触发器和所述第二触发器的S输入端均与所述接收端的输出接口连接,所述第一触发器和所述第二触发器的Q输出端与所述数据选择器的输入端连接,所述第一触发器的CP端输入时钟上升沿,所述第二触发器的CP端输入时钟下降沿,以使得所述第一触发器和第二触发器提取先被时钟上升沿或者时钟下降沿采集到的的数据,所述数据选择器的输出端与所述第三触发器的S输入端连接,所述第三触发器的Q输出端与所述波特率检测模块连接以输出外部数据,所述第三触发器的CP端输入时钟上升沿,以使得输出的所述外部数据通过时钟上升沿同步。
进一步的,还包括序列检测模块,所述序列检测模块与所述波特率检测模块电连接,用以检测可配置的唯一序列,并在检测成功后使得所述波特率检测模块自动打开接收使能以使所述接收端开始接收数据。其有益效果在于:通过序列检测模块进行序列检测,在出现可配置的唯一序列之后打开接收使能,以实现接收数据的自动控制。
进一步的,所述波特率检测模块内部设置有移位相减除法器,在所述波特率检测模块获取所述外部数据的时钟之后,所述移位相减除法器对所述时钟计算获得商和余数,以实现小数分频。其有益效果在于:通过移位相减除法器对采集到的的时钟信号进行处理以获得波特率,在波特率为小数的时候实现小数分频。
进一步的,在所述移位相减除法器获得的波特率为小数时,所述采样点根据预设规律进行进位,且在所述采样点进行数据翻转时通过系统时钟对采样点进行数据同步矫正。其有益效果在于:使得小数的波特率能够在系统上进行分频,从而便于准确确定时钟信号大小,以便于获得准确的波特率。
进一步的,在所述波特率检测模块计算得到波特率并传输至外部设备之后没有数据收发时,所述系统关闭系统时钟进入低功耗模式;当所述系统内存在数据收发时,所述系统使能系统时钟,关闭低功耗模式以使所述系统恢复正常。其有益效果在于:在没有数据收发的时候进入低功耗模式,降低系统功耗。
进一步的,所述中断逻辑控制模块产生唤醒中断的条件包括任意收到数据产生、指定的1字节数据匹配产生或者指定的连续2字节数据匹配产生中的至少一种。其有益效果在于:在上述条件下产生唤醒中断以唤醒系统时钟,实现系统在低功耗模式与正常状态下的自由切换。
进一步的,在所述系统时钟被唤醒之后,当所述系统出现寄存器读写、所述数据收发模块在接收数据、所述数据收发模块在发送数据且所述存储器模块不为空、产生唤醒中断、或者所述存储器模块出现状态变化的至少一种情况时,所述系统时钟不暂停,否则所述系统时钟暂停。其有益效果在于:在出现上述情况的时候,系统时钟不会暂停,保证在上述情况下系统正常运行,不会进入低功耗模式。
进一步的,在所述系统切换收发模式的时候,所述系统自动清空所述存储器模块的数据。其有益效果在于:保证系统在切换收发模式的时候,存储器模块内部不会出现多余的数据产生影响。
进一步的,在所述波特率检测模块对波特率进行自动检测的时候,通过移位相减除法器获得商和余数,当所述商小于5时,无法进行自动波特率检测;当所述商小于10且不小于5时,所述数据收发模块的接收端的误差容忍度小于±2%,且不支持奇偶校验;当所述商不小于10时,所述数据收发模块的接收端的误差容忍度不小于±2%且支持奇偶校验。其有益效果在于:根据移位相减除法器获取的商的数值大小来限制不同的误差容忍度,保证时钟信号检测结果的准确性,减小误差。
进一步的,在所述波特率检测模块为手动配置波特率模式的时候,所述数据收发模块的发送端的误差容忍度不小于±3%。其有益效果在于:通过限制手动配置波特率时的数据发送端的误差容忍度,保证发送数据的准确性,减小误差。
进一步的,所述波特率检测模块通过与外部控制器连接以实现自动波特率检测模式和手动配置波特率模式的切换。
进一步的,所述低功耗UART串口系统监测的时钟大小范围为32kHz~50MHz。
附图说明
图1为本发明的系统组成结构框图;
图2为本发明的数据处理模块的电路结构示意图;
图3为本发明的移位相减除法器工作过程示意图;
图4为本发明的时钟信号在采样点向右移动一个时钟周期的处理过程示意图;。图中标号:
1-数据收发模块;2-波特率检测模块;3-存储器模块;4-中断逻辑控制模块;5-外围总线模块;6-数据处理模块;7-序列检测模块;
11-接收端;12-发射端;
61-第一触发器;62-第二触发器;63-第三触发器;64-数据选择器。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。除非另外定义,此处使用的技术术语或者科学术语应当为本发明所属领域内具有一般技能的人士所理解的通常意义。本文中使用的“包括”等类似的词语意指出现该词前面的元件或者物件涵盖出现在该词后面列举的元件或者物件及其等同,而不排除其他元件或者物件。
针对现有技术存在的问题,如图1和图2所示,本发明的实施例提供了一种低功耗UART串口系统,包括数据收发模块1、波特率检测模块2、存储器模块3、中断逻辑控制模块4和外围总线模块5,所述数据收发模块1包括接收端11和发射端12,所述接收端11的输入接口接收外部数据,所述接收端11的输出接口与所述波特率检测模块2连接,外部数据通过所述波特率检测模块2进行波特率检测,所述波特率检测模块2的输出端分别与所述存储器模块3、所述发射端12的输入接口连接,所述存储器模块3与所述外围总线模块5连接,所述外围总线模块5的输出端与外部设备连接,所述存储器模块3与所述外围总线模块5之间还连接有中断逻辑控制模块4以产生中断。
在上述系统中,外部数据通过数据收发模块1的接收端11的输入接口进入,之后传输到波特率检测模块2之中进行波特率检测,其中包括自动波特率检测和手动配置波特率,而获取后的波特率数据传输到存储器模块3之中并通过外围总线模块5传输到外部设备,实现数据传输处理,而通过外围总线模块5进入系统的数据信号,经过波特率检测模块2处理之后,储存在存储器模块3之中,并通过数据收发模块1的发射端12传输到外部,从而实现数据收发模式的自由切换。
通过本系统不仅可以对频率低的时钟信号进行正确收发处理,还能够对波特率进行自动检测以及手动配置波特率,而在没有数据收发的时候通过暂停系统时钟以进入低功耗模式,从而降低系统功耗,有效解决了低功耗下低频率的时钟信号波特率检测的问题。
在本系统中,通过波特率检测模块3可实现波特率自动检测以及手动配置波特率,采用半双工外部接口实现数据或收或发,其中收发数据长度为1个字节,一个开始位和一个结束位,可配置奇偶校验对数据进行校验。
在系统工作时,上电之后即可开始工作,默认为数据接收模式,即接收端11接受数据并通过波特率检测模块3对波特率进行自动检测。
在进行波特率自动检测的时候,具体过程如下:
因为UART协议的开始位为0,令发送端发送0x00到本系统的数据收发模块1的接收端11,接收端11会收到一共9比特的0,将该9比特的0的长度(即采样时钟采样得到的个数),除以9即可得到1比特的时钟个数,即为波特率。
进一步的,在实际处理的过程中,由于计算得到的波特率的数值不一定为整数,有时候为小数,而低功耗的UART串口系统的时钟精度较低,为了解决上述问题,在所述波特率检测模块2内部设置有移位相减除法器,在所述波特率检测模块2获取所述外部数据的时钟之后,所述移位相减除法器对所述时钟计算获得商和余数,以实现小数分频,其具体的处理过程如图3所示,在通过移位相减除法器得到相应的商和余数之后,匹配对应的采样规则。
在一种可能的实施方式中,在所述移位相减除法器获得的波特率为小数时,所述采样点根据预设规律进行进位,且在所述采样点进行数据翻转时通过系统时钟对采样点进行数据同步矫正,如图4所示,在数据收发模式下,采用脉冲删除计数法,在相应的位置将采样点向右移动一个时钟周期,即可实现小数分频的波特率。
由于输入的外部数据会进行数据翻转,在翻转的过程中,通过本方案中的串口系统的系统时钟对外部数据进行数据同步矫正,以提高输入的数据的准确性。
在一些实施例中,所述预设规律具体为:当波特率获得的商n为奇数时,第一个比特的采样点在第(n/2+1)个时钟上升沿;在波特率获得的商n为偶数时,第一个比特的采样点在第(n/2)个时钟上升沿;而当波特率获得的余数m为连续1或0时,采样点向右移动一个采样时钟;余数为m为0时,第9个比特采样点向后移动1个采样时钟;余数m为1时,第4个比特采样点和第9个比特采样点向后移动一个采样时钟;余数m为2时,第3个比特采样点、第6个比特采样点和第9个比特采样点向后移动一个采样时钟;余数m为3时,第3个比特采样点、第7个比特采样点和第9个比特采样点向后移动一个采样时钟;余数m为4时,第2个比特采样点、第4个比特采样点、第6个比特采样点、第7个比特采样点和第9个个比特采样点向后移动一个采样时钟;在余数m为5时,第2个比特采样点、第3个比特采样点、第5个比特采样点、第6个比特采样点、第8个比特采样点、第9个比特采样点向后移动一个采样时钟;余数m为6时,第2个比特采样点、第3个比特采样点、第4个比特采样点、第5个比特采样点、第6个比特采样点、第8个比特采样点、第9个比特采样点和第10个比特采样点向后移动一个采样时钟;余数m为7或8时,所有采样点都右移一个采样时钟。
需要说明的是,上述的预设规律可以根据实际情况选择,本发明对此没有特别限制,此处不再赘述。
进一步的,所述低功耗UART串口系统监测的时钟大小范围为32kHz~50MHz,主要针对频率较低的时钟信号进行波特率检测。
在一种可能的实施方式中,在所述波特率检测模块2计算得到波特率并传输至外部设备之后没有数据收发时,所述系统关闭系统时钟进入低功耗模式;当所述系统内存在数据收发时,所述系统使能系统时钟,关闭低功耗模式以使所述系统恢复正常降低系统功耗。
在一种可能的实施方式中,所述波特率检测模块2通过与外部控制器连接以实现自动波特率检测模式和手动配置波特率模式的切换,其中外部控制器可以为计算机设备。
在一种可能的实施方式中,还包括数据处理模块6,所述数据处理模块6设置在所述波特率检测模块2内部,所述接收端11的输出接口传输的外部数据通过所述数据处理模块6处理后传输到所述波特率检测模块2,由于在采样时钟很低的情况下,容易出现采样误差,为了避免一部分采样误差,通过数据处理模块6对接收到的数据信号进行处理,不仅可以扩大对于采样信号的误差容忍度,还对输入数据信号确定了规则,保证在对输入数据信号进行处理时输出结果的唯一性。
在一种可能的实施方式中,如图2所示,所述数据处理模块6包括第一触发器61、第二触发器62、第三触发器63和数据选择器64,所述第一触发器61和所述第二触发器62的S输入端均与所述接收端11的输出接口连接,所述第一触发器61和所述第二触发器62的Q输出端与所述数据选择器64的输入端连接,所述数据选择器64的输出端与所述第三触发器63的S输入端连接,所述第三触发器63的Q输出端与所述波特率检测模块2连接以输出外部数据,所述第一触发器61的CP端输入时钟上升沿,所述第二触发器62的CP端输入时钟下降沿,所述第三触发器63的CP端输入时钟上升沿。
在具体进行数据处理的时候,外部数据通过接收端11进入之后,分别通过第一触发器61和第二触发器62的S输入端,之后传输到数据选择器64,从而同时提取先被时钟上升沿或者下降沿采集到的数据,之后采集到的数据通过第三触发器63进行上升沿同步,即第三触发器63采用的是同步触发器,通过触发器上下沿同时采样的方式,提取先被时钟上升沿或时钟下降沿采集到的数据,再用时钟上升沿同步,从而当数据长度大于0.5时钟周期的时候,得到的同步后的数据长度加1,不仅可以扩大对于采样信号的误差容忍度,还对输入数据信号确定了规则,保证在对输入数据信号进行处理时输出结果的唯一性,便于对数据信号进行处理。
进一步的,还包括序列检测模块7,所述序列检测模块7与所述波特率检测模块2电连接,用以检测可配置的唯一序列,并在检测成功后使得所述波特率检测模块2自动打开接收使能以使所述接收端11开始接收数据。
具体使用时,通过序列检测模块7检测序列,而序列检测模块7可以检测到可配置的5、6、7、或8个比特的唯一序列,在检测到唯一序列之后,通过波特率检测模块2自动打开接收使能,从而开始接收数据。
需要说明的是,在进行数据采样的时候,在每个输入数据的跳边沿都重新来同步采样点。
在一种可能的实施方式中,所述中断逻辑控制模块4产生唤醒中断的条件包括任意收到数据产生、指定的1字节数据匹配产生或者指定的连续2字节数据匹配产生中的至少一种,在上述条件下产生唤醒中断以唤醒系统时钟,实现系统在低功耗模式与正常状态下的自由切换,在一定程度上实现低功耗。
进一步的,在唤醒中断产生之后,在具体使用时中断可以屏蔽,以应对不同的情况。
在一种可能的实施方式中,在所述系统时钟被唤醒之后,当所述系统出现寄存器读写、所述数据收发模块1在接收数据、所述数据收发模块1在发送数据且所述存储器模块3不为空、产生唤醒中断、或者所述存储器模块3出现状态变化的至少一种情况时,所述系统时钟不暂停,否则所述系统时钟暂停,在出现上述情况的时候,系统时钟不会暂停,保证在上述情况下系统正常运行,不会进入低功耗模式,避免在在系统工作的时候进入低功耗模式而影响性能。
进一步的,在没有数据收发的时候,系统的波特率检测模块2对波特率的采样检测也会暂停,系统进入低功耗模式。
在一种可能的实施方式中,在所述系统切换收发模式的时候,所述系统自动清空所述存储器模块3的数据,保证系统在切换收发模式的时候,存储器模块内部不会出现多余的数据产生影响。
在一种可能的实施方式中,在所述波特率检测模块2对波特率进行自动检测的时候,通过移位相减除法器获得商和余数,当所述商小于5时,无法进行自动波特率检测;当所述商小于10且不小于5时,所述数据收发模块的接收端的误差容忍度小于±2%,且不支持奇偶校验;当所述商不小于10时,所述数据收发模块的接收端的误差容忍度不小于±2%且支持奇偶校验,其具体情况如下表格时所。
Figure BDA0002776771050000111
在一种可能的实施方式中,在所述波特率检测模块2为手动配置波特率模式的时候,所述数据收发模块1的发送端的误差容忍度不小于±3%。
其中,在本系统中,当采样时钟为32KHz时,支持波特率为300~9600,相关波特率配置参数如下表所示:
Baud Rate 9600 4800 2400 1200 600 300
Quotient 3 6 13 27 54 109
Remainder 4 8 6 3 6 3
虽然在上文中详细说明了本发明的实施方式,但是对于本领域的技术人员来说显而易见的是,能够对这些实施方式进行各种修改和变化。但是,应理解,这种修改和变化都属于权利要求书中所述的本发明的范围和精神之内。而且,在此说明的本发明可有其它的实施方式,并且可通过多种方式实施或实现。

Claims (14)

1.一种低功耗UART串口系统,其特征在于,包括数据收发模块、波特率检测模块、存储器模块、中断逻辑控制模块和外围总线模块,所述数据收发模块包括接收端和发射端,所述接收端的输入接口接收外部数据,所述接收端的输出接口与所述波特率检测模块连接,外部数据通过所述波特率检测模块进行波特率检测,所述波特率检测模块的输出端分别与所述存储器模块、所述发射端的输入接口连接,所述存储器模块与所述外围总线模块连接,所述外围总线模块的输出端与外部设备连接,所述存储器模块与所述外围总线模块之间还连接有中断逻辑控制模块以产生中断。
2.根据权利要求1所述的低功耗UART串口系统,其特征在于,还包括数据处理模块,所述数据处理模块设置在所述波特率检测模块内部,所述接收端的输出接口传输的外部数据通过所述数据处理模块处理后传输到所述波特率检测模块。
3.根据权利要求2所述的低功耗UART串口系统,其特征在于,所述数据处理模块包括第一触发器、第二触发器、第三触发器和数据选择器,所述第一触发器和所述第二触发器的S输入端均与所述接收端的输出接口连接,所述第一触发器和所述第二触发器的Q输出端与所述数据选择器的输入端连接,所述第一触发器的CP端输入时钟上升沿,所述第二触发器的CP端输入时钟下降沿,以使得所述第一触发器和第二触发器提取先被时钟上升沿或者时钟下降沿采集到的数据,所述数据选择器的输出端与所述第三触发器的S输入端连接,所述第三触发器的Q输出端与所述波特率检测模块连接以输出外部数据,所述第三触发器的CP端输入时钟上升沿,以使得输出的所述外部数据通过时钟上升沿同步。
4.根据权利要求2所述的低功耗UART串口系统,其特征在于,还包括序列检测模块,所述序列检测模块与所述波特率检测模块电连接,用以检测可配置的唯一序列,并在检测成功后使得所述波特率检测模块自动打开接收使能以使所述接收端开始接收数据。
5.根据权利要求1所述的低功耗UART串口系统,其特征在于,所述波特率检测模块内部设置有移位相减除法器,在所述波特率检测模块获取所述外部数据的时钟之后,所述移位相减除法器对所述时钟计算获得商和余数,以实现小数分频。
6.根据权利要求5所述的低功耗UART串口系统,其特征在于,在所述移位相减除法器获得的波特率为小数时,所述采样点根据预设规律进行进位,且在所述采样点进行数据翻转时通过系统时钟对采样点进行数据同步矫正。
7.根据权利要求1所述的低功耗UART串口系统,其特征在于,在所述波特率检测模块计算得到波特率并传输至外部设备之后没有数据收发时,所述系统关闭系统时钟进入低功耗模式;当所述系统内存在数据收发时,所述系统使能系统时钟,关闭低功耗模式以使所述系统恢复正常。
8.根据权利要求7所述的低功耗UART串口系统,其特征在于,所述中断逻辑控制模块产生唤醒中断的条件包括任意收到数据产生、指定的1字节数据匹配产生或者指定的连续2字节数据匹配产生中的至少一种。
9.根据权利要求7所述的低功耗UART串口系统,其特征在于,在所述系统时钟被唤醒之后,当所述系统出现寄存器读写、所述数据收发模块在接收数据、所述数据收发模块在发送数据且所述存储器模块不为空、产生唤醒中断、或者所述存储器模块出现状态变化的至少一种情况时,所述系统时钟不暂停,否则所述系统时钟暂停。
10.根据权利要求1所述的低功耗UART串口系统,其特征在于,在所述系统切换收发模式的时候,所述系统自动清空所述存储器模块的数据。
11.根据权利要求5所述的低功耗UART串口系统,其特征在于,在所述波特率检测模块对波特率进行自动检测的时候,通过移位相减除法器获得商和余数,当所述商小于5时,无法进行自动波特率检测;当所述商小于10且不小于5时,所述数据收发模块的接收端的误差容忍度小于±2%,且不支持奇偶校验;当所述商不小于10时,所述数据收发模块的接收端的误差容忍度不小于±2%且支持奇偶校验。
12.根据权利要求5所述的低功耗UART串口系统,其特征在于,在所述波特率检测模块为手动配置波特率模式的时候,所述数据收发模块的发送端的误差容忍度不小于±3%。
13.根据权利要求5所述的低功耗UART串口系统,其特征在于,所述波特率检测模块通过与外部控制器连接以实现自动波特率检测模式和手动配置波特率模式的切换。
14.根据权利要求1所述的低功耗UART串口系统,其特征在于,所述低功耗UART串口系统监测的时钟大小范围为32kHz~50MHz。
CN202011267897.6A 2020-11-13 2020-11-13 一种低功耗uart串口系统 Active CN114490488B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011267897.6A CN114490488B (zh) 2020-11-13 2020-11-13 一种低功耗uart串口系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011267897.6A CN114490488B (zh) 2020-11-13 2020-11-13 一种低功耗uart串口系统

Publications (2)

Publication Number Publication Date
CN114490488A true CN114490488A (zh) 2022-05-13
CN114490488B CN114490488B (zh) 2023-09-05

Family

ID=81491048

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011267897.6A Active CN114490488B (zh) 2020-11-13 2020-11-13 一种低功耗uart串口系统

Country Status (1)

Country Link
CN (1) CN114490488B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115658575A (zh) * 2022-12-13 2023-01-31 摩尔线程智能科技(北京)有限责任公司 一种数据串口通信系统及方法、电子设备

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0298529U (zh) * 1989-01-23 1990-08-06
WO1993017501A1 (en) * 1992-02-19 1993-09-02 Vlsi Technology, Inc. Double-edge triggered memory device and system
US6577694B1 (en) * 1999-11-08 2003-06-10 International Business Machines Corporation Binary self-correcting phase detector for clock and data recovery
CN101127023A (zh) * 2006-08-17 2008-02-20 四川维肯电子有限公司 一种多总线接口的通用异步串口扩展芯片
CN101194419A (zh) * 2005-05-24 2008-06-04 菲尼萨公司 用于时钟恢复的模式相关相位检测器
CN103618588A (zh) * 2013-11-26 2014-03-05 中国科学院嘉兴微电子与系统工程中心 一种自动波特率检测方法及检测模块
CN107451087A (zh) * 2017-07-31 2017-12-08 郑州云海信息技术有限公司 一种基于fpga的异同步可切换串口及使用方法
CN107771331A (zh) * 2015-06-22 2018-03-06 密克罗奇普技术公司 独立式uark brk检测

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0298529U (zh) * 1989-01-23 1990-08-06
WO1993017501A1 (en) * 1992-02-19 1993-09-02 Vlsi Technology, Inc. Double-edge triggered memory device and system
US6577694B1 (en) * 1999-11-08 2003-06-10 International Business Machines Corporation Binary self-correcting phase detector for clock and data recovery
CN101194419A (zh) * 2005-05-24 2008-06-04 菲尼萨公司 用于时钟恢复的模式相关相位检测器
CN101127023A (zh) * 2006-08-17 2008-02-20 四川维肯电子有限公司 一种多总线接口的通用异步串口扩展芯片
CN103618588A (zh) * 2013-11-26 2014-03-05 中国科学院嘉兴微电子与系统工程中心 一种自动波特率检测方法及检测模块
CN107771331A (zh) * 2015-06-22 2018-03-06 密克罗奇普技术公司 独立式uark brk检测
CN107451087A (zh) * 2017-07-31 2017-12-08 郑州云海信息技术有限公司 一种基于fpga的异同步可切换串口及使用方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
佘新平;贾宁;: "基于FPGA的不同波特率串口通信系统设计", 石油仪器, no. 05 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115658575A (zh) * 2022-12-13 2023-01-31 摩尔线程智能科技(北京)有限责任公司 一种数据串口通信系统及方法、电子设备
CN115658575B (zh) * 2022-12-13 2023-03-10 摩尔线程智能科技(北京)有限责任公司 一种数据串口通信系统及方法、电子设备

Also Published As

Publication number Publication date
CN114490488B (zh) 2023-09-05

Similar Documents

Publication Publication Date Title
US10484164B2 (en) Clock and data recovery for pulse based multi-wire link
CN108965082A (zh) 低功率数据总线接收器
CN102253913B (zh) 一种对多板卡端口进行状态获取和输出控制的装置
CN101604161A (zh) 位同步解码方法
Mahat Design of a 9-bit UART module based on Verilog HDL
CN101201970A (zh) 用于无线遥控接收芯片的自适应解码方法
CN104008078A (zh) 一种基于fpga的数据传输板之间进行高速传输的方法
CN102546084B (zh) 异步串行通信数据接收时的抗干扰纠错采样系统和方法
CN111352887B (zh) 一种pci总线到可配置帧长度串行总线适配和传输方法
TW201702894A (zh) 獨立式通用非同步接收器/傳輸器brk偵測
CN114490488B (zh) 一种低功耗uart串口系统
CN108170616B (zh) 利用锁存器实现跨时钟域信号传输的系统
CN103107862A (zh) 逻辑器件及其mdio数据发送方法
CN101140551B (zh) 一种实现数字信号处理器异步串行通讯的装置
CN200944235Y (zh) 数字信号处理器同步串口与异步串行设备的接口装置
JP2004056803A (ja) 非同期データ通信インターフェイス用プログラム可能グリッチフィルタ
CN116015324A (zh) 一种强化抗干扰的uart数据接收装置及其接收方法
CN104009823A (zh) 一种SerDes技术中的错位检测与纠错电路
CN110989451B (zh) 基于多点触摸与遥控共用检测控制系统的检测控制方法
CN208190652U (zh) 一种全双工通用同步异步串行收发器的主板
CN108628793A (zh) Spi通信电路及方法
CN107391406B (zh) 一种用于协议处理的微处理器及处理协议的方法
CN117544248B (zh) 一种隔离式串行接口通信装置及方法
US20030002589A1 (en) Serial communication circuit and serial transmitting and receiving system
KR20180020164A (ko) 라인 동작 검출기를 구비한 uart

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