ARM同步串行控制器SSC
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
AT91RM9200理器同步串口SSC的特性分析与应用
2008-09-24 嵌入式在线收藏| 打印
1 引言
电信网和因特网是两大网络系统,必然存在两个网络数据或信息的互通问题,例如:VoIP、混合视频会议等新业务。
E1接口和以太网接口分别是电信网和因特网使用最为普遍的接入端口,设计一个嵌入式网关设备,通过这两种端口将两大网络连接起来就显得尤为迫切、重要。本文介绍的AT91RM9200处理器处理能力强、接口丰富,内部集成了同步串口和以太网接口,是嵌入式小型网关控制器的理想选择。
2 AT91RM9200和DS21554
AT91RM9200内部集成了一个ARM920T—ARM Thumb处理器,在180 MHz时钟时运行速度高达200 MI/s;内部有16 KB的数据Cache、16 KB指令Cache、写缓冲区、全功能的MMU(存储器管理单元);片内带有调试通道的仿真器、16 KB的SRAM和128 KB的ROM,支持SDRAM、SRAM、Burst Flash,无缝连接CompactFlashTM,SmartMediaTM和NAND Flash;增强型的时钟产生器和电源管理控制器,包括周期性中断、看门狗和带有报警中断的实时时钟;带有8个优先级、可单个屏蔽中断源、7个外部中断源和一个快速中断源;122个可编程I/O引脚(多功能复用);20通道DMA(直接存储器存取)控制器;10/100 Base-T型以太网控制器及介质无关接口MII,全速USB 2.0接口(12 Mb/s,2主1从),3个同步串行控制器(SSC),4个通用同步/异步串口(USART),主机/从机串行外设接口(SPI),两线接口(TWI),两个3通道16位定时/计数器(TC)。超强的处理能力和丰富的接口使得该处理器广泛应用于各种嵌入式通信和控制系统中,尤其是同步串口和以太网接口,使其可以作为网关设备核心处理器。
电信网中数据以TDM(时分复用)形式传输,采用E1帧结构,相应网络接口包括电气接口和帧结构,符合ITU-T的G.703/G.704
规范或者国标GB7611。DS21554是一个符合该规范的E1成帧器集成电路,内部集成了线路接口和成帧器,其主要性能有:符合规范的完整PCM30/32 E1收发器:内含一个64 KB缓冲器的HDLC控制器;8 bit并行控制器接口;提供随路信令(CAS)、共路信令(CC S)和CRC4帧格式;回环测试功能;HDB3编码的线路接口等。线路接口支持75 Ω同轴电缆或者120 Ω双绞线连接;背板接口可以根据需要在主、从模式下工作,提供同步接收、发送数据信号(RSER/TSER),收发帧定位信号(RSYNC/TSSYNC),收发时钟信号(RS YSCLK/TSYSCLK);四个DS21554可以实现背板信号菊花链连接,提供8192 KB/s字节复用同步数据流。
3 SSC特性分析
AT91RM9200提供三个独立的同步串行控制器(SSC)与外部器件进行同步通信。它支持音频和电信应用中常用的串行同步通信协议,如I2S、短帧同步、长帧同步方式等。
每个SSC包含独立的接收器、发送器以及一个时钟分频器。发送器/接收器分别有三个信号引脚:数据TD/RD信号、时钟TK/RK信号及帧同步。TF/RF信号,由于这些引脚与通用I/O引脚复用,初始化程序必须配置使其在SSC模式下工作;每帧最多由16个32位字组成,可编程设定为自动启动或在帧同步信号检测到不同事件时启动。SSC与内部两个32位专用外设数据直接存取控制器P
DC(Pe-ripheral DMA Controller)通道连接,可在没有处理器干涉的情况下进行连续的高速率数据传输。初始化程序配置使每帧为16个16位半字即每帧32字节,与E1帧对应;串口发送/接收时钟由其工作模式决定,从模式时,TK/RK和TF/RF均为输入端子,由外部提供时钟和帧定位型号。主模式时,TK/RK和TF/RF均为输出端子,对E1成帧器提供时钟和帧定位信号,此时,时钟信号TK/RK来源非常灵活。
内部发送时钟TCLK(接收时钟RCLK)来源非常灵活,可以来自处理器主时钟MCK经SSC分频后得到的分频时钟D_CLK、TK引脚(RK引脚)或者RCLK(TCLK),如图1所示。处理器内部主时钟MCK通过初始化程序配置时钟选择器、预分频器和分频器得到MCK,再经过SSC分频器使得分频时钟D_CLK为2.048 Mb/s,如图2所示。主模式下帧定位信号TF/RF也非常灵活,通过配置相关寄存器,可以使其为正脉冲或者负脉冲,脉冲宽度可以调节,与发送/接收信号的相位关系也可以灵活调整,能够与标准的E1成帧器背板信号直接连接。数据流中可以发送或者接收一个特定标记数据(帧同步数据),类似于E1帧结构中的帧同步数据。每帧起始位置可以通过寄存器设置,帧脉冲生效后,数据起始位置与时钟信号有关,主要有4种模式:连续、TK/RK上升或下降沿触发、TK/RK高或低电平触发、TK/RK电平变化或沿跳变触发,如图3所示,接收起始模式与发送类似。
发送数据或者接收数据帧格式由发送器帧模式寄存器(SSC_TFMR)以及接收器帧模式寄存器(SSC_RFMR)编程设定,可以分别设置的参数有:
启动数据传输条件;
帧脉冲前沿到第一个数据位的延时;
数据长度(DATLEN);
每帧传输的数据数(DATNB);
帧同步数据寄存器长度(FSLEN);
比特意义:高位或低位在前(MSBF)。
上述设置可以配置SSC同步串口每帧长度最大为512位长,由于E1帧格式每帧固定长度8×32位=256位,因此,配置适当SSC 相关寄存器不仅可以保证SSC同步串口与E1接口时钟、帧脉冲、收/发数据等时序一致,而且数据帧格式也能保持一致。
专用外设数据直接存取控制器PDC(PeripheralDMA Controller)用于UART、USART、SSC、SPI、MC等片上串行外设与片内、片外存储器间传输数据。使用外设数据直接存取控制器能够提高数据传输能力,减轻处理器运行负担。这样显著降低了外设与存储器之间数据传输所需的时钟周期数,因此也提高了微控制器的性能,使处理器工作更有效。PDC通道是成对构建的,每对对应一个指定的外设。通道中一个负责接收、另一个负责发送。PDC用户接口集成在每个外设存储空间中,它包括:1个32位存储器指针寄存器、1个16位传输计数寄存器、1个32位寄存器(用作下个存储器指针)、1个16位寄存器(用作下个传输计数)。