CN103064817B - 一种简化两线式串行数据总线传输方法 - Google Patents

一种简化两线式串行数据总线传输方法 Download PDF

Info

Publication number
CN103064817B
CN103064817B CN201210562251.XA CN201210562251A CN103064817B CN 103064817 B CN103064817 B CN 103064817B CN 201210562251 A CN201210562251 A CN 201210562251A CN 103064817 B CN103064817 B CN 103064817B
Authority
CN
China
Prior art keywords
data
4bit
address
bus
write
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
CN201210562251.XA
Other languages
English (en)
Other versions
CN103064817A (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.)
Guilin University of Electronic Technology
Original Assignee
Guilin University of Electronic Technology
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 Guilin University of Electronic Technology filed Critical Guilin University of Electronic Technology
Priority to CN201210562251.XA priority Critical patent/CN103064817B/zh
Publication of CN103064817A publication Critical patent/CN103064817A/zh
Application granted granted Critical
Publication of CN103064817B publication Critical patent/CN103064817B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Information Transfer Systems (AREA)
  • Communication Control (AREA)

Abstract

本发明公开一种简化两线式串行数据总线传输方法,其主要包括传输启动阶段、读写操作模式设置阶段、从器件片选地址设置阶段、数据空间起始寻址地址设置阶段、数据传输长度设置阶段和数据传输阶段;本SSIC总线传输协议结构简单、使用灵活、可广泛应用数字系统可编程逻辑器件和数字器件设计中。SSIC总线传输协议可用来连接微处理器与对IO数量敏感的外围设备,以微处理器作为主控制器,将多个芯片连接到同一总线结构中,实现一主多从变长度高速数据传输。

Description

