CN1758627A - 一种以dpram做媒介实现数据软交换通信的控制方法 - Google Patents

一种以dpram做媒介实现数据软交换通信的控制方法 Download PDF

Info

Publication number
CN1758627A
CN1758627A CNA2005100308066A CN200510030806A CN1758627A CN 1758627 A CN1758627 A CN 1758627A CN A2005100308066 A CNA2005100308066 A CN A2005100308066A CN 200510030806 A CN200510030806 A CN 200510030806A CN 1758627 A CN1758627 A CN 1758627A
Authority
CN
China
Prior art keywords
bus system
territory
state
dpram
control
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.)
Granted
Application number
CNA2005100308066A
Other languages
English (en)
Other versions
CN1758627B (zh
Inventor
李焕炀
周畅
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shanghai Micro Electronics Equipment Co Ltd
Original Assignee
Shanghai Micro Electronics Equipment Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Shanghai Micro Electronics Equipment Co Ltd filed Critical Shanghai Micro Electronics Equipment Co Ltd
Priority to CN2005100308066A priority Critical patent/CN1758627B/zh
Publication of CN1758627A publication Critical patent/CN1758627A/zh
Application granted granted Critical
Publication of CN1758627B publication Critical patent/CN1758627B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明公开了一种以DPRAM做媒介实现数据软交换通信的控制方法,其特征在于:使用了DPRAM作为数据软交换的媒介。有益效果为不仅实现和提高了不同总线系统间的高速实时数据交换的控制效果,而且还保证了系统数据软交换控制的实时性和准确性。

Description

一种以DPRAM做媒介实现数据软交换通信的控制方法
技术领域
本技术属于工业控制、数据通信领域,尤其涉及一种利用DPRAM(双端口随机存储器)缓存空间进行软交换,实现在不同数据总线上进行数据通信的控制方法。
背景技术
在通讯领域,对于不同的总线控制技术,其总线控制的方法各有不同,因而不能直接实现数据交换,所以需要一个交换数据的方法,通过某种媒介或时序转换方法,实现不同总线系统的数据交换和实时通信,但现有技术使用时序转换的方法使得数据交换应用起来很困难,它需要有硬件支持,将不同总线的时序转化成双方都能识别的时序,在读写时序上不能很好地兼容不同总线系统,况且,由于不同总线系统的读写控制周期不同,实现起来非常复杂,即使实现了这两种总线系统的数据,对于第三种总线控制技术又无法兼容已经设计好的时序转换。因此需要设计一种利用硬件做媒介,通过设计控制模块实现不同总线系统的数据软交换。
发明内容
本发明需要解决的技术问题在于提供一种利用DPRAM(双端口随机存储器)缓存空间进行软交换,实现在不同数据总线上进行数据通信的控制方法。
本发明的技术方案包括以下步骤:
11)由一总线系统A利用DPRAM(双端口随机存储器)作为不同总线系统的交换媒介发起对另一总线系统B的数据软交换通信。
12)对数据报文设置六个域:Owner Field(所有权控制域)、Status Field(状态域)、Length Field(报文长度域)、NeedReply Field(要求应答域)、ReturnState(反应状态域)和Data Field(数据域);
13)A总线系统查询DPRAM中的Owner域是否为A总线系统控制状态。若Owner域是A总线系统控制状态,则跳转到4;若Owner域不是A总线系统控制状态,则继续查询Owner域的控制状态。
14)A总线系统在DPRAM中写数据包第i个报文内容(i≤n,n为数据包的报文个数)。
15)A总线系统在DPRAM中写报文报头的Status域、Length域、NeedReply域,最后将Owner域写为B总线系统控制状态,A总线系统对B总线系统发出请求B总线系统接收数据的中断。
16)B总线系统查询DPRAM中的Owner域是否为B总线系统控制状态。若Owner域是B总线系统控制状态,则跳转到7;若Owner域不是B总线系统控制状态,则继续查询Owner域的控制状态。
17)B总线系统在DPRAM中写数据包第i个报文内容(i≤n,n为数据包的报文个数)。
18)B总线系统在DPRAM的Data域中写入应答报文内容,将报头写在DPRAM的Status域、Length域、ReturnState域中,最后将Owner域写为A总线系统控制状态,B总线系统对A总线系统发出数据已经接收的应答中断。
19)A总线系统查询DPRAM中的Status域是否为Ready(完毕)状态。若Status域中的状态为Busy状态,则A总线系统继续发起数据软交换通信;若Status域中的状态为Ready(完毕)状态,则跳转到10。
20)A总线系统结束数据软交换通信。
上述A和B字母并无特殊,只是表示不同总线系统的代码,即也可以用其他字母表示不同的总线系统。
为了实现不同总线系统对该公共交换空间DPRAM的所有权控制,在DPRAM中定义了所有权控制域Owner Field,通过不同总线系统对该域中的值的读写进行控制的方法,实现了不同总线系统对DPRAM的读写控制,该控制域在被发送或应答的报文的报头中。Owner Field有a、b两种控制状态,分别对应A总线系统和B总线系统对DPRAM读写的控制所有权。若Owner Field的状态为a,则A总线系统对DPRAM享有读写控制权,是由B总线系统控制写入;若Owner Field的状态为b,则B总线系统对DPRAM享有读写控制权,是由A总线系统控制写入。
为了实现不同总线系统通过对DPRAM的多次读写,用多报文连续发送一个完整的数据包,需要在DPRAM中定义状态控制域StatusField,通过不同总线系统对该域中的值的读写进行控制的方法,实现了不同总线系统对DPRAM的多次读写状态控制,该读写状态控制表明了多报文发送的状态,该状态控制域在被发送或应答的报文的报头中。StatusField有Idle(空闲)、Busy(繁忙)和Ready(完毕)等三种控制状态,这三种状态的意义是:
d.Idle状态是A总线系统和B总线系统初始化后的状态,该控制域处于Idle状态时,A总线系统和B总线系统都可以发起数据软交换,但有发起方优先的原则,处于该状态下,A总线系统或B总线系统在对DPRAM进行读写前,要先将Owner域写为本方控制,在完成对DPRAM报文内容和除Owner Field以外的域进行读写后,才能在Owner Field将DPRAM的控制权交给对方。
e.Busy状态表明A总线系统或B总线系统正在进行多报文传送,多报文传送的数据包未传输交换完毕,还需要继续进行软交换。不能接收对方对DPRAM的写控制,即不能接收对方发起的通信数据包或应答数据包,只能接收未发送完数据包的总线系统继续发起的数据包。
f.Ready状态表明单报文的数据包和多报文的数据包已经传输交换完毕。可以接收下一个数据包或对方的通信数据包和应答数据包。
为了表明每个报文中传送数据的长度,定义了一个数据长度域Length Field,通过对该域的读写进行控制的方法,不同的总线系统可以给发送的对方传递被传递报文的数据长度。该数据长度域在被发送或应答的报文的报头中。Length Field是实现数据软交换的报文内容的长度,该长度的单位可以是Bytes,也可以是Words和DWords(32bits)。在实际设计实现时,也可以将该域定义为需要进行软交换的数据包的长度。
为了方便实现双工通信和单工通信的可控,在进行数据软交换的报文报头中定义了是否需要应答的控制域NeedReply Field,用于控制当前报文是否需要应答报文回复。NeedReply Field是表明发起数据软交换一方是否需要对方作出应答,回复本方发起的数据交换。
为了表明报文数据接收的状态,在报文发送的对方应答的报文中定义了应答状态域ReplyState Field,它给报文发送方显示了报文接收的状况,该应答状态域在应答的报文的报头中。ReturnState Field是反映软交换应答数据包报文的报文接收状态的信息。
给报文定义了数据域Data Field,它是要实现不同总线系统软交换的数据,是报文发送和应答的主要内容。Data Field是软交换发送数据形成的报文内容和报文应答的返回信息内容。
该方法将双中断机制运用在对DPRAM的读写触发,从而实现全双工通信设计,实现了两个不同总线系统的数据软交换功能。一个中断是由A总线系统给B总线系统发出的,是在A总线系统对B总线系统进行数据软交换时给出的触发信号,或者是在B总线系统给A总线系统进行数据软交换后,A总线系统给B总线系统发出的应答触发信号;另一个中断是由B总线系统给A总线系统发出的,是在B总线系统对A总线系统进行数据软交换时给出的触发信号,或者是在A总线系统给B总线系统进行数据软交换后,B总线系统给A总线系统发出的应答触发信号。
本发明的有益效果是,与现有技术相比,由于使用了DPRAM作为数据软交换的媒介,不仅实现和提高了不同总线系统间的高速实时数据交换的控制效果,而且还保证了系统数据软交换控制的实时性和准确性。
附图说明
图1是本发明的系统流程图;
图2-图4是本发明实施例的数据软交换流程图。
具体实施
以下结合附图和具体实施例对本发明作详细说明。
结合图1到图4,本发明的具体实施例如下:
以一控制系统为例,Driver(驱动器)的Power PC(一种微处理机)系统的VME(Versas Module Eurocard,IEEE标准)总线与Firmware的DSP(数字信号处理器)系统的TI-DSP内部总线间的高速实时数据软交换通信的技术难题,运用本发明所述的软交换技术方法可以成功实现这一数据交换功能。本案例中的A总线系统是Driver运行在VME总线上PowerPC,B总线系统是Firmware运行在TI-DSP内部总线上的DSP,它们之间的数据软交换具体流程如下所述。
(1)A对B发送数据进行数据软交换的流程,A发起数据交换时写入数据包报文的过程如图2。
假设由A总线系统先发起数据软交换,则在DPRAM中的Owner域控制权被初始化时,应初始化为a(DPRAM交换区的读写控制权为A总线系统)。A总线系统首先检查Owner域的状态是否是由A总线系统来控制的,若不是,则继续等待;若是,则写数据包第i个报文内容(i≤n,n为数据包的报文个数),然后分别写数据包报头中Status域、Length域、NeedReply域,再将Owner域写为B总线系统控制状态,接着写入A总线系统对B总线系统的中断,并等待B总线系统对A总线系统的应答报文中断,收到应答报文中断后,查询Status域是否为Ready状态,是则结束数据交换,否则,继续发送数据包报文。
(2)B总线系统接收数据报文的过程,B总线系统接收数据报文的过程如图三。
B总线系统相应A总线系统发出的发送数据包报文中断,查询Owner域是否为B总线系统控制状态,若不是,则B总线系统发送应答数据包报文,告知接收不正确,请求重新发送;若是,则读取A总线系统发送的数据包报文。然后,给A总线系统写入应答数据报文及其中断。接着,查询Status域的状态是否为Ready状态,若是,,并结束数据交换;若不是,继续接收数据包报文。
(3)B总线系统应答A总线系统的过程,B总线系统应答A总线系统的过程如图4所示。
B总线系统在接收完A总线系统数据包报文后,在DPRAM中的Data域中写入应答报文的内容,再在DPRAM中的Length域中写入应答报文长度,又在ReturnState域中写入应答状态,然后,给A总线系统写入应答中断。最后,查询Status域中的状态是否为Ready域,若是,则结束数据交换;若不是,则继续查询接收数据包报文。
虽然已公开了本发明的优选实施例,但本领域技术人员将会意识到,在不背离权利要求书中公开的本发明的范围的情况下,任何各种修改、添加和替换均属于本发明的保护范围。

Claims (7)

1.一种以DPRAM做媒介实现数据软交换通信的控制方法,
其特征在于包括以下步骤:
1)由一总线系统A利用DPRAM(双端口随机存储器)作为不同总线系统的交换媒介发起对另一总线系统B的数据软交换通信;
2)对数据报文设置六个域:Owner Field(所有权控制域)、Status Field(状态域)、Length Field(报文长度域)、NeedReply Field(要求应答域)、ReturnState(返回状态域)和Data Field(数据域);
3)A总线系统查询DPRAM中的Owner域是否为A总线系统控制状态,若Owner域是A总线系统控制状态,则跳转到4;若Owner域不是A总线系统控制状态,则继续查询Owner域的控制状态;
4)A总线系统在DPRAM中写数据包第i个报文内容(i≤n,n为数据包的报文个数);
5)A总线系统在DPRAM中写报文报头的Status域、Length域、NeedReply域,最后将Owner域写为B总线系统控制状态,A总线系统对B总线系统发出请求B总线系统接收数据的中断;
6)B总线系统查询DPRAM中的Owner域是否为B总线系统控制状态。若Owner域是B总线系统控制状态,则跳转到7;若Owner域不是B总线系统控制状态,则继续查询Owner域的控制状态。
7)B总线系统在DPRAM中写数据包第i个报文内容(i≤n,n为数据包的报文个数);
8)B总线系统在DPRAM的Data域中写入应答报文内容,将报头写在DPRAM的Status域、Length域、ReturnState域中,最后将Owner域写为A总线系统控制状态,B总线系统对A总线系统发出数据已经接收的应答中断;
9)A总线系统查询DPRAM中的Status域是否为Ready(完毕)状态。若Status域中的状态为Busy状态,则A总线系统继续发起数据软交换通信;若Status域中的状态为Ready状态,则跳转到10;
10)A总线系统结束数据软交换通信。
2.如权利要求1所述的以DPRAM做媒介实现数据软交换通信的控制方法,其特征在于:所述Owner Field在被发送或应答的报文的报头中,Owner Field有a、b两种控制状态,分别对应A总线系统和B总线系统对DPRAM读写的控制所有权。若Owner Field的状态为a,则A总线系统对DPRAM享有读写控制权,是由B总线系统控制写入;若Owner Field的状态为b,则B总线系统对DPRAM享有读写控制权,是由A总线系统控制写入。
3.如权利要求1所述的以DPRAM做媒介实现数据软交换通信的控制方法,其特征在于:所述Status Field,通过不同总线系统对该域中的值的读写进行控制的方法,实现了不同总线系统对DPRAM的多次读写状态控制,该读写状态控制表明了多报文发送的状态,该状态控制域在被发送或应答的报文的报头中,Status Field有Idle(空闲)、Busy(繁忙)和Ready(完毕)三种控制状态。
4.如权利要求3所述的以DPRAM做媒介实现数据软交换通信的控制方法,其特征在于:所述三种控制状态分别是:
a.Idle状态是A总线系统和B总线系统初始化后的状态,该控制域处于Idle状态时,A总线系统和B总线系统都可以发起数据软交换,但有发起方优先的原则,处于该状态下,A总线系统或B总线系统在对DPRAM进行读写前,要先将Owner域写为本方控制,在完成对DPRAM报文内容和除Owner Field以外的域进行读写后,才能在Owner Field将DPRAM的控制权交给对方;
b.Busy状态表明A总线系统或B总线系统正在进行多报文传送,多报文传送的数据包未传输交换完毕,还需要继续进行软交换,不能接收对方对DPRAM的写控制,即不能接收对方发起的通信数据包或应答数据包,只能接收未发送完数据包的总线系统继续发起的数据包;
c.Ready状态表明单报文的数据包和多报文的数据包已经传输交换完毕。可以接收下一个数据包或对方的通信数据包和应答数据包。
5.如权利要求1所述的以DPRAM做媒介实现数据软交换通信的控制方法,其特征在于:所述Length Field可通过对该域的读写进行控制的方法,不同的总线系统可以给发送的对方传递被传递报文的数据长度。该数据长度域在被发送或应答的报文的报头中;Length Field的长度单位可以是Bytes、Words和32bits的DWords,也可以将该域定义为需要进行软交换的数据包的长度。
6.如权利要求1所述的以DPRAM做媒介实现数据软交换通信的控制方法,其特征在于:所述NeedReply Field可发起数据软交换一方是否需要对方作出应答,回复本方发起的数据交换。
7.如权利要求1所述的以DPRAM做媒介实现数据软交换通信的控制方法,其特征在于:所述ReplyState Field可给报文发送方显示报文接收的状况,该应答状态域在应答的报文的报头中。
CN2005100308066A 2005-10-27 2005-10-27 一种以dpram做媒介实现数据软交换通信的控制方法 Active CN1758627B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2005100308066A CN1758627B (zh) 2005-10-27 2005-10-27 一种以dpram做媒介实现数据软交换通信的控制方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2005100308066A CN1758627B (zh) 2005-10-27 2005-10-27 一种以dpram做媒介实现数据软交换通信的控制方法

