CN101937416A - 基于fpga实现的ps2协议逻辑分析仪 - Google Patents
基于fpga实现的ps2协议逻辑分析仪 Download PDFInfo
- Publication number
- CN101937416A CN101937416A CN 201010275962 CN201010275962A CN101937416A CN 101937416 A CN101937416 A CN 101937416A CN 201010275962 CN201010275962 CN 201010275962 CN 201010275962 A CN201010275962 A CN 201010275962A CN 101937416 A CN101937416 A CN 101937416A
- Authority
- CN
- China
- Prior art keywords
- data
- module
- fpga
- protocol logic
- sampling
- 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
Images
Landscapes
- Synchronisation In Digital Transmission Systems (AREA)
Abstract
本发明涉及一种基于FPGA实现的PS2协议逻辑分析仪,其包括采样模块,发送模块以及时钟管理模块;采样模块采样PS2数据,且每成功完成一帧的解析,即通知发送模块,同时把解析的数据存入缓冲寄存器;发送模块在收到通知后,从缓存寄存器中读入数据,最终经UART协议发送给上位机;时钟管理模块对晶振源进行分频,得到所需的UART时钟。本发明可以方便,且更为快速准确的对PS2的上行和下行通信数据进行截获分析,从而加快基于PS2协议的产品开发,且接口层定义简单清晰,因此可以非常方便的挂接到大的FPGA系统上去,实现更复杂的分析。
Description
技术领域
本发明具体涉及集成电路以及嵌入式系统技术领域的一种基于FPGA实现的PS2协议逻辑分析仪。
背景技术
PS2是一种每帧包含11位的串行协议。每一个帧作为发送单元。每一帧数据格式=一位起始位+8位数据位+一位校验位+一位停止位,如图1所示。PS2协议有两种通讯方式:主机到设备的通讯,设备到主机的通讯。无论是哪种通讯,时钟均由设备产生。不同的是主机到设备的通讯过程中,主机在时钟的下降沿发送数据,设备在时钟上升沿接收数据;设备到主机的通讯过程中,设备在时钟的上升沿发送数据,主机在时钟的下降沿接收数据。PS2协议接口需要四个信号线,即:数据、时钟、VDD和GND。
相比于USB等复杂的协议,PS2协议实现简单,对物理链路层硬件以及上位机软件的要求均不高。在低速通讯方面,PS2完全可以轻松的实现下位机与上位机的通讯。因此,目前PS2协议仍然有广泛的应用,比如,现有的大多数PC电脑均配置有PS2接口的鼠标以及键盘,而且这种现象还将长时间保持。
目前通常采用基于单片机开发的PS2协议分析设备对PS2数据进行解析,但因一般单片机的处理速度最快仅在20MHZ左右,而且程序是由指令串行执行,采样速度慢,从而造成PS2协议数据丢失等问题,不便于开发调试。
发明内容
本发明的目的在于提出一种基于FPGA实现的PS2协议逻辑分析仪,其可方便的实现对PS2数据包进行提取分析,加快基于PS2协议通讯的产品开发,从而克服了现有技术中的不足。
为实现上述发明目的,本发明采用了如下技术方案:
一种基于FPGA实现的PS2协议逻辑分析仪,其特征在于:所述分析仪包括采样模块,发送模块以及时钟管理模块;
采样模块采样PS2数据,且每成功完成一帧的解析,即通知发送模块,同时把解析的数据存入缓冲寄存器;
发送模块在收到通知后,从缓存寄存器中读入数据,最终经UART协议发送给上位机;
时钟管理模块对晶振源进行分频,得到所需的UART时钟。
具体而言,所述采样模块是对PS2的上行和下行通信数据进行截取而实现采样的。
所述采样模块通过探测信号线以帧为间隔提取出每帧中包含的数据或者命令,随后以并口数据输出至传送模块,并由通知信号通知传送模块。
所述探测信号线为两根,其分别截取PS2的上行和下行通信数据。
所述传送模块采用查询的方式判断采样是否完成。
所述传送模块收到通知信号后,即读入并口数据,并立即采用UART协议传送数据至上位机。
所述UART协议采用115.2kbit/s的通讯速率。
该逻辑分析仪的构建方法为:
首先采用硬件描述语言(如verilog等)实现上述采样模块、传送模块和时钟管理模块,经综合编译后,生成电路结构网表,下载至FPGA器件中即可实现。
本发明的采样模块通过探测PS2DATA和PS2CLK两根信号线,以帧为间隔,提取出每帧中包含的数据或者命令,随后以并口数据输出至传送模块,并由通知信号通知传送模块。采样IP由硬件描述语言verilog等实现。
本发明的传送模块采用查询的方式判断采样是否完成。一旦收到通知信号,就读入并口数据,并立即采用UART协议传送数据至上位机。因发送每一帧UART格式的数据需要的时间远小于PS2规定的标准帧间隔时间(毫秒级),因此在采样完一帧PS2数据后,有足够的时间完成对上位机的传送。
所述上位机的设置与上述UART设置一致,即:115200bit/s波特率;一位起始位,8位数据位,无检验位,一位停止位。
考虑到UART传输对时钟要求较高,且发送方和接收方需要采用同一个频率的时钟,两个时钟匹配越精确,接收误码率将降到最小。本发明采用时钟管理模块对晶振源进行分频,得到所需的UART时钟。时钟管理模块亦由硬件描述语言verilog等实现,且该时钟管理模块的分频参数可调。
与现有技术相比,本发明所具有的有益效果在于:
(1)可以方便的对PS2的上行和下行通信数据进行截获分析,从而加快基于PS2协议的产品开发;
(2)相对与基于单片机开发的PS2协议分析设备,可以更快速准确的实现PS2数据的截获分析;
(3)由于采样模块采用了IP模块化的结构,接口层定义简单清晰,因此可以非常方便的挂接到更大的FPGA系统上去,实现更复杂的分析。
附图说明
图1是标准PS2协议的一帧数据格式示意图;
图2是本发明具体实施方式中一种基于FPGA实现的PS2协议逻辑分析仪的结构示意图;
图3是图2所示基于FPGA实现的PS2协议逻辑分析仪的应用框图;
图4是图2所示基于FPGA实现的PS2协议逻辑分析仪的电路图。
具体实施方式
以下结合附图及较佳实施例对本发明的技术方案作进一步的说明。
如图2~3所示,该基于FPGA实现的PS2协议逻辑分析仪包括采样模块、传送模块和时钟管理模块,其用于对PS2的上行和下行通信数据进行截获并发送至上位机分析,从而加快基于PS2协议通讯的产品开发。
考虑到标准PS2通讯速率是12.5kbit/s,最大为33kbit/s,最小为10kbit/s,而标准鼠标和标准键盘通讯速率一般为12.5kbit/s,因此本实施例以12.5kbit/s作为采样参考。
以下对本实施例基于FPGA实现的PS2协议逻辑分析仪的结构进行具体说明,如图4所示,该基于FPGA实现的PS2协议逻辑分析仪包括:
(1)采样模块ps2catch
标准PS2通讯速率是12.5kbit/s,采样速率为11.0592Mhz。
采样模块(采样IP)由硬件描述语言verilog实现。采样模块通过探测PS2DATA和PS2CLK两根信号线,以帧为间隔,提取出每帧中包含的数据或者命令,随后以8位并口数据输出至传送模块,并由信号commdok通知传送模块。
(2)传送模块UART_TXD
通讯接口采用UART协议,传送模块(通讯IP)由硬件描述语言verilog实现。传送模块:采用查询的方式判断采样是否完成。一旦收到commdok信号,就读入8位并口数据catchdataout[7:0],并立即启动UART传送数据至上位机。
UART配置:115200bit/s波特率,一位起始位,8位数据位,无检验位,一位停止位。该UART配置每发送一帧UART格式的数据需要的时间=8.68us*10=86.8us,这个时间远小于PS2规定的标准帧间隔时间(毫秒级)。因此在采样完一帧PS2数据后,有足够的时间完成对上位机的传送。
上位机需跟该UART设置一致方可正常接收,即:115200bit/s波特率;一位起始位,8位数据位,无检验位,一位停止位。
(3)时钟管理模块clock_N
UART传输对时钟要求较高,且发送方和接收方需要采用同一个频率的时钟,两个时钟匹配越精确,接收误码率将降到最小。时钟管理模块对晶振源进行分频,得到所需的UART时钟。时钟管理模块(时钟IP核)由硬件描述语言verilog实现,且时钟管理模块的分频参数可调。
本实施例中采用11.0592Mhz晶振,经过96分频后得到115200的波特率。
本实施例的实现过程为:首先采用硬件描述语言verilog实现上述采样模块、传送模块和时钟管理模块,经综合编译器(如ALTERA公司推出的QUARTUS)综合编译后,生成电路结构网表,下载至FPGA器件中即可实现,PCB板级连接只需按照如图4和表1所述的顶层接口连接即可,另外在TXD端需要加入MAX232电平转接芯片。
表1本实施例顶层接口定义
引脚 | I/O | 说明 |
PS2DATA | input | PS2数据输入端 |
PS2CLK | input | PS2时钟输入端 |
CLOCK | input | 系统时钟 |
RST_N | input | 系统复位信号 |
TXD | output | UART传送输出信号 |
苏州市华芯微电子有限公司在调试一款基于PS2协议的ASIC时,利用在ALTERA公司的FPGA器件EP2C8Q208C8上实现的PS2协议逻辑分析仪对PS2通讯端进行调试分析,能够100%准确的捕获到设备与PC机通信时的数据,提供了准确的调试分析依据,从而大大加快了项目的研发速度。
上述实施例仅为说明本发明的技术构思及特点,其目的在于让熟悉此项技术的人士能够了解本发明的内容并据以实施,并不能以此限制本发明的保护范围。凡根据本发明精神实质所作的等效变化或修饰,都应涵盖在本发明的保护范围之内。
Claims (8)
1.一种基于FPGA实现的PS2协议逻辑分析仪,其特征在于:所述分析仪包括采样模块,发送模块以及时钟管理模块;
采样模块采样PS2数据,且每成功完成一帧的解析,即通知发送模块,同时把解析的数据存入缓冲寄存器;
发送模块在收到通知后,从缓存寄存器中读入数据,最终经UART协议发送给上位机;
时钟管理模块对晶振源进行分频,得到所需的UART时钟。
2.根据权利要求1所述的基于FPGA实现的PS2协议逻辑分析仪,其特征在于:所述采样模块是对PS2的上行和下行通信数据进行截取而实现采样的。
3.根据权利要求1或2所述的基于FPGA实现的PS2协议逻辑分析仪,其特征在于:所述采样模块通过探测信号线以帧为间隔提取出每帧中包含的数据或者命令,随后以并口数据输出至传送模块,并藉通知信号通知传送模块。
4.根据权利要求3所述的基于FPGA实现的PS2协议逻辑分析仪,其特征在于:所述探测信号线为两根,其分别截取PS2的上行和下行通信数据。
5.根据权利要求1所述的基于FPGA实现的PS2协议逻辑分析仪,其特征在于:所述传送模块采用查询的方式判断采样是否完成。
6.根据权利要求3所述的基于FPGA实现的PS2协议逻辑分析仪,其特征在于:所述传送模块收到通知信号后,即读入并口数据,并立即采用UART协议传送数据至上位机。
7.根据权利要求6所述的基于FPGA实现的PS2协议逻辑分析仪,其特征在于:所述UART协议采用115.2kbit/s的通讯速率。
8.根据权利要求1所述的基于FPGA实现的PS2协议逻辑分析仪,其特征在于,该逻辑分析仪的构建方法为:
首先采用硬件描述语言实现上述采样模块、传送模块和时钟管理模块,经综合编译后,生成电路结构网表,下载至FPGA器件中即可实现。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201010275962 CN101937416A (zh) | 2010-09-09 | 2010-09-09 | 基于fpga实现的ps2协议逻辑分析仪 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201010275962 CN101937416A (zh) | 2010-09-09 | 2010-09-09 | 基于fpga实现的ps2协议逻辑分析仪 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101937416A true CN101937416A (zh) | 2011-01-05 |
Family
ID=43390752
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 201010275962 Pending CN101937416A (zh) | 2010-09-09 | 2010-09-09 | 基于fpga实现的ps2协议逻辑分析仪 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101937416A (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102323904A (zh) * | 2011-08-23 | 2012-01-18 | 中国空间技术研究院 | 一种卫星数字接口拉偏验证系统 |
CN102955561A (zh) * | 2011-08-30 | 2013-03-06 | 安凯(广州)微电子技术有限公司 | 基于嵌入式处理器的模拟ps/2接口实现系统及实现方法 |
CN103207845A (zh) * | 2012-01-16 | 2013-07-17 | 广州三星通信技术研究有限公司 | 将ps/2键盘连接到便携式终端的方法和便携式终端 |
WO2017133481A1 (zh) * | 2016-02-01 | 2017-08-10 | 阿里巴巴集团控股有限公司 | 渲染方法、解码方法、播放多媒体数据流的方法及装置 |
CN107147418A (zh) * | 2017-05-09 | 2017-09-08 | 浙江大学 | 一种便携式小型音频收发系统 |
CN108319200A (zh) * | 2018-02-28 | 2018-07-24 | 西安电子科技大学 | 一种便携式互联网逻辑分析仪 |
CN112073264A (zh) * | 2020-08-31 | 2020-12-11 | 新华三信息安全技术有限公司 | 一种协议探测方法、装置和网络设备 |
-
2010
- 2010-09-09 CN CN 201010275962 patent/CN101937416A/zh active Pending
Non-Patent Citations (3)
Title |
---|
《中国优秀硕士学位论文全文数据库(电子期刊)信息科技辑》 20071215 胡又文 基于FPGA的嵌入式说话人识别系统实现 1-87 1-3、5-8 , 第6期 2 * |
《光盘技术》 20081130 郭玉峰等 基于FPGA的PS2键盘控制器设计 52-53 1-3、5-8 , 第11期 2 * |
《电子器件》 20070630 陆一鸣等 基于FPGA的嵌入式系统PS/2接口的实现 1105-1108 1-8 第30卷, 第3期 2 * |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102323904A (zh) * | 2011-08-23 | 2012-01-18 | 中国空间技术研究院 | 一种卫星数字接口拉偏验证系统 |
CN102323904B (zh) * | 2011-08-23 | 2013-11-20 | 中国空间技术研究院 | 一种卫星数字接口拉偏验证系统 |
CN102955561A (zh) * | 2011-08-30 | 2013-03-06 | 安凯(广州)微电子技术有限公司 | 基于嵌入式处理器的模拟ps/2接口实现系统及实现方法 |
CN102955561B (zh) * | 2011-08-30 | 2016-08-03 | 安凯(广州)微电子技术有限公司 | 基于嵌入式处理器的模拟ps/2接口实现系统及实现方法 |
CN103207845A (zh) * | 2012-01-16 | 2013-07-17 | 广州三星通信技术研究有限公司 | 将ps/2键盘连接到便携式终端的方法和便携式终端 |
CN103207845B (zh) * | 2012-01-16 | 2016-08-10 | 广州三星通信技术研究有限公司 | 将ps/2键盘连接到便携式终端的方法和便携式终端 |
WO2017133481A1 (zh) * | 2016-02-01 | 2017-08-10 | 阿里巴巴集团控股有限公司 | 渲染方法、解码方法、播放多媒体数据流的方法及装置 |
US10805570B2 (en) | 2016-02-01 | 2020-10-13 | Alibaba Group Holding Limited | System and method for streaming multimedia data |
CN107027068B (zh) * | 2016-02-01 | 2021-04-13 | 斑马智行网络(香港)有限公司 | 渲染方法、解码方法、播放多媒体数据流的方法及装置 |
CN107147418A (zh) * | 2017-05-09 | 2017-09-08 | 浙江大学 | 一种便携式小型音频收发系统 |
CN108319200A (zh) * | 2018-02-28 | 2018-07-24 | 西安电子科技大学 | 一种便携式互联网逻辑分析仪 |
CN112073264A (zh) * | 2020-08-31 | 2020-12-11 | 新华三信息安全技术有限公司 | 一种协议探测方法、装置和网络设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101937416A (zh) | 基于fpga实现的ps2协议逻辑分析仪 | |
US8281280B2 (en) | Method and apparatus for versatile controllability and observability in prototype system | |
CN103678211B (zh) | Usb接口的信号传输方法及其装置 | |
CN105634869A (zh) | 一种网络设备吞吐量检测系统 | |
CN105279717A (zh) | 一种互联网+知识产权营运系统及方法 | |
CN105978751B (zh) | 一种无人机地面控制站时延特性测试评估系统 | |
CN103384274A (zh) | 基于http协议的公网连接内网计算机的通信方法 | |
CN102331487A (zh) | 一种水质监测数据自动处理装置与方法 | |
CN105527633B (zh) | 一种基于usb便携式北斗/gps导航授时装置及方法 | |
CN107103743A (zh) | 一种载波综合抄控器的报文处理方法 | |
CN101110019B (zh) | 基于VxWorks操作系统实现远程Shell的方法 | |
CN204376929U (zh) | 基于以太网总线的多异步数据口并行测试卡 | |
CN104061886B (zh) | 一种用于数显量具的数据采集及处理方法 | |
CN103472387B (zh) | 一种适用于反熔丝型fpga的通用在线测试系统及测试方法 | |
CN203396435U (zh) | 基于图像识别的燃气计量装置 | |
CN205725785U (zh) | 一种并行数据同步采集装置 | |
FR2880489B1 (fr) | Dispositif de connexion automatique au reseau internet. | |
CN201994962U (zh) | 基于fpga芯片架构技术的以太网到e1信道适配器 | |
CN104008077A (zh) | 基于单片机实现串口抓包的装置及方法 | |
CN107561948A (zh) | 用于飞行模拟仿真测试的处理单元系统 | |
MXPA06001064A (es) | Metodo automatico de deteccion del protocolo de transmision para un objeto portatil. tal como una tarjeta de microcircuito o un codigo de microcircuito. | |
CN206369952U (zh) | 一种用于资源共享的高效数据采集系统 | |
CN209088989U (zh) | 一种数据采集网关 | |
CN102117254B (zh) | 基于嵌入式系统实现数据异步接收的方法 | |
CN105354055A (zh) | 一种用于电力采集终端的升级方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20110105 |