LCD显示屏接口
- 设备对外接口:VGA、DVI、HDMI
- HDMI接口
- 接口定义
- 发展历史
- HDMI特点
- HDMI接口类型
- 设备对内接口:串口、并口
- 小屏(I2C、SPI、UART)
- 中屏:MCU、RGB
- RGB接口
- MCU LCD屏和RGB LCD屏的区别
- 大屏:MIPI、LVDS
- LVDS接口
- 接口定义
- LVDS基本电路结构
- LVDS电平分析
- LVDS电平特点
- 接口类型
- 分辨率
- 阻抗匹配问题
- 电路和PCB设计
- LVDS端口保护
- TTL和CMOS不适用于高速电路设计的原因(都是数字电路信号)
- 高速电平的优势
- MIPI接口
- MIPI特点
- 分辨率
- MIPI-DSI模式
- 工作方式
- LVDS和MIPI主要区别
- 转接芯片
设备对外接口:VGA、DVI、HDMI
对于大型智能硬件设备,如广告机、K歌房,一般都采用市场上现有的液晶电视作为显示器。因此接口也是电视常用接口,VGA、DVI、HDMI等。主控端采用多核ARM或x86系统,类似于电脑外接电视的做法。
这些接口和协议都是很标准的,CPU自带接口的话可以直接用,没有的话也可以很方便的使用转换芯片来实现这些接口的输出。
一般智能硬件产品,只设计HDMI视频输出,很少有VGA接口,几乎没有DVI接口
HDMI接口
接口定义
- High-Definition Multimedia Interface
- 数字接口,同时传输视频和音频
- 传输非压缩视频数据和压缩/非压缩的数字音频数据
发展历史
2002年4月,日立、松下、飞利浦、Silicon Image、sony、汤姆逊、东芝共7家公司成立了HDMI组织,开始制定新的专用于数字视频/音频传输标准。
- 2002年12月,发布HDMI 1.0
- 2005年8月,发布HDMI 1.2
- 2006年6月,发布HDMI 1.3
- 2009年11月,发布HDMI 1.4
- 2013年9月,发布HDMI 2.0
HDMI特点
- TMDS(Transition Minimized Differential Signal)
8bit~10bit直流平衡编码,每个时钟周期传输10bit数据 - EDID and DDC
实现设备间只能连接 - Transfer Video and Audio
更低成本、连接更方便 - HDCP
High-Bandwidth Digital Content Protection
HDMI接口类型
设备对内接口:串口、并口
对于设备本身需要屏幕的,一般不会使用外部接口,而是使用板上数据接口。
小屏(I2C、SPI、UART)
2寸以下的小尺寸LCD屏,或者段式液晶显示屏,显示数据量比较少,普遍采用低速串口,如I2C、SPI、UART。
如果屏幕分辨率超过320x240,使用SPI的话,刷屏速度就会比较慢,所以高分辨率屏幕没有采用低速串口的。
至于I2C和UART,速度比SPI更慢,所以一般只用来驱动段式显示屏或者1寸以下的OLED屏。
屏幕上使用的I2C、SPI和UART,和其他外设使用的都是完全一样的传输协议。
中屏:MCU、RGB
2寸至7寸的低分辨率LCD屏(不超过1027x768),有一些采用并口传输数据的。根据数据格式可以分为MCU接口和RGB接口。
并口支持的显示数据量不大也不小。能够覆盖720P以下的分辨率,但无法更高。想显示更多数据只能用高速串口。
RGB接口
RGB颜色是工业界的一种颜色标准,是通过对红®、绿(G)、蓝(B)三个颜色通道的变化以及它们相互之间 的叠加来得到各式各样的颜色的,RGB即是代表红、绿、蓝三个通道的颜色,这个标准几乎包括了人类视力所 能感知的所有颜色,是目前运用最广的颜色系统之一。
接口类型
- Parallel RGB
- Serial RGB
接口特点
- 接口一般为3.3V电平
- 需要同步信号
- 需时刻刷新图像数据
- 需配置适当的timing
Parallel RGB Interface:
Serial RGB Interface:
最大分辨率和时钟频率
Parallel RGB
- 分辨率:1920 * 1080
- 时钟频率:1920108060*1.2 = 149MHZ
Serial RGB
- 分辨率:800 * 480
- 时钟频率:8003480601.2 = 83MHZ
MCU LCD屏和RGB LCD屏的区别
MCU-LCD屏它与RGB-LCD屏主要区别在于显存的位置,RGB-LCD的显存是由系统内存充当的,因此其大小只受限于系统内存的大小,这样RGB-LCD可以做出较大尺寸,象现在4.3"只能算入门级,而MID中7",10"的屏都开始大量使用。而MCU-LCD的设计之初只要考虑单片机的内存较小,因此都是把显存内置在LCD模块内部,然后软件通过专门显示命令来更新显存,因此MCU屏往往不能做得很大,同时显示更新速度也比RGB-LCD慢。
在量示数据传输模式也有差别。RGB屏只需显存组织好数据。启动显示后。LCD-DMA会自动把显存通过RGB接口送到LCM。而MCU屏则需要发送画点的命令来修改MCU内部RAM(即不能直接MCU屏RAM)。所以RGB显示速度明显比MCU快,而且播放视频方面,MCU-LCD也比较慢。
大屏:MIPI、LVDS
高分辨率屏,从720P到2K,几乎都是高速串口的接口。主要是MIPI-DSI和LVDS接口。手机上清一色都是MIPI接口的屏,车载和数码产品上有大量的LVDS接口的屏。
两者都通过低电压高速串口来传输图像数据,类似于USB这样的串口,虽然是串口,但是胜在频率高,传输速度比并口还要快很多。
此类板上高速串口线,对于Layout走线要求比较高,需要严格布置成差分线路,并做好线路阻抗控制。且设计传输距离一般不超过20cm。
LVDS接口
接口定义
LVDS,即Low Voltage Differential Signaling,是美国国家半导体(National Semiconductor, NS)于1994年为克服以 TTL电平方式传输宽带高码率数据时功耗大、EMI电磁干扰大等缺点提出的一种信号传输模式的电平标准,它采用极低的电压摆幅高速差动传输数据(采用CMOS 工艺的低电压差分信号器件),实现点对点(或则点对多:M-LVDS)的连接,具有低功耗、低误码率、低串扰和低辐射等优点,已经被广泛应用于串行高速数据通讯场合当,如高速背板、电缆和板到板数据传输与时钟分配,以及PCB内的通信链路。
LVDS 器件的传输机制是把 TTL 逻辑电平转换成低电压差分信号,以便于高速传输。与传统的 ECL逻辑相比,它采用 CMOS 工艺,其电压摆幅更低(LVDS只有约350mV,ECL 为800mV),动态功耗更小(输出电流 3 - 5mA,只有 ECL 电路的 1/7),低 EMI,价格更低,因而在中等频率(几百M~几GHz)差分信号应用上具有较大的优势。由于采用低压和低电流驱动方式,因此,实现了低噪声和低功耗。
LVDS技术规范有两个标准,即TIA(电讯工业联盟)/EIA(电子工业联盟)的ANSI/TIA/EIA-644标准(LVDS也称为RS-644接口)与IEEE 1596.3标准。下图是 TIA/EIA-644 LVDS标准
LVDS接口是一种单工方式,必要时也可使用半双工、多点配置方式,但一般在噪声较小、距离较短的情况下才适用
LVDS基本电路结构
如下图所示为典型的基本LVDS电路,采用一对差分信号线传输数据;通过驱动3.5mA的稳定电流源,以350mV低振幅(100Ω终端匹配)的差动信号来高速传送数据。其数据传输速度在规格内限定最大为655Mbit/秒,但这并不是极限值。通过各半导体厂商改进,可以实现3Gbit/秒左右的高速传输速度
LVDS的输出端驱动是一个3.5mA的电流源,并由两组MOS管(4个)组成一对发送输出;当A+导通,B-断开时:
电流从右上角Q2(A+ MOS管)驱动出到蓝色传输线,即右上A+ MOS管电流方向是:电流源(Driver)→右上A+ MOS管→蓝色传输线→100Ω终端电阻;
左下角Q3(A+ MOS管)驱动接至GND,所以此时电流从绿色传输线通过左下角Q3流出到GND;左下A+ MOS管电流方向是:GND→左下A+ MOS管→绿色传输线→100Ω终端电阻;
整个电流通路最终电流在100Ω终端电阻侧导通,并形成输出电压:3.5mA *100Ω = 350mV。
因为传输线提供的100Ω阻抗是交流阻抗(只在信号边沿有用的阻抗),对于直流来说是传输线是高阻抗,所以终端必须有100Ω端接电阻来提供信号固定电平状态下的回流,以保证输出电压。
需要再次强调的是:3.5mA电流从电源源流出到蓝色传输线,和绿色传输线3.5mA电流流入GND,这两者同时发生的,才能保证信号边沿的同步;驱动电流的路径并非是:电流源→Q2→蓝色传输线→100Ω终端电阻→绿色传输线→Q3→GND(有点违反直觉哈)。
当B-导通,A+断开时:
此时3.5mA驱动电流从左上角Q1(B- MOS管)流出,并流入绿色传输线;同时蓝色传输线电流流入右下角Q4(B- MOS管);具体电流传输的方向,如上。
电流通路最终电流还是在100Ω终端电阻侧导通,但是电流方向与“A+导通,B-断开”相反,并形成反向的输出电压:-3.5mA *100Ω = -350mV。
最终在输出端形成 +350mV和-350mV信号摆幅的差分输出。功耗为 3.5mA*350mV=1.2mW,不随着频率升高而增大功耗。高速逻辑电平中,LVDS是功耗最低的。
LVDS电平分析
LVDS的差分信号的两根差分信号线:正电极信号(A+)和负电极信号(B−);共模偏置电压为:1.2V,差模电压摆幅是:350mV。如果我们用示波器来测试信号波形,并对两个信号电压值取差:(A+)−(B−);那么我们可以得到差分摆幅为:-350mV和+350mV。具体波形如下图所示。
上述波形是理想的情况,如下所示为器件资料(Intel® Stratix® 10 Device)中关于LVDS相关参数的描述;其输出共模电压(VOCM)和差模电压(VOD)的具体规格如下蓝色框内所示;如果要正确接收其它器件发送过来的信号,必须满足红色框内关于输入共模电压(VICM(DC))和差模电压(VID)的参数要求
LVDS电平特点
LVDS 的特点是电流驱动模式,低电压摆幅350mV可以提供更高的信号传输速率(一般655Mbps),使用差分传输的方式可以减小信号和噪声的EMI辐射:
1、输出电平切换不需要设计类似TTL/CMOS的“死区时间”,可以支持更高速率;由于是电流驱动,所以不需要防备电压源直接接地的风险。
2、低输出电压摆幅(350mV):
可以支持更高速率(1Gbps以上),具体支持速率对比如左下图。功耗消耗更低(如右下图所示),内部散热更小,有助于提供芯片集成度。
3、低EMI电磁辐射:
低的信号边缘变化率:dV/dt = 0.350V/0.5ns = 0.7V/ns;如下图所示,虽然速率高(ps级别),但是由于摆渡小所以边沿变化率要求不高。
耦合差分信号线的电磁干扰相互抵销,对外辐射小;耦合差分信号线抗电磁干扰性强;允许输入的共模电压范围大,支持1V的共模偏置电压差(如上图所示);传输线匹配简单。
接口类型
- 6位LVDS输出接口
这种接口电路中,采用单路方式传输,每个基色信号采用6位数据,共18位RGB数据,因此,也称18位或18bit LVDS接口。 - 双路6位LVDS输出接口
这种接口电路中,采用双路方式传输,每个基色信号采用6位数据,其中奇路数据为18位,偶路数据为18位,共36位RGB数据,因此,也称36位或36bit LVDS接口。 - 单路8位LVDS输出接口
这种接口电路中,采用单路方式传输,每个基色信号采用8位数据,共24位RGB数据,因此,也称24位或24bit LVDS接口。 - 双路8位LVDS输出接口
这种接口电路中,采用双路方式传输,每个基色信号采用8位数据,其中奇路数据为24位,偶路数据为24位,共48位RGB数据,因此,也称48位或48bit LVDS接口。
分辨率
- 单路:
1280 x 800@60
1366 x 768@60 - 双路:
1920*1080@60
阻抗匹配问题
无论是使用电缆还是PCB走线,LVDS的高速信号传输都必须考虑阻抗匹配问题:阻抗不连续或终端不匹配会影响传输信号;所以需要控制传输线阻抗,并保证合适的端接
1、对于点到点的链路(LVDS),如下图所示,只需要使用100Ω端接在距离驱动器最远处,如果输出端和输入端共模偏置电压不匹配(或考虑上电时序的漏电影响),则需串接100nF电容器进行AC耦合,AC耦合电容器对信号传输影响不大(相当于短路,可以动手算一算:100nF电容器在100MHz频率时的阻抗是多少)。
2、对于多分支总线(M-LVDS),如果驱动器在总线的一端,则可采用相同的端接方法(即在距离驱动器最远端端接100Ω电阻,如下图所示);否则需要端接总线的两端。
M-LVDS可以实现点对多,而且长距离的传输(如下左图所示),与RS-485总线的应用有明显重叠;两者参数对比如下右图所示,本章不对M-LVDS和RS-485展开分析。
3、如下图所示,还有一种多点拓扑是:“半双工”拓扑;它由两个驱动/接收对组成,在单个互连上传输和接收两个点之间的信号。
电路和PCB设计
在电路应用中,设计者应该关注以下几个方面:
- LVDS接受方对信号的共模电平要求很低。电压在0 - 2.4V均可以(LVPECL不具备这种特性)。所以LVDS适合板间长距离信号的传输。因为差分摆幅最大值为454mV。因此运行输入端信号携带的直流偏执电压范围为0.227V~2.173V。如果不满足上述要求。应采取AC(交流)耦合。
- LVDS接收端对输入差分对信号摆幅的要求是100mV。(差分对的压差必须要有100mV才能正常工作)
- LVDS信号在终端必须在差分对上串接一个100欧电阻。作用是:①用于实现电流向电压转化。②实现阻抗匹配。
- LVDS信号的变化速率较低。爬升时间为0.5ns。所以信号沿变化速率是0.7V/ns,变化速率越低。EMI就越小。所以LVDS电平有助于减小EMI。
- 一个芯片可能有两对甚至更多LVDS差分线,空闲的输入引脚应浮空。防止产生噪声。空闲的输出引脚应浮空。以减小功耗。
- LVDS不适用于数据速率为2Gbps以上的应用。如果速率需要超过Gbps以上,应考虑LVPECL电平。
注意:
1、空闲的LVDS引脚就应该直接浮空,不能做上下拉处理。主控板FPGA上的空闲的LVDS引脚做上下拉处理时。PCB位置应该尽量靠近主芯片。避免因为走线距离太远。信号线与旁边的信号线产生串扰。串扰的电压大于100mV。就会使得电平状态发生变化。解决方式:①改版时删除上下拉。②关闭FPGA内部的空闲端口。
2、 在高速设计中,高速差分对经常作为板间互连接的接口信号。设计者应该关注 TTL、COMS等单端信号对这些差分信号的共模噪声影响。虽然差分信号的接收端对共模噪声的抑制能力很强,一般不至于出现判断错误,但在差分信号线的上的共模噪声却可以产生对外辐射,成为一种EMI源。对此,有两种解决方法:
①在PCB上增大单端信号和差分信号的间距。
②降低单端信号的驱动电流。例如选择低驱动能力的逻辑器件,或者FPGA设计中,将输出端口设置为弱电流驱动模式。
对于LVDS PCB的设计来说,不论LVDS信号对数量是多少,都建议使用多层板,最少四层设置: LVDS、GROUND、POWER、TTL。
- 对 LVDS 信号和其它信号(举个栗子,TTL 信号;避免受到干扰),最好能使用不同的走线层,如果因为设计限制必须使用同一层走线,LVDS 和 TTL 的距离应该足够远,至少应该大于 3~5 倍差分线间距;
- 保证收发器到接插件的距离足够短,防止由于 Stub 线过长引起信号的崎变,一般要求距离小于 10mm;
- 对收发器的电源使用滤波电容,滤波电容的位置应该尽量靠近电源和地管脚,滤波电容其的容值参照器件手册;如果没有推荐滤波电容器值,那么可以按照1个uF级电容(如10uF)+每个管脚1个100nF电容的经验值进行设计。
- 对电源和地管脚与参考平面的连接应该使用短和粗的连线连接,同时使用多点连接;主要为了减小寄生电感。
- 对走线的阻抗要求进行控制,一般差分阻抗控制在100 欧姆;匹配电阻的阻值可以进行调整,根据差分线阻抗和输出差模电压范围来决定。
- 对走线方式的选择没有限制,微带线和带状线均可,但是必须注意有良好的参考平面。对不同差分线之间的间距要求间隔不能太小,至少应该大于 3~5 倍差分线间距;
- 对接收端的匹配电阻到接收管脚的距离要尽量的靠近(一般小于 7mm,最大不能超过 12mm); 未使用的输入管脚可以悬空,如下图所示:
- LVDS 在电缆中的使用同在 PCB 中的使用方式并无大的差别,需要注意在不同电缆中 LVDS 差分信号需要不同的排布方式,如下图所示;电缆本身的插损需要满足支持该频率高速信号传输,例如:屏蔽双绞线比较适合作为 LVDS 传输的介质,CAT3 电缆可以传输 5m,CAT5 电缆可以传输更远距离的 LVDS 信号。
- 差分对等长问题 (必须等长)
①走线长度要一致(总误差4mil以内),长度不一致会导致时序问题,导致参考平面的回流无法完全抵消,从而产生共模噪声。
②在平行和等长之间,先保证等长。
③地平面要完整。地平面不完整会产生共模噪声,严重时会产生EMI问题。 - 差分对内两个信号的间距越小越好
①间距越小,附件的干扰对差分对内两信号的影响接近一致,方向相反,近似等于抵消。
②差分对内两信号电流相反,形成电流环路,电流环路能产生磁场,磁场又能产生电场,从而构成电磁干扰。所以减小两线间距,能较小电流环路,从而减小电磁干扰。
③差分对内两个信号的间距要保持一致。不一致会产生反射。
④尽量保证差分对信号线附件的过孔是对称的。
LVDS端口保护
LVDS是常用的板间互连接口。当A板不在位时,B板LVDS接收器的输入端失去了驱动源,处于开路状态。此时,接收器的输出端将保持为逻辑“1”(由LVDS器件的内部逻辑保证),这种状态是正确的。
一旦输入端信号线(在B板上,从背板连接器到LVDS接收器之间的信号线)上引入了噪声,且达到接收端的阈值100mV,这种正确的状态将被打破,使接收器的输出端状态翻转为逻辑“0”。
解决方法有很多种:
①某些LVDS接口器件内置有保护电路,使用时和普通LVDS器件一样,外加100Ω端接电阻即可
②某些LVDS接口器件则需要外加保护电路。
下图是一个外加保护电路的例子:
除了串接了电阻Rt外,外置保护电路增加了R1和R2两个电阻形成偏执电路。LVDS接收器输入端浮空时,VID会有个固定的正偏执电平。从而提高更大的噪声范围,但噪声小于VID时,接收端器的输出仍可保持逻辑“1”的状态。一般这个值为mV。举例子,以25mV为例。求R1和R2的阻值:
VID=25mV=100*3.3V/(R1+R2+100)
VOS=1.25V=(R2+50)*3.3V/(R1+R2+100)
1.25V是前面的规格书里面写的输出信号的共模电平(1.125~1.375V)取中间值。注意R1、R2、Rt都应该尽量靠近接收端位置,且偏置电路要远远小于LVDS提供的3.5mA电流,以免影响LVDS接收器的正常工作。
3.3V/(R1+R2+100)= 0.248 mA。满足要求。
这种外部保护电路存在一定的局限性:
①可能导致LVDS信号的占空比失真。
②由于增加两个电阻会占PCB位置。
TTL和CMOS不适用于高速电路设计的原因(都是数字电路信号)
- 电平幅度较大,电平最低都达到了2.5V或者3.3V。因此信号沿变化所需要的时间很长。不适合大于200MHZ的信号。
- 容易被干扰,输出信号为单端,在传输路径容易受到干扰,不利于远距离传输。
- 功耗大。功耗分为静态功耗和动态功耗。因为电平摆动大,所以导致动态功耗大。部分CMOS静态功耗较小,但是普遍都大。动态功耗很大。
高速电平的优势
LVDS、LVPECL、CML三种电平适用于高速电路。LVDS信号最常用。原因为:①电平摆幅窄,②支持远距离传输,③功耗小。
高速电路都是采用差分信号进行传输。差分技术的优势:
- 抗干扰能力强。
- 对参考平面(地平面或者电源平面)完整性要求较弱。
- 抑制串扰、EMI能力强。
- 功耗小,速率高、不受温度、电压波动的影响。
LVDS、LVPECL、CML特性图如下:
MIPI接口
建议先阅读:MIPI协议
MIPI联盟定义了一套接口标准,把移动设备内部的接口如摄像头、显示屏、基带、射频接口等标准化,从而增加设计灵活性,同时降低成本、设计复杂度、功耗和EMI。
MIPI特点
- 高速:1Gbps/Lane,4Gbps吞吐量,可更快
- 低功耗:200mV差分摆幅,200mv共模电压
- 噪声抑制
- 更少的pin,PCB layout更方便
分辨率
- MIPI-DSI:2048*1536@60fps
MIPI-DSI模式
- Command Mode
对应于并行接口的MIPI-DBI-2,带有Frame Buffer,刷屏基于DCS的Command集的方式,类似于CPU屏。 - Video Mode
对应于并行接口的MIPI-DPI-2,刷屏基于时序控制,类似于RGB同步屏
工作方式
- command工作方式
使用DCS Long Write Command Packet刷新GRAM。每帧第一个packet的DCS command为write_memory_start,实现每帧同步
- video工作方式
使用sync packet实现时序同步,Pixel packet实现LCD刷屏。空白区域可以为任意,每帧要以LP为结束。
LVDS和MIPI主要区别
- LVDS接口只用于传输视频数据,MIPI DSI不仅能够传输视频数据,还能传输控制指令;
- LVDS接口主要是将RGB TTL信号按照SPWG/JEIDA格式转换成LVDS信号进行传输,MIPI DSI接口则按照特定的握手顺序和指令规则传输屏幕控制所需的视频数据和控制数据。
转接芯片
CPU和显示屏之间的接口要匹配才能工作。看起来相似的接口并不能直接通用。(如MCU和RGB、MIPI和LVDS)。如果不匹配,需要挂载转接芯片,做一次协议转换之后才能使用。
常用的转换芯片有:RGB转MIPI、LVDS转MIPI等。
转接的方式,通常只在特定情况下才使用,例如CPU接口受限、且LCD无法修改。此类芯片一般价格不菲,十几二十块一颗很正常。
如下图的案例,为了在骁龙芯片上使用Google Nest的圆形LCD,不得不使用转接芯片,把CPU的Mipi接口的输出,转化成LCD能接受的RGB接口的数据。