CN203705861U - Multi-serial port parallel processing framework based on FPGA - Google Patents
Multi-serial port parallel processing framework based on FPGA Download PDFInfo
- Publication number
- CN203705861U CN203705861U CN201320834001.7U CN201320834001U CN203705861U CN 203705861 U CN203705861 U CN 203705861U CN 201320834001 U CN201320834001 U CN 201320834001U CN 203705861 U CN203705861 U CN 203705861U
- Authority
- CN
- China
- Prior art keywords
- fpga
- cpu
- uart
- parallel processing
- serial
- 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.)
- Expired - Lifetime
Links
- 238000012545 processing Methods 0.000 title claims abstract description 20
- 230000015654 memory Effects 0.000 claims abstract description 17
- 238000013461 design Methods 0.000 claims abstract description 10
- 230000002093 peripheral effect Effects 0.000 claims description 11
- 238000000034 method Methods 0.000 claims description 10
- 230000008569 process Effects 0.000 claims description 8
- 230000005540 biological transmission Effects 0.000 abstract description 5
- 238000004891 communication Methods 0.000 description 14
- 230000009977 dual effect Effects 0.000 description 14
- 230000006870 function Effects 0.000 description 5
- 230000008859 change Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000009467 reduction Effects 0.000 description 2
- 230000008901 benefit Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005265 energy consumption Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 210000000352 storage cell Anatomy 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Landscapes
- Advance Control (AREA)
Abstract
The utility model belongs to the technical field of distributed industrial control, and relates to a multi-serial port parallel processing framework based on FPGA (Field Programmable Gate Array). The multi-serial port parallel processing framework based on FPGA comprises a transceiver, a FPGA programmable logic chip and a processor CPU (Central Processing Unit). The CPU is connected to the FPGA chip through a CPU interface bus. The multi-serial port parallel processing framework based on FPGA is characterized in that multiple UART (Universal Asynchronous Receiver/Transmitter) cores and multiple coprocessor MCUs (Micro Control Unit) corresponding to the UART cores are designed in the FPGA chip through a hardware description language; multiple embedded memories corresponding to the multiple coprocessor MCUs are embedded in the FPGA; each embedded memory is configured to be in a dual-port mode capable of reading and writing operation; and the multiple UART cores and the corresponding multiple transceivers are connected together through RS (Recommend Standard) 232/ RS 422/ RS 485 interfaces. The multi-serial port parallel processing framework based on FPGA is low in hardware design cost, can effectively reduce CPU load and raise bandwidth of serial bus data transmission, and can expand multipath serial channels flexibly.
Description
Technical field
The utility model belongs to distributing industrial control technology field, is specifically related to a kind of many serial ports parallel processing framework based on FPGA.
Background technology
UART (universal asynchronous receiving-transmitting transmitter) is a kind of serial transmission interface that is widely used in short distance, low-speed communication, it is simple to operate, reliable operation, anti-interference strong, cost is low, long transmission distance (composition 485 networks can transmit more than 1,200 meter).In data communication, computer network and distributing industrial control system, processor often adopts serial communication and peripheral module swap data and information.
In modern industrial control system, multi-serial communication application is more and more extensive.Especially data collecting field, in engineering application, to the increase in demand of serial ports quantity, processor needs Real-time Collection and processes the data that come from multiple serial peripherals.Universal serial port implementation as shown in Figure 1.The serial ports limited amount that can provide due to ordinary processor or ASIC, in the time that the serial terminal of needs control exceedes more than four, traditional framework is just difficult to meet application request, as hardware cost costliness, be difficult to expansion, the problem such as power consumption is higher, data processing real-time is not high, processor load is high, UART bus bandwidth is low.Be in particular in: 1) serial peripheral is used RS232 or RS422/485 Asynchronous Serial Interface, the general integrated circuit adopting is that UART chip is realized.As 8250, the chip such as 16550AFN is all common special UART device, hardware serial line interface resource-constrained, but this class chip internal structure design is quite complicated, chip pin is more, what have contains many supplementary modules (as FIFO), in the time that reality is used, often only use UART basic function, when design, use this class chip, caused the wasting of resources; 2) what processor or special many serial port chip provided can extended serial port limited amount, cannot realize more UART serial ports expansion; 3) peripheral interface circuit complexity, board design difficulty is larger; 4) use UART chip also can make hardware cost increase and increase the area of circuit board, cannot large-scale application in multi-channel data acquisition occasion; 5) processor adopting serial mode scans each passage successively, but the too low CPU waits for too long that causes of serial communication speed is difficult to the higher actual demand that needs parallel processing of requirement of real time.
Summary of the invention
In view of the above-mentioned problems in the prior art, the technical problems to be solved in the utility model be to provide a kind of cost of hardware design low, can effectively reduce cpu load, can flexible expansion multi-path serial passage many serial ports parallel processing framework.
In order to realize above object, the technical solution adopted in the utility model is: a kind of many serial ports parallel processing framework based on FPGA, comprise transceiver, FPGA programmable logic chip and processor CPU, CPU is connected with described fpga chip by cpu i/f bus, it is characterized in that: design multiple UART core and the multiple coprocessor MCUs corresponding with each UART nuclear phase at described FPGA chip internal by hardware description language; The embedded multiple and in-line memory that each coprocessor MCU is corresponding of described FPGA, each in-line memory is configured to dual-port pattern that can read-write operation; Described multiple UART core connects by RS232/RS422/RS485 interface with multiple corresponding described transceivers.
The multi-path serial passage being connected to form successively by corresponding UART core, coprocessor MCU and in-line memory in described fpga chip, each passage is independent mutually, and CPU can scan simultaneously and process the peripheral hardware information of all passages.
Described coprocessor MCU completes data link layer work, and described processor CPU completes application layer work.
Good effect of the present utility model is: 1) utilize rich fpga logic resource can easily realize multichannel UART controller, according to requirement of engineering, only need to revise fpga logic and can build flexibly many coprocessors MCU and many UART core, increase and decrease serial-port quantity, has improved level of integrated system greatly flexibly; 2), up to 16 and even when 32 serial-port, board periphery circuit design complexity and difficulty reduce greatly, greatly reduce expensive hardware cost, can large-scale application in multi-channel data acquisition occasion; 3) between actual processor CPU and UART controller, be provided with the coprocessor MCU of multiple independent parallels; coprocessor MCU completes data link layer work; processor CPU is mainly responsible for application layer work; this framework can allow the serial peripheral of all passages of processor parallel scan; greatly reduce the load of CPU, promote serial bus data transmission bandwidth; 4) coordinate outside transceiving chip according to requirement of engineering, FPGA only need slightly make communications protocol and the baud rate that logic Modification can support that RS232/RS422/RS485 is different flexibly.
Accompanying drawing explanation
Below in conjunction with the drawings and specific embodiments, the utility model is described in further detail.
Fig. 1 is existing universal serial port implementation schematic diagram;
Fig. 2 is the configuration diagram that the utility model is controlled eight channel parallel scan process simultaneously;
Fig. 3 is CPU and the MCU residing network model position view of working.
Embodiment
In order to realize the support of parallel multi-channel serial peripheral, increase UART bus serial communication bandwidth, reduce the load of CPU, improve level of integrated system, reduction hardware cost, as shown in Figure 2, the many serial ports parallel processing framework of the utility model based on FPGA, comprise transceiver, FPGA programmable logic chip and processor CPU, CPU is connected with described fpga chip by cpu i/f bus, it is characterized in that: design multiple UART core and the multiple coprocessor MCUs corresponding with each UART nuclear phase at described FPGA chip internal by hardware description language; The embedded multiple and in-line memory that each coprocessor MCU is corresponding of described FPGA, each in-line memory is configured to dual-port pattern that can read-write operation; Described multiple UART core connects by RS232/RS422/RS485 interface with multiple corresponding described transceivers.
The multi-path serial passage being connected to form successively by corresponding UART core, coprocessor MCU and in-line memory in described fpga chip, each passage is independent mutually, and CPU can scan simultaneously and process the peripheral hardware information of all passages.
Described coprocessor MCU completes data link layer work, and described processor CPU completes application layer work (as shown in Figure 3).
In the utility model, FPGA realizes many UART interface, many coprocessors processing mode, can build flexibly many coprocessors MCU and many UART core by FPGA, the UART core that FPGA builds is connected by RS232/RS422/RS485 with outside transceiver, like this can flexible expansion multi-path serial passage.
Processor CPU provides the cpu bus interface that reads, sends data from fpga chip.CPU is mainly responsible for application layer work.
The embedded in-line memory of fpga chip, be configured to can read-write operation real dual-port pattern (as the Dual Port in Fig. 2), or the data accepted to be sent in order to buffer memory.
Coprocessor MCU is the virtual coprocessor building by FPGA, mainly completes data link layer work, processes after the data that come from UART core are maybe processed the parallel data that comes from Dual Port and sends to UART interface.
UART examines and has showed UART function, and efficient transmitting-receiving serial data under the control of coprocessor MCU is provided and the UART interface of outside serial ports transceiver.
Transceiver is UART interface chip, mainly completes the conversion between RS232/RS422/RS485 level and TTL/COMS level.CPU and terminal all adopt Transistor-Transistor Logic level and positive logic, and level and negative logic that they and EIA adopt are incompatible, need in interface circuit, change.
In order to improve the integrated level of system, support multidiameter delay independence serial ports, improve UART bus bandwidth, reduce the load of CPU, reduction hardware cost, the utility model uses FPGA programmable logic chip to build multiple UART core, and according to engineering, application needs only to need change programmed logic can increase and decrease flexibly serial-port quantity.On-site programmable gate array FPGA is made up of configurable logic module, input/output module and interconnector.FPGA utilizes look-up table (LUT) to realize combinational logic, and then drives other logical circuit and I/O interface, and the programming data that is stored in inner static storage cell determines the annexation between logic function and each module of each logical block.In the multiple combinatorial logic unit that work alone of FPGA internal configurations, realize multi-channel parallel UART communication function by hardware description language.As shown in Fig. 2, design respectively multiple UART core and multiple coprocessor MCU in FPGA inside by hardware description language, in-line memory embedded FPGA be can be configured to multiple real dual-ported memories.The advantage such as the method has that integrated level is high, volume is little, low in energy consumption and speed is fast, but also can be reconstructed systemic-function according to user's demand.
In many serial port data acquisitions application, what needs were real-time carries out data acquisition, serial terminal is controlled in real time.In traditional multi-channel serial framework, CPU is the state of inquiring about successively each serial port, and the each port of sequential scanning cause CPU to expend a large amount of time and resource, and universal serial bus bandwidth reduces along with the increase of number of channels.The method adopting in the utility model is: build multiple coprocessor MCU in FPGA inside by hardware description language, and in-line memory embedded FPGA is configured to multiple real dual-ported memories.Coprocessor mainly completes data link layer work (as Fig. 3), processes after the data that come from UART core are maybe processed the parallel data that comes from Dual Port and sends to UART core.While accepting data, after coming from the data processing of UART core, be buffered in Dual Port in parallel data mode, corresponding Dual Port can send receive interruption request to CPU, CPU can complete response interruption after current task, then once read the data that come from Dual Port, CPU waits for that without spending a lot of time the UART core of low speed is sent completely data again.CPU only need be responsible for application layer work, has reduced the load of CPU.
While sending data, the all passages of CPU parallel scan, inquire after the request transmission status information that comes from certain passage, by the data buffer storage of certain passage given to be sent in the Dual of respective channel Port storer, once the coprocessor of respective channel inquires the data that have CPU to send in corresponding Dual Port, startup work is immediately carried out exporting to UART core after respective handling.CPU also can once send to data of giving serial peripheral to be sent in Dual Port on all passages, then supply the coprocessor processing on each passage, CPU can go deposit data to process other task after in the Dual Port on each passage immediately, wait for that without spending a lot of time again the UART of low speed accepts, and greatly reduces load and the stand-by period of CPU like this.Coprocessor MCU in the utility model and Dual Port can real-time high-efficiency the data by be sent export to UART core, or data to be received CPU are left in real time in the Dual Port of respective channel, each serial-port is completely independent, is independent of each other.
Data transfer bandwidth is the bottleneck of serial communication, and serial-port quantity more multi-band is wide lower.The many serial ports parallel processing framework the utility model proposes has been introduced coprocessor MCU and Dual Port storer, can allow CPU at a high speed efficiently send data to the UART core of low speed, or reception in real time comes from the data of UART peripheral hardware, each passage is all established data buffer storage storer Dual port, coprocessor MCU, each passage is independent mutually, concurrent working.On universal serial bus, data bandwidth is the summation of maximum bandwidth on all passages, and for 8 road RS422, bus bandwidth can be up to 64Mbit/s.
The flexible support of serial communication is also the desired function of serial communication.Except conventional RS232 standard, also have RS422, RS485 standard, special UART chip seldom has can support RS232/RS422/RS485 simultaneously, even if there is the special UART chip that can support three kinds of communications protocol simultaneously, its price is also more expensive, and dirigibility and cost performance are low.
In the utility model, realize multiple UART core working alone and soft core coprocessor MCU in FPGA inside by hardware description language, the communication protocol of data link layer is operated in MCU and realizes, coordinate outside transceiving chip according to requirement of engineering, FPGA only need slightly make logic Modification can support different communications protocol, baud rate.
Claims (3)
1. the many serial ports parallel processing framework based on FPGA, comprise transceiver, FPGA programmable logic chip and processor CPU, CPU is connected with described fpga chip by cpu i/f bus, it is characterized in that: design multiple UART core and the multiple coprocessor MCUs corresponding with each UART nuclear phase at described FPGA chip internal by hardware description language; The embedded multiple and in-line memory that each coprocessor MCU is corresponding of described FPGA, each in-line memory is configured to dual-port pattern that can read-write operation; Described multiple UART core connects by RS232/RS422/RS485 interface with multiple corresponding described transceivers.
2. a kind of many serial ports parallel processing framework based on FPGA according to claim 1, it is characterized in that: the multi-path serial passage being connected to form successively by corresponding UART core, coprocessor MCU and in-line memory in described fpga chip, each passage is independent mutually, and CPU can scan simultaneously and process the peripheral hardware information of all passages.
3. a kind of many serial ports parallel processing framework based on FPGA according to claim 1, is characterized in that: described coprocessor MCU completes data link layer work, and described processor CPU completes application layer work.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201320834001.7U CN203705861U (en) | 2013-12-18 | 2013-12-18 | Multi-serial port parallel processing framework based on FPGA |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201320834001.7U CN203705861U (en) | 2013-12-18 | 2013-12-18 | Multi-serial port parallel processing framework based on FPGA |
Publications (1)
Publication Number | Publication Date |
---|---|
CN203705861U true CN203705861U (en) | 2014-07-09 |
Family
ID=51056268
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201320834001.7U Expired - Lifetime CN203705861U (en) | 2013-12-18 | 2013-12-18 | Multi-serial port parallel processing framework based on FPGA |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN203705861U (en) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103713543A (en) * | 2013-12-18 | 2014-04-09 | 国核自仪系统工程有限公司 | Multi-serial-port parallel processing framework based on FPGA |
US9411613B1 (en) | 2015-04-22 | 2016-08-09 | Ryft Systems, Inc. | Systems and methods for managing execution of specialized processors |
US9411528B1 (en) | 2015-04-22 | 2016-08-09 | Ryft Systems, Inc. | Storage management systems and methods |
US9542244B2 (en) | 2015-04-22 | 2017-01-10 | Ryft Systems, Inc. | Systems and methods for performing primitive tasks using specialized processors |
CN108152719A (en) * | 2016-12-02 | 2018-06-12 | Arm 有限公司 | For the scanning element of dual-ported memory application |
CN109361581A (en) * | 2018-09-11 | 2019-02-19 | 南京南瑞继保电气有限公司 | A kind of one master and multiple slaves formula high-speed serial communication system and the means of communication |
CN109597788A (en) * | 2018-12-11 | 2019-04-09 | 广东浪潮大数据研究有限公司 | A kind of High Speed Serial device, correlation technique and relevant apparatus |
CN109871353A (en) * | 2019-03-26 | 2019-06-11 | 广东高云半导体科技股份有限公司 | Electronic equipment and its FPGA applied to artificial intelligence |
-
2013
- 2013-12-18 CN CN201320834001.7U patent/CN203705861U/en not_active Expired - Lifetime
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103713543A (en) * | 2013-12-18 | 2014-04-09 | 国核自仪系统工程有限公司 | Multi-serial-port parallel processing framework based on FPGA |
US9411613B1 (en) | 2015-04-22 | 2016-08-09 | Ryft Systems, Inc. | Systems and methods for managing execution of specialized processors |
US9411528B1 (en) | 2015-04-22 | 2016-08-09 | Ryft Systems, Inc. | Storage management systems and methods |
US9542244B2 (en) | 2015-04-22 | 2017-01-10 | Ryft Systems, Inc. | Systems and methods for performing primitive tasks using specialized processors |
CN108152719A (en) * | 2016-12-02 | 2018-06-12 | Arm 有限公司 | For the scanning element of dual-ported memory application |
CN108152719B (en) * | 2016-12-02 | 2022-09-06 | Arm 有限公司 | Scan cell for dual port memory applications |
CN109361581A (en) * | 2018-09-11 | 2019-02-19 | 南京南瑞继保电气有限公司 | A kind of one master and multiple slaves formula high-speed serial communication system and the means of communication |
CN109597788A (en) * | 2018-12-11 | 2019-04-09 | 广东浪潮大数据研究有限公司 | A kind of High Speed Serial device, correlation technique and relevant apparatus |
CN109597788B (en) * | 2018-12-11 | 2023-02-28 | 广东浪潮大数据研究有限公司 | High-speed serial port device, related method and related device |
CN109871353A (en) * | 2019-03-26 | 2019-06-11 | 广东高云半导体科技股份有限公司 | Electronic equipment and its FPGA applied to artificial intelligence |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103714024A (en) | Multi-serial port parallel processing framework based on SoC (System on a Chip) FPGA (Field Programmable Gata Array) | |
CN203705861U (en) | Multi-serial port parallel processing framework based on FPGA | |
CN103713543A (en) | Multi-serial-port parallel processing framework based on FPGA | |
CN103425106B (en) | The master/slave station control system of a kind of EtherCAT based on Linux and method | |
CN203812236U (en) | Data exchange system based on processor and field programmable gate array | |
CN203812025U (en) | Multi-serial-port parallel processing framework based on a SoC FPGA | |
CN201435738Y (en) | PROFIBUS-DP and CAN field bus protocol converter | |
CN103901814B (en) | A kind of multiaxial motion digital control system | |
CN205375458U (en) | Four -channel's multi -protocols communication interface card | |
CN204178172U (en) | A kind of universal embedded bus control equipment based on DSP and FPGA | |
CN103092787A (en) | PowerPC architecture based multifunctional low-power-consumption bus communication module | |
CN201378851Y (en) | CCD image data collecting device | |
CN102662887B (en) | Multi-port random access memory (RAM) | |
CN203849590U (en) | Multi-shaft motion numerical control system | |
CN103151978A (en) | Driving controller for Ethernet stepping motor | |
CN201060394Y (en) | Controller device for high voltage frequency converter | |
CN111190853A (en) | High-speed communication system between pieces based on EMIF and SRIO interface | |
CN206258865U (en) | A kind of signal processor ASIC frameworks of restructural | |
CN108845537A (en) | The communication means of CPU and digital logic module in PLC system based on SOC FPGA | |
CN110995604B (en) | SpaceWire router level connection structure for expanding SpaceWire port | |
CN102033841A (en) | Direct interface method for USB (Universal Serial Bus) 2.0 bus and high-speed intelligent unified bus | |
CN204748631U (en) | Embedded light -duty arm control system based on RS485 bus | |
CN209215901U (en) | Servo-driver | |
CN202353595U (en) | Gateway for EtherCAT (Ethernet for control and automation technology) and RS485 communication switching | |
CN102023948B (en) | Direct interface method of USB 3.0 bus and high speed intelligent unified bus |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CP02 | Change in the address of a patent holder |
Address after: 200241 No. 428 East Jiangchuan Road, Shanghai, Minhang District Patentee after: STATE NUCLEAR POWER AUTOMATION SYSTEM ENGINEERING Co. Address before: 200241. A2036, building B, building 555, Dongchuan Road, Minhang District, Shanghai Patentee before: STATE NUCLEAR POWER AUTOMATION SYSTEM ENGINEERING Co. |
|
CP02 | Change in the address of a patent holder | ||
CX01 | Expiry of patent term |
Granted publication date: 20140709 |
|
CX01 | Expiry of patent term |