通用串行端口的结构和体系的制作方法

文档序号:6540494阅读:196来源:国知局
专利名称:通用串行端口的结构和体系的制作方法
技术领域
本发明的背景1.发明的领域本发明大体论及了接口设备的数据处理器和通信系统。发明更特别论及了串行I/O设备。可更特别的,发明论及了可编程串行I/O设备。
2.相关的领域许多的串行接口设备,也称为串行输入/输出端口,在电子的线路和系统领域是大家熟悉的设备。设备包括特殊应用线路,通用异步收发器(UART)设备,用软件控制串行端口的微处理器,和许多其它的。这种设备被用在一个很宽的应用范围,包括和显示设备的通信,和为电池组管理的所谓“灵便”电池组的通信,为调试提供到系统的入口,提供到综合器的连接,和调制解调器的通信,或者作为通用系统连接器(USC)。许多标准曾经被发布,在其中通过规定详细要求的物理构造来支持各种串行I/O端口的应用。参数的规定包括信号路线的数量和类型,不同的信号路线传送的信号时间选择和其它特征例如振幅,极性和信号及信号路线的编码方法。
一个设计者通常选择一个非可编程串行I/O端口解决方案,以标准或者设计者要求实现的客户串行I/O端口构造和现有的设备间的比赛为基础。例如,一个UART满足可靠的速度和时间选择的要求可能被选择用于一个特别的异步应用。
在设计中比非可编程设备所提供的需要更大的适应性,一个常规微处理器的可编程串行端口软件可能被使用。例如,摩托罗拉公司的微控制器M68HC 11系列包括一个串行端口在本领域很知名,如摩托罗拉同步串行外围接口(SPI)。这种设备通常如

