这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 综合技术 » 基础知识 » uart 谁来解释一下uart的问题

共2条 1/1 1 跳转至

uart 谁来解释一下uart的问题

院士
2006-09-17 18:14:16     打赏
uart 谁来解释一下uart的问题



关键词: 解释     一下     问题    

院士
2006-12-22 22:43:00     打赏
2楼
uart是很常见的串行通信方式,但一般标称的速度最高只能到115200,请问这个速度是受什么的限制?如果我提高cpu的频率,不是可以把速度提得很高吗(比如10M)?如果是外部连线的限制,我改用光纤的话,速度是不是可以提高呢? 1: UART内有波特率发生器,原理是可以。 10M 的CPU 速度也太低了,请问你用的是什么型号的CPU? 2: 改用光纤速度不一定能提高,还得看你的接口解调能力 3: 我只是假设我想用FPGA做速度很高的uart,不知道理论上是否行的通?
我说的10M是指通信速率。有可能比这个还要高。 4: 两边都用FPGA两边都用FPGA来串行通信,用光纤连接,应该可以做到很高的速度吧?
另外,串行通信的格式可以自己定义吧,比如我要用20位数据位。现在的uart用8位数据除了cpu好处理外,还有其他什么好处吗? 5: 10M 的时间是100ns,一般FPGA 有2ns的如EPF10K30-2 注意最后的布线上下点功夫了,这一关没人能帮你,靠的是经验。FPGA的
DELAY 有些厂家计算得并不很准确,最终是以下载到实际蕊片中测试为准。 6: 还有很多问题还有频率漂移的问题(晶振的稳定度),频率高了,就会有漂移问题影响通信。BIT数越多,漂移的影响越大,所以用多BIT是没多少好处的。
还有,由于介质本身的稳定性等问题,信号传输过程中也有稳定性问题。即使出来的时候是很精确的时序,到了另外一头也不一定精确,因此高速通信通常采用 各种归零码 来实现。(信号100M,一个BIT是10ns,距离1000米,不能不考虑相对论的影响了)
经过这么多的处理,这种通信也不叫做UART了,看看ETHERNET,常用不是100M吗,还是铜线,1000M在铜线上也是可行的。
USB2.0采用480M的数据率,没有用归零码,但是有很多的同步帧,传输的时候用差分信号,距离只能5米。 7: UART速度最高只用到(不是“只能”)115200,是有道理的UART通常指的是通过标准串口不带同步不带调制的一种串行传送方式,通常从通常转换成RS232或RS485电平传送,这是一种很古老的串行通讯方式了,几乎所有的电脑都支持它,之所以保留至今也正是因为它的通用性
由于这是几十年前的标准,现在看来就非常落后了:没有同步信号,没有检验,线路电容、收发端的频率漂移都会使数据出错,特别增加波特率后更是明显,用到115200BPS对线路、对收发端时序、传输介质等要求已经很高,

诚如上面“taoest”所说的,我们可以用各种处理方法来解决这些问题,但是,“经过这么多的处理,这种通信也不叫做UART了”

现今的铜线传输最高可以1000M、光纤传输甚至可以几十G,当然肯定不能用几十年前的UART标准了


共2条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]