CN1317657C - 串行数据传输系统、串行数据传输方法及通信单元 - Google Patents

串行数据传输系统、串行数据传输方法及通信单元 Download PDF

Info

Publication number
CN1317657C
CN1317657C CNB2004100687299A CN200410068729A CN1317657C CN 1317657 C CN1317657 C CN 1317657C CN B2004100687299 A CNB2004100687299 A CN B2004100687299A CN 200410068729 A CN200410068729 A CN 200410068729A CN 1317657 C CN1317657 C CN 1317657C
Authority
CN
China
Prior art keywords
byte
frame
data
receiving
communication unit
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.)
Expired - Fee Related
Application number
CNB2004100687299A
Other languages
English (en)
Other versions
CN1609834A (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.)
Alpine Electronics Inc
Alpine Co Ltd
Original Assignee
Alpine Electronics Inc
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 Alpine Electronics Inc filed Critical Alpine Electronics Inc
Publication of CN1609834A publication Critical patent/CN1609834A/zh
Application granted granted Critical
Publication of CN1317657C publication Critical patent/CN1317657C/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4282Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
    • G06F13/4291Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus using a clocked protocol

Abstract

提供一种“数据通信方法”,当发送方判断为异常终止而接收方断定为正常终止时,提供让接收方也断定为异常终止。主单元(11)在帧的适当位置插入帧的字节长度,并且同时在最后字节中插入错误检查符号,对最后的字节发出后是否出现接收失败进行监视,如果存在接收失败,就发送空字节,随后发出停止条件。子单元(12)计算接收的字节数,对接收字节数和以帧规定的字节长度进行比较,当接收的字节数较大时,则判定为接收失败。

Description

