用于传输信号和数据的方法

文档序号:6405831阅读:206来源:国知局
专利名称:用于传输信号和数据的方法
技术领域
本发明涉及在数据源及与其耦合的多个外部设备之间传输数据的通讯装置的领域。更具体地讲,本发明是涉及多个外部设备和主计算机之间外部设备总线上的数据传输。
计算机工业中,经常需要在多个数据处理设备(如计算机、打印机、存贮器等等)之间传递数据和命令。本世纪70年代初,由于计算机网络系统的问世,计算机与其它外部设备之间的相互联接有了重要发展。计算机网络系统使得可以在远离大型计算机的地方分布式访问计算资源。
网络,例如ARPA网络,主要用于提供不同用户对较大的分时系统的存取及这种系统之间的数据传输。在地理上的局部网络中,称做“局部地区网络”(LANS),用于联接一批计算机,终端及其外部设备,通常是在一座建筑物或邻近的建筑物中,使这些设备可以相互通讯或与联在其它网络中的设备通讯。使用局部地区网络可以实现分布式计算。换言之,联在局部地区网络上的某些设备可以被指定来完成特定功能,如文件存贮,数据库管理、终端处理等等。由于不同的机器完成不同的任务,这种分布式处理使系统更简单,效率更高。
目前,网络技术只用于提供数据处理设备之间的通讯,这些设备是机器输入设备。然而,网络技术还可以用来提供在单独的计算机与多个外部设备之间的进行通讯的网络装置,例如人工输入设备,只听设备(listenonlyclevice)和仪表(appliance)等等。人工输入设备包括键盘,光标控制设备(如鼠型定标器)及草图板等等。只听设备包括处理过程记录器(transactionlog)等等。在先有技术中,这些设备是通过每个设备的指定端口与主计算机相联的。为联接外部输入设备,常常需要有附加“板”。插入附加板时,还要求主计算机断电,不可在系统工作时插入。这种现有技术的系统效率不高,因为通常外部设备不同时工作。(例如,使用鼠型定标器的用户一般不会同时使用键盘或草图板),因此,这些设备可以共享一条联接到主计算机的公共线路,不需附加板而不会引起数据传输问题先有技术的网络设计方案还包括了良好的建立网络控制的方法,以使某一设备可以实现传输。将外部设备联网时,并不需要这样的系统,因为通常在某一时刻只使用一台设备。此外,先有技术的网络设计方案使得联网设备可以通过复杂的“查询”方法相互识别。另一方面,这种复杂的过程对于联接外部设备是不需要的,因为除主计算机之外,这些设备本身并不需要被其它设备识别。
因此,本发明的一个目的就是给出多个外部设备之间的通讯装置,这种装置使得将那些设备耦合到主计算机时简单而有效。
本发明的另一个目的是给出使所有上述外部设备通过单一的输入端口耦合到主计算机的通讯装置。
本发明的又一个目的是给出使外部设备可指出向主计算机发出服务请求信号的通讯装置。
本发明还有一个目的是提供一个给出可以确定通讯装置线路是否被占用的的装置的通讯线路。
本发明的另一个目的是给出使外部设备可以在系统工作时加入的通讯装置。
已公开了一种包括有仪器和方法的用于在多个外部设备与主计算机之间传输数据的通讯装置。在优选实施例中,多个外部设备,如人工输入设备(包括鼠型定标器、键盘,草图板等),仪表,只听设备等等,都耦合到公共电缆上以传输数据和接收命令。当耦合到电缆上的设备需要服务时,它可以通知主计算机,该设备将不断发出服务请求,直到接收到主计算机的发送数据命令。所有相同的通用型外部设备(如所有键盘),都有做为识别码的完全相同的硬件跳线地址。用这种方式,主计算机可以识别在电缆上通讯的通用型设备。如果不只一个同类型的外部设备耦合到电缆上(例如有两个鼠型定标器),主计算机将给鼠型定标器的状态寄存器分配新地址,这样,它们相互可区别。
在优选实施例中,在电缆上传输数据和命令时采用了归零调制方式。这就使得如果某一外部设备要在电缆上传输一高电平信号,而此时电缆被另一设备拉低,该外部设备将发生碰撞。为简化系统模型,只有主计算机可以启动通讯过程。
本发明允许在计算机工作时,将外部设备接到计算机上,而不必使计算机系统断电。本发明可实施于窄带、宽带、光纤、远红外及其它通讯装置。


图1给出了本发明网络系统的方框图。
图2给出了本发明使用的归零编码方法时序图。
图3给出了本发明外部设备的寄存器。
图4给出了某一外部设备请求主计算机服务时操作顺序的流程图。
图5给出了为共享硬件跳线地址的设备提供新地址的操作顺序流程图。
图6给出了本发明中命令处理的时序图。
本发明公开了用于在耦合到主计算机的外部设备之间传输数据的外部设备总线,其中包括所用仪器和方法。为使对本发明能有透彻了解,在下面的描述中,给出了大量特殊细节,如特定数字、寄存器、地址、时序、信号及格式等。但对本技术领域的技术人员来讲,很明显,实施本发明时可以不需要这些特殊细节。在另外一些情况下,为了避免不必要地使本发明难于理解,对一些众所周知的电路和设备则用方框图表示。
参见图1,其中给出了本发明的优选实施例。多个外部设备,用数字11到16来标誌,通过单电缆17耦合到主计算机10。在本优选实施例中,所有设备通过小型电话插座与主计算机通讯、并对联接器做如下分配顶功率(tip-power),环形-数据(ring-data)和环套-回归功率(sleeve-powerrefurn)。高电平信号(1)最低为2.4伏,低电平信号(0)最高为0.8伏。尽管在本发明的优选实施例中希望使用单根电缆,但其它通讯装置,如宽频带法、光纤系统及红外信号也可以使用。
本发明中的总线支持编码设备(这种设备一个键表示一个符号或一种功能,如键盘14),相对设备(这种设备的对应控制设备(如鼠型定标器11或12,的显示光标的移动可以任一点为起点)和绝对设备(这种设备的显示位置和设备位置之间有一恒定的直接关系,如草图板13)。
这个系统也允许将扩展地址设备联网,扩展地址设备共享公共的硬件跳线地址,但对特定设备还有唯一地址,主计算机在访问该设备之前需判别这个地址。例如,假定仪表可以耦合到主计算机,并受主计算机控制。在这种情况下,所有仪表都有相同的固定硬件跳线地址。第一层的主计算机为了选中仪表,只要简单地选择该硬件跳线地址即可。此时,所有仪表都处于无效状态。如果主计算机向某一仪表发一信号,且这个信号与仪表的扩展地址匹配,则该仪表就被该主计算机变为有效状态。扩展地址是一个识别码,在优选实施例中,扩展地址可长达64字节。只要主计算机给出扩展地址,具有该地址的设备即进入有效状态。以后向仪表地址所发的命令都由这个设备执行,而不必每次都给出扩展地址。有效仪表执行所有对仪表地址的命令,而无效设备则处于被动状态。为使有效的扩展地址设备变为无效,主计算机只要给出另一扩展地址设备的扩展地址,使其变为有效,同时就使原有效设备变为无效。假定任何可以由主计算机控制的设备都适用于本网络设计方案,如电灯,电炉、喷灌系统及电话应答机等。假定在这个系统中至少有另一个扩展地址设备的硬件跳线地址,这个地址将用于系统保护或用户识别。例如,在这个地址上的某一设备,可以有一扩展地址,只有当系统用户给出这一扩展地址后,系统才能工作。在其它情况下,某些单独操作在执行前可能要求主计算机给出其它安全设备的扩展地址。这些安全设备像“钥匙”一样,用来锁住整个系统或在系统上执行的某些操作。
此外,本发明为网络应用保留了软地址段16。保留软地址段是为有相同的外部设备耦合到总线上时所用。例如,如果总线上耦合了不只一个鼠型定标器,主计算机给每一个鼠型定标器分配新地址,这些地址就放在软地址段。
尽管给出了耦合到总线上每一类型设备的特例,但对于分配的地址可能每类设备不只有一种。例如草图板笔是一种绝对设备,而触摸荧光屏也是绝对设备,且其与草图板有相同的固定命令地址。此时,主计算机将在软地址段给每一设备分配新地址。
在本发明的优选实施例中,多个外部设备的地址分配如下地址设备类型例0000(0)扩展地址设备安全系统,用户ID0001(1)扩展地址设备仪表0010(2)编码设备键盘0011(3)相对设备鼠型定标器0100(4)绝对设备草图板、触摸荧光屏0101(5)保留无0110(6)保留无0111(7)保留无1000(8)软地址寻址相同外部设备………………1111(15)软地址寻址相同外部设备本领域的技术人员将意识到,还可以给这些设备分配其它地址,这些地址的数位可以比实施例中多或少。
本优选实施例中,所有外部设备都有四个寄存器用于接收和发送数据。对每一设备,说寄存器3和听寄存器3包含了诸如设备地址、处理程序信息的状态信息。其余寄存器都是数据寄存器,除听寄存器2以外,这些寄存器是专有设备,听寄存器2包含扩展地址设备的扩展地址或软地址寻址设备的设备专有信息。
在本发明的这一优选实施例中,外部总线上有三种类型的通讯,即命令、数据和全程信号。命令由主计算机传送到外部设备;数据由主计算机传送到外部设备或由外部设备传送到主计算机;全程信号是特殊的传送到全系统的信息。
在该优选实施例中,数据按每一位元的低电平时间与高电平时间之比率编码。位元边界定义为总线上的下降沿。零编码为这样的位元,其低电平时间大于高电平时间,如图2位元20所示。“1”则定义为这样的位元、其低电平时间小于高电平时间,如图2位元21所示。在本优选实施例中,起始位定义为“1”,停止位为“0”,停止位没有额外的下降沿来定义位元时间。停止位用来同步总线上处理过程的终止。
命令信号和低速数据传输的位元周期大约为100微秒±30%。高速数据传输的位元为50微秒±1%。数据处理的格式为起始位(1)其后是可达256位的数据位,最后是停止位,当使用其它的通讯装置时,则可采用其它信号格式。
命令只能由主计算机发送。在本发明的优选实施例中,有三种命令说,听和清零。如图6所示,为指示命令的开始,先给出了提示脉冲,提示脉冲由主计算机通过总线在“T-attn”周期内为低电平发送而产生。本优选实施例中,T-attn周期大约为560-1040微秒。提示脉冲后是同步脉冲,同步脉冲用以启动总线时序。同步脉冲的后沿用做命令第一位的时序参考点。命令后是一停止位(在本实施例中为“0”)。停止位后,如果没有其它设备的服务请求,总线恢复到其正常的高电平状态。
本优选实施例中,命令是一8位值。该命令含有4位设备地址段,规定所需外部设备的固定硬件跳线地址(如鼠型定标器的地址是0011)。其后两位是命令位,最后是两位寄存器地址段,它在被选中待指定的外部设备中提供一个专用寄存器R0-R3。本优选实施例中,命令代码如下命令代码清零01听10说11说命令使被选中设备将其数据传到主计算机,听命令使被选中设备接收来自主计算机的数据并存入其寄存器。清零命令对由特殊设备定义的每个设备都有作用,它可用于寄存器清零或使键盘上的所有键复位以便再发送。
当选中某外部设备执行说命令时,该设备必须在一定时间内做出回响,这称做“时间超出”周期。时间超出周期“Tlt”大约为140-260微秒(2个位元)。被选中设备如果没有时间超出,则在总线上变为有效状态,执行数据传输,然后结束命令执行,恢复到总线上的无效状态。
全程信号用于既非命令亦非数据的过程处理。全程信号包括提示与同步信号、用于起始命令和总线时序;服务请求信号,用于设备向主计算机请求服务;复位信号,使总线在Tres的极小值内为低电平,以在总线上产生中断。Tres周期大约为2.8-5.2毫秒(40个位元)。全程信号将与其它处理过程一起做详细描述。
由于一个外部设备在接到主计算机的说命令后只能发送数据,本系统提供了一种设备可以通知主计算机需要服务的方法,这由设备向主计算机发送服务请求信号来实现。本发明中,发送服务请求信号就是在任一命令处理的停止位后使总线保持低电平。耦合到总线上的每一外部设备都有若干寄存器(本优选实施例中为4个寄存器),图3示出了外部设备的一个寄存器。A13位是服务请求使能位,当这一位被主计算机置为高电平,需要服务时,设备就能够在命令处理的停止位后使总线处于低电平,如图6所示。设备将持续发出服务请求,直到接到主计算机的说命令。图4的流程图给出了设备请求服务后的处理步骤。
最初,该设备确定它是否请求服务,即它是否有数据向主计算机传送。如果有数据要传送,设备将其内部标志位置位。当主计算机发出下一个命令时,设备检查这是否发给它的命令。如果命令未选中这个设备,设备将检查其服务请求使能位(寄存器3的A13位)是否置为高电平。如果是高电平,该设备在命令停止位后使总线为低电平,参见图6。然后设备等待接收下一个主计算机命令,检查是否被选中执行说命令。如果命令选中这个设备,它将确定是否说命令,如果不是说命令,设备发出服务请求,执行接到的命令,然后等待下一个命令;如果是说命令,设备发出数据,并认为服务请求已被满足。设备继续监视其自身状态,以决定何时需要服务。由于使主计算机能够控制服务请求使能位,在总线上实现了更有效的操作。接到服务请求后,主计算机只需检查服务请求使能位被置位的设备是否需要服务。此外,主计算机可以禁止某些特殊应用不需要的设备。
传送数据时,设备可以检测碰撞。如果外部设备要输出1,而数据线是0或将要变为0,可认为该设备与另一设备发生了一次碰撞。这意味着,另一设备也在总线上传送数据。这种情况发生时,被撞设备停止在总线上执行说命令,并保留发送数据以备再发送。发生碰撞时,设备将其内部标志位置位。先有技术中,外部设备无法检测碰撞。本发明的这一新特点使通讯操作更为有效。通过检测碰撞,设备可以保留传送的数据,并向主计算机发出服务请求。本发明的检测方法,在检测到碰撞前不需要等待周期。如果总线被其它设备占用,设备将终止其数据传输,或当总线被占用时,就简单地不开始传输,此外,这种检测方法对于定位具有同样硬件跳线地址的多个设备也是有用的,例如对于图1所示的鼠型定标器11和12。
这种情况下,主计算机通过使碰撞设备共享相同的地址就可改变设备的地址,主计算机通过说R3命令选中这些设备以实现上述目的。R3(设备的寄存器之一)包含图3所示的信息。A0到A7位是设备的处理程序信息,主计算机由此可知设备的功能和设备所提供数据的用途。A8到A11是地址段,当不只一个耦合到总线上的设备有相同的命令地址时,该段的内容被改变。此时,软地址段之一将分配给A8到A11各位,以后这就用做设备的命令地址。在此之前,这些位元内是一随机数,用于辅助检测碰撞。例如,如有两个鼠型定标器接到说R3命令,且同时开始执行说命令,二者都检测不到碰撞。但如果寄存器R3的地址段内为随机数,则两个设备的最终输出将是不同的,此时,两个设备之一将检测到碰撞并停止执行说命令。A12位是高速使能位,如果此位置位,则数据传输采用较高调制速率(每一位帧50微秒)。高速使能位由主计算机置位。如果主计算机不能用高调制速率接收数据,它就将所有设备的高速使能位都置于低电平。如果主计算机可以用高调制速率接收数据,且设备可以用高调制速率发送(那个信息包含在寄存器3内处理程序位中),则主计算机将设备的高速使能位置高电平。如前所述,A13位是服务请求使能位,由主计算机置位,以使设备能执行服务请求处理。A14和A15位留做日后之用,被置为0。
接收到说R3命令之后,设备将其状态(即处理程序和地址)提供给主计算机。如果总线上耦合了两个同类型的设备,则只有一个响应命令,因为另一个会检测到碰撞。图5示出了在总线上分配新地址的方法。
接收到说R3命令后,设备将从寄存器3发送出它的状态。如果数据线转为低电平,设备就认为发生碰撞,停止发送(即停止执行说命令),并将其内部标志位置位以表示发生了碰撞。主计算机向鼠型定标器的地址发送听R3命令。每个说命令都将设备的内部碰撞标志位复位,设备检查其碰撞位是否置位,如果没有置位,设备将用听R3命令中的软地址取代A8到A11各位。在这种方式中,通过主计算机可以跟踪设备的新地址可改变接收到命令的设备地址。如果设备在听R3命令后检测到碰撞位,设备不改变软地址位,但可以改变R3的其它段。主计算机发出另一个说R3命令,以检查是否有任何设备仍用鼠型定标器地址。此时,剩下的鼠型定标器将发出其起始位,检测不到碰撞,并从寄存器3发出它的状态。主计算机向鼠型定标器地址发回一个听R3命令。此时,剩下的鼠型定标器将检测不到本例中被置位的碰撞位,于是用从主计算机接收到的软地址取代寄存器3中的A8到A11各位。然后主计算机向鼠型定标器发出另一个说R3命令,此时,因为在那个地址没有鼠型定标器,所以总线上将时间超出,主计算机知道已经给每一个共享鼠型定标器地址的设备都分配了新的地址。
在本发明的一个实施例中,外部设备上有一设备,用于指示有效性,称做有效性指示器。有效性指示器可以是键盘上的一个特殊键或是鼠型定标器上的一个按钮。当不只一个设备耦合到总线上时,主计算机能显示一条信息要求某个设备使用有效性指示器。而后,主计算机发听R3命令,这条命令改变有效设备的地址。用这种方法,在多用户系统中,每个设备都可被定位并分配新的地址。
到此,已经完整描述了允许将多个外部设备通过单端口耦合到主计算机的外部设备总线。
权利要求
1.一种用于传输信号和数据的方法,其中信号和数据是在主计算机和第一、第二外围设备之间的主计算机的控制之下进行传输的,其中信号和数据在连接第一、第二外围设备到主计算机上的总线上传输;其中第一、第二外围设备初始时是关闭状态,其中第一、第二外围设备具有相同的地址,其特征在于包括如下步骤主计算机通过在总线发送(1)第一外围设备的第一地址和发送(2)与存储作为第一外围设备的扩展地址的第一号码相符的信号,来使第一外围设备初始化激励,其中第二外围设备保持关闭状态;在第一外围设备激励后,主计算机在总线上给第一外围设备的第一地址发送一命令,其中第一外围设备执行命令而不需主计算机发出第一外围设备的扩展地址,并且其中第二外围设备保持关闭状态;主计算机通过在总线上发送一第二号码作为一扩展地址将第二外围设备激励和将第一外围设备在激励,其中第二号码是第二外围设备的扩展地址,并且其中第二号码是与第一号码是不同的;在第二外围设备被激励之后,主计算机在总线上发送给第二外围设备的第一地址一命令,其中第二外围设备执行该命令而不需要主计算机发送第二外围设备的扩展地址,并且其中第一外围设备保持关闭状态。
2.根据权利要求1的用于传输信号和数据的方法,其特征在于第一、第二外围设备中至少有一个设备中有一仪表。
3.根据权利要求1的用于输入信号和数据的方法,其特征在于所述第一、第二外围设备中至少一个设备包括有一系统保护装置。
全文摘要
在多个外部设备和主计算机之间传输数据的一种通讯装置。总线上,一次只有一个设备可以执行说命令而且仅仅响应来自主计算机的命令。当外部设备需要服务时,它通过使总线在任一命令之后保持低电平来发出服务请求信号。设备在接收到主计算机的说命令之前,持续发出服务请求。当不只一个同类型设备耦合到总线上时(如两个鼠型定标器),主计算机给设备分配新地址。当设备要发送“1”时,可向总线发送低电平信号以检测碰撞。
文档编号G06F13/20GK1045884SQ9010257
公开日1990年10月3日 申请日期1986年4月24日 优先权日1985年8月14日
发明者彼得·B·阿什金, 迈克尔·克拉克 申请人:苹果电脑公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1