[go: up one dir, main page]

CN105654383B - Low-delay FAST market decoding device and method based on pipeline architecture - Google Patents

Low-delay FAST market decoding device and method based on pipeline architecture Download PDF

Info

Publication number
CN105654383B
CN105654383B CN201610008902.9A CN201610008902A CN105654383B CN 105654383 B CN105654383 B CN 105654383B CN 201610008902 A CN201610008902 A CN 201610008902A CN 105654383 B CN105654383 B CN 105654383B
Authority
CN
China
Prior art keywords
decoding
field
data
fast
output
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
Application number
CN201610008902.9A
Other languages
Chinese (zh)
Other versions
CN105654383A (en
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.)
Institute of Information Engineering of CAS
Original Assignee
Institute of Information Engineering of CAS
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 Institute of Information Engineering of CAS filed Critical Institute of Information Engineering of CAS
Priority to CN201610008902.9A priority Critical patent/CN105654383B/en
Publication of CN105654383A publication Critical patent/CN105654383A/en
Application granted granted Critical
Publication of CN105654383B publication Critical patent/CN105654383B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q40/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • G06Q40/04Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
    • 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/40Bus structure
    • G06F13/4063Device-to-bus coupling
    • G06F13/4068Electrical coupling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2213/00Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F2213/0038System on Chip

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Finance (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Accounting & Taxation (AREA)
  • Economics (AREA)
  • Development Economics (AREA)
  • Computer Hardware Design (AREA)
  • Marketing (AREA)
  • Strategic Management (AREA)
  • Technology Law (AREA)
  • General Business, Economics & Management (AREA)
  • Advance Control (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

本发明涉及一种基于流水线架构的低时延FAST行情解码装置和方法。该装置包括内部总线、控制器和FAST行情数据中各字段的字段解码算子,各字段解码算子分别连接至所述内部总线,在所述控制器的控制下依次完成FAST行情数据中各个字段的解码;所述内部总线分为数据总线与控制总线,所述数据总线实现FAST行情数据输入流缓存器与各字段解码算子以及FIX消息缓存器之间的数据传递,所述控制总线负责控制各个字段的解码操作。所述字段解码算子为三段式的解码算子,并通过总线连接实现流水线式的FAST行情解码。本发明可以有效的加速行情解码的速度,为算法交易、高频交易、市场风险监控等金融应用提供支撑。

The invention relates to a low-delay FAST market decoding device and method based on pipeline architecture. The device includes an internal bus, a controller and field decoding operators for each field in the FAST market data, and each field decoding operator is connected to the internal bus respectively, and completes each field in the FAST market data sequentially under the control of the controller decoding; the internal bus is divided into a data bus and a control bus, and the data bus realizes the data transmission between the FAST market data input flow buffer and each field decoding operator and the FIX message buffer, and the control bus is responsible for controlling The decoding operation of each field. The field decoding operator is a three-segment decoding operator, and realizes pipelined FAST quotation decoding through a bus connection. The present invention can effectively accelerate the speed of market decoding, and provide support for financial applications such as algorithmic trading, high-frequency trading, and market risk monitoring.

Description

基于流水线架构的低时延FAST行情解码装置和方法Low-latency FAST market decoding device and method based on pipeline architecture

技术领域technical field

本发明属于信息技术领域,具体涉及一种基于流水线架构的低时延FAST行情解码装置和方法。The invention belongs to the field of information technology, and in particular relates to a low-latency FAST market decoding device and method based on a pipeline architecture.

背景技术Background technique

金融交易所以组播(multicast)的形式实时向市场参与者发布最新的市场行情数据(market data)。市场行情数据包含了最新的买卖报价与需求量、金融产品的成交记录(如开盘价、最高价、最低价、现价、成交量、成交额等)、订单状态等最新信息。金融参与者通过看盘软件或算法交易等软件对接入的金融行情数据进行实时的解析,依据最新市场行情做出金融交易决策(如买卖金融产品)。因此,金融行情数据的及时解析对于市场参与者(尤其是算法交易以及高频交易者)至关重要。最新获取市场行情状态的市场参与者可优先于其他市场参与者获取瞬间的市场利润。Financial exchanges release the latest market data to market participants in real time in the form of multicast. Market data includes the latest buying and selling quotations and demand, transaction records of financial products (such as opening price, highest price, lowest price, current price, transaction volume, transaction value, etc.), order status and other latest information. Financial participants analyze the incoming financial market data in real time through software such as market-watching software or algorithmic trading, and make financial transaction decisions (such as buying and selling financial products) based on the latest market conditions. Therefore, timely analysis of financial market data is crucial for market participants (especially algorithmic trading and high-frequency traders). Market participants who have obtained the latest market status can obtain instant market profits prior to other market participants.

算法交易(algorithm trading)是指通过计算机程序自动实现快速、低成本的订单执行和成交。具体涉及通过程序确定订单的最佳执行路径、执行时间、执行价格及执行数量。算法交易广泛应用于养老基金,共同基金,对冲基金以及其他买方机构投资者等。通过算法交易可以把大额交易分割为许多小额交易来应付市场风险和冲击,同时可为市场提供流动性。Algorithm trading refers to the automatic realization of fast and low-cost order execution and transaction through computer programs. Specifically, it involves determining the best execution path, execution time, execution price and execution quantity of an order through a program. Algorithmic trading is widely used in pension funds, mutual funds, hedge funds, and other buy-side institutional investors. Through algorithmic trading, large transactions can be divided into many small transactions to cope with market risks and impacts, and at the same time provide liquidity for the market.

高频交易(High Frequency Trading,HFT)是指通过高性能的计算平台从那些人们无法利用的极为短暂的市场变化中寻求价格差实现套利的计算机化交易。高频交易对市场数据的响应延时在微秒级,每次持仓时间极短,收盘时基本保持平仓。高频交易通过累积频繁多次的微薄利润实现获利。高频交易被广泛应用于做市,它为市场提供了流动性。高频交易已占到美国股市总成交量的70%,在欧洲占到45%,在日本占到40%。高频交易也开始在新兴市场兴起,如果在国内商品期货、ETF即权证等方面均有应用。High Frequency Trading (High Frequency Trading, HFT) refers to a computerized transaction that uses a high-performance computing platform to seek price differences from extremely short-term market changes that people cannot take advantage of to achieve arbitrage. The response delay of high-frequency trading to market data is at the microsecond level, and each position is held for a very short time, and the position is basically closed at the close. High-frequency trading makes money by accumulating small profits that are frequent and numerous. High-frequency trading is widely used in market making, which provides liquidity to the market. High-frequency trading has accounted for 70% of the total turnover of the US stock market, 45% in Europe, and 40% in Japan. High-frequency trading has also begun to rise in emerging markets, if it is applied in domestic commodity futures, ETF or warrants, etc.

在国内金融市场主要通过证券交易数据交换协议(Securities TradingExchange Protocol,STEP)在交易机构与市场参与者之间传递金融消息,包括订单数据、行情数据等。STEP消息完全兼容国外金融市场的金融信息交换协议(Financial InformationExchange,FIX)。STEP/FIX消息严格由多个“tag=value”的基本结构组成。该基本结构称为一个域或者一个字段(field)。字段之间由字段分割符“SOH”分隔。其中“tag”是字段ID或字段名,表示具体的字段,它隐含了值的类型、取值区间等信息,“value”是该字段的值。如字段“270=342”表示标号为270(STEP中表示“行情条目价格”)的字段的值为342;SOH为非可打印字符,其ASCII码等于1。In the domestic financial market, financial information, including order data and market data, is mainly transmitted between trading institutions and market participants through the Securities Trading Exchange Protocol (STEP). STEP messages are fully compatible with the financial information exchange protocol (Financial Information Exchange, FIX) of foreign financial markets. A STEP/FIX message is strictly composed of multiple "tag=value" basic structures. This basic structure is called a domain or a field. Fields are separated by the field separator "SOH". Among them, "tag" is a field ID or field name, indicating a specific field, which implies information such as value type and value range, and "value" is the value of the field. For example, the field "270=342" indicates that the value of the field labeled 270 (representing "market item price" in STEP) is 342; SOH is a non-printable character, and its ASCII code is equal to 1.

为了降低行情数据传输带宽需求与传输时延,行情发布机构会选择流式FIX协议(FIX Adapting for STreaming,FAST)对STEP/FIX行情消息进行流式编码压缩。FAST编码方法在两个层面上降低数据流的大小。首先,通过“字段操作符”的概念使得可以利用流中数据的相关性,消除冗余数据。其次,在二进制编码对余下数据的串行化中利用了可自描述的字段长度(停止位编码机制)以及指示字段是否存在的字段存在位图(Presence Map,PMap)。编码依据称为“模板”的控制结构来进行。模板通过规定字段的顺序和结构、字段操作符,及其使用的二进制编码表示方法来控制对流的一部分的编码。更具体的细节请参见FIX/STEP与FAST协议规范文档。为了方便描述,本发明将FIX/STEP每个字段经过FAST编码后得到的二进制数据称为字段的编码值。In order to reduce market data transmission bandwidth requirements and transmission delay, the market publishing agency will choose the streaming FIX protocol (FIX Adapting for STreaming, FAST) to stream encode and compress the STEP/FIX market information. The FAST encoding method reduces the size of the data stream on two levels. First of all, the concept of "field operator" makes it possible to use the correlation of data in the stream and eliminate redundant data. Second, a self-describing field length (stop bit encoding mechanism) and a field presence bitmap (Presence Map, PMap) indicating the presence or absence of a field are utilized in the serialization of the remaining data in binary encoding. Coding is done according to control structures called "templates". A template controls the encoding of a portion of a stream by specifying the order and structure of the fields, field operators, and the binary-encoded representation they use. For more specific details, please refer to the FIX/STEP and FAST protocol specification documents. For the convenience of description, the present invention refers to the binary data obtained after each field of FIX/STEP is encoded by FAST as the encoded value of the field.

随着中国金融市场的日益开放发展,今后高频交易、算法交易等金融应用在中国金融市场必定会占据更大的市场份额。金融行情数据的及时解析是算法交易、高频交易、金融风险监控等金融应用的必备前提条件。在金融市场竞争日益激烈、金融风险对机构本身、乃至整个金融市场甚至社会层面的影响比之前变得更大。因此迫切需要研究一种低时延的FAST行情解码技术,以支持金融风险监控、算法交易等要求低时延行情处理类的应用需求。同时还可以促进金融市场的流动性。With the increasingly open development of China's financial market, financial applications such as high-frequency trading and algorithmic trading will surely occupy a larger market share in China's financial market in the future. Timely analysis of financial market data is a prerequisite for financial applications such as algorithmic trading, high-frequency trading, and financial risk monitoring. With increasingly fierce competition in the financial market, financial risks have a greater impact on institutions themselves, the entire financial market, and even society than before. Therefore, there is an urgent need to study a low-latency FAST market decoding technology to support financial risk monitoring, algorithmic trading, and other application requirements that require low-latency market processing. At the same time, it can also promote the liquidity of financial markets.

目前的FAST行情解码主要是基于软件方法实现,如采用开源的行情软件OpenFAST(sourceforge.net/projects/openfast/)、QuickFAST(www.ociweb.com/products/quickfast/),或者企业自己开发的行情解码系统。基于软件的解码方法引入了额外的数据处理时延。一方面,行情网络数据包解析引入的软件网络协议栈时延:两次内存拷贝时延以及等待系统中断处理时延;另一方面,操作系统引入的系统抖动时延,包括多进程竞争系统资源、中断等待等。通常软件的行情处理时延在毫秒级别。毫秒级的行情解码时延难以满足如高频交易、市场风险监控类的实时应用。The current FAST market decoding is mainly based on software methods, such as using open source market software OpenFAST (sourceforge.net/projects/openfast/), QuickFAST (www.ociweb.com/products/quickfast/), or the company's own market development decoding system. Software-based decoding methods introduce additional data processing delays. On the one hand, the software network protocol stack delay introduced by market network packet analysis: two memory copy delays and waiting for system interrupt processing delay; on the other hand, the system jitter delay introduced by the operating system, including multi-process competition for system resources , interrupt wait, etc. Usually, the market processing delay of the software is at the millisecond level. Millisecond-level market decoding delay is difficult to meet real-time applications such as high-frequency trading and market risk monitoring.

另一方面,FAST消息有很强的数据相关。编码后的FAST行情消息是二进制数据流,字段之间、消息之间均是通过PMap与停止位编码机制依次识别。即只有从输入流中读完一个字段的FAST编码值才能确定下一个字段在输入行情流中的位置;同理,只有读完一条FAST消息后才能从输入流中读入下一条FAST消息。FAST消息的数据相关性限制了FAST行情的并行解码。已公开的文献还没有实现FAST行情消息并行解码的工作。On the other hand, FAST messages have strong data dependencies. The encoded FAST market information is a binary data stream, and the fields and messages are sequentially identified through the PMap and stop bit encoding mechanism. That is, the position of the next field in the input market stream can be determined only after reading the FAST encoded value of a field from the input stream; similarly, only after reading a FAST message can the next FAST message be read from the input stream. The data dependency of FAST messages limits parallel decoding of FAST quotes. The published literature has not yet realized the work of parallel decoding of FAST market information.

发明内容Contents of the invention

本发明的目的是提供一种基于专用硬件加速FAST行情数据解码的装置和方法,可以有效的加速行情解码的速度,为算法交易、高频交易、市场风险监控等金融应用提供支撑。The purpose of the present invention is to provide a device and method for accelerating the decoding of FAST market data based on dedicated hardware, which can effectively accelerate the speed of market decoding and provide support for financial applications such as algorithmic trading, high-frequency trading, and market risk monitoring.

本发明采用的技术方案如下:The technical scheme that the present invention adopts is as follows:

一种基于流水线架构的低时延FAST行情解码装置,包括内部总线、控制器和FAST行情数据中各字段的字段解码算子,各字段解码算子分别连接至所述内部总线,在所述控制器的控制下依次完成FAST行情数据中各个字段的解码;所述内部总线分为数据总线与控制总线,所述数据总线实现FAST行情数据输入流缓存器与各字段解码算子以及FIX消息缓存器之间的数据传递,所述控制总线负责控制各个字段的解码操作。A low-latency FAST quotation decoding device based on a pipeline architecture, comprising an internal bus, a controller, and field decoding operators for each field in the FAST quotation data, each field decoding operator is connected to the internal bus respectively, and in the control The decoding of each field in the FAST market data is completed sequentially under the control of the device; the internal bus is divided into a data bus and a control bus, and the data bus realizes the FAST market data input stream buffer and each field decoding operator and FIX message buffer The data transmission between, the control bus is responsible for controlling the decoding operation of each field.

进一步地,所述字段解码算子为三段式的解码算子,并通过总线连接实现流水线式的FAST行情解码;所述三段式的解码算子包括读数据、字段解码、解码结果输出三个部件,三个部件之间通过缓存器进行中间结果缓存。其中,读数据部件负责从FAST行情数据输入流缓存器中读取字段的编码值,字段解码部件依据字段操作符的规则负责具体的解码,结果输出部件负责输出解码的字段值至输出FIX消息缓存器。所述流水线式的FAST行情解码共包括三条独立的流水线:所有字段解码算子的读数据部件分别连接至内部总线,并与读控制器相连构成读数据流水线;所有字段解码算子的解码部件分别连接至另一条内部总线,与解码控制器相连构成解码流水线;所有字段解码算子的结果输出部件分别连接至另一条内部总线,与输出控制器相连构成输出流水线。Further, the field decoding operator is a three-segment decoding operator, and is connected through a bus to realize pipelined FAST quotation decoding; the three-segment decoding operator includes three steps of reading data, field decoding, and decoding result output. The intermediate results are cached through the cache between the three components. Among them, the reading data part is responsible for reading the encoded value of the field from the FAST market data input stream buffer, the field decoding part is responsible for specific decoding according to the rules of the field operator, and the result output part is responsible for outputting the decoded field value to the output FIX message buffer device. The pipelined FAST market decoding includes three independent pipelines: the read data parts of all field decoding operators are respectively connected to the internal bus, and are connected with the read controller to form a read data pipeline; the decoding parts of all field decoding operators are respectively It is connected to another internal bus and connected to the decoding controller to form a decoding pipeline; the result output components of all field decoding operators are respectively connected to another internal bus and connected to the output controller to form an output pipeline.

进一步地,所述控制器采用带数据通路的有限状态机机制实现,控制器内部的分为控制通路与数据通路,两条通路内部均由有限状态机实现;所述控制通路是一个顶层的字段解码任务调度器,由它依次发出各个字段解码算子启动解码操作的指令;所述数据通路包含各个解码算子的具体控制逻辑;当一个字段的解码算子完成解码后,数据通路向控制层返回解码结束信号。Further, the controller is realized by a finite state machine mechanism with a data path, and the inside of the controller is divided into a control path and a data path, and both paths are internally implemented by a finite state machine; the control path is a top-level field Decoding task scheduler, which sequentially sends instructions for each field decoding operator to start the decoding operation; the data path contains the specific control logic of each decoding operator; when the decoding operator of a field completes decoding, the data path goes to the control layer Returns the decoding end signal.

一种采用上述装置的基于流水线架构的低时延FAST行情解码方法,将字段解码算子分为读数据、字段解码、解码结果输出三个部件,并通过总线连接实现流水线式的FAST行情解码,包括如下步骤:A low-latency FAST quotation decoding method based on a pipeline architecture using the above-mentioned device, the field decoding operator is divided into three parts: reading data, field decoding, and decoding result output, and realizing pipelined FAST quotation decoding through bus connection, Including the following steps:

1)所有字段解码算子的读数据部件分别连接至内部总线,并与读控制器相连构成读数据流水线;通过读数据部件从FAST行情数据输入流缓存器中读取字段的编码值;1) The read data parts of all field decoding operators are respectively connected to the internal bus, and are connected with the read controller to form a read data pipeline; the encoded value of the field is read from the FAST market data input stream buffer through the read data part;

2)所有字段解码算子的解码部件分别连接至另一条内部总线,与解码控制器相连构成解码流水线;通过字段解码部件依据字段操作符的规则负责具体的解码;2) The decoding components of all field decoding operators are respectively connected to another internal bus and connected to the decoding controller to form a decoding pipeline; the field decoding components are responsible for specific decoding according to the rules of field operators;

3)所有字段解码算子的结果输出部件分别连接至另一条内部总线,与输出控制器相连构成输出流水线;通过结果输出部件负责输出解码的字段值至输出FIX消息缓存器。3) The result output parts of all field decoding operators are respectively connected to another internal bus and connected to the output controller to form an output pipeline; the result output part is responsible for outputting the decoded field values to the output FIX message buffer.

利用本发明提供的装置和方法处理FAST行情数据解码,具有以下优点:Utilize device and method provided by the present invention to process FAST market data decoding, have the following advantages:

1、获得极低时延的FAST行情数据处理速度。解码一条FAST行情的时延为0.1~1微妙级别。基于专用硬件实现FAST行情解码,可避免软件系统引入的额外处理时延。1. Obtain FAST market data processing speed with extremely low latency. The delay in decoding a FAST quote is at the level of 0.1 to 1 microsecond. Realize FAST market decoding based on dedicated hardware, which can avoid the additional processing delay introduced by the software system.

