CN110704345A - 基于pcie的高速多串口卡系统及其发送、接收方法 - Google Patents
基于pcie的高速多串口卡系统及其发送、接收方法 Download PDFInfo
- Publication number
- CN110704345A CN110704345A CN201910844106.2A CN201910844106A CN110704345A CN 110704345 A CN110704345 A CN 110704345A CN 201910844106 A CN201910844106 A CN 201910844106A CN 110704345 A CN110704345 A CN 110704345A
- Authority
- CN
- China
- Prior art keywords
- pcie
- serial
- data
- serial port
- transmits
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 11
- 238000006243 chemical reaction Methods 0.000 claims abstract description 15
- 238000004891 communication Methods 0.000 claims abstract description 15
- 230000005540 biological transmission Effects 0.000 claims description 16
- 238000013461 design Methods 0.000 description 6
- 230000010354 integration Effects 0.000 description 5
- 230000002093 peripheral effect Effects 0.000 description 5
- 230000002457 bidirectional effect Effects 0.000 description 4
- 230000007547 defect Effects 0.000 description 4
- 238000012217 deletion Methods 0.000 description 4
- 230000037430 deletion Effects 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 238000012423 maintenance Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000002349 favourable effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/382—Information transfer, e.g. on bus using universal interface adapter
- G06F13/385—Information transfer, e.g. on bus using universal interface adapter for adaptation of a particular data processing system to different peripheral devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2213/00—Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F2213/0002—Serial port, e.g. RS232C
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2213/00—Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F2213/0026—PCI express
Abstract
本发明提供了一种基于PCIE的高速多串口卡系统及其发送、接收方法,包括PCIE插座、电源、FPGA单元以及多功能串行收发器,所述电源给FPGA单元和多功能串行收发器供电;PCIE插座用于实现FPGA单元与外部主机之间的PCIE总线通讯;一个或者多个及多功能串行收发器与FPGA单元的UART接口连接;FPGA单元内部逻辑实现PCI Express控制器和UART控制器,FPGA单元内部搭建Wishbone桥,用于FPGA单元内部的PCIE接口与UART接口之间的协议转换。本发明在FPGA内部自主搭建了Wishbone桥,良好地实现了PCIE接口与UART接口之间的协议转换。
Description
技术领域
本发明涉及服务器板卡设计技术领域,具体地,涉及一种基于PCIE的高速多串口卡系统及其发送、接收方法。
背景技术
PCIE(PCI Express)是第三代总线,其利用点到点、串行、高速和双单工的差分信号链路来互连设备,PCIE3.0协议中单通道的峰值带宽可接近8Gb/s,克服了传统总线包括ISA、AGP、PCI-X和PCI等在系统带宽和总线传输速度等方面存在不足,PCIE在性能上实现了全新的飞跃。
FPGA是现场可编程门阵列,它是在PAL、GAL、CPLD等可编程器件的基础上进一步发展的产物。它是作为专用集成电路领域中的一种半定制电路而出现的,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点。
串口叫做串行接口,它的数据和控制信息是一位接一位地传出去的,和并口相比较,串口速度慢些,但其传输距离较长。
申请(专利)号为201820198325.9的发明专利公开了一种基于PXIe总线的多路串口卡,包括有连接器单元、电平转换单元、PCIe转串口单元、FPGA单元、电源单元以及PXIe接口单元;所述FPGA单元通过信号线检测PXIe接口单元的信号输入状态,然后所述FPGA单元通过信号线控制所述FPGA单元的PCIe信号转换成串口信号,依次经过电平转换单元和连接器单元后输出到外部串口设备。本实用新型通过FPGA单元控制PCIe转串口单元收发不同类型的串口,使得不同串口和PCIe接口之间的通讯更加便利,从而达到能多兼容不同类型串口、便于控制串口与PCIe接口之间相互通讯的目的。
上述专利的PCIe转串口单元在FPGA外部实现,是独立的一个单元;其PCIE协议接口芯片功能是固定不变的,不利于开发的灵活性。而且只能在接口芯片外部实现UART控制器,占用的电路面积更大,电路集成度不高。
申请(专利)号为201320809668的发明专利公开了一种基于FPGA实现8通道收发串口的高速板卡,包括PCIE连接器和FPGA芯片,FPGA芯片包括PCIE IP核电路、CDMA单元、传输控制单元和外围接口单元控制模块,PCIE连接器通过用于接收信号的8对差分串口、用于发送信号的8对差分串口、用于参考差分时钟信号的PCI-E接口以及电源分别与PCIE IP核电路双向连接,PCIE IP核电路与CDMA单元双向连接,CDMA单元与传输控制单元双向连接,传输控制单元与外围接口双向连接。上位机由基于FPGA的PCI-EX8高速板卡连接,既可以完成上位机对外围设备的信号指令高速传输,也可以通过外围设备迅速地反馈给主控上位机。
上述专利的FPGA内部包括PCIE IP核电路、CDMA单元、传输控制单元和外围接口单元控制模块。而本发明FPGA内部逻辑实现PCI Express控制器和UART控制器,实现PCIE接口与串行接口的协议转换。主要包括PCIE IP硬核、UART IP核以及Wishbone桥,在FPGA内部自主搭建了Wishbone桥,良好地实现了PCIE接口与UART接口之间的协议转换。
发明内容
针对现有技术中的缺陷,本发明的目的是提供一种基于PCIE的高速多串口卡系统及其发送、接收方法。
根据本发明提供的一种基于PCIE的高速多串口卡系统,包括PCIE插座、电源、FPGA单元以及多功能串行收发器,其中:
所述电源给FPGA单元和多功能串行收发器供电;
PCIE插座用于实现FPGA单元与外部主机之间的PCIE总线通讯;
一个或者多个及多功能串行收发器与FPGA单元的UART接口连接;
FPGA单元内部逻辑实现PCI Express控制器和UART控制器,FPGA单元内部搭建Wishbone桥,用于FPGA单元内部的PCIE接口与UART接口之间的协议转换。
优选地,所述UART接口设置有多个,每个UART接口通过Wishbone桥与PCIE接口搭建。
优选地,所述多功能串行收发器能够接入RS232/422/485串行接口。
优选地,多功能串行收发器串口通信的最高波特率是115200bps。
优选地,所述PCI Express控制器包括PCIE IP核、EP_RX模块以及EP_TX模块,PCIEIP、EP_TX模块、EP_RX模块之间通讯连接。
根据本发明提供的一种基于上述的基于PCIE的高速多串口卡系统的高速多串口卡的发送数据方法,包括如下步骤:
信息传输步骤:主机将要发送的地址和数据通过PCI Express总线传给PCIE IP核,形成TLP包后传给EP_RX模块;
读取发送步骤:EP_RX模块对TLP包进行读取,获取需要发送的串口地址和数据,通过地址选中串口通道后,将数据传送给UART控制器,UART控制器再将数据发送给外部串口。
根据本发明提供的一种基于上述的基于PCIE的高速多串口卡系统的高速多串口卡的接收数据方法,包括如下步骤:
信息传输步骤:主机将要发送的地址和数据通过PCI Express总线传给PCIE IP核,形成TLP包后传给EP_RX模块;
读取发送步骤:EP_RX模块对TLP包进行读取,获取需要接收的串口地址和数据,通过地址选中串口通道后,将数据传送给UART控制器,UART控制器再将接收到的数据传给EP_RX模块;
读取接收步骤:EP_RX模块对TLP包数据进行读取,将获取的数据传给EP_TX模块,EP_TX模块再将数据传给PCIE IP核,最后通过PCI Express总线传给主机。
与现有技术相比,本发明具有如下的有益效果:
1、本发明高速多串口卡基于PCIE总线,总线单通道的峰值带宽可接近8Gb/s,具备良好的系统带宽和总线传输速度。
2、本发明的高速多串口卡是基于FPGA架构,由FPGA内部逻辑实现PCIE和UART控制器,在FPGA内部自主搭建了Wi shbone桥,良好地实现了PCIE接口与UART接口之间的协议转换。这种可编程逻辑器件方式电路板集成度高,功耗低,串口通道的增加或删减可以灵活更改。
3、本发明的高速多串口卡采用多功能串行收发器,通过上位机界面可实现多种通信方式(RS232/RS422/RS485)的灵活切换,不需要通过手动或机械方式去选择通信方式。
4、本发明采用可编程逻辑器件FPGA方式实现PCIE转串口单元,这种方式使电路板集成度高,功耗低,后期功能更新和维护更方便。可以通过FPGA逻辑程序开发,很容易实现功能增加或者删减,让设计更灵活。
附图说明
通过阅读参照以下附图对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显:
图1为高速多串口卡电路设计图;
图2为高速多串口卡发送数据程序设计图;
图3为高速多串口卡接收数据程序设计图。
具体实施方式
下面结合具体实施例对本发明进行详细说明。以下实施例将有助于本领域的技术人员进一步理解本发明,但不以任何形式限制本发明。应当指出的是,对本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变化和改进。这些都属于本发明的保护范围。
如图1至图3所示,根据本发明提供的基于PCIE的高速多串口卡系统,包括两部分,一部分为高速多串口卡的电路设计,实现多串口功能;另一部分是高速多串口卡的FPGA内部搭建的Wishbone桥,良好地实现了PCIE与UART接口之间的协议转换。附图1为电路设计简图,图2和图3为FPGA程序设计简图。
如图1所示,高速多串口卡的电路设计:
高速多串口卡电路主要由PCIE插座、电源、FPGA单元和多功能串行收发器组成。
PCIE插座实现内部FPGA单元与外部主机之间PCIE总线通讯。电源部分为整个卡供电。FPGA单元内部逻辑实现PCI Express控制器和UART控制器,在FPGA内部自主搭建了Wishbone桥,良好地实现了PCIE接口与UART接口之间的协议转换。多功能串行收发器实现TTL电平与RS232/RS422/RS485电平之间的转换。FPGA通过控制收发器的模式切换引脚,实现每个串口通信方式RS232/422/485可选,最高波特率可达115200bps;
如图2所示,高速多串口卡的发送数据程序设计:
图中实线箭头是地址通道,虚线箭头是数据通道。主机将要发送的地址和数据通过PCI Express总线传给PCIE IP核,形成TLP包后传给EP_RX模块,EP_RX模块对TLP包进行读取,获取需要发送的串口地址和数据,通过地址选中串口通道后,将数据传送给UART核,UART核再将将数据发送给外部串口。
如图3所示,高速多串口卡的接收数据程序设计:
图中实线箭头是地址通道,虚线箭头是数据通道。主机将要发送的地址通过PCIExpress总线传给PCIE IP核,形成TLP包后传给EP_RX模块,EP_RX模块对TLP包进行读取,获取需要接收的串口地址,通过地址选中串口通道。串口通道将发送的数据传给UART核,UART核将接收到的数据传给EP_RX模块,EP_RX模块对TLP包数据进行读取,将获取的数据传给EP_TX模块,EP_TX模块再将数据传给PCIE IP核,最后通过PCI Express总线传给主机。
本发明高速多串口卡基于PCIE总线,总线单通道的峰值带宽可接近8Gb/s,具备良好的系统带宽和总线传输速度。高速多串口卡是基于FPGA架构,由FPGA内部逻辑实现PCIE和UART控制器,在FPGA内部自主搭建了Wishbone桥,良好地实现了PCIE接口与UART接口之间的协议转换。这种可编程逻辑器件方式电路板集成度高,功耗低,串口通道的增加或删减可以灵活更改。采用多功能串行收发器,通过上位机界面可实现多种通信方式(RS232/RS422/RS485)的灵活切换,不需要通过手动或机械方式去选择通信方式。采用可编程逻辑器件FPGA方式实现PCIE转串口单元,这种方式使电路板集成度高,功耗低,后期功能更新和维护更方便。可以通过FPGA逻辑程序开发,很容易实现功能增加或者删减,让设计更灵活。
以上对本发明的具体实施例进行了描述。需要理解的是,本发明并不局限于上述特定实施方式,本领域技术人员可以在权利要求的范围内做出各种变化或修改,这并不影响本发明的实质内容。在不冲突的情况下,本申请的实施例和实施例中的特征可以任意相互组合。
Claims (7)
1.一种基于PCIE的高速多串口卡系统,其特征在于,包括PCIE插座、电源、FPGA单元以及多功能串行收发器,其中:
所述电源给FPGA单元和多功能串行收发器供电;
PCIE插座用于实现FPGA单元与外部主机之间的PCIE总线通讯;
一个或者多个及多功能串行收发器与FPGA单元的UART接口连接;
FPGA单元内部逻辑实现PCI Express控制器和UART控制器,FPGA单元内部搭建Wishbone桥,用于FPGA单元内部的PCIE接口与UART接口之间的协议转换。
2.根据权利要求1所述的基于PCIE的高速多串口卡系统,其特征在于,所述UART接口设置有多个,每个UART接口通过Wishbone桥与PCIE接口搭建。
3.根据权利要求1所述的基于PCIE的高速多串口卡系统,其特征在于,所述多功能串行收发器能够接入RS232/422/485串行接口。
4.根据权利要求1所述的基于PCIE的高速多串口卡系统,其特征在于,多功能串行收发器串口通信的最高波特率是115200bps。
5.根据权利要求1所述的基于PCIE的高速多串口卡系统,其特征在于,所述PCIExpress控制器包括PCIE IP核、EP_RX模块以及EP_TX模块,PCIE IP、EP_TX模块、EP_RX模块之间通讯连接。
6.一种基于权利要求1-5任一项所述的基于PCIE的高速多串口卡系统的高速多串口卡的发送数据方法,其特征在于,包括如下步骤:
信息传输步骤:主机将要发送的地址和数据通过PCI Express总线传给PCIE IP核,形成TLP包后传给EP_RX模块;
读取发送步骤:EP_RX模块对TLP包进行读取,获取需要发送的串口地址和数据,通过地址选中串口通道后,将数据传送给UART控制器,UART控制器再将数据发送给外部串口。
7.一种基于权利要求1-5任一项所述的基于PCIE的高速多串口卡系统的高速多串口卡的接收数据方法,其特征在于,包括如下步骤:
信息传输步骤:主机将要发送的地址和数据通过PCI Express总线传给PCIE IP核,形成TLP包后传给EP_RX模块;
读取发送步骤:EP_RX模块对TLP包进行读取,获取需要接收的串口地址和数据,通过地址选中串口通道后,将数据传送给UART控制器,UART控制器再将接收到的数据传给EP_RX模块;
读取接收步骤:EP_RX模块对TLP包数据进行读取,将获取的数据传给EP_TX模块,EP_TX模块再将数据传给PCIE IP核,最后通过PCI Express总线传给主机。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910844106.2A CN110704345A (zh) | 2019-09-06 | 2019-09-06 | 基于pcie的高速多串口卡系统及其发送、接收方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910844106.2A CN110704345A (zh) | 2019-09-06 | 2019-09-06 | 基于pcie的高速多串口卡系统及其发送、接收方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110704345A true CN110704345A (zh) | 2020-01-17 |
Family
ID=69194634
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910844106.2A Pending CN110704345A (zh) | 2019-09-06 | 2019-09-06 | 基于pcie的高速多串口卡系统及其发送、接收方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110704345A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113609067A (zh) * | 2021-06-25 | 2021-11-05 | 天津津航计算技术研究所 | 一种32路rs485接口卡的实现系统 |
CN114043504A (zh) * | 2021-12-17 | 2022-02-15 | 库卡机器人制造(上海)有限公司 | 机器人系统 |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1936873A (zh) * | 2005-09-20 | 2007-03-28 | 中国科学院计算技术研究所 | 一种控制两种不同速度总线间数据传送的方法 |
CN101615287A (zh) * | 2009-08-06 | 2009-12-30 | 黄以华 | 一种基于Wishbone总线的图像处理IP核 |
CN103440219A (zh) * | 2013-08-23 | 2013-12-11 | 上海航天测控通信研究所 | 一种新型的通用总线转换桥ip核 |
CN105446920A (zh) * | 2015-12-07 | 2016-03-30 | 中国电子科技集团公司第三十二研究所 | 基于龙芯的fpga嵌入式计算机及其配置方法 |
US20170220499A1 (en) * | 2016-01-04 | 2017-08-03 | Gray Research LLC | Massively parallel computer, accelerated computing clusters, and two-dimensional router and interconnection network for field programmable gate arrays, and applications |
CN107294996A (zh) * | 2017-07-07 | 2017-10-24 | 中车青岛四方车辆研究所有限公司 | 协议转换器及转换方法 |
CN207601786U (zh) * | 2017-11-23 | 2018-07-10 | 研祥智能科技股份有限公司 | 一种计算机多功能扩展电路 |
CN207867496U (zh) * | 2018-02-06 | 2018-09-14 | 西安凌北电子科技有限公司 | 一种基于PXIe总线的多路串口卡 |
CN208207795U (zh) * | 2018-06-12 | 2018-12-07 | 济南浪潮高新科技投资发展有限公司 | 一种实现Rapid IO和PCIE数据转换的系统 |
CN109165185A (zh) * | 2018-09-30 | 2019-01-08 | 杭州迪普科技股份有限公司 | 一种基于FPGA的PCIe信号的转换方法及装置 |
CN109828941A (zh) * | 2019-03-06 | 2019-05-31 | 苏州浪潮智能科技有限公司 | Axi2wb总线桥实现方法、装置、设备及存储介质 |
-
2019
- 2019-09-06 CN CN201910844106.2A patent/CN110704345A/zh active Pending
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1936873A (zh) * | 2005-09-20 | 2007-03-28 | 中国科学院计算技术研究所 | 一种控制两种不同速度总线间数据传送的方法 |
CN101615287A (zh) * | 2009-08-06 | 2009-12-30 | 黄以华 | 一种基于Wishbone总线的图像处理IP核 |
CN103440219A (zh) * | 2013-08-23 | 2013-12-11 | 上海航天测控通信研究所 | 一种新型的通用总线转换桥ip核 |
CN105446920A (zh) * | 2015-12-07 | 2016-03-30 | 中国电子科技集团公司第三十二研究所 | 基于龙芯的fpga嵌入式计算机及其配置方法 |
US20170220499A1 (en) * | 2016-01-04 | 2017-08-03 | Gray Research LLC | Massively parallel computer, accelerated computing clusters, and two-dimensional router and interconnection network for field programmable gate arrays, and applications |
CN107294996A (zh) * | 2017-07-07 | 2017-10-24 | 中车青岛四方车辆研究所有限公司 | 协议转换器及转换方法 |
CN207601786U (zh) * | 2017-11-23 | 2018-07-10 | 研祥智能科技股份有限公司 | 一种计算机多功能扩展电路 |
CN207867496U (zh) * | 2018-02-06 | 2018-09-14 | 西安凌北电子科技有限公司 | 一种基于PXIe总线的多路串口卡 |
CN208207795U (zh) * | 2018-06-12 | 2018-12-07 | 济南浪潮高新科技投资发展有限公司 | 一种实现Rapid IO和PCIE数据转换的系统 |
CN109165185A (zh) * | 2018-09-30 | 2019-01-08 | 杭州迪普科技股份有限公司 | 一种基于FPGA的PCIe信号的转换方法及装置 |
CN109828941A (zh) * | 2019-03-06 | 2019-05-31 | 苏州浪潮智能科技有限公司 | Axi2wb总线桥实现方法、装置、设备及存储介质 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113609067A (zh) * | 2021-06-25 | 2021-11-05 | 天津津航计算技术研究所 | 一种32路rs485接口卡的实现系统 |
CN113609067B (zh) * | 2021-06-25 | 2024-03-19 | 天津津航计算技术研究所 | 一种32路rs485接口卡的实现系统 |
CN114043504A (zh) * | 2021-12-17 | 2022-02-15 | 库卡机器人制造(上海)有限公司 | 机器人系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN203224621U (zh) | 基于pci-e总线的天气雷达高速数据传输装置 | |
CN207718364U (zh) | 一种基于fpga的多路rs-422串口扩展接口 | |
CN110704345A (zh) | 基于pcie的高速多串口卡系统及其发送、接收方法 | |
CN103838700A (zh) | 电平复用控制串行通信装置及其通信方法 | |
CN204925719U (zh) | 信号转换装置和系统 | |
CN101510184A (zh) | 多通道串口通讯系统及其控制方法 | |
CN116647247A (zh) | 一种适用于灵活连接的信号收发机及信号收发系统 | |
CN105786741B (zh) | 一种soc高速低功耗总线及转换方法 | |
CN103972909A (zh) | Tsc系统及其基于fpga的rs485通信方法 | |
CN205375458U (zh) | 一种四通道的多协议通信接口卡 | |
CN112069111A (zh) | 一种兼容双向传输的Retimer转接卡电路设计 | |
CN203366045U (zh) | 一种基于can总线的数字量输入输出装置 | |
CN202617157U (zh) | 一种pcie交换电路 | |
CN203982366U (zh) | 基于arm和fpga高速灵活的串口装置 | |
CN103530256B (zh) | CPCIe和PCI协议数据的处理装置及方法 | |
CN107908584B (zh) | 一种多路rs-485通信网络 | |
CN213582152U (zh) | 台式机和服务器系统的pcie信号位宽自动切换装置 | |
CN103941247A (zh) | 基于can总线的雷达时序控制系统 | |
CN103544133B (zh) | 一种转换装置及方法 | |
CN103617145A (zh) | 一种自定义总线及其实现方法 | |
CN209086918U (zh) | 一种基于idc支持cpu网口和串口通信电路 | |
CN102904789B (zh) | Rs485隔离通讯电路及其控制方法 | |
CN114839897A (zh) | 一种多接口、输入输出可配置韦根通信扩展板 | |
CN207367200U (zh) | 一种基于esmarc系列工控主板的eta820扩展底板 | |
CN204719747U (zh) | 串行外设接口的兼容设备、串行外设接口及主机设备 |
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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20200117 |