专利名称:多协议数据总线系统的制作方法
技术领域:
本发明涉及利用例如串行数据总线之类的数据总线进行控制的信号处理系统。
信号处理系统,例如在消费电子设备中的信号处理系统通常包括实现各种功能的数字集成电路(IC)。例如,在电视接收机中,IC提供包括调谐、视频处理以及音频处理的信号处理功能。另外,微计算机(μC)IC通过将例如控制参数这样的数据写入其它IC和从其它IC读出例如状态数据这样的数据来控制其它IC的操作。
利用例如串行数据总线这样的数据总线在这些IC和控制μC之间传送信息。使用的两种总线协议的例子分别是由Philips和ITT支持的Inter IC(IIC或I2C)总线协议和Intermetall(IM)总线协议。每一总线协议需要一些呈现特定的时序关系的总线信号。对于每一协议,这些信号和时序都不相同。例如,IIC总线需要分别被称为“SCL”和“SDA”的时钟和数据信号,而IM总线需要分别被称为“CLOCK”、“DATA”和“IDENT”的时钟、数据和启动(enable)信号。
信号处理系统所用的IC可能需要不止一种的总线协议。例如,由印第安那州印第安那波利斯市的汤姆森消费电子有限公司(Thomson Consumer Electronics,Inc.)制造的电视系统,例如CTC-169彩色电视底盘包括一些利用IIC总线接口进行控制的IC,但另一些IC需要IM总线接口。因此,控制μC必须为每一协议提供控制信号。一种方法是为每一协议提供位于μC上的串行总线引线。这一方法需要5个串行总线引线来提供IIC和IM协议所需的5个信号。但是,如控制μC这样的IC能够用于外加的串行总线信号的引线数目通常是有限的。另外,增加串行I/O能力需要增加接口电路,将该接口电路包括到IC的设计中去可能是困难或者是不可能的。
另一种方法是将相同的总线系统和控制μC引线用于全部协议。例如,如果在控制IM类型的IC时用控制μC的三条引线来提供IM格式信号,则在IIC通信期间用该相同的三条引线的两条来提供IIC格式信号。在1994年12月27日授权给WillianJ.Testin的美国专利第5376928号中描述了这样的系统,该专利与本申请一起被共同转让。如在美国专利5376928中所描述的,使用一组信号通路来为多个协议提供信号可能造成总线冲突和与该总线连接的IC的错误控制。简单地说,一种协议专用的集成电路(IC)可能错误地理解被不同的协议格式化的信号。例如,IIC总线标准规定当时钟信号呈现无效状态(恒为逻辑1)时,数据信号中出现的下降转换(逻辑1到逻辑0)表示“消息开始”状态。在“消息开始”状态之后,IIC设备可以响应总线上的后续数据。提供IM总线格式传送的信号波形可能无意中产生IIC协议的“消息开始”状态。这样一来,IIC设备可能响应IM格式信息,造成两设备同时在总线上进行通信。可能导致正在进行的任何传输的恶化和不正确的系统操作。
美国专利5376928揭示的系统通过在需要改变协议时交换提供数据和时钟信号的总线导线的功能来解决总线冲突的问题。具体来说,Testin揭示了一条在IIC操作期间提供IIC时钟信号(信号SCL)和在IM操作期间提供IM数据信号(信号DATA)的总线导线。另一总线导线在IIC操作期间提供IIC数据信号(信号SDA)和在IM操作期间提供IM时钟信号(信号CLOCK)。第三总线导线提供IM总线操作的ENABLE信号。
美国专利5376928揭示的方法需要开关和开关控制信号来改变两条总线导线的功能。一个开关在IIC操作期间连接信号SCL到第一总线导线而在IM操作期间连接信号DATA到第一总线导线。另一开关在IIC操作期间连接信号SDA到第二总线导线而在IM操作期间连接信号CLOCK到第二总线导线。必须产生控制信号来控制每一开关。实现开关性能可能需要牵涉到不希望有的追加费用和/或复杂性的外加电路。例如,给“现用”控制μCIC增加电路可能是非常昂贵的。
本发明部分在于认识了所描述的问题,部分在于提供解决了这些问题的多协议数据总线系统。根据本发明的一个方面,系统包括数据总线和控制器,所述数据总线包括第一、第二和第三信号通路,所述控制器在系统相应的第一和第二操作模式期间,按照第一和第二数据总线协议产生时钟和数据信号,在第一操作模式期间,分别在第一和第三信号通路上提供时钟和数据信号,在第二操作模式期间,分别在第二和第三信号通路上提供时钟和数据信号。
通过参看所附的附图可以更好地理解本发明,其中
图1以方框图形式表示包括本发明一实施例的系统;
图2表示说明两种串行数据总线协议的波形;图3和图4表示说明图1所示系统的操作模式的波形;图5以方框图形式表示图1所示系统的另一实施例。
图1表示典型的信号处理系统,例如上述的CTC-169彩色电视底盘,该系统包括利用标为IDENT、CLOCK、DATA和SCL的信号通路与设备150和160连接的控制微计算机(μC或控制器)100。控制器100可以是例如Motorola MC68HC05之类的集成电路(IC)微控制器。设备150表示根据控制器100产生的IIC格式信号来控制的一台或多台设备。设备150的例子是诸如Microchip 24C02 EEPROM、Motorola MC 44802调谐处理器和Philips 8444数-模转换器(DAC)之类的IC。设备160表示根据控制器100产生的IM格式信号来控制的一台或多台设备。设备160的例子是诸如Thomson 1A6809 Proscan处理器、Thomson1A68106立体声处理器和Thomson 1A68105画中画(PIP)处理器之类的IC。
根据本发明的原理,图1所示的信号通路IDENT、CLOCK、DATA和SCL提供了允许控制器100控制响应按照IIC或IM串行数据总线协议格式化的信号的设备的多协议串行数据总线。对于IIC总线通信,控制器100根据IIC总线协议分别在信号路径SCL和DATA上产生时钟信号和数据信号。对于IM总线通信,控制器100根据IM总线协议分别在信号通路CLOCK和DATA上产生时钟信号和数据信号,以及在信号通路上产生同一名称的启动信号IDENT。
参看图2可以更好地理解本发明,该图表示说明为每一协议所需的信号的一些时序关系的信号波形。IIC和IM总线通信的专门时序要求是本领域技术人员所熟知的,在此不详细说明。图2的顶部部分表示IIC协议通信的时序关系。特别是,当在信号SDA(数据信号)中出现转换而信号SCL(时钟信号)在逻辑1空闲(没有通信在进行中)时就出现消息的“开始”和“结束”状态。在消息的开始和结束状态之间,信号SCL的每一时钟脉冲表示信号SDA中数据位的出现。接收设备利用时钟脉冲来将数据位存储在寄存器中。8位即一字节地址信息开始每一传输以便指出通信要被传至的设备。地址后是一个或一个以上字节数据。每字节地址或数据后是在接收设备和控制器之间提供“握手”以保证前面的字节被接收的应答位(“ACK”)。
图2的低部部分表示IM协议通信的时序关系。在信号IDENT从逻辑1变化为逻辑0之后信号CLOCK的第一个下降转换处出现IM消息开始状态。在开始状态出现之后,信号IDENT保持在逻辑0,直到一字节地址信息已被传输为止。然后信号IDENT返回逻辑0并保持在逻辑0,传送一个或多个字节数据。在信号CLOCK(在逻辑1)空闲期间信号IDENT的一个脉冲表示消息的结束状态。如在IIC通信的情形那样,在消息的开始和结束状态之间,信号CLOCK的每一脉冲表示有效的地址或数据位出现在数据信号通路中。
图3和图4中的波形表示图1的控制器100产生的信号,这些信号利用图1所示的4条信号通路提供IIC和IM总线通信。图3表示图1系统的第一操作模式,在该模式期间,控制器100通过分别在图1的信号通路SCL和DATA上产生IIC格式的时钟和数据信号来与IIC类型的设备进行通信。信号通路SCL和DATA分别与IIC类型设备的SCL和SDA信号引线连接。如图3所示,控制器100在IIC通信期间产生的信号SCL和DATA之间的时序关系提供了图2所示IIC协议所需的开始、地址、数据和结束状态。
图4表示图1系统的第二操作模式,在该模式期间,控制器100通过分别在图1的信号通路IDENT、CLOCK和DATA上提供IM格式的启动、时钟和数据信号来与IM类型的设备进行通信。这些信号与IM类型设备的相应命名的引线连接。如能够在图4中看到的,控制器100在IM通信期间产生的信号IDENT、CLOCK和DATA之间的时序关系提供了图2所示IM协议所需的开始、地址、数据和结束状态。
对任一协议,控制器100通过执行实现称为“位冲击(bit-banging)”的过程的软件例程在信号DATA上产生地址和数据。位冲击涉及到利用软件来处理μC 100内部寄存器,例如累加器寄存器某一位的内容。例如,该软件可以包括对存储在寄存器中的数据进行逻辑操作的指令。位冲击软件例程的每次执行以产生所需串行位组合的一个位的方式修改存储在寄存器中的值。信号通路DATA通过控制器100的双向输入—输出(I/O)引线与某一寄存器位连接。该I/O引线是“存储器映象”的,即被指定了在存储器空间中的地址,因此寄存器位与该I/O引线的“连接”是通过将寄存器位的内容“写入”I/O引线来实现的。因为例如软件必须在信号DATA上为在IM传输中的信息的每一个“字”产生8位的数据,但每一个IIC字需要8位的数据和一应答位,即9位的信息,所以对于每一协议执行不同的软件指令序列。
除了对于每一协议在软件控制下由控制器100产生的信号外,图1的系统还包括一偏置电路,该偏置电路包括在未被使用的信号通路上建立预定信号电平、例如两个二进制信号电平之一的电阻R1至R4。例如,在IIC格式通信期间,信号IDENT和CLOCK未被使用并通过偏置(或上拉)电阻R2和R3被设定为逻辑1(约为电源电压Vt)。为了方便将信号IDENT和CLOCK设定为逻辑1,控制器100内的与信号IDENT和CLOCK连接的输出电路可以例如利用三态设计来实现,该三态设计在IIC通信期间在信号通路IDENT和CLOCK上提供了高阻状态。
类似地,在IM格式通信期间,信号SCL未被使用并被电阻R4保持在逻辑0(即约地电位)的电平上。如在控制器100的用于信号IDENT和CLOCK的输出电路的情形中那样,信号SCL的输出电路可以是在IM通信期间在信号通路SCL上提供了高阻状态的三态设计。
偏置电路还在空闲状态、即当没有总线通信在进行中时在全部4条信号通路上建立预定信号电平。在IIC通信之前和之后的空闲状态如图3所示。在空闲状态,电阻R1-R3设定信号IDENT、CLOCK和DATA为逻辑1而电阻R4设定信号SCL为逻辑0。因为IIC协议需要信号SCL处于逻辑1以便出现IIC的开始和结束状态(见图2),所以如图3所示,控制器100在IIC通信之前和之后设定信号SCL为逻辑1。
通过提供只使用一条数据线(信号DATA)的多总线协议系统,图1所示系统将组合IIC和IM总线协议系统的总线导线数目从5条减少到4条。因此,该系统减少了串行I/O所需的控制器100引线的数目,还减少了必须在整个系统中布线的总线导线的数目。另外,因为信号DATA的功能不改变,所以将不同的信号源与信号线DATA连接所需的开关和控制电路不是必需的。还有,在所有情形中都在软件控制下产生信号DATA从而将实现串行数据总线接口所需的硬件数量减至最少。
在将两种协议的数据信号合并为一条信号通路减少了总线导线的数目的同时,每一时钟信号的单独信号通路可以在未使用的时钟导线上建立将防止错误的开始状态和错误的结束状态的信号电平。错误的开始状态和错误的结束状态会造成错误的数据和不正确的系统操作。例如,当EEPROM接收跟随有结束状态的某一数据序列时,该EEPROM可被用来执行写操作,即修改EEPROM数据。因此,错误的结束状态会无意地修改EEPROM数据并对系统操作产生不利影响。图1所示系统通过在空闲时将信号SCL设定为逻辑0而防止了IIC设备错误的开始状态和错误的结束状态。如可以在图2和图3中看到的,为了出现开始或结束状态,信号SCL必须处于逻辑1。类似地,如参看图2和图4一目了然的那样,在未被利用时将信号CLOCK设定为逻辑1防止了IM设备错误的开始状态和错误的结束状态。因此,单独的时钟导线改善了系统的可靠性。
虽然图1所示系统避免了转换总线导线功能和产生数据的附加硬件,但本发明适用于包括这种特点的系统。例如,图5表示包括与图1中的相同的串行数据总线信号通路的系统。但是,图5的控制器500包括串行通信接口(SCI)510、微处理器520和三态多路转换器(MUX)530。SCI 510内的硬件产生IM协议通信的信号。例如,SCI 510内的门电路产生信号IDENT和CLOCK,而信号IM DATA根据经移位寄存器512移位的数据在移位寄存器512的输出端直接产生。
IIC通信的信号在软件控制下由微处理器520利用上述位冲击过程来产生。因为IIC协议的每一个字需要9位信息(8个数据位和1个应答位),所以使用位冲击处理而不是例如移位寄存器512这样的硬件。如果移位寄存器520是8位的移位寄存器,则产生9位数据需要该移位寄存器额外的装入,这是不希望有的。如果有合适的移位寄用器可用的话,则IIC通信的信号可以用硬件来产生。
还是在图5中,MUX 530起开关的作用,在IM通信期间,将SCI 510的信号IM DATA接至信号通路DATA,还将信号SDA(IIC数据)接至信号通路DATA进行IIC通信。MUX 530的开关功能利用微处理器520产生的信号CTRL来控制。MUX 530的三态输出特点在与信号DATA连接的双向引线作为输入而操作时在MUX 530的输出端提供了高阻状态。因此,虽然利用附加硬件的特点来产生总线信号,但图5的系统保持了图1的总线信号结构。
所述实施例的各种变动对本领域技术人员而言是显而易见的。例如,尽管已在电视信号处理系统的范围内描述了本发明,但本发明也适用于涉及到多总线协议的任何总线控制的系统。此外,本发明还适用于除以上描述的典型的IIC和IM协议外的总线协议。这些和其它变动将被包括在权利要求的范围之内。
权利要求
1.一系统,包括数据总线,所述数据总线包括第一(SCL)、第二(CLOCK)和第三(DATA)信号通路,该系统特征在于还包括控制装置(100),在所述系统的第一操作模式期间根据第一数据总线协议(IIC)产生第一时钟信号和第一数据信号,在第二操作模式期间根据第二数据总线协议(IM)产生第二时钟信号和第二数据信号;所述控制装置在所述第一操作模式期间分别在所述第一(SCL)和第三(DATA)信号通路上提供所述第一时钟信号和所述第一数据信号,在所述第二操作模式期间分别在所述第二和第三(DATA)信号通路上提供所述第二时钟信号和所述第二数据信号。
2.权利要求1所述的系统,其特征在于还包括在所述第二操作模式期间在所述第一(SCL)信号通路上保持预定信号电平的偏置装置(R4)。
3.权利要求2所述的系统,其特征在于所述第一和第二时钟信号以及所述第一和第二数据信号是至少呈现两种二进制状态中的一种状态的二进制信号;在所述第三(DATA)信号通路上的所述第一数据信号在所述两种二进制状态之间的转换期间,所述第一(SCL)信号通路上的所述第一时钟信号呈现所述两种二进制状态中的第一种状态,以便表示在所述第一操作模式期间经由所述数据总线的通信状态;所述偏置装置(R4)在所述第二操作模式期间在所述第一信号通路上建立的所述预定信号电平是所述两种二进制状态中的第二种状态的表示。
4.权利要求3所述的系统,其特征在于所述控制装置(100)包括具有与所述第三(DATA)信号通路连接的输出端的微处理器(520),在所述第一和第二操作模式期间,所述微处理器(520)在软件控制下在其所述输出端产生所述第一和第二数据信号。
5.权利要求4所述的系统,其特征在于所述数据总线是串行数据总线;所述第一数据总线协议包括IIC串行数据总线协议;所述第二数据总线协议包括IM串行数据总线协议。
6.权利要求5所述的系统,其特征在于所述数据总线还包括第四信号通路(IDENT);和所述控制装置根据所述第二数据总线协议产生启动信号以及在所述第二操作模式期间在所述第四信号通路上提供所述启动信号。
7.权利要求1所述的系统,其特征在于还包括开关装置(530),响应控制信号(CLRT)以便在所述第一操作模式期间将所述第一数据信号接至所述第三(DATA)信号通路以及在所述第二操作模式期间将所述第二数据信号接至所述第三(DATA)信号通路;所述控制装置(100)产生表示所述系统是处于所述第一还是所述第二操作模式的所述控制信号(CTRL)。
8.权利要求7所述的系统,其特征在于还包括在所述第二操作模式期间在所述第一信号通路上建立预定信号电平的偏置装置(R4)。
9.权利要求7所述的系统,其特征在于所述控制装置还包括微处理器(520),在软件控制下,在所述第一操作模式期间在其输出端产生所述第一数据信号;和移位寄存器(512),在所述第二操作模式期间在其输出端产生所述第二数据信号;所述开关装置(530)响应所述控制信号(CLRT)以便在所述第一操作模式期间将所述微处理器的所述输出接至所述第三(DATA)信号通路以及在所述第二操作模式期间将所述移位寄存器(512)的所述输出接至所述第三(DATA)信号通路。
10.权利要求9所述的系统,其特征在于所述数据总线是串行数据总线;所述第一数据总线协议包括IIC串行数据总线协议;所述第二数据总线协议包括IM串行数据总线协议。
11.权利要求10所述的系统,其特征在于所述数据总线还包括第四(IDENT)信号通路;所述控制装置(100)根据所述第二数据总线协议产生启动信号以及在所述第二操作模式期间在所述第四(IDENT)信号通路上提供所述启动信号。
全文摘要
多协议串行数据总线系统由包括两条时钟导线和数据导线的数据总线组成。控制器在系统的第一操作模式期间根据第一串行数据总线协议产生第一时钟信号和第一数据信号,在第二操作模式期间根据第二串行数据总线协议产生第二时钟信号和第二数据信号。在第一操作模式期间,分别在第一和第三信号通路上提供第一时钟信号和第一数据信号。在第二操作模式期间,分别在第二和第三信号通路上提供第二时钟信号和第二数据信号。
文档编号G06F13/38GK1118477SQ9510842
公开日1996年3月13日 申请日期1995年7月14日 优先权日1994年7月15日
发明者G·A·埃得, M·D·兰迪斯 申请人:汤姆森消费电子有限公司