Publications (2)

Publication Number Publication Date
CN1758627A true CN1758627A (zh) 2006-04-12
CN1758627B CN1758627B (zh) 2010-07-28

Family

ID=36703820

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2005100308066A Active CN1758627B (zh) 2005-10-27 2005-10-27 一种以dpram做媒介实现数据软交换通信的控制方法

Country Status (1)

Country Link
CN (1) CN1758627B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101677277B (zh) * 2008-09-17 2011-07-20 许昌开普电器检测研究院 Modbus-rtu协议一致性测试方法

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1426203A (zh) * 2001-12-11 2003-06-25 深圳市中兴通讯股份有限公司上海第二研究所 数据包在不同总线间转发的装置及方法
CN100463437C (zh) * 2001-12-25 2009-02-18 中兴通讯股份有限公司 解决数据包在不同总线间转发的装置及其转发方法
KR100604543B1 (ko) * 2004-01-16 2006-07-24 주식회사 팬택 모드간 전환 회로를 포함하는 듀얼모드 단말기
CN100399740C (zh) * 2005-01-27 2008-07-02 浙江大学 一种控制器局域网总线物理中继器

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101677277B (zh) * 2008-09-17 2011-07-20 许昌开普电器检测研究院 Modbus-rtu协议一致性测试方法