串行数据传输系统、串行数据传输方法及通信单元
技术领域
本发明涉及一种串行数据传输系统中的数据通信方法,例如涉及一种通过I2C总线从主单元(发送单元)向子单元(接收单元)发送串行数据的串行数据传输系统中的通信方法。
背景技术
在通过I2C总线进行串行数据发送的串行数据传输系统中,如图5所示,至少将两个单元1、2,用发送数据的串行数据线(SDA线)3和发送时钟信号的串行时钟线(SCL线)4连接起来。在单元1和单元2中,SD为数据发送端,RD为数据接收端;SC为时钟信号发送端,RC为时钟信号接收端。
作为发送方的主单元1,如图6所示,在帧的开头,使数据信号SDA和时钟信号SCL成为所规定的第一相位关系,通过总线3、4从数据发送端SD和时钟信号发送端SC传送开始条件S,另外,在帧的末尾处,使数据信号SDA和时钟信号SCL成为所规定的第二相位关系,来传送停止条件P,在这些开始条件和停止条件之间,与时钟同步来传送n字节的数据;
作为接收方的子单元2,通过数据接收端RD和时钟接收端SC检测出开始条件S,开始接收帧,每收到1个字节的数据就通过上述SDA线从数据发送端SD向主单元1发送确认应答(应答A),再通过停止条件P对帧的结束进行识别。
也就是说,主单元1向子单元2发送开始条件S,接着,从第1位到第7位发送子单元地址、向第8位发送读/写控制信号R/W,之后,如果接收到由子单元2送回的第9位的应答A,之后,发送n个字节的传输数据,每发送一个字节的数据就可以收到由子单元2发回的应答A,在数据发送结束时,发送停止条件p。
图7是通过I2C总线进行通信时,主单元1、子单元2分别向SDA线3、SCL线4输出的信号电平(“L”:Low、“H”:High)的说明图。如图7(b)所示,由主单元1向子单元2传输数据时,向SDA线3、SCL线4输出“H”;如图7(a)所示,向SDA线3、SCL线4输出与数据和时钟信号相对应的“H”、“L”。另外,一方单元向这些数据线输出“H”时,如果另一端的单元输出的是“L”,则这些数据线就变成为“L”。
也就是说,主单元1在发送开始条件时,使SCL线4为“H”,使SDA线由“H”变为“L”;而发送停止条件时,使SCL线为“H”,使SDA线从“H”变为“L”;并且,由于主单元1收到应答A,在发送字节后的第9位上向SDA线输出“H”。另一方面,子单元2保持向SDA线3、SCL线4输出“H”,同时通过SDA线3接收主单元1发送的数据,由于在收到一个字节之后的第9位上发送了应答A,所以向SDA线3输出“L”(NACK的情况下为“H”)。另外,子单元2检测出第9时钟下降,从“L”又回到“H”,在检测出停止条件后就完成了一个帧的数据接收。
但是由于噪音混入和波形变缓,有时发送方和接收方之间在时钟上出现偏差,如果发送方和接收方发生位的偏差,尽管发送方在通信的帧的最后字节上检测出通信异常,有时接收方也能正常地终止接收处理。
图8是对当发送方判断为异常终止时,接收方却判断为正常终止时的情况的说明图。在SCL时钟线中,如果混入图(c)所示的噪音成分N,将第6位的时钟看成是两个时钟,增加一个时钟,则子单元2就将第7比特看成是第8比特,之后,如果正常接收了帧,则向SDA线3输出ACK(=“L”)。于是,之后子单元2把正式的第8位看成是第9位,检测出其下降,向SDA线3输出“H”;
另一方面,主单元1在规定的第9位(A位)上,将SDA线3上的“H”作为NACK接收,通知后、发送停止条件;由于子单元2在向SDA线3,SCL线4输出“H”,所以在SDA线3,SCL线4上如虚线51所示会出现停止条件,子单元2检测出该停止条件,正常终止。
如上,尽管发送方已经判断是异常终止,但接收方却正常地终止接收,这样便出现以下等问题:
系统运行上难以调节。
有可能不按照指令允许。
可能会出现错误运行。
例如,是异常终止时,虽然发送方再次发送,但会出现如下问题:当电源开启指令是异常终止时,发送方再次向接收方发送。这样,电源开启指令就被两次发送到接收方,而接收方收到最初的开启指令时打开电源,收到第二个开启指令就会关闭电源,从而导致接收方完全没有按照发送方的指令运行,为此当发送方断定是异常终止的时候,接收方也有必要判断为异常终止。
有一种现有技术,是用来防止I2C总线通信中的错误运行(如专利文献1之图1),当SDA线为“L”时,主单元(微型计算机)在子单元(持久性存储器)读/写数据时便出现错误运行,通过主单元确认子单元打开总线后进行读取,从而防止错误运行的发生;
另外,作为现有技术,有一种可以避免连接主单元和子单元之间的总线冲突的数据传输方法(例如专利文献2之图1)。该技术是这样的:在主单元发送时,监视子单元是否接收到从主单元发出的预先设定好的字节数的数据,当接收这些数据时,则打开数据线并由子单元向主单元发送数据。
专利文献1特开平9-265436号公报
专利文献2特开2001-290764号公报
但是,无论哪种现有技术都不能解决当发送方判断为异常终止时,接收方判断为正常终止这一问题。
发明内容
本发明的目的是:当发送方判定为异常终止,而接收方判定为正常终止时,使接收方也判定为异常终止,解决由于判断的不同所产生的问题。
本发明涉及一种串行数据传输系统中的数据通信方法,利用进行数据传输的数据线和进行时钟信号传输的时钟线,将至少两个通信单元之间连接,发送方通信单元与时钟同步发送n字节的数据,并且在帧的末尾处使数据信号和时钟信号成为规定的相位关系,来发送停止条件;接收方通信单元每收到1个字节的数据,就通过上述数据线向上述发送方通信单元发送确认应答,根据停止条件识别帧的结束。
在上述数据通信方法中,主单元11发送帧时,在帧的适当位置插入帧的字节长度,在最后的字节发出后对是否接收失败进行监视,如果收到接收失败,就发送空字节,随后发出停止条件;另一方面,子单元收到帧时,对接收字节数进行计数,对接收字节数和帧确定的字节长度进行比较,当接收字节数较大时,则判定为接收失败。
如上,通过本发明,即使是在发送方判断为异常终止,而接收方判断为正常终止的情况下,可以通过向接收方发送空字节,自动使接收方判断为异常终止,因此解决由于对终止状态的判断上的差异引起的问题。
附图说明
图1实施本发明的数据传送系统的结构图。
图2本发明的帧结构说明图。
图3主单元中的控制装置的处理流程。
图4子单元中的控制装置的处理流程。
图5通过I2C总线发送串行数据的串行数据传送系统的概念图。
图6表示帧的结构的例子。
图7通过I2C总线进行通信时,主单元,子单元向SDA线,SCL线输出的信号电平(“L”:Low、“H”:High)的说明图。
图8发送方判断为异常终止,而接收方判断为正常终止的情况说明图。
具体实施方式
图1是实施本发明的数据传送系统的结构图,是通过I2C总线在通信单元11、12之间进行通信的。
SDA线(数据线)13,SCL线(时钟线)14通过电阻RD,RC连接在电源线15上。通信单元11、12具有相同的结构,具有数据驱动器/数据接收器51,时钟驱动器和时钟接收器52以及控制装置53。数据驱动器/数据接收器51与SDA线(数据线)13相连接,具有将该SDA线13驱动为“H”、“L”的N沟道型的MOS晶体管(MOS晶体管)61以及读取该SDA线13的电平(“H”、“L”)的缓冲放大器62。
时钟驱动器和时钟接收器52连接在SCL线(时钟线)14上,具有将该SCL线(时钟线)14驱动为“H”、“L”的MOS晶体管71和读取该SDA线13电平(“H”、“L”)的缓冲放大器72。
假设通信单元11是发送单元(主单元),通信单元12是接收单元(子单元),子单元12的控制装置53将NMOS晶体管61,71同时截止,并控制SDA线13,SCL线14使它们中不出现“L”。另外,在子单元12每接收到一个字节就向主单元11发回应答A的时刻(第9位的时刻),主单元11的控制装置53将NMOS晶体管61截止,并进行控制,使控制SDA线13中不出现“L”。
主单元11的控制装置53,在发送数据时,分别根据数据及时钟将NMOS晶体管61、72导通/截止,对应该数据和时钟使SDA线13,SCL线14中出现“H”、“L”。子单元12的控制装置53,通过缓冲放大器62分别读取这些SDA线13,SCL线14中的“H”、“L”电平(数据和时钟),另外,子单元12的控制装置53在每接收到1个字节就在第9位的时刻,使“H”、“L”(应答A)出现在SDA线13中。主单元11的控制装置53,通过缓冲放大器62对出现在SDA线13中的该“H”、“L”电平(应答A或ACK/NACK)进行读取。
图2为本发明的帧结构图,在开头设置开始条件S,在最后设置停止条件P,并且在帧的适当位置设置确定帧的字节长Bs的字节长度,在最后字节中配置错误检出字节(比如CRC检查字节)。
实施例1
如图8所示,当由于产生时钟噪音N,第六个时钟变为两个,增加了一个时,即便主单元已经识别为异常终止,但子单元正常终止。在本实施例中,像这样当主单元判断为异常终止,而子单元识别为正常终止的情况下,由主单元向子单元发送空(dummy)字节,使子单元中出现字节长度不一,从而自动使子单元异常终止。
图3是主单元11的控制装置53的控制流程,图4是子单元12的控制装置53的控制流程。
主单元11的控制装置检查是否发送了最后字节(步骤101),如果没有发送则进行其它处理。但是如果发送了最后字节,在最后字节发送后的第9位上检查是否查出有NACK(=“H”)(步骤102)。如果查出ACK,则识别为正常终止(步骤103)并结束处理。
但是,如果检测出NACK,子单元12也有可能识别为正常终止,所以在发送停止条件之前为空字节(步骤104)。然后,发送停止条件后,异常终止(步骤105),然后再次发送帧(步骤106)。
另一方面,子单元12的控制装置每收到从主单元11发出的构成帧的字节(步骤201),就判断它是否是长度字节(步骤202),如果是长度字节则保存帧字节长度Bs(步骤203),接着,将接收字节数加1(B+1→B、步骤204),检查B是否等于Bs(步骤205),如果B<Bs,那么返回步骤201,接收下一个帧并重复之后的处理。
在步骤205,如果B=Bs,换言之,如果接收到作为最后字节的错误检查字节,就进行错误检查,在发送错误检查结果的同时对其进行保留(步骤206),随后,对是否从主单元件11又收到字节(空字节)进行监视(步骤207)。如果收到,则将接收字节数B加上1(B+1→B、步骤208),结果,由于接收字节数B大于等于被通知的帧的字节长度Bs(B>Bs),所以判断为异常,而进行异常终止(步骤209)。
但是,如果没有接收空字节,根据在步骤206的错误检查过程中保留的错误检查结果(实际上为正常),进行正常终止(步骤210)。
如上所述,根据本发明,即便是在发送方识别为异常终止,而接收方识别为正常终止的情况下,也可以让接收方自动判断为异常终止,所以根据对结束状态识别的差异,就可以解决发生的问题。