2、基于总线架构的FAST行情数据解码处理器,具有很好的扩展性,支持灵活的字段更新。添加新算子只需将算子挂载至总线,删除算子只需从总线上卸载算子。这一点对金融应用很重要,因为FAST行情模板可能会经常更新。2. The FAST market data decoding processor based on the bus architecture has good scalability and supports flexible field updates. To add a new operator, you only need to mount the operator to the bus, and to delete an operator, you only need to unload the operator from the bus. This is important for financial applications, because FAST market templates may be updated frequently.

3、基于流水线的FAST行情解码处理器解决了FAST行情数据依赖的难点,解决了FAST行情不能并行解码的难点,实现了多个字段、多条消息间的并行解码;并且流水线各个阶段之间的中间结果的合理表示,总体采用“值存在标记+值”的表示方式。与不使用流水线架构的FAST行情处理器相比,理论上,性能可以获得3倍的加速比;实测结果表明,性能提高了1.8倍。3. The pipeline-based FAST market decoding processor solves the difficulty of relying on FAST market data, solves the difficulty that FAST market data cannot be decoded in parallel, and realizes parallel decoding between multiple fields and multiple messages; and the connection between each stage of the pipeline The reasonable representation of intermediate results generally adopts the representation method of "value existence mark + value". Compared with the FAST market processor that does not use the pipeline architecture, theoretically, the performance can be accelerated by 3 times; the actual measurement results show that the performance has increased by 1.8 times.

4、控制器基于带数据通路的有限状态机实现,简化了控制与更新逻辑。4. The controller is implemented based on a finite state machine with a data path, which simplifies the control and update logic.

5、本发明适用于任务类似FAST协议结构的差分解码协议。5. The present invention is applicable to a differential decoding protocol whose task is similar to that of the FAST protocol structure.

上述1、3点的实测环境为:FPGA芯片为:Xilinx Zynq-7000chip(XC7Z020-3CLG484);一条FAST模板包含12个字段。The actual measurement environment of the above points 1 and 3 is: the FPGA chip is: Xilinx Zynq-7000chip (XC7Z020-3CLG484); a FAST template contains 12 fields.

附图说明Description of drawings

图1是基于总线架构的FAST行情解码处理器示意图。Figure 1 is a schematic diagram of the FAST market decoding processor based on the bus architecture.

图2是三段式流水线的字段解码器示意图。Fig. 2 is a schematic diagram of a field decoder of a three-stage pipeline.

图3是三段式流水线的FAST行情解码处理器示意图。Fig. 3 is a schematic diagram of a FAST market decoding processor with a three-stage pipeline.

图4是基于FSMD的控制器原理示意图。Figure 4 is a schematic diagram of the controller based on FSMD.

图5是基于FPGA实现的FAST行情消息解码处理器示意图。Fig. 5 is a schematic diagram of a FAST quotation message decoding processor implemented based on FPGA.

具体实施方式Detailed ways

为使本发明的上述目的、特征和优点能够更加明显易懂,下面通过具体实施例和附图,对本发明做进一步说明。In order to make the above objects, features and advantages of the present invention more obvious and understandable, the present invention will be further described below through specific embodiments and accompanying drawings.

在本发明中,采用专用硬件加速FAST行情数据解码,专用硬件如FPGA(FieldProgrammable Gate Array,现场可编程门阵列)、ASIC(Application SpecificIntegrated Circuit,专用集成电路)等。In the present invention, special hardware is used to accelerate the decoding of FAST market data, such as FPGA (Field Programmable Gate Array, Field Programmable Gate Array), ASIC (Application Specific Integrated Circuit, application specific integrated circuit) and the like.

首先,设计了基于总线架构的FAST行情解码处理器。对于具体的FAST行情模板,先将模板中定义的各个字段的解码器(也称为解码算子)分别连接至解码处理器的内部总线。内部总线分为数据总线与控制总线两类。在解码控制器的控制下依次完成各个字段的解码。First of all, the FAST market decoding processor based on the bus architecture is designed. For a specific FAST market template, first connect the decoders (also called decoding operators) of each field defined in the template to the internal bus of the decoding processor. The internal bus is divided into two types: data bus and control bus. Under the control of the decoding controller, the decoding of each field is completed in turn.

其后,对总线架构的FAST行情解码处理器进行优化改进,设计一个三段式流水线的FAST行情解码处理器。通过巧妙的流水线设计,实现了FAST字段之间、FAST消息间串行读入数据、并行解码、串行输出解码数据。极大的提高了FAST行情解码的速度。基于流水线的FAST行情解码处理器的各个字段解码算子均被设计为三段式的解码算子,然后各个解码算子通过总线连接实现流水线式的整体FAST行情解码器。After that, optimize and improve the FAST market decoding processor with bus architecture, and design a three-stage pipelined FAST market decoding processor. Through ingenious pipeline design, it realizes serial reading of data between FAST fields and FAST messages, parallel decoding, and serial output of decoded data. Greatly improved the speed of FAST market decoding. Each field decoding operator of the pipeline-based FAST market decoding processor is designed as a three-stage decoding operator, and then each decoding operator is connected through a bus to realize a pipelined overall FAST market decoder.

1.基于总线架构的FAST行情解码处理器1. FAST market decoding processor based on bus architecture

