CN214253208U - 一种双冗余串口控制器ip核 - Google Patents
一种双冗余串口控制器ip核 Download PDFInfo
- Publication number
- CN214253208U CN214253208U CN202120606847.XU CN202120606847U CN214253208U CN 214253208 U CN214253208 U CN 214253208U CN 202120606847 U CN202120606847 U CN 202120606847U CN 214253208 U CN214253208 U CN 214253208U
- Authority
- CN
- China
- Prior art keywords
- dual
- unit
- sending
- redundancy
- message
- 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.)
- Active
Links
Images
Landscapes
- Communication Control (AREA)
Abstract
本实用新型公开了一种双冗余串口控制器IP核,所述Local Bus地址译码单元与中央处理器基于Local Bus总线进行数据交换,双冗余接收链路模块和双冗余发送链路模块完成用户报文的异步串行通信,其中,双冗余接收链路模块通过接收链路a和接收链路b,从异步串行总线上获取位流序列,然后解析出正确的用户报文并通过Local Bus地址译码单元上传给中央处理器;而双冗余发送链路模块接收来自中央处理器的用户报文,进行并串转换生成位流序列,然后通过发送链路a和发送链路b同时发送到异步串行总线上。本实用新型极大地提高了PowerPC芯片应用的灵活性,拓宽了PowerPC芯片在嵌入式领域的应用场合。
Description
技术领域
本实用新型涉及电子信息技术领域,尤其涉及一种双冗余串口控制器IP核。
背景技术
PowerPC芯片不但拥有出色的性能和丰富的片上资源,而且可以通过Local Bus总线扩展常用的外设控制器,因而常被应用于工业控制、网络存储、以及军工等领域。然而,对于在上述领域中最为常用的串口控制器,PowerPC芯片内部一般只集成2个,而且在实际使用中存在功能单一、可扩展性差、误码率高、抗干扰性低等问题,无法满足在苛刻的环境条件下可靠性地运行的要求。而目前少数可从市场上获取的可靠性高的串口控制器专用芯片,均不支持Local Bus总线,无法挂载到PowerPC芯片上使用。这些问题,都大大降低了PowerPC芯片应用的灵活性,限制了PowerPC芯片在嵌入式领域的应用范围。因此本实用新型提出了一种双冗余串口控制器IP核来解决上述问题。
实用新型内容
本实用新型提出的一种双冗余串口控制器IP核,解决了PowerPC芯片内部串口控制器存在的数量少、可扩展性差、抗干扰性低等问题,从而极大地提高了PowerPC芯片应用的灵活性,拓宽了PowerPC芯片在嵌入式领域的应用场合。
为了实现上述目的,本实用新型采用了如下技术方案:
一种双冗余串口控制器IP核,包括双冗余发送链路模块、双冗余接收链路模块和Local Bus地址译码单元,所述Local Bus地址译码单元与中央处理器基于Local Bus总线进行数据交换,双冗余接收链路模块和双冗余发送链路模块完成用户报文的异步串行通信,其中,双冗余接收链路模块通过接收链路a和接收链路b,从异步串行总线上获取位流序列,然后解析出正确的用户报文并通过Local Bus地址译码单元上传给中央处理器;而双冗余发送链路模块接收来自中央处理器的用户报文,进行并串转换生成位流序列,然后通过发送链路a和发送链路b同时发送到异步串行总线上。
优选的,所述Local Bus地址译码单元利用片选信号CS、写使能信号WE和读使能信号OE对总线数据进行采样,完成Local Bus总线上地址和数据的复用和解复用,解析与双冗余串口控制器匹配的参数信息,下发和获取用户报文。
优选的,所述双冗余发送链路模块包括报文下发状态机单元、发送缓存单元、报文发送状态机单元和发送逻辑单元,报文下发状态机单元把来自中央处理器的用户报文缓存到发送缓存单元,当报文发送状态机单元检测到发送缓存单元里有数据的时候,把每个字节信息逐个提取到发送逻辑单元,发送逻辑单元把接收的字节按照异步通信协议转换成位流序列,通过发送链路a和发送链路b同时发到异步串行总线上。
优选的,所述双冗余接收链路模块包括接收逻辑单元、接收缓存单元Ⅰ、报文筛选状态机单元、接收缓存单元Ⅱ和报文上传状态机单元,报文筛选状态机单元对两路接收的用户报文进行校验和判断,然后把其中正确的用户报文转移到接收缓存单元Ⅱ,在报文上传状态机的控制下,把正确的用户报文按字节逐一上传到中央处理器,从而可靠地完成用户报文的接收。
与现有的技术相比,本实用新型的有益效果是:成功地将Local Bus总线接口和带有双冗余链路的串口控制器集成在同一个IP核内。不但通过双冗余链路保证了高可靠性,而且可根据应用需求灵活地扩展串口控制器的数量,很好解决了PowerPC芯片内部串口控制器存在的数量少、可扩展性差、抗干扰性低等问题,从而极大地提高了PowerPC芯片应用的灵活性,拓宽了PowerPC芯片在嵌入式领域的应用场合。本实用新型应用于产品设计中,相比采用多个串口控制器专用芯片的方式,每个产品可以在性能上降低40%的误码率,减少了15%的PCB面积,降低了12%的总功耗,简化了产品的硬件设计,提升了产品的智能化、小型化程度以及稳定性和可靠性。
附图说明
图1为本实用新型提出的一种双冗余串口控制器IP核的原理框图。
图2为本实用新型提出的一种双冗余串口控制器IP核的双冗余发送链路的原理框图。
图3为本实用新型提出的一种双冗余串口控制器IP核的双冗余接收链路的原理框图。
具体实施方式
下面将结合本实用新型实施例中的附图,对本实用新型实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本实用新型一部分实施例,而不是全部的实施例。
参照图1,本方案提供的一种双冗余串口控制器IP核,包括双冗余发送链路模块、双冗余接收链路模块和Local Bus地址译码单元,Local Bus地址译码单元与中央处理器基于Local Bus总线进行数据交换,双冗余接收链路模块和双冗余发送链路模块完成用户报文的异步串行通信,其中,双冗余接收链路模块通过接收链路a和接收链路b,从异步串行总线上获取位流序列,然后解析出正确的用户报文并通过Local Bus地址译码单元上传给中央处理器;而双冗余发送链路模块接收来自中央处理器的用户报文,进行并串转换生成位流序列,然后通过发送链路a和发送链路b同时发送到异步串行总线上。
本实施例中,Local Bus地址译码单元的主要功能是根据Local Bus总线的协议要求,以异步模式的方式与中央处理器进行数据通信。具体来说,它利用片选信号CS、写使能信号WE和读使能信号OE对总线数据进行采样来实现以下这些功能:完成Local Bus总线上地址和数据的复用和解复用,解析与双冗余串口控制器匹配的参数信息,下发和获取用户报文等等。
参照图2,本实施例中,双冗余发送链路模块完成数据包发送,它主要由报文下发状态机单元、发送缓存单元、报文发送状态机单元和发送逻辑单元组成,双冗余发送链路模块通过报文下发状态机单元,把来自中央处理器的用户报文缓存到发送缓存单元。当报文发送状态机单元检测到发送缓存单元里有数据的时候,就会有节奏地把每个字节信息逐个提取到发送逻辑单元。发送逻辑单元把接收的字节按照异步通信协议转换成位流序列,通过发送链路a和发送链路b同时发到异步串行总线上。
(1)报文发送状态机单元
此单元的功能是有节奏地把中央处理器通过Local Bus总线下发的通信报文缓存到发送缓存单元。
(2)发送缓存单元
此单元的功能是按字节缓存中央处理器通过Local Bus总线下发的通信报文。
(3)报文发送状态机单元
此单元的功能是检测发送缓存单元是否缓存有字节信息。若有,则逐个读取发送缓存单元的字节,然后发送到发送逻辑单元。
(4)发送逻辑单元
此单元的功能是接收来自发送缓存单元的字节信息,进行并串转换,输出位流序列到异步串行总线上。
参照图3,本实施例中,双冗余接收链路模块完成数据包接收,它主要由接收逻辑单元、接收缓存单元Ⅰ、报文筛选状态机单元、接收缓存单元Ⅱ和报文上传状态机单元组成,双冗余接收链路模块设计了两条接收链路,分别完成用户报文的接收和缓存。报文筛选状态机单元对两路接收的用户报文进行校验和判断,然后把其中正确的用户报文转移到接收缓存单元Ⅱ。接着,在报文上传状态机的控制下,把正确的用户报文按字节逐一上传到中央处理器,从而可靠地完成用户报文的接收。
(1)接收逻辑单元
此单元的功能是接收来自异步串口总线的位流信息,进行串并转换,输出字节信息。为了提高接收链路的可靠性,接收逻辑单元需要完成字节级的校验和判决,并且把校验失败的字节信息过滤掉。
(2)接收缓存单元Ⅰ
此单元的功能是以先进先出的方式缓存接收逻辑单元输出的字节信息,以供报文筛选状态机单元使用。该缓存单元设计的缓存深度为256字节,即一包用户报文的最大长度。为了防止缓存的用户报文中包含无效的字节信息,在缓存用户报文之前,需要过滤掉无效字节。采用的方法是检测到可靠有效的报文头,才将此用户报文缓存到接收缓存单元Ⅰ。
(3)报文筛选状态机单元
此单元的功能是分析和判决来自两路接收链路接收到的用户报文,然后筛选出数据完整的用户报文转移到接收缓存单元Ⅱ去,并且及时清空接收缓存单元Ⅰ的字节信息,以便准备接收下一包用户报文。为了提高接收链路的可靠性,报文筛选状态机单元需要计算出当前接收到的用户报文的校验和,并且和接收的校验和比对。如果两者不一致,就判定当前接收的用户报文出错,并且直接过滤掉。
(4)接收缓存单元Ⅱ
此单元的功能是以先进先出的方式缓存从接收缓存单元Ⅰ转移的用户报文,以供报文上传状态机单元使用。该缓存单元设计的缓存深度为8192字节,即32包用户报文的最大长度。
(5)报文上传状态机单元
此单元的功能是把接收缓存单元Ⅱ里所有完整的用户报文通过Local Bus总线上传给中央处理器。此功能单元一直处于检测状态,一旦检测到接收缓存单元Ⅱ里有用户报文,便通过Local Bus总线通知中央处理器。中央处理器产生读使能信号,读取接收缓存单元Ⅱ的字节信息。以此类推,直到所有用户报文读完为止。
以上所述,仅为本实用新型较佳的具体实施方式,但本实用新型的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本实用新型揭露的技术范围内,根据本实用新型的技术方案及其实用新型构思加以等同替换或改变,都应涵盖在本实用新型的保护范围之内。
Claims (4)
1.一种双冗余串口控制器IP核,包括双冗余发送链路模块、双冗余接收链路模块和Local Bus地址译码单元,其特征在于,所述Local Bus地址译码单元与中央处理器基于Local Bus总线进行数据交换,双冗余接收链路模块和双冗余发送链路模块完成用户报文的异步串行通信,其中,双冗余接收链路模块通过接收链路a和接收链路b,从异步串行总线上获取位流序列,然后解析出正确的用户报文并通过LocalBus地址译码单元上传给中央处理器;而双冗余发送链路模块接收来自中央处理器的用户报文,进行并串转换生成位流序列,然后通过发送链路a和发送链路b同时发送到异步串行总线上。
2.根据权利要求1所述的一种双冗余串口控制器IP核,其特征在于,所述Local Bus地址译码单元利用片选信号CS、写使能信号WE和读使能信号OE对总线数据进行采样,完成Local Bus总线上地址和数据的复用和解复用,解析与双冗余串口控制器匹配的参数信息,下发和获取用户报文。
3.根据权利要求1所述的一种双冗余串口控制器IP核,其特征在于,所述双冗余发送链路模块包括报文下发状态机单元、发送缓存单元、报文发送状态机单元和发送逻辑单元,报文下发状态机单元把来自中央处理器的用户报文缓存到发送缓存单元,当报文发送状态机单元检测到发送缓存单元里有数据的时候,把每个字节信息逐个提取到发送逻辑单元,发送逻辑单元把接收的字节按照异步通信协议转换成位流序列,通过发送链路a和发送链路b同时发到异步串行总线上。
4.根据权利要求1所述的一种双冗余串口控制器IP核,其特征在于,所述双冗余接收链路模块包括接收逻辑单元、接收缓存单元Ⅰ、报文筛选状态机单元、接收缓存单元Ⅱ和报文上传状态机单元,报文筛选状态机单元对两路接收的用户报文进行校验和判断,然后把其中正确的用户报文转移到接收缓存单元Ⅱ,在报文上传状态机的控制下,把正确的用户报文按字节逐一上传到中央处理器,从而可靠地完成用户报文的接收。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202120606847.XU CN214253208U (zh) | 2021-03-25 | 2021-03-25 | 一种双冗余串口控制器ip核 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202120606847.XU CN214253208U (zh) | 2021-03-25 | 2021-03-25 | 一种双冗余串口控制器ip核 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN214253208U true CN214253208U (zh) | 2021-09-21 |
Family
ID=77727932
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202120606847.XU Active CN214253208U (zh) | 2021-03-25 | 2021-03-25 | 一种双冗余串口控制器ip核 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN214253208U (zh) |
-
2021
- 2021-03-25 CN CN202120606847.XU patent/CN214253208U/zh active Active
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111131091B (zh) | 一种面向片上网络的片间互连方法和系统 | |
CN101866328B (zh) | 一种自动访问的串行总线读写控制方法 | |
CN103825696A (zh) | 一种基于fpga实现光纤高速实时通信的装置 | |
CN103106169B (zh) | 基于aurora协议的高速总线接口的扩展架构 | |
CN104993982A (zh) | 一种fpga芯片内置phy收发器功能的以太网实现系统 | |
CN105302753B (zh) | 一种基于fpga和fifo芯片的多通道hdlc数据处理装置 | |
CN110471872A (zh) | 一种基于zynq芯片实现m-lvds总线数据交互系统和方法 | |
CN102142987A (zh) | 一种串行总线设备及其传输数据的方法 | |
CN112395230A (zh) | 一种基于可编程逻辑器件的uart接口扩展电路 | |
CN108462620B (zh) | 一种吉比特级SpaceWire总线系统 | |
CN105635176A (zh) | 一种基于RapidIO的网络数据传输方法 | |
CN110471880A (zh) | 一种基于FPGA支持Label号筛选的ARINC429总线模块及其数据传输方法 | |
CN103942014A (zh) | Fc-ae-1553协议接口卡存储器映射装置及存储器映射方法 | |
CN107908587A (zh) | 基于usb3.0的实时数据采集传输装置 | |
CN107579894B (zh) | 一种基于fpga的ebr1553总线协议实现装置 | |
CN111211863B (zh) | Mac发射端、mac接收端及电路、fpga芯片及数据传输系统 | |
CN106411918A (zh) | 一种基于fpga的多路hdlc‑uart转换系统及方法 | |
CN114297124B (zh) | 一种基于fpga的srio高速总线的通讯系统 | |
CN101106504A (zh) | 基于can总线的智能自主机器人分布式通信系统 | |
CN214253208U (zh) | 一种双冗余串口控制器ip核 | |
CN110311814B (zh) | 可编程NoC万兆以太网资源网络接口系统 | |
CN114442514A (zh) | 一种基于fpga的usb3.0/3.1控制系统 | |
CN102420734A (zh) | 一种can总线拓扑结构实现系统 | |
CN115866100A (zh) | 基于多协议可配置的片上通信系统及通信设备 | |
CN103347023A (zh) | 一种工业现场环境下hdlc通信控制器 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
GR01 | Patent grant | ||
GR01 | Patent grant |