Claims (7)

1.一种串行数据传输系统,包括:
数据线,进行数据传输;
时钟线,进行时钟信号传输;
发送方通信单元,与时钟同步地发送n字节的数据,并且在帧的末尾处使数据信号和时钟信号形成规定的相位关系来发送停止条件;
接收方通信单元,每收到1个字节的数据时,通过上述数据线向发送方单元发送确认应答,根据停止条件识别帧的结束;
发送方通信单元发送帧时,在帧的适当位置插入帧的字节长度,在最后的字节发出后对是否接收到接收失败进行监视,在收到接收失败的情况下,发送空字节,随后发出停止条件;
接收方通信单元接收帧时,对接收字节数进行计数,对接收字节数和帧确定的字节长度进行比较,当接收字节数较大时,判定为接收失败。
2.根据权利要求1中所记载的串行数据传输系统,其特征是,在发出最后的字节后接收到接收失败的情况下,上述发送方通信单元发送空字节,然后发出停止条件,之后再次发送传送失败了的帧。
3.根据权利要求1中所记载的串行数据传输系统,其特征是:上述串行数据传输系统是通过I2C总线进行通信的系统。
4.一种串行数据传输系统中的数据通信方法,该串行数据传输系统,利用进行数据传输的数据线和进行时钟信号传输的时钟线,将至少两个通信单元之间连接,发送方通信单元与时钟同步发送n字节的数据,并且在帧的末尾处使数据信号和时钟信号成为规定的相位关系,来发送停止条件;接收方通信单元每收到1个字节的数据,就通过上述数据线向上述发送方通信单元发送确认应答,根据停止条件识别帧的结束,所述数据通信方法的特征是:
上述发送方通信单元发送帧时,在帧的适当位置插入帧的字节长度,在最后的字节发出后对是否接收到接收失败进行监视,在收到接收失败的情况下,就发送空字节,随后发出停止条件;
上述接收方通信单元接收帧时,对接收字节数进行计数,对接收字节数和帧确定的字节长度进行比较,当接收字节数较大时,判定为接收失败。
5.一种串行数据传输系统中的通信单元,上述串行数据传输系统包括:数据线,进行数据传输;时钟线,进行时钟信号传输;通信单元,在数据传输时,与时钟同步地发送n字节的数据,并且在帧的末尾处使数据信号和时钟信号形成规定的相位关系,来发送停止条件,在数据接收时,每收到1个字节的数据时,通过上述数据线发送确认应答,根据停止条件识别帧的结束;
上述通信单元在发送帧时,在帧的适当位置插入帧的字节长度,在最后的字节发出后对是否接收到接收失败进行监视,在收到接收失败的情况下,就发送空字节,随后发出停止条件;
在接收帧时,对接收字节数进行计数,对接收字节数和帧确定的字节长度进行比较,当接收字节数较大时,判定为接收失败。
6.根据权利要求5中所记载的通信单元,其特征是:上述通信单元在发送帧时,在最后的字节发出后接收到接收失败的情况下,就发送空字节,然后发出停止条件,随后再次发送传送失败了的帧。
7.根据权利要求5中所记载的通信单元,其特征是:上述通信单元通过I2C总线进行通信。
CNB2004100687299A 2003-09-05 2004-09-06 串行数据传输系统、串行数据传输方法及通信单元 Expired - Fee Related CN1317657C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2003313913 2003-09-05
JP2003313913A JP2005084791A (ja) 2003-09-05 2003-09-05 データ通信方法