一种简化两线式串行数据总线传输方法
技术领域
本发明涉及总线传输领域,具体涉及一种简化两线式串行数据总线传输方法。
背景技术
I2C(Inter-Integrated Circuit)总线协议由Philips半导体公司(现更名为NXP)在上世纪八十年代初开发出来的,I2C串行数据总线由双向的数据线SDA和时钟线SCL组成。总线的运行(数据传输)由主机通常是微处理器控制。I2C总线数据传输过程一般为:开始-器件地址-ACK(应答)-子地址-ACK-数据-ACK-结束。I2C允许多个主器件工作在同一总线上,所有主器件均采用同一时钟进行传输,多个主器件可以通过数据仲裁决定总线使用权,避免数据破坏。对于数字器件功能模块构建,I2C总线的传输,总线仲裁功能和数据传输开始状态产生和数据传输结束后响应状态产生必然会带来更多的数字逻辑资源消耗,更不利于提高总线上数据传输效率。
SPI(Serial Peripheral Interface)串行数据总线传输协议基于四线制串行数据总线接口,为主/从结构,四线信号分别为串行时钟(SCLK)、主出从入(MOSI)、主入从出(MISO)和从选(SS)信号。主器件为时钟提供者,可发起读从器件或写从器件操作。这时主器件将与一个从器件进行对话。当总线上存在多个从器件时,要发起一次传输,主器件将把该从器件选择线拉低,然后分别通过MOSI和MISO线启动数据发送或接收。每个从器件需要一个单独的从选择信号。总信号数最终为n+3个,其中n是总线上从器件的数量。当多个从器件位于该总线上时,必然导致过多的信号线资源。
发明内容
本发明所要解决的技术问题是提供一种简化两线式串行数据总线传输方法,具有结构简单和使用灵活的特点。
为解决上述问题,本发明是通过以下方案实现的:
一种简化两线式串行数据总线传输方法,包括如下步骤:
①传输启动阶段:在进行数据传输之前,主控制器首先产生启动传输状态,通知该串行数据总线上的所有从器件即将开始一次新的数据传输过程,同时从器件也利用启动传输状态的电平信号进行自身的初始化;此时,串行数据总线的串行时钟信号线保持为高电平,串行双向数据信号线产生由高电平到低电平的跳变。
②读写操作模式设置阶段:在紧随启动传输状态之后该串行数据总线进入器件读写方向选择;主控制器输出至串行数据总线的第1Bit为读写选择位;当读写选择位为1时,由主控制器从被选定器件读出数据;读写选择位为0时,由主控制器向被选定器件写入数据。
③从器件片选地址设置阶段:完成读写方向选择后该串行数据总线进入器件硬件片选地址定位,从器件在接收到的从器件片选位数据中解析出从器件片选位与硬件设置地址匹配,匹配成功则激活,否则处于待机检测状态,保持输入输出高阻态,等待下一次总线传输过程;
主控制器输出至串行数据总线的读写选择位后的至少4Bit为从器件片选位;在读写选择位后的4bit为0000~1110时,从器件片选位为这4bit,并由这4Bit表示寻址范围为0~14;当读写选择位后的4bit为1111时,从器件片选位扩展为8Bit,并由这8Bit表示寻址范围为0~254;当读写选择位后的8Bit为11111111时,从器件片选位扩展为12Bit,并由这12Bit表示寻址范围为0~4094;更长的从器件片选位按此依次递增4Bit类推;理论上可以无限制扩展。
④数据空间起始寻址地址设置阶段:从器件在完成硬件地址匹配激活后,进入数据空间起始寻址地址设置阶段。本阶段用于主控制器对从器件设置读写数据空间的起始操作地址位置,即后续数据的读写操作从本次设置地址开始以字节为单位累加。
主控制器输出至串行数据总线的,从器件片选位后的至少4Bit为数据空间起始寻址位;在从器件片选位后的4bit为0000~1110时,数据空间起始寻址位为这4bit,并由这4Bit表示寻址范围为0~14;当从器件片选位后的4bit为1111时,数据空间起始寻址位扩展为8Bit,并由这8Bit表示寻址范围为0~254;当从器件片选位后的8Bit为11111111时,数据空间起始寻址位扩展为12Bit,并由这12Bit表示寻址范围为0~4094;更长的数据空间起始寻址位按此依次递增4Bit类推;理论上可以无限制扩展。
⑤数据传输长度设置阶段:在完成数据空间起始地址寻址地址设置之后,进入数据传输长度设置阶段。本阶段用于主控制器告知从器件后续读写操作需要传输的字节长度。
主控制器输出至串行数据总线的,数据空间起始寻址位后的至少4Bit为数据传输长度指示位;在数据空间起始寻址位后的4Bit为0001~1111时,数据传输长度指示位为这4Bit,并由这4Bit表示后续数据传输长度范围为1~15;当数据空间起始寻址位后的4Bit为0000时,数据传输长度指示位扩展为8Bit,并由后续扩展的8Bit表示后续数据传输长度范围为1~255;当数据空间起始寻址位后的8Bit为00000000时,数据传输长度指示位扩展为12Bit,并由这12Bit表示后续数据传输长度范围为1~4094;更长的数据传输长度指示位依此递增4Bit类推;理论上可以无限制扩展。
⑥数据传输阶段:在完成读写方向选择、器件硬件片选地址定位、数据空间起始寻址和传输数据长度设置之后,该串行数据总线进入数据传输模式;此时,从器件根据对内部寄存器地址空间进行定位读取或写入传输数据内容,根据相应从器件寻址范围不同表示寄存器地址字节的长度作相应变化;在向从器件写入或读出设置模式中设定的数据长度后,从器件和主器件均结束传输,后续数据和时钟均做无效处理。
与现有技术相比,本发明提出了一种全新的两线式串行数据总线传输协议,即简化两线式串行数据(SSIC)总线传输协议。该SSIC总线传输协议结构简单、使用灵活、可广泛应用数字系统可编程逻辑器件和数字器件设计中。SSIC总线传输协议可用来连接微处理器与对IO数量敏感的外围设备,以微处理器作为主控制器,将多个芯片连接到同一总线结构中,实现一主多从变长度高速数据传输。
附图说明
图1为SSIC总线启动传输时序示意图。
图2a)为SSIC总线读入操作模式选择位时序示意图。
图2b)为SSIC总线读出操作模式选择位时序示意图。
图3a)为SSIC总线4bit从器件片选地址设置时序示意图。
图3b)为SSIC总线12bit从器件片选地址设置时序示意图。
图4a)为SSIC总线4bit数据空间起始寻址地址设置时序示意图。
图4b)为SSIC总线12bit数据空间起始寻址地址设置时序示意图。
图5a)为SSIC总线4bit数据传输长度设置时序示意图。
图5b)为SSIC总线12bit数据传输长度设置时序示意图。
图6a)为SSIC总线4bit数据传输时序示意图(从指定从器件读出数据)。
图6b)为SSIC总线12bit数据传输时序示意图(向指定从器件写入数据)。
具体实施方式
一种简化两线式串行数据总线由两根信号线组成,即串行时钟信号线SCK和串行双向数据信号线SDA。SCK和SDA信号线由可实现三态(高电平、低电平、高阻态)逻辑门组成,从而可实现多器件线与逻辑,兼容不同的逻辑电平。串行时钟信号线SCK由主控制器产生,相对于主控制器来说为单向输出接口。串行双向数据信号线SDA为双向总线。
上述结构的串行数据总线所实现的一种简化两线式串行数据总线传输方法,包括如下步骤:
①启动传输:在进行数据传输之前,主控制器首先产生启动传输状态,通知该串行数据总线上的所有从器件即将开始一次新的数据传输过程,同时从器件也利用启动传输状态的电平信号进行自身的初始化。此时,串行数据总线的串行时钟信号线保持为高电平,串行双向数据信号线产生由高电平到低电平的跳变。除了启动传输状态之外,串行时钟信号线SCK保持高电平期间,SDA必须保持稳定不变,否则会导致总线数据传输过程的错误操作。启动传输时序定义如图1所示。
②读写操作模式设置阶段:在紧随启动传输状态之后该串行数据总线进入器件读写方向选择;主控制器输出至串行数据总线的第1Bit为读写选择位;当读写选择位为1时,由主控制器从被选定器件读出数据;读写选择位为0时,由主控制器向被选定器件写入数据。读入操作时序如图2a)所示,读入操作时序如图2b)所示。
③从器件片选地址阶段:从器件在接收到的地址定位字节数据中解析出从器件片选位与硬件设置地址匹配,匹配成功则激活,否则处于待机检测状态,保持输入输出高阻态,等待下一次总线传输启动过程。
主控制器输出至串行数据总线的读写选择位后的至少4Bit为从器件片选位。对于串行数据总线应用,从器件片选地址位长度可根据总线上所接入的从器件数目作地址扩展。在读写选择位后的4bit为0000~1110时,从器件片选位为这4bit,并由这4Bit表示寻址范围为0~14。当读写选择位后的4bit为1111时,从器件片选位扩展为8Bit,并由这8Bit表示寻址范围为0~254(1111CADD7~CADD0)。当读写选择位后的8Bit为11111111时,从器件片选位扩展为12Bit,并由这12Bit表示寻址范围为0~4094(11111111CADD11~CADD0)。更长的从器件片选位按此依次递增4Bit类推。理论上可以无限制扩展。操作时序如图3a)和b)所示。
④数据空间起始寻址地址设置阶段:从器件在完成硬件地址匹配激活后,进入数据空间起始寻址地址设置阶段。本阶段用于主控制器对从器件设置读写数据空间的其实操作地址位置,即后续数据的续写操作从本设置地址开始以字节为单位逐渐累加。
主控制器输出至串行数据总线的,从器件片选位后的至少4Bit为数据空间起始寻址位;在从器件片选位后的4bit为0000~1110时,数据空间起始寻址位为这4bit,并由这4Bit表示寻址范围为0~14;当从器件片选位后的4bit为1111时,数据空间起始寻址位扩展为8Bit,并由这8Bit表示寻址范围为0~254(1111DADD7~DADD0);当从器件片选位后的8Bit为11111111时,数据空间起始寻址位扩展为12Bit,并由这12Bit表示寻址范围为0~4094(11111111DADD11~DADD0);更长的数据空间起始寻址位按此依次递增4Bit类推;理论上可以无限制扩展。操作时序如图4a)和b)所示。
⑤数据传输长度设置阶段:在完成数据空间起始地址寻址地址设置之后,进入数据传输长度设置阶段。本阶段用于主控制器告知从器件后续读写操作需要传输的字节长度。
主控制器输出至串行数据总线的,数据空间起始寻址位后的至少4Bit为数据传输长度指示位;在数据空间起始寻址位后的4Bit为0001~1111时,数据传输长度指示位为这4Bit,并由这4Bit表示后续数据传输长度范围为1~15;当数据空间起始寻址位后的4Bit为0000时,数据传输长度指示位扩展为8Bit,并由后续扩展的8Bit表示后续数据传输长度范围为1~255(0000DLEN7~DLEN0);当数据空间起始寻址位后的8Bit为00000000时,数据传输长度指示位扩展为12Bit,并由这12Bit表示后续数据传输长度范围为1~4094(00000000DLEN11~DLEN0);更长的数据传输长度指示位依此递增4Bit类推;理论上可以无限制扩展。操作时序如图5a)和b)所示。
⑥数据传输阶段:在完成读写方向选择、器件硬件片选地址定位、数据空间起始寻址和传输数据长度设置之后,该串行数据总线进入数据传输模式;此时,从器件根据对内部寄存器地址空间进行定位读取或写入传输数据内容,根据相应从器件寻址范围不同表示寄存器地址字节的长度作相应变化;在向从器件写入或读出设置模式中设定的数据长度后,从器件和主器件均结束传输,后续数据和时钟均做无效处理。数据传输操作时序如图6a)和b)所示。

Claims (1)

1.一种简化两线式串行数据总线传输方法,其特征是包括如下步骤:
①传输启动阶段:在进行数据传输之前,主控制器首先产生启动传输状态,通知该串行数据总线上的所有从器件即将开始一次新的数据传输过程,同时从器件也利用启动传输状态的电平信号进行自身的初始化;此时,串行数据总线的串行时钟信号线保持为高电平,串行双向数据信号线产生由高电平到低电平的跳变;
②读写操作模式设置阶段:在紧随启动传输状态之后该串行数据总线进入器件读写方向选择;主控制器输出至串行数据总线的第1Bit为读写选择位;当读写选择位为1时,由主控制器从被选定器件读出数据;读写选择位为0时,由主控制器向被选定器件写入数据;
③从器件片选地址设置阶段:完成读写方向选择后该串行数据总线进入器件硬件片选地址定位,从器件在接收到的从器件片选位数据中解析出从器件片选位与硬件设置地址匹配,匹配成功则激活,否则处于待机检测状态,保持输入输出高阻态,等待下一次总线传输过程;
主控制器输出至串行数据总线的读写选择位后的至少4Bit为从器件片选位;在读写选择位后的4bit为0000~1110时,从器件片选位为这4bit,并由这4Bit表示寻址范围为0~14;当读写选择位后的4bit为1111时,从器件片选位扩展为8Bit,并由这8Bit表示寻址范围为0~254;当读写选择位后的8Bit为11111111时,从器件片选位扩展为12Bit,并由这12Bit表示寻址范围为0~4094;
④数据空间起始寻址地址设置阶段:从器件在完成硬件地址匹配激活后,进入数据空间起始寻址地址设置阶段;本阶段用于主控制器对从器件设置读写数据空间的起始操作地址位置,即后续数据的读写操作从本次设置地址开始以字节为单位累加;
主控制器输出至串行数据总线的,从器件片选位后的至少4Bit为数据空间起始寻址位;在从器件片选位后的4bit为0000~1110时,数据空间起始寻址位为这4bit,并由这4Bit表示寻址范围为0~14;当从器件片选位后的4bit为1111时,数据空间起始寻址位扩展为8Bit,并由这8Bit表示寻址范围为0~254;当从器件片选位后的8Bit为11111111时,数据空间起始寻址位扩展为12Bit,并由这12Bit表示寻址范围为0~4094;
⑤数据传输长度设置阶段:在完成数据空间起始地址寻址地址设置之后,进入数据传输长度设置阶段;本阶段用于主控制器告知从器件后续读写操作需要传输的字节长度;
主控制器输出至串行数据总线的,数据空间起始寻址位后的至少4Bit为数据传输长度指示位;在数据空间起始寻址位后的4Bit为0001~1111时,数据传输长度指示位为这4Bit,并由这4Bit表示后续数据传输长度范围为1~15;当数据空间起始寻址位后的4Bit为0000时,数据传输长度指示位扩展为8Bit,并由后续扩展的8Bit表示后续数据传输长度范围为1~255;当数据空间起始寻址位后的8Bit为00000000时,数据传输长度指示位扩展为12Bit,并由这12Bit表示后续数据传输长度范围为1~4094;
⑥数据传输阶段:在完成读写方向选择、器件硬件片选地址定位、数据空间起始寻址和传输数据长度设置之后,该串行数据总线进入数据传输模式;此时,从器件根据对内部寄存器地址空间进行定位读取或写入传输数据内容,根据相应从器件寻址范围不同表示寄存器地址字节的长度作相应变化;在向从器件写入或读出设置模式中设定的数据长度后,从器件和主器件均结束传输,后续数据和时钟均做无效处理。
CN201210562251.XA 2012-12-21 2012-12-21 一种简化两线式串行数据总线传输方法 Expired - Fee Related CN103064817B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210562251.XA CN103064817B (zh) 2012-12-21 2012-12-21 一种简化两线式串行数据总线传输方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210562251.XA CN103064817B (zh) 2012-12-21 2012-12-21 一种简化两线式串行数据总线传输方法

Publications (2)

Publication Number Publication Date
CN103064817A CN103064817A (zh) 2013-04-24
CN103064817B true CN103064817B (zh) 2015-04-15

Family

ID=48107448

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210562251.XA Expired - Fee Related CN103064817B (zh) 2012-12-21 2012-12-21 一种简化两线式串行数据总线传输方法

Country Status (1)

Country Link
CN (1) CN103064817B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9153533B2 (en) * 2013-03-13 2015-10-06 Invensas Corporation Microelectronic elements with master/slave configurability
US9804942B2 (en) 2014-06-10 2017-10-31 Analog Devices, Inc. Safety node in interconnect data buses
CN109474707B (zh) * 2019-01-16 2021-02-02 浪潮集团有限公司 基于串口协议的二层协议设计及数据传输方法及系统
CN110515735A (zh) * 2019-08-29 2019-11-29 哈尔滨理工大学 一种基于改进q学习算法的多目标云资源调度方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2000016589A1 (en) * 1998-09-17 2000-03-23 Sonic Innovations, Inc. Two line variable word length serial interface
CN1783050A (zh) * 2004-12-04 2006-06-07 鸿富锦精密工业(深圳)有限公司 动态配置i2c地址的系统及方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8291126B2 (en) * 2010-03-23 2012-10-16 Spansion Llc Variable read latency on a serial memory bus

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2000016589A1 (en) * 1998-09-17 2000-03-23 Sonic Innovations, Inc. Two line variable word length serial interface
CN1783050A (zh) * 2004-12-04 2006-06-07 鸿富锦精密工业(深圳)有限公司 动态配置i2c地址的系统及方法