首先设计实现FAST协议支持的所有字段操作符,将这些操作符实现为解码算子库。对于具体FAST模板的解码,首先依据模板中定义的各个字段,从解码算子库中实例化各个字段。图1描述了基于总线架构的FAST行情解码处理器。每个被实例化的字段解码器分别连接至解码处理器的内部总线。内部总线分为数据总线与控制总线两类。数据总线实现FAST行情数据输入流缓存器(FAST-MSG FIFO)与各个字段解码器,以及FIX消息缓存器(FIX-MSG FIFO)之间的数据传递;控制总线负责控制各个字段的解码操作。当FAST行情数据输入流缓存器非空时,控制器首先激活PMap字段解码器(PMap Decoder)从输入流读取PMap字段的编码值,得到PMap向量。然后启动模板ID的解码(图中的TID Decoder)。其后,再依次激活后续字段的解码操作(图中的fld1Decoder~fldn Decoder)。前一个字段解码结束,才能启动下一个字段解码。由于FAST消息存在数据相关,具体每个字段的解码需要依据该字段的PMap位来判断输入数据流中是否存在字段值。本发明提出的基于总线结构的FAST行情解码处理器具有很好的扩展性。添加一个新的字段,只需将新解码算子挂载至总线,并修改控制器的控制逻辑;删除一个字段,只需将该解码算子从总线上卸载,并修改控制器的控制逻辑即可。扩展性对于经常需要更新的金融应用尤其重要。First, design and implement all field operators supported by the FAST protocol, and implement these operators as a decoding operator library. For the decoding of a specific FAST template, first instantiate each field from the decoding operator library according to each field defined in the template. Figure 1 describes the FAST market decoding processor based on the bus architecture. Each instantiated field decoder is separately connected to the internal bus of the decoding processor. The internal bus is divided into two types: data bus and control bus. The data bus realizes the data transfer between the FAST market data input stream buffer (FAST-MSG FIFO) and each field decoder, and the FIX message buffer (FIX-MSG FIFO); the control bus is responsible for controlling the decoding operation of each field. When the FAST market data input stream buffer is not empty, the controller first activates the PMap field decoder (PMap Decoder) to read the encoded value of the PMap field from the input stream to obtain the PMap vector. Then start the decoding of the template ID (TID Decoder in the figure). Thereafter, the decoding operations of the subsequent fields are sequentially activated (fld 1 Decoder to fld n Decoder in the figure). The decoding of the next field can only be started after the decoding of the previous field is completed. Since the FAST message is data-dependent, the decoding of each field needs to judge whether there is a field value in the input data stream according to the PMap bit of the field. The FAST quotation decoding processor based on the bus structure proposed by the present invention has good expansibility. To add a new field, you only need to mount the new decoding operator to the bus and modify the control logic of the controller; to delete a field, you only need to unload the decoding operator from the bus and modify the control logic of the controller. Can. Scalability is especially important for financial applications that require frequent updates.

2.基于流水线的FAST行情解码处理器2. FAST market decoding processor based on pipeline

图2描述了三段式流水架构的字段解码算子。该字段解码算子分为读数据(reader)、字段解码(decoder)、解码结果输出(writer)三个部件。三个部件之间通过缓存器(FIFO)进行中间结果缓存。读数据部件负责从输入流(FAST-MSG FIFO)中读取字段的编码值;字段解码部件依据字段操作符的规则负责具体的解码;结果输出部件负责输出解码的字段值至输出FIX消息缓存器(FIX-MSG FIFO)。Figure 2 describes the field decoding operator of the three-stage pipeline architecture. The field decoding operator is divided into three parts: reading data (reader), field decoding (decoder), and decoding result output (writer). The intermediate results are cached between the three components through a buffer (FIFO). The read data component is responsible for reading the encoded value of the field from the input stream (FAST-MSG FIFO); the field decoding component is responsible for specific decoding according to the rules of the field operator; the result output component is responsible for outputting the decoded field value to the output FIX message buffer (FIX-MSG FIFO).

图3描述了并行FAST行情解码处理器的架构。该处理器被分为三条独立的流水线。每个字段是一个三段式字段解码算子,即分为三大部件:读数据、字段解码、解码结果输出。所有(字段)解码算子的读数据部件分别连接至内部总线(内部分为数据总线与控制总线),并与读控制器(reading control,RC)相连构成FAST行情处理器的读数据流水线。其中读控制器控制各个解码算子的具体读操作。类似的,所有解码算子的解码部件分别连接至另一条内部总线,与解码控制器(decoding control,DC)相连构成FAST行情处理器的解码流水线;所有解码算子的结果输出部件分别连接至另一条内部总线,与输出控制器(writingcontrol,WC)相连构成FAST行情处理器的输出流水线。下面具体说明各流水线的工作机制。Figure 3 describes the architecture of the parallel FAST market decoding processor. The processor is divided into three independent pipelines. Each field is a three-segment field decoding operator, which is divided into three major parts: reading data, field decoding, and decoding result output. The data reading components of all (field) decoding operators are respectively connected to the internal bus (internal is divided into data bus and control bus), and connected to the reading controller (reading control, RC) to form the reading data pipeline of the FAST market processor. The read controller controls the specific read operation of each decoding operator. Similarly, the decoding components of all decoding operators are respectively connected to another internal bus, and connected to the decoding controller (decoding control, DC) to form the decoding pipeline of the FAST market processor; the result output components of all decoding operators are respectively connected to another An internal bus is connected with the output controller (writingcontrol, WC) to form the output pipeline of the FAST market processor. The working mechanism of each pipeline is described in detail below.

a)读数据流水线:a) Read data pipeline:

依次激活各个字段的读部件实现顺序读入字段的编码值。当输入FAST消息缓存器(FAST-MSG FIFO)不为空时,读数据控制器RC发出读数据启动信号至PMap解码算子的读数据部件(PMap reader)。该部件读取完数据后激活其后续部件(模板ID字段,tid reader)读取数据。依次类推,读控制器根据PMap状态与FAST模板定义的字段顺序依次激活后续字段的读数据部件。当最后一个字段读完数据后,通知RC一条FAST消息已读完。此时,如果输入FAST数据流缓存器不为空,则RC重新启动新一条FAST消息的读取工作;否则进入空闲等待状态。The reading components of each field are activated sequentially to realize the sequential reading of the coded values of the fields. When the input FAST message buffer (FAST-MSG FIFO) is not empty, the read data controller RC sends a read data start signal to the read data component (PMap reader) of the PMap decoding operator. After the component reads the data, it activates its subsequent component (template ID field, tid reader) to read the data. By analogy, the read controller sequentially activates the read data components of subsequent fields according to the PMap state and the field order defined by the FAST template. When the last field has finished reading data, notify RC that a FAST message has been read. At this time, if the buffer of the input FAST data stream is not empty, the RC restarts the reading work of a new FAST message; otherwise, it enters an idle waiting state.

每个算子的读部件将读入的编码值写入字段编码值缓存器xxx_in_fifo(本发明中出现的“xxx”字符表示图中的具体的字段名,如FAST模板中的第一个字段的编码值缓存器为“fld1_in_fifo”,见图3),该缓存器的基本存储单元格式为:“[pmap_bit][value]”。pmap_bit为字段的PMap标志位,字段解码部件需要利用该标志决定如何编码。即解码器需要知道当前字段在输入流中无编码值,是否需要利用前值或初始值恢复字段值,如拷贝(COPY)操作符字段的PMap标记为0时。The reading part of each operator writes the coded value read in into the field coded value buffer xxx_in_fifo (the "xxx" characters appearing in the present invention represent the specific field name in the figure, such as the first field in the FAST template The encoded value buffer is "fld1_in_fifo", see Figure 3), and the basic storage unit format of this buffer is: "[pmap_bit][value]". pmap_bit is the PMap flag bit of the field, and the field decoding component needs to use this flag to decide how to encode. That is, the decoder needs to know that the current field has no encoded value in the input stream, and whether it needs to use the previous value or the initial value to restore the field value, such as when the PMap flag of the copy (COPY) operator field is 0.

b)解码流水线b) Decoding pipeline

各个字段的解码部件并行的执行解码。从字段编码值缓存器中读取一个字段的编码值,也可能不需要读取字段编码值,由字段操作符的规则与字段PMap状态决定。然后依据字段操作符的规则执行字段解码。最后,输出解码结果至字段值缓存器(xxx_out_fifo)。The decoding part of each field performs decoding in parallel. Reading the coded value of a field from the field coded value buffer may not need to read the coded value of the field, which is determined by the rules of the field operator and the state of the field PMap. Field decoding is then performed according to the rules for field operators. Finally, output the decoding result to the field value buffer (xxx_out_fifo).

字段值缓存器(xxx_out_fifo)的基本存储单元结构为:“presence_flag[value]”。当该字段有值时,presence_flag=1;当该字段无值时presence_flag=0,且“value”为空。当消息的当前字段为空时,字段输出部件需要知道字段无值,它不需要向输出缓存器写入任何数据。“value”为字段值。变长的字符串字段值以‘\0’为结束标志。The basic storage unit structure of the field value buffer (xxx_out_fifo) is: "presence_flag[value]". When this field has a value, presence_flag=1; when this field has no value, presence_flag=0, and "value" is empty. When the current field of the message is empty, the field output component needs to know that the field has no value, it does not need to write any data to the output buffer. "value" is the field value. Variable-length string field values end with '\0'.

c)输出流水线c) Output pipeline

输出流水线的激活机制相同于读数据流水线,依次激活各个字段的输出部件(xxx_writer)。每个输出部件接收到输出控制器发出的输出数据启动信号后,读取对应字段值缓存器(xxx_out_fifo)中的字段值,如果读取到的字段编码值存在标记(presence_flag)为0,表示无字段值需要输出,则结束该字段的输出工作;否则从字段值缓存器读取一个字段值,然后将其逐字节写入FIX消息缓存器(FIX-MSG FIFO)。输出结束后,输出控制器通知后续输出部件继续输出字段值。The activation mechanism of the output pipeline is the same as that of the read data pipeline, and the output components (xxx_writer) of each field are activated sequentially. After each output unit receives the output data start signal from the output controller, it reads the field value in the corresponding field value buffer (xxx_out_fifo). If the read field code value presence flag (presence_flag) is 0, it means no If the field value needs to be output, then end the output work of this field; otherwise, read a field value from the field value buffer, and then write it into the FIX message buffer (FIX-MSG FIFO) byte by byte. After the output ends, the output controller notifies the subsequent output components to continue outputting field values.

3.控制器3. Controller

本发明中的控制器采用带数据通路的有限状态机(Finite State Machine withDatapath,FSMD)机制实现,如图4所示。控制器内部的分为控制通路与数据通路,两条通路内部均由有限状态机(FSM)实现。控制通路是一个顶层的字段解码任务调度器,由它依次发出各个字段解码算子启动解码操作的指令(xxx_dec_begin);数据通路包含各个解码算子的具体控制逻辑。当一个字段的解码算子完成解码后,数据通路会向控制层返回解码结束信号(xxx_dec_done)。The controller in the present invention is realized by a finite state machine (Finite State Machine with Datapath, FSMD) mechanism with a data path, as shown in FIG. 4 . The inside of the controller is divided into a control path and a data path, both of which are implemented by a finite state machine (FSM). The control path is a top-level field decoding task scheduler, which sequentially sends instructions (xxx_dec_begin) for each field decoding operator to start the decoding operation; the data path contains the specific control logic of each decoding operator. When the decoding operator of a field completes the decoding, the data channel will return the decoding end signal (xxx_dec_done) to the control layer.

4.基于FPGA的低时延行情解码处理器4. FPGA-based low-latency market decoding processor

本发明提出的行情解码架构,可在FPGA(Field Programmable Gate Array)、ASIC(Application Specific Integrated Circuit)等专用硬件上实现。本节以FPGA平台为列,给出具体的实现。The quotation decoding framework proposed by the present invention can be realized on special hardware such as FPGA (Field Programmable Gate Array), ASIC (Application Specific Integrated Circuit) and the like. This section takes the FPGA platform as a column and gives a specific implementation.

图5给出了基于FPGA实现的FAST行情消息解码处理器的框架图。其中,金融行情处理器为本发明提出的基于流水线的FAST行情解码处理器。在FPGA芯片内部有一个数据交换模块,该模块负责行情处理器与外界系统的快速数据交换。一方面,数据交换模块负责接收从交易所发布的实时行情数据流,对接收的数据包进行解包与进一步的解析并提取出FAST行情数据,缓存至FAST行情数据缓存器(FAST-MSG-FIFO)。另一方面,数据交换模块负责将解码后的FIX消息传输至金融应用系统(包含必要的封包)。由于交易所通过组播的方式实时发布行情,因此数据交换模块通过高速网络接口接入行情数据,如通过10/40G PYH+QSFP++GMAC核等;解码后的FIX行情消息传输至金融应用系统可以是高速网络接口,也可以通过PCIExpress接口+DMA通信方式实现行情的快速传递。Figure 5 shows the frame diagram of the FAST market information decoding processor based on FPGA. Wherein, the financial quotation processor is the pipeline-based FAST quotation decoding processor proposed by the present invention. There is a data exchange module inside the FPGA chip, which is responsible for the fast data exchange between the market processor and the external system. On the one hand, the data exchange module is responsible for receiving the real-time market data stream released from the exchange, unpacking and further analyzing the received data packets and extracting the FAST market data, and buffering them in the FAST market data buffer (FAST-MSG-FIFO ). On the other hand, the data exchange module is responsible for transmitting the decoded FIX message to the financial application system (including necessary packets). Since the exchange releases the market in real time through multicast, the data exchange module accesses the market data through a high-speed network interface, such as through 10/40G PYH+QSFP++GMAC core, etc.; the decoded FIX market information is transmitted to the financial application system It can be a high-speed network interface, or it can realize the rapid transmission of market prices through PCIExpress interface + DMA communication.

