CN109643298A - 用于同步链路的三倍数据率技术 - Google Patents
用于同步链路的三倍数据率技术 Download PDFInfo
- Publication number
- CN109643298A CN109643298A CN201780046871.9A CN201780046871A CN109643298A CN 109643298 A CN109643298 A CN 109643298A CN 201780046871 A CN201780046871 A CN 201780046871A CN 109643298 A CN109643298 A CN 109643298A
- Authority
- CN
- China
- Prior art keywords
- data
- pulse
- clock signal
- signal
- clock
- 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
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/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
- G06F13/4291—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus using a clocked protocol
-
- 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/14—Handling requests for interconnection or transfer
- G06F13/36—Handling requests for interconnection or transfer for access to common bus or bus system
- G06F13/362—Handling requests for interconnection or transfer for access to common bus or bus system with centralised access control
- G06F13/364—Handling requests for interconnection or transfer for access to common bus or bus system with centralised access control using independent requests or grants, e.g. using separated request and grant lines
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L25/00—Baseband systems
- H04L25/38—Synchronous or start-stop systems, e.g. for Baudot code
- H04L25/40—Transmitting circuits; Receiving circuits
- H04L25/49—Transmitting circuits; Receiving circuits using code conversion at the transmitter; using predistortion; using insertion of idle bits for obtaining a desired frequency spectrum; using three or more amplitude levels ; Baseband coding techniques specific to data transmission systems
- H04L25/4902—Pulse width modulation; Pulse position modulation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L7/00—Arrangements for synchronising receiver with transmitter
- H04L7/0008—Synchronisation information channels, e.g. clock distribution lines
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L7/00—Arrangements for synchronising receiver with transmitter
- H04L7/04—Speed or phase control by synchronisation signals
- H04L7/041—Speed or phase control by synchronisation signals using special codes as synchronising signal
- H04L7/044—Speed or phase control by synchronisation signals using special codes as synchronising signal using a single bit, e.g. start stop bit
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L7/00—Arrangements for synchronising receiver with transmitter
- H04L7/02—Speed or phase control by the received code signals, the signals containing no special synchronisation information
- H04L7/033—Speed or phase control by the received code signals, the signals containing no special synchronisation information using the transitions of the received signal to control the phase of the synchronising-signal-generating means, e.g. using a phase-locked loop
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Spectroscopy & Molecular Physics (AREA)
- Information Transfer Systems (AREA)
- Dc Digital Transmission (AREA)
- Synchronisation In Digital Transmission Systems (AREA)
Abstract
描述了用于在同步串行总线上传送附加信息的***、方法和装置。在耦合至串行总线的传送方设备处执行的方法包括在要于多导线串行总线的第一导线上传送的数据信号中提供第一数据,在要于多导线串行总线的第二导线上传送的时钟信号中提供一系列脉冲,其中每个脉冲具有上升沿和下降沿,每个边沿与第一数据的不同比特相对齐。该方法可包括通过基于时钟信号中第二数据的一个或多个比特的值来控制一系列脉冲中的每个脉冲的历时来对第二数据进行编码,以及在串行总线上传送数据信号和时钟信号。
Description
相关申请的交叉引用
本申请要求于2016年8月2日向美国专利商标局提交的非临时申请No.15/226,113的优先权和权益,其全部内容通过援引纳入于此。
技术领域
本公开一般涉及处理器与***设备之间的接口,并且尤其涉及改进同步串行数据链路的数据吞吐量。
背景
移动通信设备可包括各种各样的组件,包括电路板、集成电路(IC)设备和/或片上***(SoC)设备。各组件可包括通过串行总线进行通信的处理电路、用户接口组件、存储和其他***组件。串行总线可同步地操作。在一个示例中,串行总线可包括承载时钟信号和数据信号的两条导线,其中时钟信号控制在数据信号中传送的数据比特的定时。可根据定义耦合至串行总线的设备之间的主从关系的通信协议来操作串行总线,其中例如主设备提供时钟信号并控制串行总线上的传输。多个主设备可耦合至串行总线,并且可争用对串行总线的控制。此类***和装置中的串行总线可采用协议的组合(诸如,从集成电路间(I2C)协议导出的I3C协议)。
在一些***和装置中,移动通信设备(诸如,蜂窝电话)可采用多个设备(诸如,相机、显示器和对通信等待时间敏感的各种通信接口),其中存在对所减少的等待时间的持续需求。进而,等待时间是要求在2导线同步链路上增加数据吞吐量的关键驱动。相应地,存在对增加在串行总线上的可用带宽的持续需求。
概述
本公开的某些方面涉及通过调制在同步数据通信链路上传送的时钟信号来启用附加数据的通信的***、装置、方法和技术。
在本公开的各个方面,在耦合至串行总线的接收方设备处执行的方法包括从接收自多导线串行总线的第一导线的时钟信号中的多个脉冲生成多个采样边缘,其中多个脉冲中的每个脉冲的历时表示附加数据的一个或多个比特的值。该方法可包括使用多个采样边缘中的每个边缘从接收自多导线串行总线的第二导线的数据信号捕获数据比特,以及对来自时钟信号的附加数据进行解码。
在一个示例中,多个脉冲中的每个脉冲的历时表示附加数据的一个比特的值。在另一示例中,多个脉冲中的每个脉冲的历时表示第二数据的两个比特的值。
在一方面,该方法包括生成与时钟信号和数据信号同步的接收时钟,以及使用该接收时钟从数据信号捕获数据比特。从数据信号捕获数据比特可包括在接收时钟的每循环捕获一个数据比特。从数据信号捕获数据比特可包括在接收时钟的每循环捕获两个数据比特。可在从数据信号捕获数据比特之前从数据信号接收起始比特,并且在接收起始比特的同时可使用在时钟信号中收到的一个或多个脉冲来同步接收时钟。一个或多个脉冲中的每一者可具有大约时钟信号周期的一半的历时。在接收起始比特的同时,时钟信号可具有大约50%的占空比。
在一方面,时钟信号中的每个脉冲的中心可与数据信号中的连续比特之间的转变相对齐。
在一个示例中,在根据I3C协议操作串行总线的同时从时钟信号对附加数据进行解码。在另一示例中,从根据与虚拟图形接口(VGI)或基于通用异步接收机/发射机(UART)技术的接口相关联的协议传送的时钟信号对附加数据进行解码。
在本公开的各个方面,在耦合至串行总线的传送方设备处执行的方法包括在要于多导线串行总线的第一导线上传送的数据信号中提供第一数据,在要于多导线串行总线的第二导线上传送的时钟信号中提供一系列脉冲,其中每个脉冲具有上升沿和下降沿,每个边沿与第一数据的不同比特相对齐。该方法可包括通过基于时钟信号中第二数据的一个或多个比特的值来控制一系列脉冲中的每个脉冲的历时,对第二数据进行编码,以及在串行总线上传送数据信号和时钟信号。
在一个示例中,第二数据的一个比特用于在每个脉冲的两个可能的脉冲历时之间进行选择。在另一示例中,第二数据的两个比特用于在每个脉冲的四个可能的脉冲历时之间进行选择。
在一方面,该方法包括在数据信号中提供起始比特,其中起始比特在传输中位于第一数据之前,以及使用时钟信号中的两个脉冲对起始比特进行时钟定时。两个脉冲中的每一者具有大约时钟信号周期的一半的历时。在传送起始比特的同时,时钟信号可具有大约50%的占空比。
在一方面,时钟信号中的每个脉冲的中心与数据信号中的连续比特之间的转变相对齐。
在一方面,控制每个脉冲的历时包括基于第二数据的一个或多个比特的值从多个可能的历时中选择每个脉冲的历时,其中对于多个可能的历时中的每一者,每个脉冲的边沿定时保持在为串行总线上的时钟抖动定义的容差范围内。
在一方面,在根据I3C协议操作串行总线的同时传送数据。在另一示例中,在根据与VGI或基于通用异步接收机/发射机(UART)技术的接口相关联的协议传送的时钟信号中传送附加数据。
附图简述
图1解说了在各IC设备之间采用根据多个可用标准之一来选择性地操作的数据链路的装置。
图2解说了在各IC设备之间采用数据链路的装置的***架构。
图3解说了串行总线上的数据和时钟信号之间的定时关系的某些方面。
图4解说了在串行总线的一个示例中涉及在每个数据比特分组之前传送的起始比特的定时。
图5解说了与在DDR通信模式下操作的串行总线上数据分组或数据帧的传输相关的定时。
图6解说了与使用已经根据本文中所公开的某些方面来适配的串行接口的传输相关的定时。
图7解说了根据本文所公开的某些方面的与其中所传送时钟被脉宽调制的传输相关的定时的某些方面。
图8解说了根据本文所公开的某些方面的与其中所传送时钟被脉宽调制和脉幅调制的传输相关的定时的某些方面。
图9解说了耦合至串行总线且根据本文所公开的某些方面的配置或适配的发射机和接收机的示例。
图10是解说采用可根据本文公开的某些方面来适配的处理电路的装置的示例的框图。
图11是解说根据本文所公开的某些方面的被配置为在脉宽调制时钟信号中传送数据的设备的某些方面的流程图。
图12是解说根据本文中公开的某些方面的用于对脉宽调制时钟信号中的数据进行编码的传送方装置的硬件实现的示例的示图。
图13是解说根据本文所公开的某些方面的被配置为从脉宽调制时钟信号对数据进行解码的设备的某些方面的流程图。
图14是解说根据本文中公开的某些方面的用于从脉宽调制时钟信号对数据进行解码的接收方装置的硬件实现的示例的示图。
详细描述
以下结合附图阐述的详细描述旨在作为各种配置的描述,而无意表示可实践本文所描述的概念的仅有配置。本详细描述包括具体细节以提供对各种概念的透彻理解。然而,对于本领域技术人员将显而易见的是,没有这些具体细节也可实践这些概念。在一些实例中,以框图形式示出众所周知的结构和组件以避免湮没此类概念。
现在将参照各种装置和方法给出本发明的若干方面。这些装置和方法将在以下详细描述中进行描述并在附图中由各种框、模块、组件、电路、步骤、过程、算法等(统称为“元素”)来解说。这些元素可使用电子硬件、计算机软件、或其任何组合来实现。此类元素是实现成硬件还是软件取决于具体应用和加诸于整体***上的设计约束。
概览
串行接口频繁用于在一个或多个设备中提供的组件、功能和电路之间的数字通信,其中设备可包括SoC和/或IC设备。可根据标准组织定义的规范和协议来操作在处理器、调制解调器和其他***设备之间部署的串行数据链路。在一个示例中,串行数据链路可根据I3C协议来操作,该协议包括其中根据在双导线总线的第二导线上传送的时钟信号在双导线总线的第一导线上传送数据的同步操作模式。
IC设备的持续增加的能力和增加的操作频率导致对串行数据链路的增加性能的持续需求。数据链路吞吐量增强已经是减少数据链路等待时间的主要动力。在常规单数据速率(SDR)链路中,在每个时钟周期中传送一个比特的数据。在2导线同步双倍数据率(DDR)链路中,通过在时钟的上升沿和下降沿上传送数据比特,来相对于时钟加倍数据率。时钟本身不承载任何信息。本文所公开的某些方面提供了其中串行数据链路的有效速率可达到或超过SDR链路上实现的速率的三倍的***和方法。
具有串行数据链路的装置的示例
根据某些方面,串行数据链路可被用于互连作为装置的子组件的电子设备,该装置诸如是蜂窝电话、智能电话、会话发起协议(SIP)电话、膝上型设备、笔记本、上网本、智能本、个人数字助理(PDA)、卫星无线电、全球定位***(GPS)设备、智能家用设备、智能照明设备、多媒体设备、视频设备、数字音频播放器(例如,MP3播放器)、相机、游戏控制台、娱乐设备、车载组件、可穿戴计算设备(例如,智能手表、健康或健身***、眼镜等)、电器、传感器、安全设备、自动售货机、智能电表、遥控飞机、多旋翼直升机、或任何其他类似的功能设备。
图1解说了可采用数据通信总线的装置100的示例。装置100可包括SoC、具有可在一个或多个ASIC中或在SoC中实现的多个电路或设备104、106和/或108的处理电路102。在一个示例中,装置100可以是通信设备,并且处理电路102可包括在ASIC设备104中提供的处理设备、一个或多个***设备106、以及收发机108,收发机108使该装置能够通过天线124与无线电接入网、核心接入网、因特网和/或另一网络通信。
ASIC设备104可具有一个或多个处理器112、一个或多个调制解调器110、板载存储器114、总线接口电路116和/或其他逻辑电路或功能。处理电路102可以由可提供应用编程接口(API)层的操作***来控制,该API层使得该一个或多个处理器112能够执行驻留在板载存储器114或在处理电路102上提供的其他处理器可读存储122中的软件模块。软件模块可包括存储在板载存储器114或处理器可读存储122中的指令和数据。ASIC设备104可以访问其板载存储器114、处理器可读存储122、和/或在处理电路102外部的存储。板载存储器114、处理器可读存储122可包括只读存储器(ROM)或随机存取存储器(RAM)、电可擦除可编程ROM(EEPROM)、闪存卡、或可以在处理***和计算平台中使用的任何存储器设备。处理电路102可包括、实现或能够访问本地数据库或其他参数存储,该本地数据库或其他参数存储可维护用于配置和操作装置100和/或处理电路102的工作参数和其他信息。本地数据库可使用寄存器、数据库模块、闪存、磁介质、EEPROM、软盘或硬盘等来实现。处理电路102也可以可操作地耦合至外部设备,诸如天线124、显示器126、操作者控件(诸如开关或按钮128、130和/或集成或外部按键板132)、以及其他组件。用户接口模块可被配置成通过专用通信链路或通过一个或多个串行数据互连与显示器126、按键板132等一起操作。
处理电路102可以提供使得某些设备104、106和/或108能够进行通信的一条或多条总线118a、118b、120。在一个示例中,ASIC设备104可包括总线接口电路116,其包括电路、计数器、定时器、控制逻辑、和其他可配置电路或模块的组合。在一个示例中,总线接口电路116可被配置成根据通信规范或协议来操作。处理电路102可包括或控制配置和管理装置100的操作的功率管理功能。
图2解说了包括连接至串行总线230的多个设备202、220和222a-222n的装置200的某些方面。串行总线230的第一导线216承载时钟信号,而串行总线230的第二导线218承载由根据在第一导线216上传送的时钟信号提供的定时传送的数据。设备202、220和222a-222n可包括一个或多个半导体IC设备,诸如应用处理器、SoC或ASIC。设备202、220和222a-222n中的每一者可包括、支持或操作为调制解调器、信号处理设备、显示器驱动器、相机、用户接口、传感器、传感器控制器、媒体播放器、收发机、和/或其他此类组件或设备。设备202、220和222a-222n之间在串行总线230上的通信由总线主控方220来控制。某些类型的总线可支持多个总线主控方220。
装置200可包括在串行总线230根据I2C、I3C或其他协议来操作时进行通信的多个设备202、220和222a-222n。至少一个设备202、222a-222n可被配置成作为串行总线230上的从设备来操作。在一个示例中,从设备202可被适配成提供传感器控制功能204。传感器控制功能204可包括支持图像传感器的电路和模块、和/或控制测量环境状况的一个或多个传感器并与之通信的电路和模块。从设备202可包括配置寄存器或其他存储206、控制逻辑212、收发机210和线驱动器/接收机214a和214b。控制逻辑212可包括处理电路,诸如状态机、定序器、信号处理器或通用处理器。收发机210可包括接收机210a、发射机210c和共用电路210b(包括定时、逻辑和存储电路和/或设备)。在一个示例中,发射机210c基于由时钟生成电路208提供的定时来编码并传送数据。
设备202、220和/或222a-222n中的两个或更多个设备可根据本文所公开的某些方面和特征被适配成支持共用总线上的多种不同的通信协议,这些通信协议可包括I2C协议、和/或I3C协议。在一些实例中,使用I2C协议来通信的设备可与使用I3C协议来通信的设备共存于相同的双线接口上。在一个示例中,I3C协议可支持提供6兆比特每秒(Mbps)与16Mbps之间的数据率的操作模式,其中有一个或多个可任选的提供较高性能的高数据率(HDR)操作模式。I2C协议可遵循提供范围可在100千比特每秒(kbps)与3.2Mbps之间的数据率的实际I2C标准。除了数据格式和总线控制方面,I2C和I3C协议还可定义在双线串行总线230上传送的信号的电气和定时方面。在一些方面,I2C和I3C协议可定义影响与串行总线230相关联的某些信号电平的直流(DC)特性,和/或影响在串行总线230上传送的信号的某些定时方面的交流(AC)特性。
串行总线的一个示例中的定时
图3包括解说同步串行总线上的数据信号302和时钟信号304之间的关系的示例的时序图300和320。第一时序图300解说了当串行总线以SDR模式操作的同时正在传递数据时数据信号302和时钟信号304之间的定时关系。时钟信号304提供可用于对数据信号302中的数据进行采样的一系列脉冲。这些脉冲(包括例如脉冲312)可被定义为期间在接收机处确定时钟信号304处于高逻辑状态的时间。当时钟信号304在数据传输期间处于高逻辑状态时,要求数据信号302上的数据是稳定且有效的;在时钟信号304处于高逻辑状态时,数据信号302的状态不允许改变。
在一个示例中,用于SDR通信模式的I3C协议定义了时钟信号304上的脉冲312的高时段的最小历时310(t高).I3C协议还可定义脉冲312发生前的建立时间306(tSU)的最小历时、以及脉冲312终止后的保持时间308(t保持)的最小历时。数据信号302的信令状态预期在建立时间306和保持时间308期间保持稳定。建立时间306定义了在数据信号302上的信令状态之间的转变316之后、直至时钟信号304上的脉冲312的上升沿抵达为止的最大时间段。保持时间308定义了在时钟信号304上的脉冲312的下降沿之后、直至数据信号302上的信令状态之间的下一转变318为止的最小时间段。I2C规范还定义了时钟信号304的低时段(t低)的最小历时314。数据信号302上的数据在时钟信号304在脉冲312的前沿之后处于高逻辑状态时的历时310(t高)里通常是稳定的和/或可被捕捉。
图3的第二时序图320解说了当串行总线以DDR通信模式操作的同时正在传递数据时数据信号322和时钟信号324之间的定时关系。时钟信号324中的边沿330、332可用于捕获在数据信号322中传送的数据比特326、328。例如,脉冲334的上升沿330可用于捕获第一数据比特326(DN)而脉冲334的下降沿332可用于捕获第二数据比特328(DN-1)。为了提高比特采样的可靠性,发射机可被配置为传送具有相等历时或几乎相等历时的时钟信号324的高和低时段336、338。在DDR通信模式中,可为每个时钟脉冲334传送两个数据比特,而在SDR通信模式中,为每个时钟脉冲312传送单个数据比特。
图4解说了在串行总线的一个示例中涉及在每个数据比特分组之前传送的起始比特406的定时400的一个示例。起始比特406和时钟信号404的定时的组合允许当前总线主控方信令通知要传送数据。在一个示例中,起始比特406被配置为使得在时钟信号404处于高状态414的同时发生数据信号402中的高到低转变412。在某些SDR通信模式中,当数据比特416正被传送时,需要数据信号402在高状态410的历时内保持稳定,使得在低时段408期间发生数据比特转变。在低时段408期间数据信号402中的转变412的发生可导致接收机中的状态机复位并等待数据比特416。可传送起始比特406的其他配置以信令通知数据传输的开始。
图5解说了与在DDR通信模式下操作的串行总线上数据分组或数据帧的传输相关的定时500。当总线主控或传送方设备传送起始比特506时,发起传输。根据SDR定时传送起始比特506,并且在起始比特506的传输期间经过时钟信号504的两个时段510、512。在起始比特506已经被传送之后,根据DDR定时传送数据比特508。在对应于时钟信号504中的转变的时间524处对数据比特进行采样。例如,在时钟周期中低到高转变520处捕获或采样第一数据比特516,而在时钟信号504的每个周期514中高到低转变522处捕获或采样第二数据比特518。
在DDR同步通信中传送附加数据
图6解说了与使用已经根据本文中所公开的某些方面来适配的串行接口的传输600相关的定时。串行接口可支持SDR和DDR通信模式中的数据信号602中的数据传输,并且可使得能够通过对时钟信号604进行脉宽调制来传送附加信息。所解说的传输600涉及其中串行总线以DDR通信模式操作的示例。当总线主控或传送方设备传送起始比特606时,发起传输600。发射机可随后根据DDR定时传送数据比特608、610、612。在一个示例中,可在时钟信号604中的第一边沿614处在接收机处捕获第一数据比特608,可在时钟信号604中的第二边沿616处捕获第二数据比特610,以及可在时钟信号604中的第三边沿618处在接收机处捕获第三数据比特612。
在时钟信号604上编码附加数据。在所解说的传输600中,采用2级脉宽调制(PWM)方案来编码在所传送时钟信号604中在每个时钟脉冲624、626中的附加数据的比特。发射机可被配置为提供具有50%占空比的时钟脉冲以供与起始比特606一起传输。当所传送时钟信号604的低时段620和高时段622具有相等历时时,实现50%占空比。接收机可适配为产生接收时钟信号630(RxClock),其在传送起始比特606的时间期间被锁定和/或同步至所传送时钟信号604。接收机可利用1循环同步器技术来同步其本地时钟以进行数据锁存或采样。在所解说的示例中,接收时钟信号630可以是在一种类型的转变上锁存数据的SDR时钟。此处,锁存边沿628发生在接收时钟信号630的上升转变处。在其他示例中,接收时钟信号630可实现为在上升和下降转变处锁存数据的DDR时钟。
可在时钟边沿边界处执行时钟信号604的脉宽调制。在所解说的示例中,时钟信号604中的每个时钟脉冲624、626的宽度表示比特值。在一个实现中,可使用较长历时的脉冲624来编码比特值“1”,同时可使用具有较短历时的脉冲626来编码比特值“0”。在另一实现中,可使用较长历时的脉冲624来编码比特值“0”,同时可使用具有较短历时的脉冲626来编码比特值“1”。
根据某些方面,每个脉冲624、626的中心不相对于时间和接收时钟信号630进行移位。相应地,当在所传送时钟信号604上使用脉宽调制时,接收时钟信号630可与所传送时钟信号604和数据信号602保持同步。可预期在接收时钟信号630中的锁存边沿628与数据比特608、610、612相对齐,从而使用接收时钟信号630实现可靠的数据捕获。
根据某些方面,可限制所传送时钟信号604中的脉冲624、626的宽度的变化,使得时钟信号604中的边沿的定时落入为所传送时钟信号604中的脉冲指定的抖动余量内。足够敏感的接收机可区分脉冲624、626的不同宽度,以便对所传送时钟信号604中的附加数据比特进行解码。在一个示例中,接收机可使用过采样时钟来测量脉冲624、626的宽度。当脉冲624、626的宽度中的变化落在抖动余量内时,和/或当每个脉冲624、626的中心关于时间不进行移位时,耦合至串行总线的常规接收机通常忽略脉宽调制的影响。
在所描述的2级脉宽调制示例中,使用数据线上的时钟调制和DDR的链路的组合数据率提供了在SDR操作模式上数据率的有效三倍。可使用其他脉宽调制方案对所传送时钟信号604上的每个脉冲的多于1比特进行编码。
图7解说了与其中所传送时钟未经调制、使用2级脉宽调制进行调制或使用4级脉宽调制进行调制的传输相关的定时700的某些方面。已经根据本文所公开的某些方面适配的发射机可被配置为当起始比特被传送时在时钟获取时段710期间提供具有50%占空比的时钟脉冲以供传输。接收机可适配为生成内部接收时钟708以锁存DDR数据。在时钟获取时段710期间,内部接收时钟708可与所传送时钟信号702、704、706进行同步(锁定)。接收时钟708可用于在数据传输时段730期间锁存DDR数据。
在第一通信模式中,所传送时钟信号702是未经调制的。在第二通信模式中,使用2级PWM调制所传送时钟信号704,其中所传送时钟信号704中的脉冲712、714可具有2个历时之一。第一脉冲712具有较长历时而第二脉冲714具有较短历时,其中脉冲712、714的历时允许时钟信号704满足为所传送时钟信号704中的脉冲指定的抖动余量。在第三通信模式中,使用4级PWM调制所传送时钟信号706。在第三通信模式中,所传送时钟信号706可包括为第二通信模式定义的脉冲712和714以及具有不同历时的脉冲716和718。在一个示例中,较长脉冲716具有比脉冲712的历时更小的历时,而较短脉冲718具有比脉冲714的历时更大的历时。可选择所传送时钟信号706中的脉冲712、714、716和718的历时的变化以使时钟信号706能够满足为所传送脉冲指定的抖动余量。
在一个示例中,接收机使用的过采样时钟可被配置为当在第三通信模式下操作时具有比在第二通信模式下操作时使用的频率更大的频率。在另一示例中,可基于接收机检测所传送时钟信号702、704、706上的脉宽差异的能力来选择脉冲模式调制的水平。在一些实例中,可基于脉冲712、714、716和718的历时的可变性来选择脉冲模式调制的水平,该可变性可受到承载脉冲712、714、716和718的导线的特性,和/或在与串行总线相关联的设备内工艺、电压和温度的变化(PVT)的影响
图8解说了与其中所传送时钟可使用与脉幅调制(PAM)结合的2级脉宽调制进行调制的示例相关的定时800的某些方面。已经根据本文所公开的某些方面适配的发射机可被配置为当起始比特被传送时在时钟获取时段810期间提供具有50%占空比的时钟脉冲以供传输。接收机可适配为生成内部接收时钟808以锁存DDR数据。在时钟获取时段810期间,内部接收时钟808可与所传送时钟信号802、804、806进行同步(锁定)。接收时钟808可用于在数据传输时段830期间锁存DDR数据。
在第一通信模式中,所传送时钟信号802是未经调制的。在第二通信模式中,使用2级PWM调制所传送时钟信号804,其中所传送时钟信号804中的脉冲812、814可具有2个历时之一。第一脉冲812具有较长历时而第二脉冲814具有较短历时,其中脉冲812、814的历时允许时钟信号804满足为所传送时钟信号804中的脉冲指定的抖动余量。
在第三通信模式中,所传送时钟信号806可以是脉幅调制的。当使用PAM时,可在处于多个所定义的电压电平之一的时钟信号中传送脉冲822、824、826。图8解说了单极性PAM,其中时钟信号中的脉冲822、824、826在基电压(0伏特)和两个电压电平818、820中基于在当前脉冲822、824、826中要编码的数据比特的值所选择的一个电压电平之间进行切换。在一个示例中,较高电压脉冲822、826可编码比特值1,而较低电压脉冲824可编码比特值0。使用PAM编码的比特数目可通过设计和/或通过发射机和接收机区分可用信令电压的能力来确定。
在所解说示例中,当启用第三通信模式时,可以编码两比特数据。第一比特以脉冲822、824、826的宽度进行编码,而第二比特以脉冲822、824、826的电压电平进行编码。在一些接口中,PAM可用于编码数据信号中和时钟信号中的数据。可根据采用用于数据信令的PWM和/或PAM的协议来操作一些接口,并且可在时钟信号中传送附加信息。
被适配用于传送附加数据的装置的示例
图9解说了耦合至串行总线924且根据本文所公开的某些方面的配置或适配的发射机900和接收机940的示例。发射机900和/或接收机940可被适配或配置为使得能够根据DDR通信模式传送和/或接收数据(主数据910)。发射机900和/或接收机940可进一步被适配或配置为使得能够在串行总线924的导线上传送的时钟信号920中以脉宽调制脉冲传送和/或接收附加数据(副数据916)。出于本说明书的目的,在数据信号922中编码和传送的数据可被称为主数据910。出于本说明书的目的,在脉宽调制时钟信号920中编码和传送的数据可被称为副数据916。
发射机900可使用主串化器902生成数据信号922,该主串化器902根据时钟信号920上提供的时钟的定时来串行化主数据910以供在数据信号922上传输。主串化器902通常由传送时钟信号926进行时钟定时以产生DDR数据912以供在数据信号922上传输。
发射机900还可被配置或适配为使用脉宽调制来编码副数据916。在一些示例中,副数据916可由副串化器908串行化,以便生成可由编码器/调制器904以时钟信号920中传送的脉宽进行编码的比特流(调制数据918)。副串化器908可由传送时钟信号926和/或调制时钟928进行时钟定时,该调制时钟928可以是传送时钟信号926的门控版本。
编码器/调制器904可包括可基于串行总线924的当前通信模式来启用或禁用的电路和模块。这些电路可包括门、延迟和组合逻辑,以在例如使用PWM时扩展时钟脉冲。编码器/调制器904输出基于DDR数据912和传送时钟信号926的传输信号914。传输信号914可以是DDR数据912的中继版本和经调制或未经调制的传送时钟信号926。在一些实例中,编码器/调制器904的调制电路可被配置成控制线驱动电路(诸如驱动器906)的操作。例如,当使用PAM时,调制电路可控制由线驱动电路输出的信号的电压电平。线驱动电路可使用开漏驱动器、推挽驱动器或适合于所采用的(诸)调制方案的模拟和数字电路的某个其他配置来实现。
接收机940可包括线接收机集合942,其可包括差分接收机、单端接收机和/或可检测电压电平的接收机。线接收机942可被适配或配置为向解码器/解调器944提供多个接收信号950。解码器/解调器944可被配置为从数据信号922提取DDR数据952并提供从时钟信号920和/或数据信号922导出的时钟信息962至产生一个或多个接收时钟960的时钟恢复电路964。例如,时钟信息962可包括指示何时传送起始比特的锁定信号。时钟恢复电路964可产生一个或多个接收时钟960,包括用于锁存DDR编码数据的接收时钟960。可由主解串器946执行解串行化以提供输出主数据954和由副解串器948执行解串行化以提供输出副数据958。
解码器/解调器944可确定时钟信号920是脉宽调制的。解码器/解调器944可被配置为从脉宽调制时钟信号920对副数据958进行解码。解码器/解调器944可包括用于检测时钟信号920中的定时差异的电路。可使用计数器、定时器、单稳延迟等来检测和测量定时差异。
解码器/解调器944可确定时钟信号920是脉幅调制的。线接收机942可提供指示从串行总线924收到的信号的电压电平的某些接收信号950。解码器/解调器944可被配置为从时钟信号920的脉宽调制和脉宽调制的组合对副数据958进行解码。解码器/解调器944可包括用于检测时钟信号920中的定时差异的电路。可使用计数器、定时器、单稳延迟等来检测和测量定时差异。解码器/解调器944和/或线接收机942可包括用于检测时钟信号920中的电压差的电路。例如,可使用电压比较器来检测和测量电压差。
已经参考根据I3C协议操作的接口描述了某些方面。各个方面适用于根据其他协议操作的接口。在一些示例中,可根据本文所公开的某些方面来适配基于UART的接口。在其他示例中,可在时钟信号中或根据与VGI接口相关联的协议传送的其他信号中编码附加数据。
处理电路和方法的示例
图10是解说采用可被配置成执行本文所公开的一个或多个功能的处理电路1002的装置1000的硬件实现的示例的示图。根据本公开的各种方面,本文所公开的元素、或元素的任何部分、或者元素的任何组合可使用处理电路1002来实现。处理电路1002可包括一个或多个处理器1004,其由硬件和软件模块的某种组合来控制。处理器1004的示例包括:微处理器、微控制器、数字信号处理器(DSP)、SoC、ASIC、现场可编程门阵列(FPGA)、可编程逻辑设备(PLD)、状态机、定序器、门控逻辑、分立的硬件电路、以及其他配置成执行本公开中通篇描述的各种功能性的合适硬件。该一个或多个处理器1004可包括执行特定功能并且可由软件模块1016之一来配置、增强或控制的专用处理器。该一个或多个处理器1004可通过在初始化期间加载的软件模块1016的组合来配置,并且通过在操作期间加载或卸载一个或多个软件模块1016来进一步配置。
在所解说的示例中,处理电路1002可使用由总线1010一般化地表示的总线架构来实现。取决于处理电路1002的具体应用和整体设计约束,总线1010可包括任何数目的互连总线和桥接器。总线1010将各种电路链接在一起,包括一个或多个处理器1004、和存储1006。存储1006可包括存储器设备和大容量存储设备,并且在本文可被称为计算机可读介质和/或处理器可读介质。总线1010还可链接各种其他电路,诸如定时源、定时器、***设备、稳压器、和功率管理电路。总线接口1008可提供总线1010与一个或多个收发机1012之间的接口。可针对处理电路所支持的每种联网技术来提供收发机1012。在一些实例中,多种联网技术可共享收发机1012中找到的电路***或处理模块中的一些或全部。每个收发机1012提供用于通过传输介质与各种其它装置通信的手段。取决于装置1000的本质,也可提供用户接口1018(例如,按键板、显示器、扬声器、话筒、操纵杆),并且该用户接口1010可直接或通过总线接口1008通信地耦合至总线1510。
处理器1004可负责管理总线1010和一般处理,包括对存储在计算机可读介质(其可包括存储1006)中的软件的执行。在这一方面,处理电路1002(包括处理器1004)可被用来实现本文所公开的方法、功能和技术中的任一种。存储1006可被用于存储处理器1004在执行软件时操纵的数据,并且该软件可被配置成实现本文所公开的方法中的任一种。
处理电路1002中的一个或多个处理器1004可执行软件。软件应当被宽泛地解释成意为指令、指令集、代码、代码段、程序代码、程序、子程序、软件模块、应用、软件应用、软件包、例程、子例程、对象、可执行件、执行的线程、规程、函数、算法等,无论其是用软件、固件、中间件、微代码、硬件描述语言、还是其他术语来述及皆是如此。软件可按计算机可读形式驻留在存储1006中或驻留在外部计算机可读介质中。外部计算机可读介质和/或存储1006可包括非瞬态计算机可读介质。作为示例,非瞬态计算机可读介质包括:磁存储设备(例如,硬盘、软盘、磁条)、光盘(例如,压缩碟(CD)或数字多功能碟(DVD))、智能卡、闪存设备(例如,“闪存驱动器”、卡、棒、或钥匙驱动器)、RAM、ROM、可编程只读存储器(PROM)、可擦式PROM(EPROM)(包括EEPROM)、寄存器、可移动盘、以及任何其他用于存储可由计算机访问和读取的软件和/或指令的合适介质。作为示例,计算机可读介质和/或存储1006还可包括载波、传输线、和任何其它用于传送可由计算机访问和读取的软件和/或指令的合适介质。计算机可读介质和/或存储1006可驻留在处理电路1002中、处理器1004中、在处理电路1002外部、或跨包括该处理电路1002在内的多个实体分布。计算机可读介质和/或存储1006可实施在计算机程序产品中。作为示例,计算机程序产品可包括封装材料中的计算机可读介质。本领域技术人员将认识到如何取决于具体应用和加诸于整体***上的总体设计约束来最佳地实现本公开中通篇给出的所描述的功能性。
存储1006可维护以可加载代码段、模块、应用、程序等来维护和/或组织的软件,其在本文中可被称为软件模块1016。软件模块1016中的每一者可包括在安装或加载到处理电路1002上并由一个或多个处理器1004执行时有助于运行时映像1014的指令和数据,运行时映像1004控制一个或多个处理器1204的操作。在被执行时,某些指令可使得处理电路1002执行根据本文所描述的某些方法、算法和过程的功能。
软件模块1016中的一些可在处理电路1002初始化期间被加载,并且这些软件模块1016可配置处理电路1002以实现本文所公开的各种功能的执行。例如,一些软件模块1016可配置处理器1004的内部设备和/或逻辑电路1022,并且可管理对外部设备(诸如,收发机1012、总线接口1008、用户接口1018、定时器、数学协处理器等)的访问。软件模块1016可包括控制程序和/或操作***,其与中断处理程序和设备驱动器交互并且控制对由处理电路1002提供的各种资源的访问。这些资源可包括存储器、处理时间、对收发机1012的访问、用户接口1018等。
处理电路1004的一个或多个处理器1002可以是多功能的,由此软件模块1016中的一些被加载和配置成执行不同功能或相同功能的不同实例。一个或多个处理器1004可附加地被适配成管理响应于来自例如用户接口1018、收发机1012和设备驱动器的输入而发起的后台任务。为了支持多个功能的执行,这一个或多个处理器1004可被配置成提供多任务环境,由此多个功能中的每个功能按需或按期望实现为由一个或多个处理器1004服务的任务集。在一个示例中,多任务环境可使用分时程序1020来实现,分时程序1020在不同任务之间传递对处理器1004的控制权,由此每个任务在完成任何未决操作之际和/或响应于输入(诸如中断)而将对一个或多个处理器1004的控制权返回给分时程序1520。当任务具有对一个或多个处理器1004的控制权时,处理电路有效地专用于由与控制方任务相关联的功能所针对的目的。分时程序1020可包括操作***、在循环基础上转移控制权的主循环、根据各功能的优先级化来分配对一个或多个处理器1004的控制权的功能、和/或通过将对一个或多个处理器1004的控制权提供给处置功能来对外部事件作出响应的中断驱动式主循环。
图11是可在耦合到串行总线的接收方设备处执行的方法的流程图1100。
在框1102处,接收方设备可从接收自多导线串行总线的第一导线的时钟信号中的多个脉冲生成多个采样边沿。可从多个脉冲中的脉冲的上升沿和下降沿生成多个采样边沿。
在框1104处,接收方设备可使用多个采样边沿中的每个边沿从接收自多导线串行总线的第二导线的数据信号捕获数据比特。
在框1106处,接收方设备可从时钟信号对附加数据进行解码,其中多个脉冲中的每个脉冲的历时表示附加数据的一个或多个比特的值。在一个示例中,多个脉冲中的每个脉冲的历时表示附加数据的一个比特的值。在另一示例中,多个脉冲中的每个脉冲的历时表示第二数据的两个比特的值。
在一些示例中,该接收方设备可生成与时钟信号和数据信号同步的接收时钟,以及使用该接收时钟从数据信号捕获数据比特。从数据信号捕获数据比特可包括在接收时钟的每循环捕获一个数据比特。从数据信号捕获数据比特可包括在接收时钟的每循环捕获两个数据比特。该接收方设备可在从数据信号捕获数据比特之前从数据信号接收起始比特,并且在接收起始比特的同时可使用在时钟信号中收到的一个或多个脉冲来同步接收时钟。一个或多个脉冲中的每一者可具有大约时钟信号的周期的一半的历时。
在一些实例中,时钟信号中的每个脉冲的中心与数据信号中的连续比特之间的转变相对齐。
在一个示例中,在根据I3C协议操作串行总线的同时从时钟信号对附加数据进行解码。
图12是解说采用处理电路1202的装置1200的硬件实现的简化示例的示图。该处理电路通常具有处理器1216,其可包括微处理器、微控制器、数字信号处理器、定序器和状态机中的一者或多者。处理电路1202可以用由总线1220一般化地表示的总线架构来实现。取决于处理电路1202的具体应用和整体设计约束,总线1220可包括任何数目的互连总线和桥接器。总线1220将包括一个或多个处理器和/或硬件模块(由处理器1216、模块或电路1204、1206和1208、能配置成通过包括多个连接器或导线的多线串行总线1212通信的线接口电路1214、以及计算机可读存储介质1218表示)的各种电路链接在一起。总线1220还可链接各种其它电路,诸如定时源、***设备、电压调节器、以及功率管理电路,这些电路在本领域中是众所周知的,且因此将不再进一步描述。
处理器1216负责一般性处理,包括执行存储在计算机可读存储介质1218上的软件。该软件在由处理器1216执行时使处理电路1202执行上文针对任何特定装置描述的各种功能。计算机可读存储介质1218还可被用于存储由处理器1216在执行软件时操纵的数据,包括从在多线串行总线1214上传送的码元中经解码的数据。处理电路1202进一步包括模块1204、1206和1208中的至少一个模块。模块1204、1206和1208可以是在处理器1216中运行的软件模块、驻留/存储在计算机可读存储介质1218中、是耦合到处理器1216的一个或多个硬件模块、或是其某种组合。模块1204、1206和1208可包括微控制器指令、状态机配置参数、或其某种组合。
在一种配置中,装置1200包括模块和/或电路1206,其被配置为从接收自多导线串行总线1214的第一导线的时钟信号中的多个脉冲生成多个采样边沿,其中该多个采样边沿可从多个脉冲中的脉冲的上升沿和下降沿产生。装置1200包括模块和/或电路1204,其被配置为使用多个采样边沿中的每个边沿从接收自多导线串行总线1214的第二导线的数据信号捕获和解码数据比特。装置1200包括模块和/或电路1208,其被配置为从时钟信号对附加数据进行解码,其中该附加数据在时钟信号的调制中被编码。在一个示例中,多个脉冲中的每个脉冲的历时表示附加数据的一个比特的值。在另一示例中,多个脉冲中的每个脉冲的历时表示第二数据的两个比特的值。
在一个示例中,线接口电路1212包括多个接收机,其中每个接收机耦合至多导线串行总线1214的导线。时钟生成模块和/或电路1206可包括时钟生成电路,其被配置为在接收时钟信号中提供采样边沿。采样边沿可对应于接收自多导线串行总线1214的第一导线的时钟信号中的脉冲的上升沿和脉冲的下降沿两者。解码模块和/或电路1204可包括解码器,其被配置为使用采样边沿从接收自多导线串行总线1214的第二导线的数据信号捕获第一数据。解码器可被配置为在接收时钟的每循环捕获第一数据的一个或多个比特。解调模块和/或电路1208可包括脉宽解调器,其被配置为提取以时钟信号中的脉冲的历时编码的第二数据。每个脉冲可具有表示第二数据的一个或多个比特的值的历时。
在一些实例中,多个脉冲中的每个脉冲的历时表示第二数据的一个比特的值。多个脉冲中的每个脉冲的历时可表示第二数据的两个比特或更多个比特的值。
时钟生成电路可被适配或配置为在第一数据的比特可用于从数据信号捕获之前从数据信号接收起始比特的同时,使用在时钟信号中收到的一个或多个脉冲来同步接收时钟。一个或多个脉冲中的每一者具有大约时钟信号的周期的一半的历时。也就是说,该一个或多个脉冲具有大约50%的占空比。在同步已经被锁定之后,时钟信号中的每个脉冲的中心与数据信号中传送的连续比特之间的转变相对齐。
在一些示例中,模块和/或电路1208可包括脉幅解调器,其被配置为当第三数据的比特以多个脉冲的电压电平进行编码时,从时钟信号对第三数据进行解码。
图13是解说耦合至串行总线的传送方设备的某些方面的流程图。
在框1302处,传送方设备可在要于多导线串行总线的第一导线上传送的数据信号中提供第一数据。
在框1304处,传送方设备可在要于多导线串行总线的第二导线上传送的时钟信号中提供一系列脉冲。每个脉冲具有上升沿和下降沿,并且每个边沿与第一数据的不同比特相对齐。
在框1306处,接收方设备可通过基于时钟信号中的第二数据的一个或多个比特的值来控制一系列脉冲中的每个脉冲的历时,对第二数据进行编码。在一个示例中,第二数据的一个比特用于在每个脉冲的两个可能的脉冲历时之间进行选择。在另一示例中,第二数据的两个比特用于在每个脉冲的四个可能的脉冲历时之间进行选择。
在框1308处,传送方设备可在串行总线上传送数据信号和时钟信号。在一个示例中,可在根据I3C协议操作串行总线的同时传送数据。
在一个示例中,传送方设备可在数据信号中提供起始比特,其中起始比特在传输中位于第一数据之前。传送方设备可使用时钟信号中的两个脉冲对起始比特进行时钟定时,其中该两个脉冲中的每一者具有大约时钟信号周期的一半的历时。
根据某些方面,时钟信号中的每个脉冲的中心与数据信号中的连续比特之间的转变相对齐。
在一个示例中,可通过基于第二数据的一个或多个比特的值从多个可能的历时中选择每个脉冲的历时来控制每个脉冲的历时。对于多个可能历时中的每一者,每个脉冲的边沿的定时可保持在为串行总线上的时钟抖动所定义的容限内。
图14是解说采用处理电路1402的装置1400的硬件实现的简化示例的示图。该处理电路通常具有处理器1416,其可包括微处理器、微控制器、数字信号处理器、定序器和状态机中的一者或多者。处理电路1402可以用由总线1420一般化地表示的总线架构来实现。取决于处理电路1402的具体应用和整体设计约束,总线1420可包括任何数目的互连总线和桥接器。总线1420将包括一个或多个处理器和/或硬件模块(由处理器1416、模块或电路1404、1406和1408、能配置成通过包括多个连接器或导线的多线串行总线1414通信的线接口电路1412、以及计算机可读存储介质1418表示)的各种电路链接在一起。总线1420还可链接各种其他电路,诸如定时源、***设备、稳压器和功率管理电路,这些电路在本领域中是众所周知的,且因此将不再进一步描述。
处理器1416负责一般性处理,包括执行存储在计算机可读存储介质1418上的软件。该软件在由处理器1416执行时使处理电路1402执行上文针对任何特定装置描述的各种功能。计算机可读存储介质1418还可被用于存储由处理器1416在执行软件时操纵的数据,包括从在多线串行总线1414上传送的码元中经解码的数据。处理电路1402进一步包括模块1404、1406和1408中的至少一个模块。模块1404、1406和1408可以是在处理器1416中运行的软件模块、驻留/存储在计算机可读存储介质1418中、是耦合到处理器1416的一个或多个硬件模块、或是其某种组合。模块1404、1406和1408可包括微控制器指令、状态机配置参数、或其某种组合。
在一种配置中,装置1400包括模块和/或电路1404,其被配置为在要于多导线串行总线的第一导线上传送的数据信号中提供第一数据。装置1400可包括模块和/或电路1406,其被配置为在要于多导线串行总线的第二导线上传送的时钟信号中提供一系列脉冲。每个脉冲可具有上升沿和下降沿,并且每个边沿与第一数据的不同比特相对齐。装置1400可包括模块和/或电路1406、1408,其被配置为通过调制在多导线串行总线1414上传送的一个或多个信号来对时钟信号中的第二数据进行编码。在一个示例中,第二数据的一个比特用于在每个脉冲的两个可能的脉冲历时之间进行选择。在另一示例中,第二数据的两个比特用于在每个脉冲的四个可能的脉冲历时之间进行选择。装置1400可包括模块和/或电路1412,其被配置为在多导线串行总线1414上传送数据信号和时钟信号。在一个示例中,可在根据I3C协议操作串行总线的同时传送数据。
在一个示例中,线接口电路1412包括多个线驱动器,其中每个线驱动器耦合至多导线串行总线1414的导线。编码模块和/或电路1404可包括编码器,其被配置为对通过第一线驱动器传送的数据信号中的第一数据进行编码。时钟生成模块和/或电路1406可包括时钟发生器,其被配置为在要于多导线串行总线的第二导线上传送的时钟信号中提供一系列脉冲。每个脉冲具有上升沿和下降沿,并且每个边沿可与第一数据的不同比特相对齐。时钟发生器可被适配或配置为在时钟信号中提供两个脉冲,其中每个脉冲具有大约时钟信号周期的一半的历时。信号调制模块和/或电路1408可包括脉宽调制器,其被适配为通过基于时钟信号中第二数据的一个或多个比特的值来控制脉冲序列中的每个脉冲的历时,对第二数据进行编码。信号调制模块和/或电路1408可包括脉幅调制器,其被适配为通过基于时钟信号中第三数据的一个或多个比特的值来控制脉冲序列中的每个脉冲的电压电平,对第三数据进行编码。
应理解,所公开的过程中各步骤的具体次序或层次是示例性办法的解说。应理解,基于设计偏好,可以重新编排这些过程中各步骤的具体次序或层次。此外,一些步骤可被组合或被略去。所附方法权利要求以示例次序呈现各种步骤的要素,且并不意味着被限定于所给出的具体次序或层次。
提供之前的描述是为了使本领域任何技术人员均能够实践本文中所描述的各种方面。对这些方面的各种修改将容易为本领域技术人员所明白,并且在本文中所定义的普适原理可被应用于其他方面。因此,权利要求并非旨在被限定于本文中所示的方面,而是应被授予与语言上的权利要求相一致的全部范围,其中对要素的单数形式的引述除非特别声明,否则并非旨在表示“有且仅有一个”,而是“一个或多个”。除非特别另外声明,否则术语一些摂指的是一个或多个。本公开通篇描述的各个方面的要素为本领域普通技术人员当前或今后所知的所有结构上和功能上的等效方案通过引述被明确纳入于此,且旨在被权利要求所涵盖。此外,本文中所公开的任何内容都并非旨在贡献给公众,无论这样的公开是否在权利要求书中被显式地叙述。没有任何权利要求元素应被解释为装置加功能,除非该元素是使用短语“用于……的装置”来明确叙述的。
Claims (30)
1.一种在耦合至串行总线的接收方设备处执行的方法,包括:
从接收自多导线串行总线的第一导线的时钟信号中的多个脉冲产生多个采样边沿,其中所述多个采样边沿从所述多个脉冲中的脉冲的上升沿和下降沿产生;
使用所述多个采样边沿中的每个边沿从接收自所述多导线串行总线的第二导线的数据信号捕获数据比特;以及
从所述多个脉冲中的每个脉冲的历时对来自所述时钟信号的附加数据进行解码,其中每个脉冲的历时表示所述附加数据的一个或多个比特的值。
2.如权利要求1所述的方法,其特征在于,所述多个脉冲中的每个脉冲的历时表示所述附加数据的一个比特的值。
3.如权利要求1所述的方法,其特征在于,所述多个脉冲中的每个脉冲的历时表示所述附加数据的两个比特的值。
4.如权利要求1所述的方法,其特征在于,进一步包括:
生成与所述时钟信号和所述数据信号同步的接收时钟;以及
使用所述接收时钟从所述数据信号捕获数据比特。
5.如权利要求4所述的方法,其特征在于,从所述数据信号捕获所述数据比特包括:
在所述接收时钟的每循环捕获一个数据比特。
6.如权利要求4所述的方法,其特征在于,从所述数据信号捕获所述数据比特包括:
在所述接收时钟的每循环捕获两个数据比特。
7.如权利要求4所述的方法,其特征在于,进一步包括:
在从所述数据信号捕获所述数据比特之前从所述数据信号接收起始比特;以及
在接收所述起始比特的同时使用在所述时钟信号中收到的一个或多个脉冲同步所述接收时钟,其中所述一个或多个脉冲中的每一者具有大约所述时钟信号的周期的一半的历时。
8.如权利要求1所述的方法,其特征在于,所述时钟信号中的每个脉冲的中心与所述数据信号中的连续比特之间的转变相对齐。
9.如权利要求1所述的方法,其特征在于,在根据I3C协议操作所述串行总线的同时从所述时钟信号对所述附加数据进行解码。
10.如权利要求1所述的方法,其特征在于,进一步包括:
从所述时钟信号对脉幅调制数据进行解码,其中所述脉幅调制数据以所述多个脉冲的电压电平进行编码。
11.一种装置,包括:
多个接收机,每个接收机被耦合至串行总线的导线;
时钟发生器,其被配置为在接收时钟信号中提供采样边沿,其中所述采样边沿对应于从所述串行总线的第一导线收到的时钟信号中的脉冲的上升沿和下降沿;
解码器,其被配置为使用所述采样边沿从接收自所述串行总线的第二导线的数据信号捕获第一数据;以及
脉宽解调器,其被配置为提取以所述时钟信号中的所述脉冲的历时编码的第二数据,其中每个脉冲具有表示所述第二数据的一个或多个比特的值的历时。
12.如权利要求11所述的装置,其特征在于,所述脉冲中的每个脉冲的历时表示所述第二数据的一个比特的值。
13.如权利要求11所述的装置,其特征在于,所述脉冲中的每个脉冲的历时表示所述第二数据的两个比特的值。
14.如权利要求11所述的装置,其特征在于,所述解码器被配置为:
在所述接收时钟的每循环捕获所述第一数据的一个比特。
15.如权利要求11所述的装置,其特征在于,所述解码器被配置为:
在所述接收时钟的每循环捕获所述第一数据的两个比特。
16.如权利要求11所述的装置,其特征在于,所述时钟发生器被配置为:
在所述第一数据的比特可用于从所述数据信号捕获之前从所述数据信号接收起始比特的同时,使用在所述时钟信号中收到的一个或多个脉冲同步所述接收时钟,其中所述一个或多个脉冲中的每一者具有大约所述时钟信号的周期的一半的历时。
17.如权利要求11所述的装置,其特征在于,所述时钟信号中的每个脉冲的中心与所述数据信号中所传送的连续比特之间的转变相对齐。
18.如权利要求11所述的装置,其特征在于,在根据I3C协议操作所述串行总线的同时从所述时钟信号对所述第二数据进行解码。
19.如权利要求11所述的装置,其特征在于,进一步包括:
脉幅解调器,其被配置为从所述时钟信号对第三数据进行解码,其中所述第三数据的比特以所述脉冲的电压电平进行编码。
20.一种在耦合至串行总线的传送方设备处执行的方法,包括:
在要于多导线串行总线的第一导线上传送的数据信号中提供第一数据;
在要于多导线串行总线的第二导线上传送的时钟信号中提供一系列脉冲,其中每个脉冲具有上升沿和下降沿,每个边沿与所述第一数据的不同比特相对齐;
通过基于所述时钟信号中第二数据的一个或多个比特的值来控制一系列脉冲中的每个脉冲的历时,对所述第二数据进行编码。
在所述串行总线上传送所述数据信号和所述时钟信号。
21.如权利要求20所述的方法,其特征在于,所述第二数据的一个比特用于在每个脉冲的两个可能的脉冲历时之间进行选择。
22.如权利要求20所述的方法,其特征在于,所述第二数据的两个比特用于在每个脉冲的四个可能的脉冲历时之间进行选择。
23.如权利要求20所述的方法,其特征在于,进一步包括:
在所述数据信号中提供起始比特,其中所述起始比特在传输中位于所述第一数据之前;以及
使用所述时钟信号中的两个脉冲对起始比特进行时钟定时,其中所述两个脉冲中的每一者具有大约所述时钟信号的周期的一半的历时。
24.如权利要求20所述的方法,其特征在于,所述时钟信号中的每个脉冲的中心与所述数据信号中的连续比特之间的转变相对齐。
25.如权利要求20所述的方法,其特征在于,控制每个脉冲的历时包括:
基于所述第二数据的所述一个或多个比特的值从多个可能的历时中选择每个脉冲的所述历时,其中对于所述多个可能的历时中的每一者,所述每个脉冲的边沿定时保持在为所述串行总线上的时钟抖动所定义的容差范围内。
26.如权利要求20所述的方法,其特征在于,在根据I3C协议操作所述串行总线的同时传送所述数据。
27.如权利要求20所述的方法,其特征在于,进一步包括:
通过基于所述时钟信号中第三数据的一个或多个比特的值来控制一系列脉冲中的每个脉冲的电压电平,对所述第三数据进行编码。
28.一种装置,包括:
多个线接收机,每个线接收机被耦合至串行总线的导线;
编码器,其被配置为对要通过第一线驱动器传送的数据信号中的第一数据进行编码;
时钟发生器,其被配置为在要通过第二导线传送的时钟信号中提供一系列脉冲,其中每个脉冲具有上升沿和下降沿,每个边沿与所述第一数据的不同比特相对齐;以及
脉宽调制器,其被适配为通过基于所述时钟信号中的第二数据的一个或多个比特的值来控制一系列脉冲中的每个脉冲的历时,对所述第二数据进行编码。
29.如权利要求28所述的装置,其特征在于,所述时钟发生器被配置为:
在所述时钟信号中提供两个脉冲,所述两个脉冲中的每一者具有大约所述时钟信号的周期的一半的历时。
30.如权利要求28所述的装置,其特征在于,进一步包括:
脉幅调制器,其被适配为通过基于所述时钟信号中第三数据的一个或多个比特的值来控制一系列脉冲中的每个脉冲的电压电平,对所述第三数据进行编码。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/226,113 US10872055B2 (en) | 2016-08-02 | 2016-08-02 | Triple-data-rate technique for a synchronous link |
US15/226,113 | 2016-08-02 | ||
PCT/US2017/044990 WO2018026871A1 (en) | 2016-08-02 | 2017-08-01 | Triple-data-rate technique for a synchronous link |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109643298A true CN109643298A (zh) | 2019-04-16 |
CN109643298B CN109643298B (zh) | 2022-06-24 |
Family
ID=59593202
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201780046871.9A Active CN109643298B (zh) | 2016-08-02 | 2017-08-01 | 用于同步链路的三倍数据率技术 |
Country Status (4)
Country | Link |
---|---|
US (1) | US10872055B2 (zh) |
EP (1) | EP3469487B1 (zh) |
CN (1) | CN109643298B (zh) |
WO (1) | WO2018026871A1 (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110275846A (zh) * | 2019-08-19 | 2019-09-24 | 广东高云半导体科技股份有限公司 | I3c双边沿通讯电路及电子设备 |
CN110865957A (zh) * | 2019-11-15 | 2020-03-06 | 上海移芯通信科技有限公司 | 一种uart接口的数据接收方法和装置 |
CN112100108A (zh) * | 2019-06-18 | 2020-12-18 | 恩智浦有限公司 | 用于多个串行通信信号的异步串行化的方法和*** |
CN112765082A (zh) * | 2021-01-27 | 2021-05-07 | 维沃移动通信有限公司 | 多主机仲裁方法、装置和可读存储介质 |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA2996709A1 (en) * | 2015-08-27 | 2017-03-02 | Dronsystems Limited | A highly automated system of air traffic control (atm) for at least one unmanned aerial vehicle (unmanned aerial vehicles uav) |
US10163465B1 (en) * | 2017-08-18 | 2018-12-25 | Novatek Microelectronics Corp. | Data receiver and controller for DDR memory |
EP3584601B1 (en) | 2018-06-18 | 2023-10-18 | NXP USA, Inc. | Time-encoded messaging for radar cascaded synchronization system |
US11121810B2 (en) * | 2019-01-24 | 2021-09-14 | Infineon Technologies Ag | Radar interface with enhanced frame signal |
US10572438B1 (en) * | 2019-03-07 | 2020-02-25 | Qualcomm Incorporated | Dynamic optimal data sampling time on a multi-drop bus |
WO2021133370A1 (en) * | 2019-12-23 | 2021-07-01 | Intel Corporation | Apparatus and method for transmitting a bit in addition to a plurality of payload data symbols of a communication pro-tocol, and apparatus and method for decoding a data signal |
US11106620B1 (en) * | 2020-04-07 | 2021-08-31 | Qualcomm Incorporated | Mixed signal device address assignment |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6510095B1 (en) * | 2001-09-28 | 2003-01-21 | Fujitsu Limited | Semiconductor memory device for operating in synchronization with edge of clock signal |
CN1902614A (zh) * | 2003-12-31 | 2007-01-24 | 英特尔公司 | 接收器组合 |
CN101480026A (zh) * | 2006-04-26 | 2009-07-08 | 高通股份有限公司 | 与多个***设备通信的无线设备 |
US20140003451A1 (en) * | 2012-06-29 | 2014-01-02 | Mahesh Wagh | Architected Protocol For Changing Link Operating Mode |
US8680894B1 (en) * | 2013-03-06 | 2014-03-25 | Calient Technologies, Inc. | Precision driver circuits for micro-electro-mechanical system |
CN103675381A (zh) * | 2012-09-25 | 2014-03-26 | 北京普源精电科技有限公司 | 一种具有周期触发功能的并行采样的示波器 |
CN103713171A (zh) * | 2012-10-08 | 2014-04-09 | 北京普源精电科技有限公司 | 一种具有延迟触发功能的示波器 |
WO2015153773A1 (en) * | 2014-04-02 | 2015-10-08 | Qualcomm Incorporated | Methods to send extra information in-band on inter-integrated circuit (i2c) bus |
Family Cites Families (30)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5923705A (en) * | 1996-07-18 | 1999-07-13 | Qualcomm Incorporated | UART based autobauding without data loss |
US6292718B2 (en) | 1999-01-28 | 2001-09-18 | International Business Machines Corp. | Electronic control system |
US6675272B2 (en) | 2001-04-24 | 2004-01-06 | Rambus Inc. | Method and apparatus for coordinating memory operations among diversely-located memory components |
US7463986B2 (en) * | 2002-10-25 | 2008-12-09 | Hudson Bay Wireless Llc | Electrical power metering system |
WO2006080065A1 (ja) | 2005-01-27 | 2006-08-03 | Spansion Llc | 記憶装置、およびその制御方法 |
EP1696621A1 (en) | 2005-02-28 | 2006-08-30 | STMicroelectronics (Research & Development) Limited | Flow controlled pulsed serial link |
US7668524B2 (en) | 2005-12-23 | 2010-02-23 | Intel Corporation | Clock deskewing method, apparatus, and system |
FR2939926B1 (fr) | 2008-12-17 | 2010-12-10 | St Microelectronics Rousset | Transmission sur bus i2c |
JP2011141928A (ja) | 2010-01-07 | 2011-07-21 | Elpida Memory Inc | 半導体装置及びその制御方法 |
JP2012133416A (ja) | 2010-12-17 | 2012-07-12 | Toshiba Corp | メモリシステム |
US9239806B2 (en) | 2011-03-11 | 2016-01-19 | Micron Technology, Inc. | Systems, devices, memory controllers, and methods for controlling memory |
US9432298B1 (en) | 2011-12-09 | 2016-08-30 | P4tents1, LLC | System, method, and computer program product for improving memory systems |
US8972640B2 (en) * | 2012-06-27 | 2015-03-03 | Intel Corporation | Controlling a physical link of a first protocol using an extended capability structure of a second protocol |
US9152598B2 (en) | 2012-11-28 | 2015-10-06 | Atmel Corporation | Connecting multiple slave devices to a single master controller in bus system |
DE102013210182A1 (de) * | 2013-05-29 | 2014-12-04 | Robert Bosch Gmbh | Verfahren zur Bereitstellung einer generischen Schnittstelle sowie Mikrocontroller mit generischer Schnittstelle |
DE102013210064A1 (de) * | 2013-05-29 | 2014-12-04 | Robert Bosch Gmbh | Verfahren zur Bereitstellung einer generischen Schnittstelle sowie Mikrocontroller mit generischer Schnittstelle |
DE102013210077A1 (de) * | 2013-05-29 | 2014-12-04 | Robert Bosch Gmbh | Verfahren zur Bereitstellung einer generischen Schnittstelle sowie Mikrocontroller mit generischer Schnittstelle |
US10282269B2 (en) | 2013-12-18 | 2019-05-07 | Qorvo Us, Inc. | Read technique for a bus interface system |
US20150220472A1 (en) | 2014-02-05 | 2015-08-06 | Qualcomm Incorporated | Increasing throughput on multi-wire and multi-lane interfaces |
US9658644B2 (en) * | 2014-10-06 | 2017-05-23 | S-Printing Solution Co., Ltd. | CRUM unit mountable in consumable unit of image forming apparatus and image forming apparatus using the same |
CN107209739A (zh) * | 2015-02-04 | 2017-09-26 | 高通股份有限公司 | 电压模式和电流模式设备枚举 |
US10466738B2 (en) * | 2015-07-20 | 2019-11-05 | Lattice Semiconductor Corporation | Low-speed bus time stamp methods and circuitry |
US9727506B2 (en) * | 2015-10-01 | 2017-08-08 | Sony Corporation | Communication system, communication system control method, and program |
US9960981B2 (en) * | 2015-10-08 | 2018-05-01 | Sony Corporation | Communication device, communication method, program, and communication system |
US20170255588A1 (en) * | 2016-03-07 | 2017-09-07 | Qualcomm Incorporated | Multiprotocol i3c common command codes |
US10873752B2 (en) * | 2016-05-11 | 2020-12-22 | Intel Corporation | Adaptive camera resolution for compression matching |
US10481990B2 (en) * | 2016-06-13 | 2019-11-19 | Intel Corporation | Apparatuses and methods for a multiple master capable debug interface |
US10305495B2 (en) * | 2016-10-06 | 2019-05-28 | Analog Devices, Inc. | Phase control of clock signal based on feedback |
US20190171609A1 (en) * | 2017-12-05 | 2019-06-06 | Qualcomm Incorporated | Non-destructive outside device alerts for multi-lane i3c |
US10432258B1 (en) * | 2018-09-28 | 2019-10-01 | The Boeing Company | Systems and methods for monitoring and analyzing broadband over power line data |
-
2016
- 2016-08-02 US US15/226,113 patent/US10872055B2/en active Active
-
2017
- 2017-08-01 EP EP17751925.3A patent/EP3469487B1/en active Active
- 2017-08-01 WO PCT/US2017/044990 patent/WO2018026871A1/en unknown
- 2017-08-01 CN CN201780046871.9A patent/CN109643298B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6510095B1 (en) * | 2001-09-28 | 2003-01-21 | Fujitsu Limited | Semiconductor memory device for operating in synchronization with edge of clock signal |
EP1298667A2 (en) * | 2001-09-28 | 2003-04-02 | Fujitsu Limited | Semiconductor memory device |
CN1902614A (zh) * | 2003-12-31 | 2007-01-24 | 英特尔公司 | 接收器组合 |
CN101480026A (zh) * | 2006-04-26 | 2009-07-08 | 高通股份有限公司 | 与多个***设备通信的无线设备 |
US20140003451A1 (en) * | 2012-06-29 | 2014-01-02 | Mahesh Wagh | Architected Protocol For Changing Link Operating Mode |
CN103675381A (zh) * | 2012-09-25 | 2014-03-26 | 北京普源精电科技有限公司 | 一种具有周期触发功能的并行采样的示波器 |
CN103713171A (zh) * | 2012-10-08 | 2014-04-09 | 北京普源精电科技有限公司 | 一种具有延迟触发功能的示波器 |
US8680894B1 (en) * | 2013-03-06 | 2014-03-25 | Calient Technologies, Inc. | Precision driver circuits for micro-electro-mechanical system |
WO2015153773A1 (en) * | 2014-04-02 | 2015-10-08 | Qualcomm Incorporated | Methods to send extra information in-band on inter-integrated circuit (i2c) bus |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112100108A (zh) * | 2019-06-18 | 2020-12-18 | 恩智浦有限公司 | 用于多个串行通信信号的异步串行化的方法和*** |
CN110275846A (zh) * | 2019-08-19 | 2019-09-24 | 广东高云半导体科技股份有限公司 | I3c双边沿通讯电路及电子设备 |
CN110865957A (zh) * | 2019-11-15 | 2020-03-06 | 上海移芯通信科技有限公司 | 一种uart接口的数据接收方法和装置 |
CN112765082A (zh) * | 2021-01-27 | 2021-05-07 | 维沃移动通信有限公司 | 多主机仲裁方法、装置和可读存储介质 |
CN112765082B (zh) * | 2021-01-27 | 2024-04-26 | 维沃移动通信有限公司 | 多主机仲裁方法、装置和可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
US20180039598A1 (en) | 2018-02-08 |
US10872055B2 (en) | 2020-12-22 |
WO2018026871A1 (en) | 2018-02-08 |
EP3469487B1 (en) | 2019-12-04 |
CN109643298B (zh) | 2022-06-24 |
EP3469487A1 (en) | 2019-04-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109643298A (zh) | 用于同步链路的三倍数据率技术 | |
CN105283862B (zh) | 用于数据通信的方法和装置 | |
US10042797B2 (en) | Voltage mode and current mode device enumeration | |
CN105637495B (zh) | 低功率相机控制接口总线和设备 | |
JP6054586B2 (ja) | N相信号遷移アライメント | |
JP6000499B2 (ja) | 3相クロック復元遅延較正 | |
CN105594172B (zh) | 以最小phy改变及无协议改变而增强mipi d-phy链路速率的方法 | |
CN108370338A (zh) | 用于消息接发和输入/输出传递接口的最优等待时间分组化器有限状态机 | |
US20150220472A1 (en) | Increasing throughput on multi-wire and multi-lane interfaces | |
CN106170781A (zh) | 用于在集成电路间(i2c)总线上带内发送额外信息的方法 | |
CN109644020A (zh) | 用于自适应均衡、自适应边沿跟踪以及延迟校准的c-phy训练模式 | |
JP2018525902A (ja) | C−phy3相トランスミッタ用の時間ベース等化 | |
CN106462516A (zh) | 由多协议设备共享的可动态地调节的多线总线 | |
CN106415518A (zh) | 具有带内中断的相机控制接口扩展 | |
CN105723644A (zh) | 基于码元转变的眼图触发 | |
JP6808641B2 (ja) | パルスベースのマルチワイヤリンクのためのクロックおよびデータ復元 | |
JP7157895B1 (ja) | C-phyハーフレートワイヤ状態のエンコーダおよびデコーダ | |
CN106464345B (zh) | 用于全双工无线通信的干扰管理技术 | |
US20150380974A1 (en) | Systems, methods, and devices for wireless charging | |
CN112835825A (zh) | 具有多模调制的增强虚拟gpio | |
CN106462533A (zh) | 用于多码元字的同步方法 | |
US9426082B2 (en) | Low-voltage differential signaling or 2-wire differential link with symbol transition clocking | |
CN106471484A (zh) | 在共享总线***中使用异步主设备参考时钟生成组合总线时钟信号以及相关方法、设备和计算机可读介质 | |
CN109416678A (zh) | 加速型i3c主设备停止 | |
US20200097434A1 (en) | Enhanced high data rate technique for i3c |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |