CN220137680U - 一种支持异步通信接口的仿真器 - Google Patents
一种支持异步通信接口的仿真器 Download PDFInfo
- Publication number
- CN220137680U CN220137680U CN202320816913.5U CN202320816913U CN220137680U CN 220137680 U CN220137680 U CN 220137680U CN 202320816913 U CN202320816913 U CN 202320816913U CN 220137680 U CN220137680 U CN 220137680U
- Authority
- CN
- China
- Prior art keywords
- data
- module
- interface
- field
- register
- 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
- 230000006854 communication Effects 0.000 title claims abstract description 49
- 238000004891 communication Methods 0.000 title claims abstract description 48
- 238000004088 simulation Methods 0.000 claims abstract description 20
- 230000005540 biological transmission Effects 0.000 claims description 36
- 230000006870 function Effects 0.000 claims description 36
- 238000012545 processing Methods 0.000 claims description 13
- 230000004044 response Effects 0.000 claims description 4
- 230000002159 abnormal effect Effects 0.000 claims description 2
- 230000005856 abnormality Effects 0.000 claims description 2
- 238000000034 method Methods 0.000 claims description 2
- 230000008569 process Effects 0.000 claims description 2
- 238000013461 design Methods 0.000 abstract description 8
- 238000010586 diagram Methods 0.000 description 8
- 230000002093 peripheral effect Effects 0.000 description 6
- 230000003993 interaction Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012772 sequence design Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
Landscapes
- Test And Diagnosis Of Digital Computers (AREA)
Abstract
本发明介绍一种支持异步通信接口的仿真器,涉及到芯片仿真调试领域。本发明的仿真器包括芯片功能调试模块、芯片功能仿真模块、寄存器模块、时序接口模块共4部份,复用芯片的系统RAM用于存放通信接口收发的数据,增加寄存器模块和时序接口模块,实现一个异步通信的并行主接口。仿真器采用了主从设备相互握手的异步并行的接口设计,兼容各种速度的接口设备的同时,最大程度的提升了通信速率。本发明设计一种支持异步通信接口的仿真器,可以实现调试功能的接口扩展,加快芯片程序的调试速度,提升开发效率。
Description
技术领域
本发明涉及芯片仿真调试领域,具体涉及一种具有异步通信接口的仿真器设计。
背景技术
对于芯片仿真器,通常采用JTAG或SWD接口,连接调试适配器进行程序的下载和调试,这些适配器为专用调试设备,不利于进行调试功能的扩展,因此设计仿真器时,希望实现一种高速通道接口,支持与其它外围芯片连接,用于调试数据的快速导入和导出。常用的USB、SPI这类串行接口,模块设计和调试复杂,仿真器所连接外围芯片也要求有此类接口,给仿真器接口和外围电路的设计带来困难。为解决此问题,本发明提出了一种结构简单、兼容性好、通信速率高的异步通信接口的仿真器。
实用新型内容
本发明所解决的技术问题是,如何设计一种支持异步通信接口的仿真器。为兼容外围连接芯片不同工作速度,最大程度的提升通信速率,采用了相互握手的异步并行的接口设计。
本发明的仿真器,复用芯片的系统RAM,增加寄存器模块和时序接口模块,实现一个异步通信的并行主接口,主接口包括以下信号:使能信号O_AEN、长度使能信号O_LEN、主请求信号O_REQ、从应答信号I_ACK、从异常信号I_ERR、数据总线IO_DATA。上述主接口信号,用于与外围从设备的从接口互连,实现数据发送请求及数据传输功能。
仿真器包括:芯片功能调试模块、芯片功能仿真模块、寄存器模块、时序接口模块4部分,各组件功能说明如下:
芯片功能调试模块,实现对芯片功能仿真模块的调试功能;
芯片功能仿真模块,实现对芯片功能的仿真,芯片功能仿真模块中包含系统RAM,所述的系统RAM用于存放通信接口收发的数据。
寄存器模块,实现一组寄存器,芯片功能仿真模块通过访问此组寄存器,实现对时序接口模块的配置和通信接口的数据传输;
时序接口模块,产生异步通信接口的主接口信号,生成数据收发时序、实现系统RAM读写、异常处理、数据收发及校验功能;
各组件连接关系如下:
芯片功能仿真模块与芯片功能调试模块、寄存器模块相连,时序接口模块与寄存器模块、芯片功能仿真模块相连。
仿真器中的寄存器模块由控制寄存器、状态寄存器、地址寄存器、长度寄存器、定时寄存器共5个寄存器组成,用户程序访问这些寄存器实现数据收发、异常处理等操作。
控制寄存器,用于配置通信接口的功能、启动收发操作;
状态寄存器,用于存放通信接口的工作状态及异常标志;
地址寄存器,配置接口访问的从设备地址、系统RAM中接收或发送的数据的存储地址;
长度寄存器,为系统RAM中接收或发送的数据的长度;
定时寄存器,用于配置IO_DATA读写数据的延时、I_ACK响应超时的时间;
仿真器中的时序接口模块由传输控制模块、异常处理模块、数据处理及校验模块3个模块组成:
传输控制模块,根据控制寄存器的配置操作和I_ACK的电平状态,输出O_AEN、O_LEN、O_REQ接口信号;传输控制模块根据地址寄存器、长度寄存器、定时寄存器的配置值,实现接口数据的收发操作时序;传输控制模块连接到寄存器模块,实现与寄存器模块中5个寄存器的数据交互;传输控制模块连接到异常处理模块,控制异常处理模块进行异常处理;传输控制模块连接到数据处理及校验模块,控制数据处理及校验模块实现通信接口的数据发送及校验功能;
异常处理模块,根据I_ERR接口信号和数据处理及校验模块输出的校验标志,进行通信异常处理并产生状态标志;异常处理模块将产生的状态标志输出给传输控制模块,由传输控制模块将状态标志更新到状态寄存器;
数据处理及校验模块,连接到芯片功能仿真模块中的系统RAM,通过RAM访问接口实现系统RAM的读写操作,并在传输控制模块控制下产生IO_DATA信号,将系统RAM中的数据通过IO_DATA发送出去,或是从IO_DATA接收数据并存储在系统RAM中;数据处理及校验模块实现接收和发送过程中的数据校验,并将校验结果输出给异常处理模块。
本发明的仿真器实现的异步通信接口,一帧数据传输的时序分为4个字段:地址字段、长度字段、数据字段、校验字段:
地址字段,O_AEN为高电平时,表示当前IO_DATA上的数据为地址字段;地址字段包括读写位、校验位和传输访问的从设备地址;读写位为1表示本次传输为读操作,为0表示为写操作;校验位为1表示存在校验字段,为0时无校验字段;
长度字段,O_LEN为高电平时,表示当前IO_DATA上的数据为长度字段,长度字段的值为接收或发送的数据字段的长度;
数据字段,长度字段完成传输后,长度字段的值指定长度的IO_DATA上的数据为数据字段,此时O_AEN和O_LEN都为低电平;
校验字段,地址字段的校验位为1时,数据字段完成传输后IO_DATA上的数据为校验数据,此时O_AEN和O_LEN都为低电平;校验字段是对地址字段、长度字段、数据字段中所有的数据进行校验,校验字段的长度是根据采用的校验算法由用户自定义。
上述4个字段,每个字段需要进行几次IO_DATA传输,与IO_DATA的总线位宽和每个字段要收发的数据长度相关,由接口设计人员根据接口具体需求自定义通信协议。
本发明的仿真器通信接口中的O_REQ和I_ACK作为一对握手信号控制传输进程,支持适配各种速度的设备进行通信;O_REQ在I_ACK为低电平时才能变高,O_REQ在I_ACK为高电平时才能变低,I_ACK在O_REQ变高后才能变高,I_ACK在O_REQ变低后才能变低;仿真器通过O_REQ和I_ACK实现了与所连接的接口设备之间数据同步传输。
仿真器连接的从设备通过I_ERR信号将通信过程中产生的异常实时反馈给仿真器,仿真器检测到I_ERR变高后,停止当前传输操作并进行容错处理。
附图说明
图1是支持异步通信接口的仿真器结构图。
图2是异步通信接口向IO_DATA写数据时序图
图3是异步通信接口从IO_DATA读数据时序图
图4是异步通信接口一帧数据发送时序图
图5是异步通信接口一帧数据接收时序图
具体实施方式
下面结合附图对本发明仿真器及通信接口时序设计进行详细说明。
如图1所示,仿真器1包括芯片功能调试模块2、芯片功能仿真模块3、寄存器模块4、时序接口模块5共4部分。芯片功能仿真模块3增加两个访问接口:通过寄存器访问接口连接寄存器模块,通过RAM访问接口连接时序接口模块5。仿真器1通过增加寄存器模块4和时序接口模块5,实现了一个对外的异步通信的并行主接口,用于连接外围从设备实现数据交互。
仿真器通过异步通信接口实现一帧数据的发送及接收操作,以下介绍接口的时序设计。
如图2所示,为向IO_DATA写数据的时序图。device_io_rd信号的白色段,表示仿真器连接的从设备检测到O_REQ由低变高后,从IO_DATA上读取数据并进行处理,数据处理完成后从设备将I_ACK置高,通知仿真器IO_DATA数据已读取;t_io2reqr为IO_DATA写数据的延时,表示IO_DATA数据稳定延时,由定时寄存器进行配置,O_REQ由低变高,表示IO_DATA已经准备好,从设备可以读取IO_DATA数据;从设备检测到O_REQ由高变低后,将I_ACK置为低电平,I_ACK为低电平时,主设备才能启动下一次IO_DATA的数据传输。
仿真器向IO_DATA写数据操作分为3种情况:
1)send_aen写操作,用于地址字段的数据发送;
2)send_len写操作,用于长度字段的数据发送;
3)send_data写操作,用于数据字段和校验字段的数据发送。
如图3所示,为从IO_DATA读数据的时序图。device_io_wr信号的白色段,表示仿真器连接的从设备检测到O_REQ由低变高,准备要发送的数据并向IO_DATA输出数据,之后从设备将I_ACK置高,通知仿真器读取IO_DATA上的数据;master_io_rd信号的白色段,表示仿真器从IO_DATA上读取数据并进行处理;t_ackr2io为IO_DATA读数据的延时,表示仿真器等待IO_DATA数据稳定,由定时寄存器进行配置。仿真器从IO_DATA读数据操作,用于数据字段和校验字段的数据接收。
如图4所示,为一帧数据发送时序图,分为4个阶段:
1)send rwn/chk/addr阶段,发送地址字段的数据,读写位rwn固定为0,本具体实施方式中校验位chk为1,此帧传输包括校验字段的数据传输;当地址字段的数据需要进行多次IO_DATA传输时,第一次传输的IO_DATA数据包括读写位、校验位和低端地址位,高端地址位后面传输;
2)send len阶段,发送长度字段的数据,表示此帧传输要发送的数据字段的数据长度;
3)send data阶段,仿真器发送数据字段的数据;
4)send chk阶段,地址字段的校验位为1时存在,仿真器发送校验字段的数据;
如图5所示,为一帧数据接收时序图,分为4个阶段:
1)send rwn/chk/addr阶段,发送地址字段的数据,与一帧数据发送的发送地址字段的数据的时序相同,只是读写位rwn的值固定为1,表示本帧为数据接收操作;
2)send len阶段,发送长度字段的数据,表示此帧传输要接收的数据字段的数据长度;
3)read data阶段,仿真器接收数据字段的数据;
4)read chk阶段,地址字段的校验位为1时存在,仿真器接收校验字段的数据。
以上实施例仅用以说明而非限制本发明的技术方案,尽管参照上述实施例对本发明进行了详细说明,本领域的普通技术人员应当理解:依然可以对本发明进行修改或等同替代,而不脱离本发明的精神和范围的任何修改或局部替代,其均应涵盖在本发明的权利要求范围内。
Claims (6)
1.一种支持异步通信接口的仿真器,其特征在于复用芯片的系统RAM,增加寄存器模块和时序接口模块,实现一个异步通信的并行主接口,主接口包括以下信号:地址使能信号O_AEN、长度使能信号O_LEN、主请求信号O_REQ、从应答信号I_ACK、从异常信号I_ERR,数据总线IO_DATA;所述的仿真器包括:芯片功能调试模块、芯片功能仿真模块、寄存器模块、时序接口模块4部分;
各组件功能说明如下:
芯片功能调试模块,实现对芯片功能仿真模块的调试功能;
芯片功能仿真模块,实现对芯片功能的仿真,芯片功能仿真模块中包含系统RAM,所述的系统RAM用于存放通信接口收发的数据;
寄存器模块,实现一组寄存器,芯片功能仿真模块通过访问此组寄存器,实现对时序接口模块的配置和通信接口的数据传输;
时序接口模块,产生异步通信接口的主接口信号,生成数据收发时序、实现系统RAM读写、异常处理、数据收发及校验功能;
各组件连接关系如下:
芯片功能仿真模块与芯片功能调试模块、寄存器模块相连,时序接口模块与寄存器模块、芯片功能仿真模块相连。
2.根据权利要求1所述的一种支持异步通信接口的仿真器,其特征在于寄存器模块由控制寄存器、状态寄存器、地址寄存器、长度寄存器、定时寄存器共5个寄存器组成:
控制寄存器,用于配置通信接口的功能、启动收发操作;
状态寄存器,用于存放通信接口的工作状态及异常标志;
地址寄存器,配置接口访问的从设备地址、系统RAM中接收或发送的数据的存储地址;
长度寄存器,为系统RAM中接收或发送的数据的长度;
定时寄存器,用于配置IO_DATA读写数据的延时、I_ACK响应超时的时间。
3.根据权利要求1所述的一种支持异步通信接口的仿真器,其特征在于时序接口模块由传输控制模块、异常处理模块、数据处理及校验模块3个模块组成:
传输控制模块,根据控制寄存器的配置操作和I_ACK的电平状态,输出O_AEN、O_LEN、O_REQ接口信号,实现接口数据的收发操作时序;
异常处理模块,根据I_ERR接口信号和数据处理及校验模块输出的校验标志,进行通信异常处理并产生状态标志;
数据处理及校验模块,连接到芯片功能仿真模块中的系统RAM,通过RAM访问接口实现系统RAM的读写操作,并在传输控制模块控制下产生IO_DATA信号,数据处理及校验模块实现接收和发送过程中的数据校验,并将校验结果输出给异常处理模块。
4.根据权利要求1所述的一种支持异步通信接口的仿真器,其特征在于异步通信接口一帧数据传输的时序分为4个字段:地址字段、长度字段、数据字段、校验字段:
地址字段,O_AEN为高电平时,表示当前IO_DATA上的数据为地址字段;地址字段包括读写位、校验位和传输访问的从设备地址;读写位为1表示本次传输为读操作,为0表示为写操作;校验位为1表示存在校验字段,为0时无校验字段;
长度字段,O_LEN为高电平时,表示当前IO_DATA上的数据为长度字段,长度字段的值为接收或发送的数据字段的长度;
数据字段,长度字段完成传输后,长度字段的值指定长度的IO_DATA上的数据为数据字段;
校验字段,地址字段的校验位为1时,数据字段完成传输后IO_DATA上的数据为校验数据,校验字段是对地址字段、长度字段、数据字段中所有的数据进行校验。
5.根据权利要求1所述的一种支持异步通信接口的仿真器,其特征在于O_REQ和I_ACK作为一对握手信号控制传输进程,支持适配各种速度的设备进行通信;O_REQ在I_ACK为低电平时才能变高,O_REQ在I_ACK为高电平时才能变低,I_ACK在O_REQ变高后才能变高,I_ACK在O_REQ变低后才能变低。
6.根据权利要求1所述的一种支持异步通信接口的仿真器,其特征在于仿真器连接的从设备通过I_ERR信号将通信过程中产生的异常实时反馈给仿真器,仿真器检测到I_ERR变高后,停止当前传输操作并进行容错处理。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202320816913.5U CN220137680U (zh) | 2023-04-13 | 2023-04-13 | 一种支持异步通信接口的仿真器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202320816913.5U CN220137680U (zh) | 2023-04-13 | 2023-04-13 | 一种支持异步通信接口的仿真器 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN220137680U true CN220137680U (zh) | 2023-12-05 |
Family
ID=88959561
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202320816913.5U Active CN220137680U (zh) | 2023-04-13 | 2023-04-13 | 一种支持异步通信接口的仿真器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN220137680U (zh) |
-
2023
- 2023-04-13 CN CN202320816913.5U patent/CN220137680U/zh active Active
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110471872B (zh) | 一种基于zynq芯片实现m-lvds总线数据交互系统和方法 | |
CN109656841B (zh) | 基于软件模拟i2c和硬件i2c的混合控制方法及装置 | |
CN105808396A (zh) | 一种芯片调试装置、调试方法及soc芯片系统 | |
CN108462620B (zh) | 一种吉比特级SpaceWire总线系统 | |
CN110784259B (zh) | 一种基于pam4的一体化光模块误码测试仪 | |
CN112579495B (zh) | Gpio控制器 | |
CN220137680U (zh) | 一种支持异步通信接口的仿真器 | |
CN112631976A (zh) | 一种可配置硬件ip电路结构 | |
CN112650701A (zh) | 一种精简串行传输电路 | |
CN116627858A (zh) | 一种支持异步通信接口的仿真器 | |
CN103577356A (zh) | 实现iic接口地址扩展的设备及方法 | |
CN113900985B (zh) | Io和spi复用芯片、复用辅助芯片和数据交互方法 | |
CN113904970B (zh) | 一种半导体测试设备的传输系统及方法 | |
CN100511172C (zh) | 一种板间透传总线的测试装置及方法 | |
CN115454881A (zh) | Risc-v架构的调试系统及调试方法 | |
CN213276462U (zh) | 双路服务器主板及双路服务器 | |
CN115296743A (zh) | 光纤通信转接系统 | |
CN116340220A (zh) | Usb通信接口适配器 | |
CN115202257B (zh) | 一种lpc总线协议转换及设备并行控制装置及方法 | |
CN113704163B (zh) | 验证srio协议完整性的测试装置及方法 | |
CN113391570A (zh) | 一种低成本低复杂度的多路da同步控制方法 | |
CN218886572U (zh) | 一种简单外设总线系统 | |
CN212660174U (zh) | 网卡和网络设备 | |
CN115575792B (zh) | 一种多背板架构的ate测试设备 | |
CN216014148U (zh) | 一种服务器和服务器背板 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
GR01 | Patent grant | ||
GR01 | Patent grant |