以上实施例仅用以说明本发明的技术方案而非对其进行限制,本领域的普通技术人员可以对本发明的技术方案进行修改或者等同替换,而不脱离本发明的精神和范围,本发明的保护范围应以权利要求书所述为准。The above embodiments are only used to illustrate the technical solution of the present invention and not to limit it. Those of ordinary skill in the art can modify or equivalently replace the technical solution of the present invention without departing from the spirit and scope of the present invention. The scope of protection should be determined by the claims.

Claims (9)

1. A low-delay FAST market decoding device based on a pipeline architecture is characterized by comprising an internal bus, a controller and field decoding operators of fields in FAST market data, wherein the field decoding operators are respectively connected to the internal bus, and the decoding of the fields in the FAST market data is sequentially completed under the control of the controller; the internal bus is divided into a data bus and a control bus, the data bus realizes data transmission among a FAST market data input stream buffer, each field decoding operator and a FIX message buffer, and the control bus is responsible for controlling the decoding operation of each field;
The field decoding operator is a three-section decoding operator and realizes the pipeline FAST market decoding through bus connection; the three-section decoding operator comprises three components of reading data, decoding a field and outputting a decoding result, and intermediate result caching is carried out among the three components through a cache; the field decoding component is responsible for specific decoding according to rules of field operators, and the result output component is responsible for outputting decoded field values to the FIX message buffer; the pipelined FAST market decoding comprises three independent pipelines: the data reading components of all the field decoding operators are respectively connected to the internal bus and connected with the data reading controller to form a data reading pipeline; the decoding components of all the field decoding operators are respectively connected to the other internal bus and connected with a decoding controller to form a decoding pipeline; the result output parts of all the field decoding operators are respectively connected to the other internal bus and connected with the output controller to form an output pipeline;
Through the three independent pipelines, serial data reading, parallel decoding and serial data output decoding between FAST fields and FAST messages are realized, and the method comprises the following steps:
The data reading assembly line sequentially activates data reading components of decoding operators of all the fields to realize sequential reading of the coded values of the fields;
In the decoding pipeline, a field decoding component of each field decoding operator reads the coded value of a field from a field coded value buffer, performs field decoding in parallel according to the rule of a field operator, and finally outputs a decoding result to a field value buffer;
The activation mechanism of the output pipeline is the same as that of a read data pipeline, the output components of all fields are sequentially activated, and after each output component receives an output data starting signal sent by the output controller, the field value in the corresponding field value buffer is read and written into the FIX message buffer byte by byte.
2. The apparatus of claim 1, wherein: the controller is realized by adopting a finite state machine mechanism with a data path, the controller is internally divided into a control path and a data path, and the interiors of the two paths are realized by the finite state machine; the control path is a field decoding task scheduler at the top layer, and the control path sequentially sends out instructions for starting decoding operation of each field decoding operator; the data path comprises specific control logic of each decoding operator; and when the decoding operator of one field completes decoding, the data path returns a decoding end signal to the control layer.
3. The apparatus of claim 1, wherein: the method is realized on special hardware, and the special hardware is FPGA or ASIC.
4. The apparatus of claim 3, wherein: the method is realized on an FPGA chip, a data exchange module in the FPGA chip is responsible for FAST data exchange with the outside, on one hand, the data exchange module is responsible for receiving real-time market data flow issued from a trading exchange, unpacking and further analyzing the received data packet, extracting FAST market data and caching the FAST market data into a FAST market data cache; on the other hand, the data exchange module is responsible for transmitting the decoded FIX message to the financial application system.
5. A low-latency FAST market decoding method based on a pipeline architecture and adopting the device of claim 1, wherein a field decoding operator is divided into three components of reading data, field decoding and decoding result output, and the pipelined FAST market decoding is realized through bus connection, comprising the following steps:
1) The data reading components of all the field decoding operators are respectively connected to the internal bus and connected with the data reading controller to form a data reading pipeline; reading the coded value of the field from the FAST market data input stream buffer by a data reading component; the data reading assembly line sequentially activates data reading components of decoding operators of all the fields to realize sequential reading of the coded values of the fields;
2) The decoding components of all the field decoding operators are respectively connected to the other internal bus and connected with a decoding controller to form a decoding pipeline; the field decoding component is responsible for specific decoding according to the rules of the field operator; in the decoding pipeline, a field decoding component of each field decoding operator reads the coded value of a field from a field coded value buffer, performs field decoding in parallel according to the rule of a field operator, and finally outputs a decoding result to a field value buffer;
3) The result output parts of all the field decoding operators are respectively connected to the other internal bus and connected with the output controller to form an output pipeline; outputting the decoded field value to a FIX message buffer through a result output component; the activation mechanism of the output pipeline is the same as that of a read data pipeline, the output components of all fields are sequentially activated, and after each output component receives an output data starting signal sent by the output controller, the field value in the corresponding field value buffer is read and written into the FIX message buffer byte by byte.
6. The method of claim 5, wherein: when the input stream buffer of the FAST market data is not empty, the read controller sends a read data starting signal to a read data component of the PMap decoding operator, the read data component activates the subsequent component to read the data after reading the data, and so on, the read controller activates the read data component of the subsequent field in sequence according to the PMap state and the field sequence defined by the FAST template; when the last field finishes reading data, the reading controller is informed that a FAST message is completely read, at this time, if the input FAST data stream buffer is not empty, the reading controller restarts the reading work of a new FAST message, otherwise, the reading controller enters an idle waiting state.
7. The method of claim 6, wherein: and the read data component of each field decoding operator writes the read-in coded value into a field coded value buffer, and the basic storage unit format of the field coded value buffer is [ PMap _ bit ] [ value ], wherein PMap _ bit is the PMap flag bit of a field, and value is the value of the flag bit.
8. The method of claim 7, wherein: the basic storage unit structure of the field value buffer is a presence _ flag [ value ], and when the field has a value, the presence _ flag is 1, and when the field has no value, the presence _ flag is 0.
9. The method of claim 8, wherein: if the field value read by each output component has a flag presence _ flag of 0, which indicates that no field value needs to be output, the field output operation is ended; otherwise, reading a field value from the field value buffer, writing the field value into the FIX message buffer byte by byte, and after the output is finished, the output controller informs the subsequent output component to continue outputting the field value.
CN201610008902.9A 2016-01-07 2016-01-07 Low-delay FAST market decoding device and method based on pipeline architecture Active CN105654383B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610008902.9A CN105654383B (en) 2016-01-07 2016-01-07 Low-delay FAST market decoding device and method based on pipeline architecture

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610008902.9A CN105654383B (en) 2016-01-07 2016-01-07 Low-delay FAST market decoding device and method based on pipeline architecture