Also Published As

Publication number Publication date
CN1758627B (zh) 2010-07-28

Similar Documents

Publication Publication Date Title
EP1775896B1 (en) Network on chip system employing an Advanced Extensible Interface (AXI) protocol
CN1685326B (zh) 总线连接系统
CN1069426C (zh) 信息处理系统
US7606933B2 (en) Shared memory and high performance communication using interconnect tunneling
US20050132089A1 (en) Directly connected low latency network and interface
CN1376281A (zh) 总线系统的分隔事务协议
US7484031B2 (en) Bus connection device
WO2012143953A2 (en) Optimized multi-root input output virtualization aware switch
CN1376280A (zh) 总线系统的事务调度
EP1688846B1 (en) Communication system, real time control apparatus, and information processing system
CN1335563A (zh) 总线系统和其数据传输方法
CN1758627A (zh) 一种以dpram做媒介实现数据软交换通信的控制方法
US20080162974A1 (en) Universal serial bus host controller
CN1088209C (zh) 带有主单元和从属单元的装置
CN1658176A (zh) 数据通信的方法及设备
US6917990B2 (en) Method and structure for read prefetch in a storage complex architecture
EP1999603B1 (en) Auxiliary writes over address channel
CN1818879A (zh) 一种基于ip网络的磁盘镜像方法
US8473966B2 (en) Iterative exchange communication
CN100341010C (zh) 通过总线进行数据读取的装置和方法
CN1311592A (zh) 一种全双工异步串行通信方法及其通信系统
CN100411380C (zh) 一种网络数据交换中同步与异步间的转换方法
CN1265300C (zh) 一种紧凑型外围部件互连总线系统中控制平面的实现方法
CN1119004C (zh) 一种使用双控制字传送消息的方法
CN1157913C (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
C14 Grant of patent or utility model
GR01 Patent grant
CP01 Change in the name or title of a patent holder

Address after: 201203 Zhangjiang High Tech Park, Shanghai, Zhang Dong Road, No. 1525

Patentee after: Shanghai microelectronics equipment (Group) Limited by Share Ltd

Address before: 201203 Zhangjiang High Tech Park, Shanghai, Zhang Dong Road, No. 1525

Patentee before: Shanghai Micro Electronics Equipment Co., Ltd.

CP01 Change in the name or title of a patent holder