图1所示。微控制器110包括由软件102控制的串行硬件101,110也和系统总线103通话。串行通信出现跳过信号路线104。无论如何,这种串行接口由于若干因素是有缺点的。即使在软件控制的接口中,象SPI接口,电的参数,信号路线的数量,信号线路的类型,等等是预先确定和不可改变的。处理器110必须执行软件程序102以控制串行端口,所有的串行数据被跳过信号线路104经过处理器110传送,因而又装载进处理器100,以上的无论什么加载是由于处理器100主要使用的任务所强加的。同样,因为串行硬件101是处理器110的一个能源消耗部分,额外的能源在处理器执行软件程序时消耗了。
在系统中,包括系统总线,实施发明特征的接口设备可能连接到系统总线把所有数据处理器分开。接口设备可能包括连接到系统总线的总线接口,连接和响应总线接口的可编程状态机(PSM),连接到PSM和总线接口的并串行转换器,并且有串行I/O端口,这个并串行转换器响应PSM以依照选定的串行协议在总线和I/O端口之间传送数据。这个实施方案的变化也是可能的。例如,接口设备可以进一步包括连接到总线接口和PSM的时钟控制器。这个时钟控制器可能响应总线接口和PSM以生成连接到并串行转换器和PSM的输出上的时钟信号。时钟控制器可以切断时钟信号响应一条PSM命令的可编程周期时间,从而减少设备的能源消耗。时钟控制器可以切断响应一条PSM命令的时钟信号并且接通响应从并串行转换器I/O端口接收的信号的时钟信号,从而当设备不在并串行转换器I/O端口通信时减少能源消耗。接口设备可以进一步包括有输入和输出的位计数器,每个连接到PSM并且位计数器由PSM控制。PSM进一步包括可容纳储存规定接口设备操作的程序的内存,响应程序的指令执行逻辑储存在内存中,指令执行逻辑产生连接PSM和并串行转换器控制信号的信号线路,通过它PSM控制并串行转换器。并串行转换器可以进一步包括复数的规定串行I/O端口的I/O信号,其功能被PSM内存中的程序的PSM执行所规定。复数的I/O信号可以进一步包括数据信号,它的信号特征由程序规定。特征规定可以包括时间选择或者数据编码方法。一般而言,不同的程序规定了依照不同的串行接口标准的接口设备的操作。
依照发明的特征的另一个实施方案,串行通信的方法包括提供复数的,多种用途的串行I/O信号,编写可编程状态机(PSM)多种用途的处理器外部的程序以使多种用途的串行I/O信号依照特别的串行通信说明书来操作。此方法可以进一步包括提供时钟信号来使串行I/O信号和PSM的操作同步并且当不需要时选择性切断时钟信号,从而减少使用此方法的能源消耗。此方法可以还包括切断响应PSM命令的时钟信号和接通响应由多种用途的串行I/O信号接收的信号的时钟信号。此方法可以进一步包括促成复数的I/O信号以操作规定的时间选择或者操作规定的数据编码方法。
如附图2所示的接口设备200的作为例证的实施方案包括一个总线接口部件201,一个可编程状态机(PSM)202,串行化硬件203,一个时钟控制器and/or时钟发生器(为简单的缘故在下文中提及的如时钟控制器或者CCB,大多数毫无损失)204和一个位计数器205。这5个基础部件是步相干的,如下。总线接口部件201连接到系统总线206。由于需要,命令和响应可以被总线接口部件201在PSM202和系统总线206之间传送。由总线接口部件201从系统总线206接收来的命令也传送到CCB204,由于需要。数据被总线接口部件201在串行化硬件203和系统总线206之间传送。PSM202通过执行一个软件程序生成命令信号来控制串行化硬件203的操作,时钟控制器和时钟生成器204,和位计数器205,以及响应和总线接口部件206控制的其它输出。由接口服务200提供到外部领域的接口是串行I/O信号208。
如附图2所示的每个部件现在描述的更加详细,同样它们在作为例证的实施方案中被创立。
总线接口部件201提供到接口设备200的外部入口。总线接口部件201连接接口设备200到系统总线206并且到其它的外部信号207。此信号可以包括总线控制信号例如总线时钟,碎片选取,地址信号,数据信号,等等。总线时钟也可以是系统时钟,或者信号可能是分布式的,象一个分离的信号。系统总线206或者外部信号207也可以携带中断信号,例如被用于表示一个发送事件或者一个接收事件,等等,经由总线接口部件201连接到接口设备200。总线接口部件201也可以接收系统复位信号,以及其它的外部信号207不是系统总线206的一部分,但是接口设备200的需要。
总线接口部件201可以仅仅接收和缓冲和传递到需要它们的外部元件的信号。可替换的是,总线接口部件可以在传递它们到需要它们的外部元件之前闭锁信号,或者一个确定点的信号值及时可以装载近寄存器。总线接口部件201可以使用任何一个或者所有这些本领域现行已知的技术,为了提供接口设备200元件所需要的信息以完成它们各自的功能。
总线接口部件201的输出包括为设定和控制接口设备200每个元件的信号。例如,可以是一个响应上面提及的系统复位信号的复位信号。可以是指定一个时钟预示值的信号,它的目的是下面进一步地论述。一个时钟控制信号可以命令CCB204来接通或者断开时钟。一个寄存器可以保存为串行化硬件203指明参数的值,例如奇偶性,移位寄存器中的位数和状态信息。总线接口部件201可以为串行化硬件203进一步包括一个或者更多的同时来自传送and/or接收缓冲的内存单元。总线接口部件201可以进一步包括一个或者更多的寄存器,经由它们程序命令和数据可以被发送到PSM202。总线接口部件201可以进一步包括其它的信号来控制在上面提及的外部信号的I/O操作,以及在系统总线206并且通过串行化硬件203。一些参数和设置可以由PSM装载的寄存器里保存的值来控制,描述如下。
接口设备200的可编程序性由PSM提供。无论如何,应该注意的是PSM不包括一个算术逻辑部件(ALU)或者路通常和微处理器,数字信号处理器或者其它的通用计算引擎相联系的其它的线,尽管它的可能性不能排除。PSM202顺序预先规定了要完成的操作,胜于计算算术结果来规定它的操作或者参数。
PSM202包括三个主要线路,一个可编程逻辑阵列(PLA)301,内存302和地址控制器303。PLA301的输出304的一些数字,m,经由地址控制器303反馈来选择下一条执行的指令,基于PSM的当前状态。PLA301的输出305的一个保留字,n,依照由PSM202执行的指令顺序的到达状态来控制接口设备200的其它元件。PLA301执行指令;内存302储存指令。在这个实施方案中,PLA不修改内存202中的指令,尽管它的可靠性不能排除。内存302可以包括一个或者更多的寄存器保存PSM修改的代表PSM控制元件的操作的初始化参数的值。例如,可以是个寄存器,它的值控制串行化参数。
PSM202的输出可以闭锁或者不闭锁,如附图4所示。PLA301输出400被锁存器401作为数据接收。此锁存器也接收一个表示PLA301的输出400有效的允许信号402。一个时钟403,例如系统时钟,引起锁存器401发送PLA301的输出400的值到闭锁的输出404,如果允许信号402表示在接收时钟信号403的时候PLA301的传输400有效的话。PLA301的输出400也可以仅仅和利用一个与门(AND gate)405或者类似的允许信号402结合,以产生一个不闭锁输出信号406。
作为例证的实施方案的PSM202执行指令中的三类控制指令,程序流指令和时间选择/节电指令。指令包括如下面的表所示
串行化硬件203把系统总线206携带的并行数据依照要求的串行I/O标准转换为串行I/O信号208携带的串行数据,或者把串行I/O信号208携带的串行数据依照要求的串行I/O标准转换为系统总线206携带的并行数据。依照作为例证的实施方案每个接口设备200是一个半双工设备。为了提供全双工操作,两个接口设备200并行连接在一起并且每个设定以完成全双工通道的一个方向的操作。
当设定串行化数据时,串行化硬件203包括一个移位寄存器来安排并行到串行的操作,一个奇偶发生器和输出控制器。当设定接收串行数据时,移位寄存器安排串行到并行操作。串行化硬件203也使用奇偶发生器来接收串行数据。当接收串行数据时,串行化硬件203也使用一个界限检测器来决定什么时候接收一个序列的开始位。开始位检测被使用,连同等待和延迟指令,如下面描述的当接口设备200不是传送或者接收数据时,和CCB204连接以节电。
作为例证的实施方案的CCB204从接口设备200的外部接收系统时钟并且再分配给需要时钟信号的接口设备200的部件。可替换的是,CCB204可以内部地产生一个时钟并且再分配给需要时钟信号的接口设备200的部件。
如附图5所示,CCB204接纳系统时钟501到一个预定标器502来从系统时钟比率到接口设备200使用的比率除或者乘以时钟。预定标器502可以是一组可编程除法器线路或者可以包括逐渐锁定的循环频率乘法器。预定标器502的输出509计录一个同步门503,以及一个等待锁存器504和一个延迟锁存器505。等待锁存器504和延迟锁存器505接收等待506和延迟507命令,分别的,从PSM202,并且闭锁它们作为允许输出到同步门503。同步门503产生接口设备时钟信号508,它可以由PSM202中执行的程序的等待506和延迟507命令来选择性地接通或者切断。预定标器503的输出509是到CCB204的内部时钟信号,它不是选择性的接通和切断。这个内部时钟信号509不是广泛的分布,因此不能利用线路上有效的能源负载,但是允许CCB204去决定何时终止等待命令或者延迟命令。
等待指令显著的应用于串行化硬件203的界限检测。PSM202执行一个等待指令,引起CCB204切断时钟,直到一个界限,例如,一个开始位,由串行化硬件203检测。由PSM202进行的软件程序的执行则重新开始,处理所有传入的数据。等待指令被处理来测试其它的信号,例如清零发送(CTS)信号,例如用于调制解调器的应用。
接口设备200的作为例证的实施方案中第五个元件是位计数器205。这个计数器保存程序设计指令,因此内存空间,由于位计数代码不需要写到PSM202的软件程序循环中,其每次操作串行数据的一位。可代替的,一个寄存器储存位的数目,跳过它来完成一个操作。在每个循环的结束时,PSM202增加位计数器205通过一个适当的Group1,Group2或者Group5指令接着检查位计数器205中的值,依靠跳过储存位的数目来完成一个操作的寄存器。程序支路法和其它的决策可以依靠这个测试的结果。可替换的是,一个没有死循环指令可以实现所有需要的跳转和分支以执行利用了位计数器205的循环,使用仅仅一个指令。当这个循环结束的时候,执行继续内存302里下一条指令。
本发明连同其中具体的实施方案现在已描述。无论如何,许多修改,是预期的落入本发明的范围之中,对于那些本领域的技术人员现在应该是明白的。所以,这意味着本发明的范围仅被附加的权利要求的范围所限制。
权利要求
1.在一种系统中,包括系统总线,连接到系统总线并分离数据处理器的接口设备,这个接口设备包括连接到系统总线的总线接口;连接和响应系统总线的可编程状态机(PSM);连接到PSM和总线接口的并串行转换器,并有串行I/O端口,并串行转换器响应PSM以在总线和I/O端口之间依照选定的串行协议来传送数据。
2.如权利要求1所述的接口设备,进一步包括连接到总线接口和PSM的时钟控制器,并且响应总线接口和PSM以产生输出上的时钟信号,连接到并串行转换器和PSM。
3.如权利要求2所述的接口设备,其中时钟控制器可以切断时钟信号响应PSM命令的可编程周期时间,从而减少设备的能源消耗。
4.如权利要求3所述的接口设备,其中时钟控制器切断响应PSM命令的时钟信号并且接通响应从并串行转换器的I/O端口接收的信号的时钟信号,从而减少设备的能源消耗。
5.如权利要求1所述的接口设备,进一步包括位计数器,有输入和输出,每个都连接到PSM并且由PSM来控制位计数器。
6.如权利要求1所述的接口设备,PSM进一步包括可容纳储存规定接口设备的操作的程序的内存;和响应程序的指令执行逻辑储存在内存中,指令执行逻辑产生了在信号路线上的连接PSM和并串行转换器控制信号,PSM通过它控制并串行转换器。
7.如权利要求6所述的接口设备,并串行转换器进一步包括复数的I/O信号规定了串行I/O端口,它的功能是由PSM内存中程序的PSM的执行来规定的。
8.如权利要求7所述的接口设备,复数的I/O信号进一步包括数据信号,其信号特征由程序规定;
9.如权利要求8所述的接口设备,其中特征的规定包括时间选择。
10.如权利要求8所述的接口设备,其中特征的规定包括数据编码方法。
11.如权利要求6所述的接口设备,其中不同的程序规定了依照不同接口标准集的接口设备的操作。
12.一种串行通信的方法,包括提供复数的,多种用途的串行I/O信号;和编写可编程状态机(PSM)多种用途的处理器外部的程序以使多种用途的串行I/O信号依照特别的串行通信说明书来操作。
13.如权利要求12所述的方法,进一步包括提供分布式的时钟信号来使串行I/O信号和PSM的操作同步;和当不需要时,选择性切断分布式的时钟信号,从而减少使用此方法的能源消耗。
14.如权利要求13所述的方法,进一步包括切断响应PSM命令的分布式的时钟信号,不切断内部时钟,并且接通响应接收自多种用途的串行I/O信号的分布式的时钟信号。
15.如权利要求13所述的方法,进一步包括切断响应PSM命令的分布式的时钟信号,不切断内部时钟,并且当预先确定的内部时钟周期通过时接通分布式的时钟信号。
16.如权利要求12所述的方法,进一步包括使复数的I/O信号运算规定了时间选择。
17.如权利要求12所述的方法,进一步包括使复数的I/O信号运算规定了的数据编码方法。
全文摘要
接口设备提供一个通用串行输入/输出(I/O)端口,功能是可编程的,依照一个储存的指令顺序由可编程状态机执行。这些指令使得可编程状态机依照标准或者其它预先确定的串行I/O通信参数集来规定串行I/O端口。
文档编号G06F15/76GK1387646SQ00814835
公开日2002年12月25日 申请日期2000年11月3日 优先权日1999年11月5日
发明者乔恩·索雷森 申请人:模拟装置公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1