深入解析Z80230/Z85230/L增强型串行通信控制器

电子说

1.4w人已加入

描述

深入解析Z80230/Z85230/L增强型串行通信控制器

在电子设计的领域中,通信控制器是实现数据高效传输的关键组件。今天,我们将深入探讨Zilog公司的Z80230/Z85230/L增强型串行通信控制器(ESCC),从其基本特性到实际应用,为大家进行全面剖析。

文件下载:Z8523010PEG.pdf

一、产品概述与安全警示

Z80230/Z85230/L ESCC是一款功能强大的数据通信设备,可在多种协议下进行数据的收发,同时作为微处理器外设,提供了诸如向量中断和DMA支持等实用功能。不过,需要特别注意的是,该产品未经Zilog公司总裁和总法律顾问的明确书面批准,不得用于生命支持设备或系统的关键组件,这是保障使用安全的重要前提。

二、引脚功能详解

(一)引脚分组

ESCC的引脚分为七个功能组,包括地址/数据、总线定时和复位、设备控制、中断、串行数据(双信道)、外设控制(双信道)以及时钟(双信道)。不同的总线接口版本在地址/数据组、总线定时和复位组以及设备控制组中的引脚功能有所不同。

(二)通用引脚

像CTSA、CTSB、DCDA、DCDB等引脚,既可以在特定编程模式下作为收发器使能,也能作为通用输入引脚使用。例如,当设置为自动使能(WR3位5为1)时,CTS引脚可作为发送器使能,并且采用施密特触发缓冲,能适应慢速上升沿输入信号。

(三)专属引脚

Z85230/L有D7 - D0数据总线引脚、片选引脚 $overline{CE}$ 等;Z80230则有AD7 - AD0地址/数据总线引脚、读/写控制引脚 $R/W$ 等。这些专属引脚为不同的设备提供了特定的控制和数据传输方式。

三、功能特性深度剖析

(一)输入/输出能力

ESCC通过17个写寄存器和16个读寄存器实现与系统的通信。新增加的写寄存器7 Prime(WR7’)可开启多项新功能。数据的传输有轮询、中断(向量和非向量)和块传输三种模式。

  1. 轮询模式:在此模式下,数据中断被禁用。ESCC会自动更新三个寄存器,CPU通过定期读取状态寄存器来判断是否需要进行数据传输,RR0是判断的关键寄存器。
  2. 中断模式:支持向量和嵌套中断。收发FIFO的中断触发填充级别可进行编程设置,以适应不同系统的中断响应时间。在中断响应过程中,通过INTACK信号可实现中断优先级的管理。
  3. 块传输模式:该模式配合CPU或DMA控制器使用。WAIT/REQUEST输出可根据不同模式定义为WAIT线或REQUEST线,实现数据的高效传输。

(二)数据通信能力

ESCC具备两个独立的全双工可编程通道,能支持多种异步和同步数据通信协议。

  1. 异步模式:相较于标准串行通信控制器(SCC)有显著改进,更深的数据FIFO可有效防止数据下溢和溢出,提高总线带宽利用率。在数据收发方面,支持5 - 8位字符,可选择奇偶校验,发送器能提供1、1.5或2个停止位,并具备断点检测功能。
  2. 同步模式:支持面向字节和面向位的同步通信。在面向字节的同步协议中,可通过6位或8位同步字符、12位或16位同步模式或外部同步信号实现字符同步。同时,支持CRC - 16和CRC - CCIT两种错误校验多项式,并且可在特定情况下自动发送CRC数据。
  3. SDLC模式:支持同步位导向协议,如SDLC和HDLC。能自动发送标志、插入零和生成CRC。在帧传输过程中,可处理突发情况,如发送中断时的中止命令。接收器能自动同步帧头标志,搜索指定地址帧,自动删除插入的零,并进行CRC校验。
  4. SDLC LOOP模式:该模式下,主控制器管理消息流量,从站可在特定条件下发送消息。在此模式下,NRZ、NRZI或FM编码均可使用。
  5. SDLC状态FIFO:一个10位深、19位宽的状态FIFO缓冲区,可提高ESCC接收高速连续SDLC帧的能力,使DMA能持续将数据传输到内存,CPU可后续检查消息状态。

(三)增强特性

  1. 4字节发送FIFO缓冲区:具备可编程的中断和DMA请求级别,可根据需要设置发送缓冲区为空(TBE)中断和DMA请求的触发条件,提高系统响应的灵活性。
  2. 8字节接收FIFO:同样具有可编程的中断级别,能根据不同的应用场景灵活设置中断触发条件,减少中断频率,提高系统效率。
  3. 写寄存器7 PRIME(WR7’):新增的寄存器可开启六项新功能,包括扩展读取使能、发送FIFO中断级别设置、DTR/REQ定时模式设置等,为ESCC的编程提供了更多的灵活性。
  4. 其他增强特性:如SDLC模式下的CRC接收改进、TxD强制高电平功能、改进的发送中断处理、DPLL计数器发送时钟源功能等,都进一步提升了ESCC的性能和稳定性。

四、编程与初始化要点

(一)编程方式

Z85230/L的可编程数据FIFO可通过D/C引脚选择直接访问。编程写寄存器通常需要两次写操作,读取读寄存器则需要一次写和一次读操作。Z80230的寄存器可直接寻址,通过WR0B命令确定地址解码方式。

(二)初始化步骤

软件首先要发出一系列命令来初始化基本操作模式,然后根据所选模式进一步设置具体条件。例如在异步模式下,需要先设置字符长度、时钟速率、停止位数量和奇偶校验等,再设置中断模式,最后启用接收器和发送器。

五、电气特性与接口时序

(一)电气特性

ESCC规定了绝对最大额定值,包括电源电压范围、引脚电压范围、工作环境温度和存储温度等。同时,详细说明了标准测试条件、电容参数、直流特性和交流特性,这些参数是确保ESCC正常工作的重要依据。

(二)接口时序

不同型号的ESCC在写周期、读周期和中断响应周期的时序有所不同。例如,Z80230使用 $overline{AS}$ 和 $overline{DS}$ 信号控制总线事务,而Z85230/L则通过 $overline{WR}$ 和 $overline{RD}$ 信号生成内部控制信号。在实际应用中,必须严格按照这些时序要求进行设计,以确保系统的稳定性。

六、常见问题与解决方案

ESCC目前存在一些已知的问题,如IUS问题、RTS问题、自动TxD强制高电平问题、SDLC FIFO溢出问题、默认RR0和RR10值问题以及CRC问题等。针对这些问题,文档中都提供了相应的解决方案,如采用替代操作模式、利用菊花链结构、检查特定寄存器等方法,帮助工程师解决实际应用中遇到的问题。

七、总结与展望

Z80230/Z85230/L ESCC以其丰富的功能和强大的性能,在数据通信领域具有广泛的应用前景。通过深入了解其引脚功能、工作模式、编程方法和电气特性,工程师可以更好地利用这款控制器,设计出高效、稳定的数据通信系统。同时,对于已知问题的解决方案也为实际应用提供了有力的保障。在未来的电子设计中,ESCC有望继续发挥重要作用,为更多的应用场景提供支持。

大家在使用Z80230/Z85230/L ESCC的过程中,是否也遇到过一些独特的问题呢?欢迎在评论区分享你的经验和见解。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分