Publications (2)

Publication Number Publication Date
CN1609834A CN1609834A (zh) 2005-04-27
CN1317657C true CN1317657C (zh) 2007-05-23

Family

ID=34414694

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2004100687299A Expired - Fee Related CN1317657C (zh) 2003-09-05 2004-09-06 串行数据传输系统、串行数据传输方法及通信单元

Country Status (3)

Country Link
US (1) US7133947B2 (zh)
JP (1) JP2005084791A (zh)
CN (1) CN1317657C (zh)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2006024011A2 (en) 2004-08-23 2006-03-02 Hewlett-Packard Development Company L.P. Method and apparatus for capturing and transmitting screen images
TWI330789B (en) * 2007-01-30 2010-09-21 Holtek Semiconductor Inc Two-wire seriel communication interface device and method using handshaking
US8793384B2 (en) * 2008-08-22 2014-07-29 Microsoft Corporation Recovery of disconnected channels over a reliable protocol
JP5217982B2 (ja) * 2008-12-04 2013-06-19 ソニー株式会社 情報処理装置および方法、並びにプログラム
CN102486765B (zh) * 2010-12-06 2014-04-16 中国航空工业集团公司第六三一研究所 一种可消除1553b协议误判的方法
US8667193B2 (en) 2011-04-29 2014-03-04 Qualcomm Incorporated Non-ported generic device (software managed generic device)
US9065674B2 (en) 2011-04-29 2015-06-23 Qualcomm Incorporated Multiple slimbus controllers for slimbus components
US9043634B2 (en) 2011-04-29 2015-05-26 Qualcomm Incorporated Methods, systems, apparatuses, and computer-readable media for waking a SLIMbus without toggle signal
WO2017123219A1 (en) * 2016-01-13 2017-07-20 Hewlett Packard Enterprise Development Lp Two-wire bus to communicate signals
JP6828271B2 (ja) * 2016-05-18 2021-02-10 ソニー株式会社 通信装置、通信方法、プログラム、および、通信システム
JP6903645B2 (ja) * 2016-05-18 2021-07-14 ソニーセミコンダクタソリューションズ株式会社 通信装置、通信方法、プログラム、および、通信システム
JP6971538B2 (ja) * 2016-05-18 2021-11-24 ソニーセミコンダクタソリューションズ株式会社 通信装置、通信方法、プログラム、および、通信システム
EP4162367A1 (en) * 2020-06-03 2023-04-12 Qualcomm Incorporated Providing acknowledgements for system power management interface
CN112735450B (zh) * 2020-12-30 2023-03-17 北京百瑞互联技术有限公司 基于语音通道传输数据的方法、装置、存储介质及设备

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20010099004A (ko) * 2001-08-07 2001-11-09 성낙철 원격지 컴퓨터의 제원관리 시스템 및 방법
CN1339238A (zh) * 1999-01-11 2002-03-06 福纳克有限公司 数字通信方法和数字通信系统
CN1349628A (zh) * 1999-03-31 2002-05-15 可比雅株式会社 同步串行通信方法和同步串行通信系统

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4123747A (en) * 1977-05-20 1978-10-31 International Business Machines Corporation Identity verification method and apparatus
JPS62204634A (ja) * 1986-03-05 1987-09-09 Hitachi Ltd 調歩同期式デ−タ伝送制御方式
US4747100A (en) * 1986-08-11 1988-05-24 Allen-Bradley Company, Inc. Token passing network utilizing active node table
TW234228B (zh) * 1992-05-28 1994-11-11 Motorola Inc
JPH09265436A (ja) 1996-03-27 1997-10-07 Victor Co Of Japan Ltd データ転送装置
US6728908B1 (en) 1999-11-18 2004-04-27 California Institute Of Technology I2C bus protocol controller with fault tolerance
JP2001290764A (ja) 2000-04-06 2001-10-19 Ricoh Co Ltd データ転送システム装置及びそのデータ転送方法
JP2003122707A (ja) * 2001-10-10 2003-04-25 Nec Corp I2cバスを備えた電子機器及びバス制御方法
US20030149756A1 (en) * 2002-02-06 2003-08-07 David Grieve Configuration management method and system

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1339238A (zh) * 1999-01-11 2002-03-06 福纳克有限公司 数字通信方法和数字通信系统
CN1349628A (zh) * 1999-03-31 2002-05-15 可比雅株式会社 同步串行通信方法和同步串行通信系统
KR20010099004A (ko) * 2001-08-07 2001-11-09 성낙철 원격지 컴퓨터의 제원관리 시스템 및 방법