Also Published As

Publication number Publication date
CN103064817A (zh) 2013-04-24

Similar Documents

Publication Publication Date Title
CN102023954B (zh) 具有多路i2c总线的装置、处理器、系统主板及工控计算机
EP1825382B1 (en) Low protocol, high speed serial transfer for intra-board or inter-board data communication
CN107066746B (zh) 基于i2c接口通过cpld来实现pca9555功能的方法
CN103064817B (zh) 一种简化两线式串行数据总线传输方法
CN109359073B (zh) 一种基于spi总线的设备间通信方法及装置
CN108268414B (zh) 基于spi模式的sd卡驱动器及其控制方法
CN211427190U (zh) 一种基于飞腾处理器2000+的服务器电路和主板
US20070088874A1 (en) Offload engine as processor peripheral
TW201822011A (zh) 使用i2c匯流排與主機連接的從機及其通信方法
CN116450552B (zh) 基于i2c总线异步批量读写寄存器的方法及系统
CN106201973B (zh) 一种单线串行通信接口的方法与系统
CN113722261A (zh) Spi扩展片选数目和增强读写响应时间灵活性的方法
CN112559410A (zh) 一种基于fpga的lio总线扩展uart外设系统及方法
CN103488600A (zh) 通用从机同步串行接口电路
CN117033279A (zh) 一种时序输入输出控制方法
JP2008521080A5 (zh)
JP2008521080A (ja) マルチメディア・カード・インターフェース方法、コンピュータ・プログラム及び装置
CN113961505B (zh) 一种高性能硬件加速和算法验证系统及方法
CN113824741A (zh) 一种iic设备的通信方法、装置、设备、系统及介质
CN112269754A (zh) 基于fpga的lpc总线emc扩展装置
CN102385563A (zh) 单总线的usb端口读写装置及方法
CN110765065A (zh) 片上系统
Anagha et al. Prototyping of dual master I 2 C bus controller
CN107608927B (zh) 一种支持全功能的lpc总线主机端口的设计方法
US8909831B2 (en) Logic device

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

Granted publication date: 20150415

Termination date: 20211221

CF01 Termination of patent right due to non-payment of annual fee