CN116828436B - 一种基于FPGA的WiFi通信系统 - Google Patents
一种基于FPGA的WiFi通信系统 Download PDFInfo
- Publication number
- CN116828436B CN116828436B CN202311111552.5A CN202311111552A CN116828436B CN 116828436 B CN116828436 B CN 116828436B CN 202311111552 A CN202311111552 A CN 202311111552A CN 116828436 B CN116828436 B CN 116828436B
- Authority
- CN
- China
- Prior art keywords
- module
- data
- configuration
- wifi
- cache
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000004891 communication Methods 0.000 title claims abstract description 28
- 230000005540 biological transmission Effects 0.000 claims abstract description 43
- 238000000034 method Methods 0.000 claims description 9
- 238000005516 engineering process Methods 0.000 description 4
- 230000009286 beneficial effect Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 239000002699 waste material Substances 0.000 description 2
- 230000007547 defect Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/80—Services using short range communication, e.g. near-field communication [NFC], radio-frequency identification [RFID] or low energy communication
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
- G06F15/163—Interprocessor communication
- G06F15/173—Interprocessor communication using an interconnection network, e.g. matrix, shuffle, pyramid, star, snowflake
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L12/40006—Architecture of a communication node
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/18—Multiprotocol handlers, e.g. single devices capable of handling multiple protocols
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本发明属于无线通信技术领域,尤其为一种基于FPGA的WiFi通信系统,包括Zynq芯片与WiFi芯片,所述Zynq芯片包括PL端和PS端,所述PL端包括LVDS传输模块、AXI传输模块、用户指令输入模块,所述用户指令输入模块包括控制指令输入模块、配置指令输入模块,所述PS端包括网络传输模块、WiFi配置模块和DDR缓存模块,所述DDR缓存模块包括控制指令缓存区、配置指令缓存区和数据缓存区。本发明采用LVDS总线协议作为数据流的输入,并通过AXI4总线协议进行片内通信,最后经由WiFi将数据发送至客户终端设备,相对于市面上的基于FPGA的WiFi通信系统有更快的传输速度且有效降低了成本,用户串口模块与WiFi配置模块可以完全实现自定义功能,满足用户的个性化要求。
Description
技术领域
本发明涉及无线通信技术领域,具体为一种基于FPGA的WiFi通信系统。
背景技术
在社会经济与科技高速发展的背景下,现代无线通讯技术愈加广泛地应用于人们的生活之中,优化着人们的沟通通信方式,给人们的生活带来了无限便捷,推动着通讯技术的不断更新与发展。WiFi通信技术因其传输速度快且成本低廉的特点被广泛用于生活中。
但是目前市面上WiFi通信模块的接口大多数是USART、SPI、I2C、USB等接口,其传输数据的速度较慢,无法应对吞吐量大的数据传输。
因此,提出一种基于FPGA的WiFi通信系统,来有效的提高了数据的传输速度。
发明内容
(一)解决的技术问题
针对现有技术的不足,本发明提供了一种基于FPGA的WiFi通信系统,解决了目前市面上WiFi通信模块的接口传输数据的速度较慢,无法应对吞吐量大数据传输的问题。
(二)技术方案
本发明为了实现上述目的具体采用以下技术方案:
一种基于FPGA的WiFi通信系统,包括Zynq芯片与WiFi芯片,所述Zynq芯片包括PL端和PS端,所述PL端包括LVDS传输模块、AXI传输模块、用户指令输入模块,所述用户指令输入模块包括控制指令输入模块、配置指令输入模块,所述PS端包括网络传输模块、WiFi配置模块和DDR缓存模块,所述DDR缓存模块包括控制指令缓存区、配置指令缓存区和数据缓存区;
所述PL端的LVDS传输模块,用于接收用户传输的吞吐量较大的数据,并对其进行裁剪后存入FIFO中;
所述控制指令输入模块,用于将用户通过PL端映射的USART1输入的终端设备控制指令存入FIFO中;
所述配置指令输入模块,用于将用户通过PL端映射的USART2输入的WiFi配置指令存入FIFO中;
所述AXI传输模块,用于传输已经裁剪完成的数据并将其存入到DDR缓存模块的数据缓存区,以便PS端将数据取出通过网络传输模块发送至终端设备;
所述DDR缓存模块,用于存储AXI传输模块发送的控制指令、配置指令、数据。
进一步地,所述AXI传输模块也用于传输缓存在PL端其一FIFO中的控制指令并将其存入到DDR缓存模块的控制指令缓存区;也用于传输缓存在PL端其一FIFO中的配置指令并将其存入到DDR缓存模块的数据缓存区。
进一步地,所述DDR缓存模块中的数据缓存区采用线性表中的队列存储结构,其存储逻辑结构选用顺序存储结构且数据缓存区的个数受限于存储器的大小以及一帧数据的大小;其中DDR缓存模块中的控制指令缓存区采用线性表中的队列存储结构,其存储逻辑结构选用顺序存储结构且控制指令缓存区的个数一般设置为10个左右;其中DDR缓存模块中的配置指令缓存区采用线性表中的队列存储结构,其存储逻辑结构选用顺序存储结构且配置指令缓存区的个数一般设置为10个左右。
进一步地,所述网络传输模块,用于将缓存在数据缓存区的数据通过TCP/UDP(用户通过配置模块自定义)传输协议发送至终端设备。
进一步地,所述WiFi配置模块,用于识别判定缓存在DDR3的配置指令缓存区,并对WiFi进行相应的配置。
进一步地,所述一种新型通过FPGA配置WiFi的方法,具体执行如下操作:
PL端例化一个串口;
PS端创建一个包含初始信息的配置文件;
PS端创建一个启动hostapd与wpa_supplicant的执行脚本,并将此脚本设置为开机自启动;
为了更改配置文件的速度以及缓解频繁的读写文件对系统的冲击,PS端在初始化阶段将配置文件读入缓存区,以后的刷新与读入操作皆在该缓存区中进行,为了尽可能减少内存资源的浪费,其缓存区的存储结构选用链式存储结构;
PL端将串口收到的数据通过AXI传输模块顺序写入DDR缓存模块的数据缓存区,其存储结构采用环形顺序存储结构;
PS端取出存储在数据缓存区的配置指令,并对配置指令进行识别操作,因为配置WiFi名称以及WiFi密码等指令的信息是不定长的,所以为了保证识别配置指令的准确度的同时提高指令识别的速度,本发明采用折半查表法进行搜寻指令的正确位置,以提高WiFi配置指令的识别速度;
PS端根据配置指令更改链式缓存区中的内容,最后将链式缓冲区的内容更新至配置文件里;
PS端重启系统继而完成对WiFi的重新配置。
(三)有益效果
与现有技术相比,本发明提供了一种基于FPGA的WiFi通信系统,具备以下有益效果:
本发明采用LVDS总线协议作为数据流的输入,并通过AXI4总线协议进行片内通信,最后经由WiFi将数据发送至客户终端设备,相对于市面上的基于FPGA的WiFi通信系统有更快的传输速度且有效降低了成本,用户串口模块与WiFi配置模块可以完全实现自定义功能,满足用户的个性化要求。
附图说明
图1为本发明总体框图;
图2为本发明WiFi配置方法框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例
如图1-2所示,本发明一个实施例提出的一种基于FPGA的WiFi通信系统。本实施例的一种基于FPGA的WiFi通信系统包括Zynq芯片与WiFi芯片。所述Zynq芯片包括PL端和PS端。所述PL端包括LVDS传输模块、AXI传输模块、用户指令输入模块,所述用户指令输入模块包括控制指令输入模块、配置指令输入模块,所述PS端包括网络传输模块、WiFi配置模块、DDR缓存模块,所述DDR缓存模块包括控制指令缓存区、配置指令缓存区、数据缓存区。
所述PL端的LVDS传输模块,用于接收用户传输的吞吐量较大的数据,并对其进行裁剪后存入FIFO中。
所述控制指令输入模块,用于将用户通过PL端映射的USART1输入的终端设备控制指令存入FIFO中。
所述配置指令输入模块,用于将用户通过PL端映射的USART2输入的WiFi配置指令存入FIFO中。
所述AXI传输模块,用于传输已经裁剪完成的数据并将其存入到DDR缓存模块的数据缓存区,以便PS端将数据取出通过网络传输模块发送至终端设备;也用于传输缓存在PL端其一FIFO中的控制指令并将其存入到DDR缓存模块的控制指令缓存区;也用于传输缓存在PL端其一FIFO中的配置指令并将其存入到DDR缓存模块的数据缓存区。
所述DDR缓存模块,用于存储AXI传输模块发送的控制指令、配置指令、数据。
其中DDR缓存模块中的数据缓存区采用线性表中的队列存储结构,其存储逻辑结构选用顺序存储结构且数据缓存区的个数受限于存储器的大小以及一帧数据的大小;其中DDR缓存模块中的控制指令缓存区采用线性表中的队列存储结构,其存储逻辑结构选用顺序存储结构且控制指令缓存区的个数一般设置为10个左右;其中DDR缓存模块中的配置指令缓存区采用线性表中的队列存储结构,其存储逻辑结构选用顺序存储结构且配置指令缓存区的个数一般设置为10个左右。
所述网络传输模块,用于将缓存在数据缓存区的数据通过TCP/UDP(用户通过配置模块自定义)传输协议发送至终端设备。
所述WiFi配置模块,用于识别判定缓存在DDR3的配置指令缓存区,并对WiFi进行相应的配置。
基于上述系统,本实施例提供一种基于FPGA的WiFi配置方法。提供了一种新型通过FPGA配置WiFi的方法,具体执行如下操作:
PL端例化一个串口;
PS端创建一个包含初始信息的配置文件。
PS端创建一个启动hostapd与wpa_supplicant的执行脚本,并将此脚本设置为开机自启动。
为了更改配置文件的速度以及缓解频繁的读写文件对系统的冲击,PS端在初始化阶段将配置文件读入缓存区,以后的刷新与读入操作皆在该缓存区中进行。为了尽可能减少内存资源的浪费,其缓存区的存储结构选用链式存储结构。
PL端将串口收到的数据通过AXI传输模块顺序写入DDR缓存模块的数据缓存区,其存储结构采用环形顺序存储结构。
PS端取出存储在数据缓存区的配置指令,并对配置指令进行识别操作。因为配置WiFi名称以及WiFi密码等指令的信息是不定长的,所以为了保证识别配置指令的准确度的同时提高指令识别的速度,本发明采用折半查表法进行搜寻指令的正确位置,以提高WiFi配置指令的识别速度。
PS端根据配置指令更改链式缓存区中的内容,最后将链式缓冲区的内容更新至配置文件里。
PS端重启系统继而完成对WiFi的重新配置。
最后应说明的是:以上所述仅为本发明的优选实施例而已,并不用于限制本发明,尽管参照前述实施例对本发明进行了详细的说明,对于本领域的技术人员来说,其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (6)
1.一种基于FPGA的WiFi通信系统,包括Zynq芯片与WiFi芯片,其特征在于:所述Zynq芯片包括PL端和PS端,所述PL端包括LVDS传输模块、AXI传输模块、用户指令输入模块,所述用户指令输入模块包括控制指令输入模块、配置指令输入模块,所述PS端包括网络传输模块、WiFi配置模块和DDR缓存模块,所述DDR缓存模块包括控制指令缓存区、配置指令缓存区和数据缓存区;
所述PL端的LVDS传输模块,用于接收用户传输的吞吐量大的数据,并对其进行裁剪后存入FIFO中;
所述控制指令输入模块,用于将用户通过PL端映射的USART1输入的终端设备控制指令存入FIFO中;
所述配置指令输入模块,用于将用户通过PL端映射的USART2输入的WiFi配置指令存入FIFO中;
所述AXI传输模块,用于传输已经裁剪完成的数据并将其存入到DDR缓存模块的数据缓存区,以便PS端将数据取出通过网络传输模块发送至终端设备;
所述DDR缓存模块,用于存储AXI传输模块发送的控制指令、配置指令、数据。
2.根据权利要求1所述的一种基于FPGA的WiFi通信系统,其特征在于:所述AXI传输模块也用于传输缓存在PL端其一FIFO中的控制指令并将其存入到DDR缓存模块的控制指令缓存区;也用于传输缓存在PL端其一FIFO中的配置指令并将其存入到DDR缓存模块的数据缓存区。
3.根据权利要求1所述的一种基于FPGA的WiFi通信系统,其特征在于:所述DDR缓存模块中的数据缓存区采用线性表中的队列存储结构,其存储逻辑结构选用顺序存储结构且数据缓存区的个数受限于存储器的大小以及一帧数据的大小;其中DDR缓存模块中的控制指令缓存区采用线性表中的队列存储结构,其存储逻辑结构选用顺序存储结构且控制指令缓存区的个数设置为10个;其中DDR缓存模块中的配置指令缓存区采用线性表中的队列存储结构,其存储逻辑结构选用顺序存储结构且配置指令缓存区的个数设置为10个。
4.根据权利要求1所述的一种基于FPGA的WiFi通信系统,其特征在于:所述网络传输模块,用于将缓存在数据缓存区的数据通过TCP/UDP传输协议发送至终端设备。
5.根据权利要求1所述的一种基于FPGA的WiFi通信系统,其特征在于:所述WiFi配置模块,用于识别判定缓存在DDR3的配置指令缓存区,并对WiFi进行相应的配置。
6.一种通过FPGA配置WiFi的方法,所述方法由权利要求1所述的一种基于FPGA的WiFi通信系统实现,其特征在于,具体执行如下操作:
PL端例化一个串口;
PS端创建一个包含初始信息的配置文件;
PS端创建一个启动hostapd与wpa_supplicant的执行脚本,并将此脚本设置为开机自启动;
PS端在初始化阶段将配置文件读入缓存区,以后的刷新与读入操作皆在该缓存区中进行,其缓存区的存储结构选用链式存储结构;
PL端将串口收到的数据通过AXI传输模块顺序写入DDR缓存模块的数据缓存区,其存储结构采用环形顺序存储结构;
PS端取出存储在数据缓存区的配置指令,并对配置指令进行识别操作,采用折半查表法搜寻指令的正确位置;
PS端根据配置指令更改链式缓存区中的内容,最后将链式缓冲区的内容更新至配置文件里;
PS端重启系统继而完成对WiFi的重新配置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311111552.5A CN116828436B (zh) | 2023-08-31 | 2023-08-31 | 一种基于FPGA的WiFi通信系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311111552.5A CN116828436B (zh) | 2023-08-31 | 2023-08-31 | 一种基于FPGA的WiFi通信系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116828436A CN116828436A (zh) | 2023-09-29 |
CN116828436B true CN116828436B (zh) | 2023-12-26 |
Family
ID=88117062
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311111552.5A Active CN116828436B (zh) | 2023-08-31 | 2023-08-31 | 一种基于FPGA的WiFi通信系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116828436B (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN204613682U (zh) * | 2015-05-29 | 2015-09-02 | 中国地质大学(武汉) | 一种基于fpga的工业无线网拓展装置 |
CN107147871A (zh) * | 2017-04-26 | 2017-09-08 | 长春理工大学 | 一种基于无线电的消防信息实时传输装置 |
CN109101808A (zh) * | 2018-10-29 | 2018-12-28 | 广东长实通信科技有限公司 | 一种高安全性的通讯加密装置及系统 |
CA2985011A1 (en) * | 2017-11-08 | 2019-01-30 | Michael B. Rothschild | Digital hardware based system and method for preventing the onset of trailer oscillations and control thereof |
CN209731277U (zh) * | 2019-06-28 | 2019-12-03 | 大连交通大学 | 基于zynq的智能实验室网关 |
CN113923205A (zh) * | 2021-11-03 | 2022-01-11 | 上海交通大学 | 一种物联网智能感知终端远程重构系统 |
CN217278655U (zh) * | 2021-06-17 | 2022-08-23 | 国网宁夏电力有限公司银川供电公司 | 电能质量实时监测装置 |
-
2023
- 2023-08-31 CN CN202311111552.5A patent/CN116828436B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN204613682U (zh) * | 2015-05-29 | 2015-09-02 | 中国地质大学(武汉) | 一种基于fpga的工业无线网拓展装置 |
CN107147871A (zh) * | 2017-04-26 | 2017-09-08 | 长春理工大学 | 一种基于无线电的消防信息实时传输装置 |
CA2985011A1 (en) * | 2017-11-08 | 2019-01-30 | Michael B. Rothschild | Digital hardware based system and method for preventing the onset of trailer oscillations and control thereof |
CN109101808A (zh) * | 2018-10-29 | 2018-12-28 | 广东长实通信科技有限公司 | 一种高安全性的通讯加密装置及系统 |
CN209731277U (zh) * | 2019-06-28 | 2019-12-03 | 大连交通大学 | 基于zynq的智能实验室网关 |
CN217278655U (zh) * | 2021-06-17 | 2022-08-23 | 国网宁夏电力有限公司银川供电公司 | 电能质量实时监测装置 |
CN113923205A (zh) * | 2021-11-03 | 2022-01-11 | 上海交通大学 | 一种物联网智能感知终端远程重构系统 |
Non-Patent Citations (1)
Title |
---|
基于LXI总线的多功能便携式通用测试仪器的设计与实现;陈德军;陈耀园;于劲松;;电子测量技术(10);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN116828436A (zh) | 2023-09-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110297797B (zh) | 异构协议转换装置和方法 | |
CN106951388A (zh) | 一种基于PCIe的DMA数据传输方法及系统 | |
CN106155960A (zh) | 基于gpio握手和edma的uart串口通信方法 | |
US20160266948A1 (en) | Queued Messages Processing Method and Apparatus, Method and Apparatus for Controlling Messages to be Enqueued | |
CN112765084B (zh) | 计算机设备、虚拟化加速设备、数据传输方法及存储介质 | |
CN102724122A (zh) | 基于硬件系统的串口可靠传输方法及装置 | |
CN113986791A (zh) | 一种智能网卡快速dma设计方法、系统、设备及终端 | |
US20220360650A1 (en) | Apparatus and method for descriptor handling and computer-readable medium | |
CN111314480A (zh) | 负载自适应跨平台文件传输协议及其分布式服务实现方法 | |
CN110941582B (zh) | 一种bmc芯片的usb总线结构及其通信方法 | |
KR20170133236A (ko) | PCIe 장치들에서의 고속 입출력을 위한 스토리지 시스템, 방법 및 장치 | |
CN113703843B (zh) | 一种寄存器数据处理方法、装置及存储器 | |
CN107517266A (zh) | 一种基于分布式缓存的即时通讯方法 | |
CN116828436B (zh) | 一种基于FPGA的WiFi通信系统 | |
CN104394099A (zh) | 一种报文传输方法及装置 | |
CN115904259B (zh) | 非易失性存储器标准NVMe指令的处理方法及相关装置 | |
CN110427206B (zh) | 一种基于zynq的算法动态更新方法 | |
CN110659143B (zh) | 一种容器间的通讯方法、装置及电子设备 | |
CN113099490B (zh) | 一种基于5g通信的数据包传输方法和系统 | |
CN103347023B (zh) | 一种工业现场环境下hdlc通信控制器 | |
CN103678217B (zh) | 基于pcie高速扫描接口装置 | |
CN102541573A (zh) | 一种移动终端及其基带处理器的升级方法 | |
CN105763231A (zh) | 一种具有主动模式的近距离无线通信芯片 | |
CN106911715B (zh) | 一种将读写控制分开的通信控制单元和通信控制方法 | |
CN103605622B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |