引 言
USB的英文全称为Universal Serial Bus,中文意义是通用串行总线,它是一种快速的,双向的,同步传输的廉价的并能够进行热拔插的串行接口。USB接口运用便利,它能够衔接多个不同的设备,而曩昔的串口和并口只能接一个设备。速度快是USB技能的杰出特色之一。全速USB接口的最高传输率可达12Mb/s,比串口快了整整100倍,而履行USB2.0规范的高速USB接口速率更是到达了480Mb/s.这使得高分辨率、真彩色的大容量图象的实时传送成为可能。USB接口支撑多个不同设备的串列衔接,一个USB接口理论上能够衔接127个USB设备。衔接办法也十分灵敏,既能够运用串行衔接,也能够运用集线器(Hub)把多个设备衔接在一起,再同PC机的USB接口相接。一般的运用串口、并口的设备都需求独自的供电体系,而USB设备则不需求。正是因为USB的这些特色,使其获得了广泛的运用。到现在为止,USB现已在PC机的多种外设上得到运用,包含扫描仪,数码相机,数码摄像机、音频体系、显现器、输入设备等。关于广阔的工程规划人员来说,USB是规划外设接口时抱负的总线。
关于USB接口芯片,一般分为一般和DMA(直接存储器存取)两种作业形式。相关于一般形式,DMA数据传输形式传输速率更快,更合适于视频数字信号等高速、实时信号的传送。但惋惜的是,国内市场上供给的各种USB接口电路板大部分仅作业在一般形式,短少对DMA作业形式的支撑,不能直接用于象CCD数字摄像机USB接口这样的需求作业在DMA形式下的规划开发。为了处理这个问题,咱们对USB的原理进行了研讨,尝试着运用51单片机结合PHILIPS公司的PDIUSBD12带并行总线的USB接口器材规划带DMA作业形式的可供视频信号传输的多功用USB接口电路,现已规划出了完好的硬件电路。
1、USB概述
因为多媒体技能的开展对外设与主机之间的数据传输率有了更高的需求,因而,USB总线技能应运而生。USB(Universal Serial Bus)翻译为中文便是通用串行总线,是由Conpaq、DEC、IBM、Inter、Microsoft、NEC和Northen Telecom等公司为简化PC与外设之间的互连而共同研讨开发的一种免费的规范化衔接器,它支撑各种PC与外设之间的衔接,还可完结数字多媒体集成。现在出产的PC简直都装备了USB接口,Microsoft 的Windows98、NT以及MacOS、Linux、FreeBSD等盛行操作体系都添加了对 USB的支撑。
USB的首要长处:
l 运用便利。衔接外设不必再打开机箱;答应外设热插拔,而不必封闭主机电源。
l 速度快。USB支撑三种设备传输速率:1.5 Mb/s(低速设备)、12 Mb/s(中速设备)和480 Mb/s(高速设备)。
l 独立供电。USB接口供给了内置电源。
l 衔接灵敏。一个USB口理论上能够衔接127个USB设备。衔接的办法也十分灵敏,既能够运用 串行衔接,也能够运用集线器Hub,把多个设备衔接在一起,再同PC机的USB口相接。
l 本钱低。为了把外设衔接到PC上,USB供给了一种低本钱的处理计划。
现在满意USB要求的外设有:调制解调器,键盘,鼠标,光驱,游戏手柄,软驱,扫描仪,音箱等。USB总线规范由1.1版升级到2.0版后,传输率由12Mbps添加到了480Mbps,替换介质后衔接间隔由本来的5米添加到近百米。依据这点,USB也能够做出产ISDN以及依据视频的产品。USB 总线结构简略,信号界说仅由2条电源线,2条信号线组成。
2、USB结构与作业原理
一个USB体系能够从三个方面加以描绘
(1)USB互联。
(2)USB设备。
(3)USB主机。
USB互联是指一个USB设备与USB主机相联并和其通讯的办法,它包含:
(1)总线拓扑结构:USB主机和USB设备的衔接模型。
(2)层间联系:USB在体系中的每一层都要完结必定的使命。
(3)数据流模型:USB体系中信源和信息之间的数据传送办法。
(4)使命规划:USB供给能够同享的互联机制。经过规划对互连机制的拜访,能够支
持同步数据传输。
下面扼要评论USB硬件结构和数据流传输。
2.1 USB硬件结构
一个USB体系包含三类硬件设备: USB主机(USB HOST)、 USB设备(USB DEVICE)、USB集线器(USB HUB)。拜见图2-1。
(1)USB HOST
在一个USB体系中,当且仅当有一个USB HOST时,USB HOST有以下功用:
◇ 办理USB体系;
◇ 每毫秒发生一帧数据;
◇ 发送装备恳求对USB设备进行装备操作;
◇ 对总线上的过错进行办理和康复。
(2)USB DEVICE
在一个USB体系中,USB DEVICE和USB HUB总数不能超越127个。USB DEVICE接纳USB总线上的一切数据包,经过数据包的地址域来判别是不是发给自己的数据包:若地址不符,则简略地丢掉该数据包;若地址相符,则经过呼应USB HOST的数据包与USB HOST进行数据传输。
(3)USB HUB
USB HUB用于设备扩展衔接,一切USB DEVICE都衔接在USB HUB的端口上。一个USB HOST总与一个根HUB (USB ROOT HUB)相连。USB HUB为其每个端口供给100mA电流供设备运用。一起,USB HUB能够经过端口的电气改变确诊出设备的插拔操作,并经过呼应USB HOST的数据包把端口状况报告给USB HOST。一般来说,USB设备与USB HUB间的连线长度不超越5m,USB体系的级联不能超越5级(包含ROOT HUB)。
USB总线最多可支撑127个USB外设衔接到计算机体系。USB的拓扑是树形结构,有1个USB根集线器(root hub),下面还可有若干集线器。1个集线器下面可接若干USB接口。USB线缆包含4条线:Vbus(USB电源)、D+(数据)、D-(数据)和 Gnd(USB地)。线缆最大长度不超越5m。USB1.1的传输速率最高为12Mb/s(低速外设的规范速率为1.5Mb/s,高速外设的规范速率为 12Mb/s)。图2-1是典型的USB功用器材结构框图,图2-3是高速外设的USB线缆与电阻的衔接图。图2-3中:FS为全速(高速);LS为低速;R1=15kΩ,R2=15kΩ。USB外设能够选用计算机里的电源(+5V,500mA),也可外接USB电源。在一切的USB信道之间动态地分配带宽是USB总线的特征之一,这大大地进步了USB带宽的运用率。当一台USB外设长期(3ms以上)不运用时,就处于挂起状况,这时只耗费0.5mA 电流。按USB1.0/1.1规范,USB的规范脉冲时钟频率为12MHz,而其总线时脉冲时钟为1ms(1kHz),即每隔1ms,USB器材应为 USB线缆发生1个时钟脉冲序列。这个脉冲系列称为帧开端数据包(SOF)。高速外设长度为每帧12000bit(位),而低速外设长度只要每帧 1500bit。1个USB数据包可包含0~1023字节数据。每个数据包的传送都以1个同步字段开端。
2.2 USB的数据流传输
主操控器担任主机和USB设备间数据流的传输。这些传输数据被当作接连的比特流。每个设备供给了一个或多个能够与客户程序通讯的接口,每个接口由0个或多个管道组成,它们别离独登时在客户程序和设备的特定终端间传输数据。USBD为主机软件的实际需求树立了接口和管道,当提出装备恳求时,主操控器依据主机软件供给的参数供给服务。
USB支撑四种根本的数据传输形式:操控传输,等时传输,中止传输及数据块传输。每种传输形式运用到具有相同姓名的终端,则具有不同的性质。
操控传输类型:支撑外设与主机之间的操控,状况,装备等信息的传输,为外设与主机之间供给一个操控通道。每种外设都支撑操控传输类型,这样主机与外设之间就能够传送装备和指令/状况信息。
等时传输类型:支撑有周期性,有限的时延和带宽且数据传输速率不变的外设与主机间的数据传输。该类型无差错校验,故不能确保正确的数据传输,支撑像计算机-电话集成体系(CTI)和音频体系与主机的数据传输。
中止传输类型:支撑像游戏手柄,鼠标和键盘等输入设备,这些设备与主机间数据传输量小,无周期性,但对呼应时刻灵敏,要求立刻呼应。
数据块传输类型:支撑打印机,扫描仪,数码相机等外设,这些外设与主机间传输的数据量大,USB在满意带宽的情况下才进行该类型的数据传输。
USB选用分块带宽分配计划,若外设超越当时带宽分配或潜在的要求,则不能进入该设备。同步和中止传输类型的终端保存带宽,并确保数据按必定的速率传送。集中和操控终端按可用的最佳带宽来传输传输数据。
3、USB外设操控器的两种完结办法
USB芯片在外设范畴的运用面很广。USB外设操控芯片一般包含USB收发器、串行接口引擎(SIE)、USB操控器和外设功用等四个模块(SIE 首要以硬件办法处理大多数USB协议,USB操控器担任与PC交互通讯信息)。USB操控器一般有两种类型:一种是MCU集成在芯片里边的,如 Intel的8X930AX、CYPRESS的EZ-USB、SIEMENS的C541U以及 MOTOLORA、National Semiconductors等公司的产品;另一种便是朴实的USB接口芯片,仅处理 USB通讯,如PHILIPS的PDIUSBD11(I2C接口)、 PDIUSBP11A、PDIUSBD12(并行接口),National Semiconductor的USBN9602、USBN9603、USBN9604等。
集成MCU的USB操控芯片长处是CPU与操控器在同一片芯片里,CPU只需求拜访一系列寄存器和存储器,便可完结USB口的数据传输,最大极限的发挥 USB高速的特色。而且简化了程序的规划,极大地降低了USB外设的开发难度。缺陷是灵敏性不够高,开发本钱较大。
朴实的USB接口芯片的长处是体系组成灵敏,可依据不同的体系需求,调配不同的MCU,具有较高的功用价格比。但因为USB操控器是经过串行口或并行口与MCU衔接,在传输速度方面和开发难度方面不如集成了MCU的操控芯片。
不同的完结办法在规划开支、上市时刻、元器材开支和引脚数方面各有好坏,挑选不同的计划意味着在以上各项方针中进行取舍。
本文首要介绍PHILIPS公司的PDIUSBD12器材。该芯片是一款性价比很高的USB器材,它一般用作微操控器体系中完结与微操控器进行通讯的高速通用并行接口,规划者可依据需求挑选适宜的微操控器,灵敏性较大,适用于开发低本钱且高效的USB外围设备。
4、运用:带DMA视频信号接口功用的USB接口电路规划
现在,市场上供给的USB接口电路板许多,但大部分仅运用一般的作业形式,短少对DMA作业形式的支撑,不能直接用于象CCD数字摄像机USB接口这样的需求作业在DMA形式下的规划开发。
所谓的DMA传送办法,全名叫直接存储器存取(Direct Memory Access)数据传送办法,是指选用专门的硬件(DMA操控器)来履行数据传送。DMA操控器能够从CPU那里接纳体系总线的操控权,而且由本身宣布存储器地址信号以及拜访存储器和I/O设备的读/写脉冲等操控信号,使得数据经过总线,直接在存储器和I/O设备之间(或I/O设备与存储器之间,存储器与存储器之间)进行传送。在DMA接纳总线履行数据传送进程中,CPU暂停作业。
因为DMA传送办法仅仅在需求占用总线传送数据时才暂停CPU的操作,CPU的作业效率极高,传输数据可由硬件本身操控,大大进步了传送速率,十分合适于高速数据的收集。
下面就介绍一下咱们运用51单片机结合PHILIPS公司的PDIUSBD12带并行总线的USB接口器材规划带DMA作业形式的可供视频信号传输的多功用USB接口电路。
4.1 体系概略
该体系首要完结USB的接口功用,经过它,外设与计算机之间能够完结USB办法的衔接。外设接口1用于DMA办法数据的传送,可与CCD摄像头号设备相连。外设接口2选用了规范的IDE接口办法,可直接于硬盘等大容量存储器相连,传输海量数据,也能够经过接口转化,与其他功用的外设相连,具有较广的适用性。
下面阐明晰此多功用USB接口电路的框图:
这个框图显现了两种接口计划:一般形式和DMA形式。
(1)计划一:一般形式
图4-2是该USB接口电路一般形式的框图,该框图阐明晰衔接外设的一种简略形式,一切寄存器和数据的读写都是经过8051 的I/O 来仿真的,因而数据吞吐速率较低,合适间歇式数据的传送。
(2)计划二:DMA形式
数据传送以DMA办法,直接由D12传送到计算机里,MCU只完结DMA的初始化作业,传输速度快,合适于视频数字信号等高速实时传送。
体系具体的电原理图和电路板结构图拜见附录。
4.2 体系首要部件及电路
该体系首要由89C51操控电路、PDIUSBD12 接口电路、数据挑选电路、串并转化电路、挂起复位电路、IDE扩展接口电路等组成,下面分述各部分的功用和特色。
4.2.1 89C51操控电路
89C51是该接口电路的操控中心,其间P0,P2口用做16位数据I/O口,P1,P3口用做操控。
89C51的晶振频率为24MHz,每个机器周期为0.5us.
4.2.2 PDIUSBD12 接口电路
PDIUSBD12是一个功用优化的USB器材,一般用于依据微操控器的体系并与微操控器经过高速通用并行接口进行通讯,也支撑本地DMA传输。该器材选用模块化的办法完结一个 USB接口,答应在许多可用的微操控器中挑选最适宜的作为体系微操控器,答应运用现存的体系结构并使固件出资减到最小。这种灵敏性削减了开发时刻、危险和本钱,是开发低本钱且高效的USB外围设备处理计划的一种最快途径。 PDIUSBD12彻底契合USB1.1规范,也能习惯大多数设备类规范的规划,如成像类、大容量存储类、通讯类、打印类和人工输入设备等,因而,PDIUSBD12 十分合适做许多外围设备,如打印机、扫描仪、外部大容量存储器( Zip驱动器)和数码相机等。现在用SCSI完结的许多设备假如用 USB来完结能够直接降低本钱。
PDIUSBD12挂起时的低功耗以及LazyClock输出契合ACPI 、OnNOW和USB电源办理设备的要求。低功耗作业答应完结总线供电的外围设备。
PDIUSBD12还集成了像SoftConnect、GoodLink、可编程时钟输出、低频晶振和终端电阻等特性。一切这些特性都能在体系完结时节省本钱,一起在外围设备上很简单完结更高档的 USB功用。
(1)内部结构
① 模仿收发器。集成的收发器直接经过终端电阻与USB电缆接口。
② 电压调整器。片上集成的1个3.3 V电压调整器为模仿收发器供电,也供给衔接到外部1.5 kΩ上拉电阻的输出电压。作为挑选,PDIUSBD12供给集成1.5 kΩ上拉电阻的SoftConnect技能。
③ PLL。片上集成1个6~48 MHz的倍频PLL(锁相环),答应运用6 MHz的晶振,EMI也因为运用低频晶振而减小。PLL的作业不需求外部器材。
④ 位时钟康复。位时钟康复电路用4倍过采样原理从输入的USB 数据流中康复时钟,能盯梢USB规范中指出的信号颤动和频率漂移。
⑤ PHILIPS串行接口引擎PSIE。PHILIPS的SIE彻底完结USB协议层。考虑到速度,它是全硬件的, 不需求固件(微程序)介入。这个模块的功用包含:同步形式辨认、并 /串转化、位填充/不填充、CRC校验、PID承认、地址辨认以及握手判定。
⑥ SoftConnect。高速设备与USB的衔接是靠把D+经过1个1.5 kΩ的上拉电阻接到高电平来树立的。在PDIUSBD12中,这个上拉电阻是集成在芯片 内的,缺省是没有衔接到VDD,这个衔接是靠外部 MCU发一个指令来树立的。这使得体系微处理器能够在决议树立 USB衔接之前完结初始化。从头初始化USB总线衔接也能够不必拔掉电缆来完结。
⑦ GoodLink。GoodLink是靠一个引脚接发光二极管完结的。在 USB设备枚举时LED指示灯将当即闪亮;当PDIUSBD12被成功枚举并装备时, LED指示灯将会一向亮;经过PDIUSBD12的USB数据传输进程中, LED将一闪一闪,传输成功后LED平息;在挂起期间,LED平息。这种特功用够使咱们知道 PDIUSBD12的状况,便利电路调试。
⑧ 存储器办理单元MMU和集成RAM。MMU和集成RAM能缓冲USB(作业在 12Mb/s)数据传输和微操控器之间并行接口之间的速度差异,这允 许微操控器以自己的速度读写USB包。
⑨ 并行和DMA接口。并行接口简单运用、速度快而且能直接与主微操控器接口。关于微操控器,PDIUSBD12能够看成是一个有8位数据总线和1位地址线的存储设备。 PDIUSBD12支撑多路复用和非多路复用的地址和数据总线。在主端点(端点 2)和部分同享存储器之间也可运用DMA(直接存储器存取)传输。它支撑单周期形式和块传送形式 两种DMA传输。
(2)PDIUSBD12引脚阐明
(3)PDIUSBD12的典型衔接
PDIUSBD12与80C51的衔接电路如 图4-6 所示。在这个比如中, ALE一向接低电平,阐明选用独自地址和数据总线装备。A0 脚接80C51的任何I/O引脚,操控是指令仍是数据输入到PDIUSBD12 。80C51的P0口直接与PDIUSBD12的数据总线相衔接,CLKOUT 时钟输出为80C51供给时钟输入。
(4)PDIUSBD12的DMA 传输
直接存储器寻址 答应在主端点和本地同享存储器间完结数据块的有用传输.运用DMA操控器,PDIUSBD12 的主端点和本地同享存储器间的数据传输可自主进行而不需求本地CPU 的干涉.要处理任何DMA传输,本地CPU 从主机接纳必要的树立信息并对DMA操控器进行相应的编程.典型的对DMA操控器的传输形式、字节计数寄存器和地址计数器进行正确的编程。在该形式下, PDIUSBD12 宣布恳求时开端传输,当字节计数器削减为零时中止。在DMA 操控器编程之后,本地CPU 在初始化传输时将PDIUSBD12 中的DMA使能方位位。
PDIUSBD12 可编程为单周期DMA或突发形式DMA。在单周期DMA 中,DMREQ在每单个应对后直到被DMACK_N 从头激活之前坚持无效。在突发形式DMA 中,DMREQ 在器材中突发编程时一向坚持有用。该进程继续到PDIUSBD12 经过EOT_N 接纳到一个DMA 中止信息。这时发生一个中止指示本地CPU ,DMA操作现已完结。
在DMA 读操作时,DMREQ 仅当缓冲区彻底表明主机成功的发送了一个信息包到PDIUSBD12 时才有用。因为具有双缓冲装备主机能够在第一个缓冲区被读出时对第二个缓冲区进行填充。这种并行的处理有用的添加了数据吞吐量。当主机没有彻底填满缓冲区的情况下(单向ISO 装备时小于64 或128 字节)。DMREQ 会在缓冲区的最终一个字节时无效,而不论当时的DMA突发计数。在更新了DMA突发计数的下一个包发送时,DMREQ 再次被激活。
DMA的写操作与之类似,当缓冲区未装满时,DMREQ 一向有用。当缓冲区填满时,鄙人一个IN 标志将信息包送入主机。当传输完结之后DMREQ 变为无效。相同的,双缓冲装备在这也改进了数据的吞吐量。在非同步传输中(批量形式和中止),在数据被发送到主机之前,缓冲区需求经过DMA写操作彻底装满。仅有的破例是,在DMA传输结束时,EOT_N 接纳的信号将会中止DMA写操作而且鄙人一个IN 标志置位时将缓冲区的内容传送到主机。
在同步形式中,本地CPU 和DMA 操控器有必要确保它们在一个USB 帧(1ms )中能够吞吐的最大信息包的规划。DMACK_N 的激活将主动挑选主端点(端点2 )而不论当时挑选的端点。PDIUSBD12的DMA操作可经过一般的I/O 对其它端点的存取完结穿插存取。DMA操作可经过以下办法中止:复位DMA使能寄存器位或EOT_N 加上DMACK_N 以及RD_N/WR_N的激活。
PDIUSBD12 支撑单地址形式中的DMA传输,也能够在DMA 操控器的双地址形式中作业。在单地址形式中,DMA 经过DREQ ,DMACK_N,EOT_N,WR_N 和RD_N 操控线完结传输。在双地址形式中,DMREQ,DMACK_N和EOT_N未用,取而代之的是CS_N,WR_N和RD_N操控信号。需求遵从 PDIUSBD12的I/O 形式传输协议。在读周期中对DMAC 信号源进行拜访,在写周期对方针进行拜访。传输需求两个独自的总线周期来贮存暂存在DMAC 中的数据。
4.2.3 DMA办法数据传输电路
上面具体介绍了PDIUSBD12芯片的原理和作业办法,下面将介绍接口电路板作业在DMA办法的原理。该传输办法的原理框图参看图4-3。
当外设接口1接入要求DMA传输的设备,51单片机向D12宣布DMA传送的指令,并经过操控口线使157数据挑选电路里74164传送过来的并行数据直接与D12的并行接口相连,不在进入51单片机,在完结了对D12 DMA传送初始化今后,MCU不再操控传送,而由计数器满8向D12发送一个读信号,使D12 读取164内存储的8个字节的数据,如此重复,整个传输进程由硬件完结,不受MCU 的速率约束,然后完结了DMA传输。
此作业办法适用于视频数字信号的传输,下面是衔接CCD摄像头的电路示意图:
CCD_IN为经过A/D转化或二值化处理的视频数字信号,CCD_CLK1为脉冲同步信号,CCD_CLK2为行同步信号,CCD_CLK3为场同步信号。计数器对CCD_CLK1进行计数,满8个脉冲向D12的读端发一个低电平,告诉D12对164里边的数据进行读取。
4.2.4 数据挑选电路
数据挑选电路是由两片74H157建立而成,数据挑选DATA_SEL端连到了51的操控口线上,由51操控D12的并行数据I/O口是和51的P0口相连仍是和74HC93串并转化输出的并行数据线相连,然后抵达了数据挑选的效果。
4.2.5 串并转化及计数器电路
电路中74HC164起了串并转化的效果,在DMA作业办法下,经过接入数据同步脉冲,把外设接口1送入的串行数据转化成并行数据,供D12直接读取。
计数器74HC93担任对CCD_CLK1进行计数,满8个脉冲向D12的读端发一个低电平,告诉D12对164里边的数据进行读取。
4.2.6 复位挂起电路
复位挂起电路
挂起和复位电路被规划在一起,答应器材进入挂起形式还能够到达在USB 规范Rev.1.1 中所陈说的挂起约束电流。
履行此功用今后将逼迫MCU 进入掉电形式,MCU 振荡器中止作业。只要硬件复位才干唤醒MCU作业。从这个电路中,复位信号是衔接到复位电路的,当上位PC 机从挂起状况康复时,将导致D12 触发挂起信号,并经过上面的电路而发生复位信号。
4.2.7 外设接口2
选用规范的IDE接口连线办法的外设接口2电路
外设接口2选用了规范的IDE接口连线办法,可直接与计算机硬盘、光驱、光盘刻录机等相连,用于传输海量数据,运用便利。
因为采取了51接口扩展的办法,经过对接口的转化,也能够与其他更多的外设相连,用处比较广泛。
4.2.8 其他器材
l 按下按钮SW1 :复位或康复体系
l LED D1 : USB 接口衔接成功指示器:当此LED 点亮时表明USB 主机和USB 器材现已安装和枚举。假如它正在闪耀表明数据现已发送或接纳。
l JP2: 外设接口1,用于与CCD相连,为4接口的接插件
l CON1: USB CON 用于与USB电缆相联。
结束语
USB为计算机外设输入输出供给了新的接口规范。它使设备具有热插拔,即插即用,主动装备的才能,并规范化设备衔接。USB的级联星型拓扑结构大大扩大了外设数量,使添加,运用外设愈加快捷,快速。而新提出的USB2.0规范更是将数据传输速率进步到了一个新的高度,这是具有夸姣的运用远景。