Publications (2)

Publication Number Publication Date
CN105654383A CN105654383A (en) 2016-06-08
CN105654383B true CN105654383B (en) 2019-12-10

Family

ID=56490626

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610008902.9A Active CN105654383B (en) 2016-01-07 2016-01-07 Low-delay FAST market decoding device and method based on pipeline architecture

Country Status (1)

Country Link
CN (1) CN105654383B (en)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108335201B (en) * 2018-01-10 2022-03-04 武汉旷腾信息技术有限公司 Self-adaptive price difference transaction system and method based on FPGA
CN109614152B (en) * 2018-12-06 2022-11-04 镕铭微电子(济南)有限公司 Hardware acceleration module and storage device
CN110456662B (en) * 2019-08-14 2021-02-02 山东大学 A real-time co-simulation platform and simulation method for a refined wind energy conversion system
CN110795152B (en) * 2019-11-04 2023-11-03 三亚学院 Time adjustment system based on financial data processing
CN112069772B (en) * 2020-07-22 2024-06-14 深圳华云信息系统科技股份有限公司 FPGA-based data processing method and device, electronic equipment and storage medium
CN111967244B (en) * 2020-07-30 2023-03-14 浪潮(北京)电子信息产业有限公司 FAST protocol decoding method, device and equipment based on FPGA
CN111738862B (en) * 2020-08-19 2020-11-27 南京艾科朗克信息科技有限公司 Security quotation low-delay quotation recovery method based on FPGA
CN112291041B (en) * 2020-10-22 2022-05-27 山东云海国创云计算装备产业创新中心有限公司 Data decoding device and method based on FPGA
CN112347020A (en) * 2020-10-26 2021-02-09 东方证券股份有限公司 FAST market analysis system and method based on CGRA
CN112346843A (en) * 2020-11-26 2021-02-09 上海金融期货信息技术有限公司 Analysis method of low-delay FAST protocol
CN113190481B (en) * 2021-07-02 2021-10-29 深圳华云信息系统有限公司 Data transmission method and device, electronic equipment and computer readable storage medium
CN113691532B (en) * 2021-08-24 2023-11-28 中科亿海微电子科技(苏州)有限公司 Parallel analysis method and device for tera-megaphone communication data based on FAST protocol

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6609193B1 (en) * 1999-12-30 2003-08-19 Intel Corporation Method and apparatus for multi-thread pipelined instruction decoder
CN101719915B (en) * 2009-11-10 2012-12-19 北京中创信测科技股份有限公司 Method and device for realizing field decoding
CN104699448A (en) * 2015-03-20 2015-06-10 上海交通大学 Paralleled decoding system of FAST protocol and realization method of paralleled decoding system

Also Published As

Publication number Publication date
CN105654383A (en) 2016-06-08

Similar Documents

Publication Publication Date Title
CN105654383B (en) Low-delay FAST market decoding device and method based on pipeline architecture
Lockwood et al. A low-latency library in FPGA hardware for high-frequency trading (HFT)
Leber et al. High frequency trading acceleration using FPGAs
CN105593830B (en) Methods, devices and systems for the waiting time in the physical unit of measuring circuit
JP5225105B2 (en) Firmware socket module for FPGA-based pipeline processing
CN104823167B (en) Live Fault recovery
JP5444536B2 (en) Method and apparatus for high-speed processing of financial information
US20190188738A1 (en) Method and a Device for Decoding Data Streams in Reconfigurable Platforms
CN112650499A (en) System for realizing hardware decoding processing of exchange level-2FAST market based on OpenCL platform
DE102018004327A1 (en) Systems and methods for accessing mass storage as working memory
WO2019207104A1 (en) Publish-subscribe framework for application execution
JP2012512466A (en) Method and apparatus for high-speed processing of financial market depth data
CN107105266A (en) A kind of coding/decoding method, the apparatus and system of PNG images
CN109379305B (en) Data issuing method, device, server and storage medium
TW200842593A (en) Content-terminated DMA
CN105023185A (en) Futures trading position data real-time analytical system based on FPGA (field programmable gate array)
CN102656860B (en) The process of many granularities stream
CN114328348A (en) FPGA acceleration board card and market data processing method thereof
WO2015049304A1 (en) An asset management device and method in a hardware platform
KR101442362B1 (en) Concurrent execution of request processing and analytics of requests
CN104699448A (en) Paralleled decoding system of FAST protocol and realization method of paralleled decoding system
Tang et al. A pipelined market data processing architecture to overcome financial data dependency
CN101261611A (en) Data transmission device and method between peripheral equipment
CN111311404B (en) Distributed-based stream type financial transaction wind control system and method
CN107491809A (en) A kind of method that FPGA realizes activation primitive in residual error network

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
CB03 Change of inventor or designer information
CB03 Change of inventor or designer information

Inventor after: Jiang Lei

Inventor after: Tang Qiu

Inventor after: Dai Qiong

Inventor after: Su Majing

Inventor after: Yang Jiajia

Inventor after: Bai Xu

Inventor before: Jiang Lei

Inventor before: Tang Qiu

Inventor before: Dai Qiong

Inventor before: Su Majing

Inventor before: Yang Jiajia

Inventor before: Bai Xu

GR01 Patent grant
GR01 Patent grant