CN104461982B - 一种对1394总线事件消息定时发送的处理方法及电路 - Google Patents
一种对1394总线事件消息定时发送的处理方法及电路 Download PDFInfo
- Publication number
- CN104461982B CN104461982B CN201410752966.0A CN201410752966A CN104461982B CN 104461982 B CN104461982 B CN 104461982B CN 201410752966 A CN201410752966 A CN 201410752966A CN 104461982 B CN104461982 B CN 104461982B
- Authority
- CN
- China
- Prior art keywords
- module
- message
- dpram
- sent
- link layer
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/40—Bus structure
- G06F13/4063—Device-to-bus coupling
- G06F13/4068—Electrical coupling
- G06F13/4072—Drivers or receivers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4282—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2213/00—Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F2213/0012—High speed serial bus, e.g. IEEE P1394
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Communication Control (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明属于计算机硬件控制领域,涉及一种1394总线事件消息定时发送的处理方法及电路。本发明提供一种满足1394协议的消息的定时发送的电路包括寄存器模块(Register),直接内存存取接口模块,直接内存存取控制模块(DMA_ctrl),链路层主机接口模块(LLC_Hst_Int),数据搬运接口模块(DM_Interface),控制模块(Control)和DPRAM控制模块(DPRAM_ctrl),以及发送缓冲模块(TX_FIFO)。各模块连接关系:控制模块接收来自寄存器、链路层主机接口、DM接口单元的信息,并通过配置表DPRAM接口读取配置表内容,向直接内存存取控制模块发送控制命令;直接内存存取控制模块则负责通知DPRAM控制模块将数据缓冲DPRAM中的数据包传送给发送缓冲模块;发送缓冲模块通过对包进行VPC校验***处理,送至DM接口单元。
Description
技术领域
本发明属于计算机硬件控制领域,涉及一种1394总线事件消息定时发送的处理方法及电路。
背景技术
按照SAE AS5643标准执行的1394总线异步流消息传输时间预配置,传输时间是确定的。但事件消息是随机请求发送的,AS5643协议要求1394总线带宽预分配,即要求在1394总线上传输的消息定时发送。现有技术未公开在事件消息的不定时请求情况下,如何将此类事件消息按照AS5643协议,在1394总线上实现定时发送。
发明内容
本发明提供一种对1394总线事件消息的定时发送的处理方法及电路,满足AS5643协议对1394总线消息带宽预分配的要求。
本发明的解决方案是:
该对1394总线事件消息定时发送的电路,包括寄存器模块(Register),直接内存存取接口模块(主机DMA接口),直接内存存取控制模块(DMA_ctrl),链路层主机接口模块(LLC_Hst_Int),数据搬运接口模块(DM_Interface),控制模块(Control)和DPRAM控制模块(DPRAM_ctrl),以及发送缓冲模块(TX_FIFO);所述控制模块的输入端分别与寄存器模块,数据搬运接口模块的输出端连接,控制模块的输出端与链路层主机接口模块,直接内存存取接口模块,直接内存存取控制模块的输入端连接,控制模块的输入端同时用于读取配置表信息,所述直接内存存取控制模块的输出端与直接内存存取模块和DPRAM控制模块的输入端连接,所述直接内存存取模块的输出端与数据缓冲DPRAM模块的输入端连接,数据缓冲DPRAM模块的输出端与连接DPRAM控制模块的输入端连接,DPRAM控制模块的输出端通过发送缓冲模块与Link层芯片DM接口单元模块的输入端连接,DM接口单元模块的输出端用于将数据包发送至链路层芯片,链路层主机接口模块与链路层芯片连接。
上述直接内存存取控制模块根据控制模块的控制信号,在数据包已填入主存等待发送情况下,负责通知直接内存存取模块请求将要发送的数据包从主存相应位置中取出,传递给数据缓冲DPRAM模块,然后根据获取的配置表信息,在预设的该数据包发送偏移时刻送入Link层芯片DM接口单元模块完成数据包发送。
该对1394总线事件消息定时发送的方法,包括以下步骤:
1]当有事件消息时,主机软件更新该条消息的头指针;
2]直接内存存取控制模块检查事件消息的头尾指针和更新标识,判断本条消息是否需要搬移,若头尾指针不相同且更新标识未更新,表示该消息已被主机软件更新且未搬移至DPRAM中,则转入步骤3处理;若头尾指针相同和/或更新标识已更新则继续轮询下一条消息;
3]直接内存存取控制模块启动直接内存存取模块,将事件消息搬移至数据缓冲DPRAM模块的指定位置,搬移后更新该事件消息的数据包更新标识;
4]控制模块读取配置表信息,在事件消息发送偏移时刻检查此消息的数据包更新标识是否置位,若被置位表示该消息已搬移完成,则转入步骤5处理,若未置位则表示该消息未更新不需要发送,则继续轮询下一条消息;
5]DPRAM控制模块检测到置位后,将已搬移至数据缓冲DPRAM模块中的事件消息的数据包的相应地址数据取出并封装为AS5643协议规定的包格式,同时计算该数据包的VPC校验码;
6]DPRAM控制模块将经步骤5处理完的数据填写至发送缓冲模块,填写完成后填入VPC校验码;
7]Link层芯片DM接口单元模块检测到发送缓冲模块“非空”后,将数据从发送缓冲模块中取出,并按照链路层芯片DM接口时序要求填写至链路层芯片;
8]当链路层芯片返回该数据包发送完成标志后,更新该消息的尾指针,完成一次消息发送。
上述步骤7中具体是:在发送消息状态下,Link层芯片DM接口单元模块模块将直接内存存取控制模块存入发送缓冲中的数据信息,抽取并构造成满足链路层主机接口模块时序的数据包,并根据控制单元传来的控制信号,发送至链路层芯片。
上述步骤4中,控制模块从片内配置表区读取配置表,根据配置表和相应寄存器的配置信息,以及通过Link层芯片DM接口单元模块和链路层主机接口模块反馈的Link层芯片工作状态信息产生相应的控制信号。
本发明的优点在于:
本发明提供一种满足对1394总线事件消息定时发送的处理电路及方法。可使随机请求发送的事件消息,在1394总线上定时发送,以满足AS5643协议对1394总线消息带宽预分配的要求。
附图说明
图1是本发明的AS5643内部模块调用关系图;
图2是本发明的发送流程图。
具体实施方式
下面结合附图和具体实施例,对本发明的技术方案进行清楚、完整地表述。显然,所表述的实施例仅是本发明一部分实施例,而不是全部的实施例,基于本发明中的实施例,本领域技术人员在没有做出创造性劳动前提所获得的所有其他实施例,都属于本发明的保护范围。
该对1394总线事件消息定时发送的电路,包括寄存器模块(Register),直接内存存取控制模块(DMA_ctrl),链路层主机接口模块(LLC_Hst_Int),数据搬运接口模块(DM_Interface),控制模块(Control)和DPRAM控制模块(DPRAM_ctrl),以及发送缓冲模块(TX_FIFO);所述控制模块的输入端分别与寄存器模块,数据搬运接口模块的输出端连接,控制模块的输出端与链路层主机接口模块,直接内存存取控制模块的输入端连接,控制模块的输入端同时用于读取配置表信息,所述直接内存存取控制模块的输出端与直接内存存取模块和DPRAM控制模块的输入端连接,所述直接内存存取模块的输出端与数据缓冲DPRAM模块的输入端连接,数据缓冲DPRAM模块的输出端与连接DPRAM控制模块的输入端连接,DPRAM控制模块的输出端通过发送缓冲模块与Link层芯片DM接口单元模块的输入端连接,DM接口单元模块的输出端用于将数据包发送至链路层芯片,链路层主机接口模块与链路层芯片连接。
控制逻辑如下:
控制模块从片内配置表区读取配置表,根据配置表和相应寄存器的配置信息,以及通过Link层芯片DM接口单元模块和链路层主机接口模块反馈的Link层芯片工作状态信息,产生相应的控制命令,并向直接内存存取控制模块发送的控制命令;直接内存存取控制模块则通知DPRAM控制模块将数据缓冲DPRAM中的数据包传送给发送缓冲模块,发送缓冲模块通过对包进行VPC校验***处理,送至Link层芯片DM接口单元模块。
各模块具体功能在发送消息时如下:
寄存器模块(Register):实现主机对可读寄存器的读访问,对可写寄存器的写访问;软件复位时,实现对寄存器清零,或复位初始值的操作;根据寄存器相应位置的值,输出相应控制信号;
直接内存存取控制模块(DMA_Ctrl):根据控制模块的控制信号,在待发送数据包在主存中准备完成情况下,负责通知DMA通道相关信息,请求将要发送的数据包从主存相应位置中取出,传递给发送缓冲,等待发送;
链路层主机接口模块(LLC_Hst_Int):在初始化/复位阶段,完成逻辑自动访问Link层寄存器工作;根据通讯需要,将Link层芯片配置为接收或者发送模式;提供主机对Link层芯片寄存器读写访问接口;
Link层芯片DM接口单元模块(DM_Interface):在发送消息状态下,DM接口单元模块将DMA_Ctrl单元存入发送缓冲中的数据信息,抽取并构造成满足Link层芯片DM接口时序的数据包,并根据控制逻辑单元传来的控制信号,发送给Link层芯片;
控制模块(Control):从片内配置表区读取配置表,根据配置表和相应寄存器的配置信息,以及通过DM_Interface模块和LLC_Hst_Int模块反馈的Link层芯片工作状态信息,产生相应的控制信号;控制DMA_Ctrl模块,完成数据包在DMA读写通道和DM_Interface模块之间的转移;
DPRAM控制(DPRAM_Ctrl)模块:根据控制逻辑单元模块的控制信息,在节点发送消息时,从DPRAM中读取发送数据并提交DM_Interface模块准备发送。
本发明同时提供一种对1394总线事件消息定时发送的方法,利用上述电路,包括以下步骤:
该对1394总线事件消息定时发送的方法,包括以下步骤:
1]当有事件消息时,主机软件更新该条消息的头指针;
2]直接内存存取控制模块检查事件消息的头尾指针和更新标识,判断本条消息是否需要搬移,若头尾指针不相同且更新标识未更新,表示该消息已被主机软件更新且未搬移至DPRAM中,则转入步骤3处理;若头尾指针相同和/或更新标识已更新则继续轮询下一条消息;
3]直接内存存取控制模块启动直接内存存取模块,将事件消息搬移至数据缓冲DPRAM模块的指定位置,搬移后更新该事件消息的数据包更新标识;
4]控制模块读取配置表信息,在事件消息发送偏移时刻检查此消息的数据包更新标识是否置位,若被置位表示该消息已搬移完成,则转入步骤5处理,若未置位则表示该消息未更新不需要发送,则继续轮询下一条消息;
5]DPRAM控制模块检测到置位后,将已搬移至数据缓冲DPRAM模块中的事件消息的数据包的相应地址数据取出并封装为AS5643协议规定的包格式,同时计算该数据包的VPC校验码;
6]DPRAM控制模块将经步骤5处理完的数据填写至发送缓冲模块,填写完成后填入VPC校验码;
7]Link层芯片DM接口单元模块检测到发送缓冲模块“非空”后,将数据从发送缓冲模块中取出,并按照链路层芯片DM接口时序要求填写至链路层芯片;
8]当链路层芯片返回该数据包发送完成标志后,更新该消息的尾指针,完成一次消息发送。
本发明提供一种满足对1394总线事件消息定时发送的处理方法。可使随机请求发送的事件消息,在1394总线上定时发送,以满足AS5643协议对1394总线消息带宽预分配的要求。
最后应说明的是,以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解;其依然可以对前述各实施例记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (3)
1.一种对1394总线事件消息定时发送的方法,其特征在于,包括以下步骤:
1]当有事件消息时,主机软件更新某条消息的头指针;
2]直接内存存取控制模块检查事件消息的头尾指针和更新标识,判断本条消息是否需要搬移,若头尾指针不相同且更新标识未更新,表示该消息已被主机软件更新且未搬移至DPRAM中,则转入步骤3处理;若头尾指针相同和/或更新标识已更新则继续轮询下一条消息;
3]直接内存存取控制模块启动直接内存存取模块,将事件消息搬移至数据缓冲DPRAM模块的指定位置,搬移后更新该事件消息的数据包更新标识;
4]控制模块读取配置表信息,在事件消息发送偏移时刻检查此消息的数据包更新标识是否置位,若被置位表示该消息已搬移完成,则转入步骤5处理,若未置位则表示该消息未更新不需要发送,则继续轮询下一条消息;
5]DPRAM控制模块检测到置位后,将已搬移至数据缓冲DPRAM模块中的事件消息的数据包的相应地址数据取出并封装为AS5643协议规定的包格式,同时计算该数据包的VPC校验码;
6]DPRAM控制模块将经步骤5处理完的数据填写至发送缓冲模块,填写完成后填入VPC校验码;
7]Link层芯片DM接口单元模块检测到发送缓冲模块“非空”后,将数据从发送缓冲模块中取出,并按照链路层芯片DM接口时序要求填写至链路层芯片;
8]当链路层芯片返回该数据包发送完成标志后,更新该消息的尾指针,完成一次消息发送。
2.根据权利要求1所述的对1394总线事件消息定时发送的方法,其特征在于:所述步骤7中具体是:在发送消息状态下,Link层芯片DM接口单元模块将直接内存存取控制模块存入发送缓冲模块中的数据信息,抽取并构造成满足链路层主机接口模块时序的数据包,并根据控制单元传来的控制信号,发送至链路层芯片。
3.根据权利要求2所述的对1394总线事件消息定时发送的方法,其特征在于:所述步骤4中,控制模块从片内配置表区读取配置表,根据配置表和相应寄存器的配置信息,以及通过Link层芯片DM接口单元模块和链路层主机接口模块反馈的Link层芯片工作状态信息产生相应的控制信号。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410752966.0A CN104461982B (zh) | 2014-12-09 | 2014-12-09 | 一种对1394总线事件消息定时发送的处理方法及电路 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410752966.0A CN104461982B (zh) | 2014-12-09 | 2014-12-09 | 一种对1394总线事件消息定时发送的处理方法及电路 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104461982A CN104461982A (zh) | 2015-03-25 |
CN104461982B true CN104461982B (zh) | 2017-10-24 |
Family
ID=52908062
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410752966.0A Active CN104461982B (zh) | 2014-12-09 | 2014-12-09 | 一种对1394总线事件消息定时发送的处理方法及电路 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104461982B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108462651A (zh) * | 2016-12-12 | 2018-08-28 | 中国航空工业集团公司西安航空计算技术研究所 | 一种采用dma链实现的1394异步流传输的方法 |
CN108614757B (zh) * | 2016-12-12 | 2021-10-15 | 中国航空工业集团公司西安航空计算技术研究所 | 监控1394总线复位的方法及实现电路 |
CN108259265B (zh) * | 2017-12-08 | 2021-03-26 | 中国航空工业集团公司成都飞机设计研究所 | 一种军用1394b总线网络信道完整性检测方法 |
CN112685350B (zh) * | 2020-12-24 | 2023-01-31 | 西安翔腾微电子科技有限公司 | 一种1394链路层芯片内部数据路由调度电路及其调度方法 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103441914A (zh) * | 2013-09-05 | 2013-12-11 | 中国电子科技集团公司第十研究所 | As5643总线中包含等时数据包的传输方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005122372A (ja) * | 2003-10-15 | 2005-05-12 | Seiko Epson Corp | データ転送制御装置、電子機器及びデータ転送制御方法 |
-
2014
- 2014-12-09 CN CN201410752966.0A patent/CN104461982B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103441914A (zh) * | 2013-09-05 | 2013-12-11 | 中国电子科技集团公司第十研究所 | As5643总线中包含等时数据包的传输方法 |
Non-Patent Citations (1)
Title |
---|
《基于AS5643协议的Mil -1394仿真卡设计与实现》;张少锋等;《计算机技术与发展》;20130831;第23卷(第8期);第169-170页,图2 * |
Also Published As
Publication number | Publication date |
---|---|
CN104461982A (zh) | 2015-03-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104461982B (zh) | 一种对1394总线事件消息定时发送的处理方法及电路 | |
CN106951388B (zh) | 一种基于PCIe的DMA数据传输方法及*** | |
CN102138297B (zh) | 图形多媒体集成电路及其运作方法 | |
CN103902486B (zh) | 一种远端直接内存访问实现方法、装置及*** | |
CN107948094A (zh) | 一种高速数据帧无冲突入队处理的装置及方法 | |
CN105357147B (zh) | 一种高速高可靠的片上网络适配单元 | |
CN100517284C (zh) | 一种外部控制dma控制器的方法及其装置 | |
CN112948295B (zh) | 一种基于axi4总线的fpga与ddr高速数据包传输***及方法 | |
CN103885840B (zh) | 一种基于AXI4总线的FCoE协议加速引擎IP核 | |
CN106598889A (zh) | 一种基于fpga夹层板的sata主控器 | |
CN101237445B (zh) | 缓冲器管理方法和用于缓冲器管理及封装wusb分组的设备 | |
CN101834796A (zh) | 一种双控制器通信***和方法 | |
CN106294225A (zh) | 一种数据读取方法、对端设备及控制器 | |
CN111277988A (zh) | 一种提高微信小程序蓝牙传输速度的方法 | |
WO2012034361A1 (zh) | 基于mmc/sd接口的以太网通信***及方法 | |
CN104767697A (zh) | 一种航空全双工交换式以太网控制器及其控制方法 | |
CN111988104B (zh) | 多路数据同步传输方法、装置、数据端设备、***和介质 | |
WO2014134947A1 (zh) | 控制信息的收发装置和方法 | |
CN105512005B (zh) | 控制/远程节点与总线监控节点同步工作的电路及方法 | |
CN109417507A (zh) | 部分延迟的报文访问 | |
CN104468404B (zh) | 一种缓冲区配置方法及装置 | |
CN108011795B (zh) | 一种实现通信设备中多板卡和多数据通道管理的方法及*** | |
CN107341131A (zh) | 具有近端数据处理引擎的芯片组 | |
CN110012367B (zh) | 用于gpon olt的omci组帧装置及组帧方法 | |
CN106708755A (zh) | Pcie接口实现方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20221214 Address after: Room S303, Innovation Building, No. 25, Gaoxin 1st Road, Xi'an, Shaanxi 710075 Patentee after: XI'AN XIANGTENG MICROELECTRONICS TECHNOLOGY Co.,Ltd. Address before: No.15, Jinye 2nd Road, Xi'an, Shaanxi 710119 Patentee before: 631ST Research Institute OF AVIC |