DCE与DTE的概念对计算机网络设备硬件设计还是相当重要的,记录一下工作中做的一些总结吧。
DTE:数据终端设备,所有具有作为二进制数字数据源点或终点能力的单元。就是与我们直接接触的一些设备,如计算机、打印机、传真机等等,我们需要通信的信息都可以通过它转化为数字世界中的01信号。
DCE:数据电路终接设备,任何能够通过网络发送和接收模拟或数字数据的功能单元。DTE产生了包含一定信息的二进制数字数据,但这种数据不适合直接在通信双方之间的介质(或网络)上传输,因此引入了DCE来对二进制数字数据进行调制或转换等工作,使其适于远距离传输。
一种常见的通信路径为DTEDCEDCEDTE
比如说上网,我们电脑写好了一篇文档,他被存储为二进制格式文件,要发给远方收件人,以目前的上网方式,要通过网线与Modem连接,Modem再通过网线与网络连接,同时在收件人方向也有对应的Modem接收信件,电脑来打开信件。这里电脑就是一个DTE,MODEM就是一个DCE。他们之间的网线连接就是一种DCE与DTE的接口。同样在忽略网络内部复杂结构的情况下,Modem与modem之间的互联就是一个DCE-DCE之间的接口定义。
上面的应用应该是比较经典的DEC与DTE应用的例子,实际应用中变化还是很多的。
1.DCE与DTE之间的很多种接口定义,什么V35、RS232、RS422、RS485等等,虽然接口定义不尽相同,但如果站在DCE-DTE的角度来看待这些问题,就大同小异了,所要知道的就是具体的接口使用而已,有些稍微复杂一点的接口,有的时候并不需要完全应用,如完整的V35接口不但包括数据时钟等同步信号,还包括很多链路控制信号,在很多情况下对应用来说都是非必需的。相当于应用中大量使用的只是这些标准接口的一个子集。
2.两台电脑使用交叉网线直连,这又算什么呢。我在调试开发出来的设备时,只使用一根交叉串口线与计算机相连,这种怎么定义。查资料有的说这是一种DTE-DTE之间的连接。也是可以实现的,但我更愿意把它理解为在PC中集成了DTE与RS232接口的DCE,同样在被调试硬件上也集成了DCE(接口芯片)和DTE(ARM、860等CPU)。就是不知道他们能不能叫做设备。
3.DCE对应的往往是一种网络模式,这里面数据流向问题还是有些不同的,有些DCE接收网络的时钟来发送数据,有些DCE为网络提供时钟,在这两种情况下,对硬件开发,测试等都有不同的要求。
如果要开发一种设备,位置在DTE与DCE之间,就要了解DTE与DCE之间的关系,并作出最适合自己的设计。曾经用过Maxim的MAX3170/3172/3173的一套芯片,这是一套多协议接口芯片,可以满足很多应用,我们主要用了他的V35接口,后来演变为只用他的一个子集即可。