[发明专利]一种扩展通用异步串行接口方法、装置和系统有效
申请号: | 200910086862.X | 申请日: | 2009-06-17 |
公开(公告)号: | CN101576867A | 公开(公告)日: | 2009-11-11 |
发明(设计)人: | 党磊 | 申请(专利权)人: | 北京星网锐捷网络技术有限公司 |
主分类号: | G06F13/42 | 分类号: | G06F13/42 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 100036北京市海*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 扩展 通用 异步 串行 接口 方法 装置 系统 | ||
技术领域
本发明涉及一种扩展通用异步串行接口方法、装置和系统,属于数据通信技术领域。
背景技术
通用异步收发器(Universal Asynchronous Receiver/Transmitter,简称UART),可以实现两个设备之间速率较低的双工通信。
目前UART是个人计算机(Personal Computer,简称PC)与电子通信中应用最广泛的一种串行接口,既可用于背板与接口卡之间通信,也可用于PC和系统板之间通信。
UART接口只有3根信号线,如图1所示,设备A通过发送数据线TXD向对端设备B发送数据,通过接收信号线RXD接收来自对端设备B的数据,地信号GND是用于信号参考的一个公共地信号。
为了数据的同步,设备A和B必须设置相同的波特率。这样如果A向B发送数据,A会按照固定的时间间隔在TXD上放入数据,B则会按照固定的时间间隔在TXD信号线上读取数据。
数据发送时设备A首先将TXD信号拉低表示传输的开始,然后在TXD上以固定的时间间隔传输1个字节byte(即8个比特bit,代表一个字符)的数据,之后将TXD拉高表示传输的结束。如果需要再传送一个byte则需再将TXD拉低表示开始。A接收时,如果发现RXD被拉低则表示传输已开始,A开始读取RXD上的1个byte的数据。
UART上一般发送的是美国信息交换标准代码(American StandardCode for Information Interchange,简称ASCII),ASCII码使用7个 bit表示一个字符,UART发送8个bit,则多出的1个bit一般被设置为0。ASCII码为“0x00”时表示为空(Null),即无意义。
在UART上传输的数据首先需要变换为ASCII码形式,如字符“0”将变为ASCII码“0x30”。接收时如果接收到“0x30”,则对应ASCII码变换为“0”。
大多数中央处理器(Central Processing Unit,简称CPU)都会带有UART接口,但实际使用中UART接口数量可能不够。这时常用的方法是使用专用集成电路(Application Specific Intergrated Circuits,简称ASIC)实现从其他总线,如局部总线local bus或外设组件互连标准(Peripheral Component Interconnect,简称PCI)转换来扩展UART,如图2所示。这样做的缺点是成本较高,并且会占用其他总线的资源。
一些芯片可以从一个UART扩展出多个UART,如专利《一种多总线接口的通用异步串口扩展芯片》(申请号200610021607.3)。其主要思路是为芯片中每个扩展出的串口实现2个大的先入先出队列(First InputFirst Output,简称FIFO),如图3所示,发送或接收时均将数据送入FIFO,然后通过写相应寄存器控制数据发送和接收。芯片通过中断方式通知CPU发送和接收情况。由于需要将接收的数据全部存储起来,再通过中断方式通知CPU接收,因此需要有比较大的FIFO,成本较高;并且要使用中断,软件较复杂。
专利《多路通用异步收发器》(申请号03234618.2)提出另外一种方法,如图4所示,额外提供几根地址信号用于表示数据是哪一路串口通道的,数据不在芯片中缓存直接接收或发送,这样就不用提供大的FIFO,降低了成本。由于母串口两端的设备都必须支持地址译码,否则是不能应用这个电路的,有严重的局限性;另外地址译码电路也增加了电路的复杂度。
发明内容
本发明的目的是提供一种扩展通用异步串行接口方法、装置和系统,在显著降低成本并且不会占用其他总线资源的情况下实现对异步串行接口的扩展。
为了实现上述目的,本发明提供了一种扩展通用异步串行接口接收方法,所述方法包括:
中央处理器CPU将发送给第一接口设备的数据中每个数据字节的第一比特设置为0,将发送给第二接口设备的数据中每个数据字节的第一比特设置为1,并从第一异步串行接口发送数据;
从第一异步串行接口接收中央处理器CPU发来的数据,判断数据中每个数据字节的第一比特是0还是1,如果第一比特为0则将所述数据字节从第二异步串行接口发送给第一接口设备,如果第一比特为1则将所述数据字节从第三异步串行接口发送给第二接口设备。
为了实现上述目的,本发明提供了一种扩展通用异步串行接口发送方法,所述方法包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京星网锐捷网络技术有限公司,未经北京星网锐捷网络技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200910086862.X/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种单边调节音量耳机
- 下一篇:一种太阳能电池组件