Also Published As

Publication number Publication date
US20050080944A1 (en) 2005-04-14
JP2005084791A (ja) 2005-03-31
CN1609834A (zh) 2005-04-27
US7133947B2 (en) 2006-11-07

Similar Documents

Publication Publication Date Title
CN1317657C (zh) 串行数据传输系统、串行数据传输方法及通信单元
KR100439640B1 (ko) 옵션 기기의 제어 방법
US8880970B2 (en) Error detection method and a system including one or more memory devices
US7810013B2 (en) Memory device that reflects back error detection signals
CN1719363A (zh) 可编程逻辑控制器硬件扩展方法
EP0862296B1 (en) Data communication system and electronic control unit used therein
CN1573724A (zh) 卡识别兼容性
EP3458962B1 (en) Communication device and communication system
CN1737787A (zh) 总线耦合安全相关过程的方法和设备
CN1697358A (zh) 安全传输数据的系统和方法
TWI769155B (zh) 通訊裝置、通訊方法、程式以及通訊系統
CN1163048C (zh) 串行通信设备和执行串行通信的方法
JP2000513516A (ja) 多重通信インターフェース回路及び方法
CN1311592A (zh) 一种全双工异步串行通信方法及其通信系统
US5596588A (en) Multiplex transmission method
CN1622484A (zh) 信息传送系统及信息传送方法
JPH02100538A (ja) ローカルエリアネットワークのデータ通信方法
US20040228329A1 (en) Method and apparatus for monitoring safe transmission of data packets
JP2005084792A (ja) データ通信ユニット
CN200959602Y (zh) 绞线式列车总线协议控制器
CN2627744Y (zh) 一种数据传输接口与串列总线接口装置
JP3401361B2 (ja) 多重伝送システム
JP3401360B2 (ja) 多重伝送装置
KR20210059537A (ko) 커넥터를 이용하여 통신 id를 설정하는 방법 및 그 커넥터
CN115499104A (zh) 一种芯片die间的通信方法

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
C17 Cessation of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20070523

Termination date: 20120906