深入解析 Z80C30/Z85C30 CMOS SCC 串行通信控制器

电子说

1.4w人已加入

描述

深入解析 Z80C30/Z85C30 CMOS SCC 串行通信控制器

在电子设计领域,串行通信控制器是实现数据高效传输的关键组件。Zilog 公司的 Z80C30 和 Z85C30 CMOS SCC 串行通信控制器凭借其出色的性能和丰富的功能,在众多应用场景中得到了广泛应用。今天,我们就来深入探讨一下这两款控制器的特点、功能及应用。

文件下载:Z85C3016VSG.pdf

一、产品概述

Z80C30 和 Z85C30 是 Zilog 公司推出的引脚和软件兼容的 CMOS 成员,属于 SCC 家族。它们是双通道、多协议数据通信外设,能轻松与具有复用或非复用地址/数据总线的 CPU 进行接口。这两款控制器具有低功耗、高性能和出色的抗噪能力,适用于各种串行数据传输应用。

1.1 主要特性

  • 优化设计:Z85C30 针对非复用总线微处理器进行了优化,而 Z80C30 则针对复用总线微处理器进行了优化。
  • 双独立通道:拥有两个独立的 0 至 4.1 Mbps 全双工通道,每个通道都有单独的晶体振荡器、波特率发生器(BRG)和数字锁相环(DPLL),可实现时钟恢复。
  • 多协议操作:支持多种协议,可通过程序控制实现 NRZ、NRZI 或 FM 数据编码。
  • 异步和同步模式:具备异步模式(5 - 8 位字符,1、1.5 或 2 个停止位)和同步模式(内部或外部字符同步,CRC 生成和校验)。
  • SDLC/HDLC 模式:支持 SDLC/HDLC 模式,具有全面的帧级控制、自动零插入和删除等功能。
  • 软件中断确认:具备软件中断确认功能,这是 NMOS 版本所没有的。
  • 本地回环和自动回显:支持本地回环和自动回显模式。
  • 增强的 DMA 支持:提供增强的 DMA 支持,具有 10 x 19 位状态 FIFO 和 14 位字节计数器。

1.2 Z85C30 独有特性

Z85C30 还具备一些独有的特性,部分特性默认开启,部分特性(带 * 标记)默认禁用,可通过 WR7 进行编程启用。

  • 新的可编程写寄存器:新增可编程写寄存器 7 素数(WR7),可启用新功能。
  • SDLC 模式改进:改进了对同步通信 SDLC 模式的支持,包括更轻松地发送连续帧、自动 SDLC 起始标志传输等。
  • AC 时序改进:缩短了访问恢复时间,可编程 DTR/REQ 时序,消除了写数据到 WR 下降沿的建立时间要求,减少了 INT 时序。
  • 其他特性:具有扩展读取功能,可读取写寄存器的写入值;在读取时锁存 RRO;RRO 的 D7 位和 RR10 的 D6 位现在有默认复位值。

二、引脚描述

2.1 通用引脚

Z85C30 和 Z80C30 有一些通用引脚,这些引脚在不同模式下具有不同的功能。

  • CTSA、CTSB:清除发送(输入,低电平有效),可用于自动启用功能或作为通用输入。
  • DCDA、DCDB:数据载波检测(输入,低电平有效),可作为接收器启用或通用输入。
  • DTR/REQA、DTR/REQB:数据终端就绪/请求(输出,低电平有效),可作为通用输出或 DMA 控制器的请求线。
  • IEI、IEO:中断使能输入/输出,用于形成中断菊花链。
  • INT:中断请求(输出,开漏,低电平有效)。
  • INTACK:中断确认(输入,低电平有效)。
  • PCLK:时钟输入,用于同步内部信号。
  • RxDA、RxDB:接收数据输入。
  • RTxCA、RTxCB:接收/发送时钟输入,可配置多种工作模式。
  • RTSA、RTSB:请求发送(输出,低电平有效)。
  • SYNCA、SYNCB:同步(输入或输出,低电平有效),可作为输入、输出或晶体振荡器电路的一部分。
  • TxDA、TxDB:发送数据输出。
  • TRxCA、TRxCB:发送/接收时钟(输入或输出,低电平有效),可配置多种工作模式。
  • W/REQA、W/REQB:等待/请求(输出,开漏或驱动高/低电平),可作为 DMA 控制器的请求线或等待线。

2.2 特定引脚

  • Z85C30 特定引脚:A/B 用于选择通道,CE 为芯片使能,D7 - D0 为数据总线,D/C 用于选择数据或控制信息,RD 为读信号,WR 为写信号。
  • Z80C30 特定引脚:AD7 - AD0 为地址/数据总线,AS 为地址选通,CS0、CS1 为片选信号,DS 为数据选通,R/W 用于指定读写操作。

三、功能描述

3.1 I/O 接口能力

系统与 SCC 设备之间的通信通过其寄存器组完成。SCC 有十六个写寄存器(WR)和八个读寄存器(RR),通过这些寄存器可以进行数据、状态和控制信息的读写操作。数据传输方式有三种:轮询、中断(向量和非向量)以及 CPU/DMA 块传输。

  • 轮询:所有中断禁用,CPU 定期读取状态寄存器,根据寄存器内容决定是否进行数据传输。
  • 中断:支持向量和嵌套中断,通过 INTACK 信号实现中断确认。每个中断源有三个相关位:中断待决(IP)、服务中中断(IUS)和中断使能(IE)。有三种类型的中断:发送、接收和外部/状态中断。
  • CPU/DMA 块传输:提供块传输模式,可使用 WAIT/REQUEST 输出与 WR1 中的等待/请求位配合,实现 CPU 块传输功能和 DMA 控制器的数据传输。

3.2 SCC 数据通信能力

  • 异步模式:每个通道可独立发送和接收数据,字符长度为 5 - 8 位,可选择奇偶校验,发送器可提供 1、1.5 或 2 个停止位,并可提供中断输出。接收器具有瞬态脉冲抑制机制,可检测并缓冲帧错误和溢出错误。
  • 同步模式:支持字节和位导向的同步通信,可使用 6 位或 8 位同步字符(单同步)、12 位或 16 位同步模式(双同步)或外部同步信号进行字符同步。支持 CRC - 16 和 CCITT 错误检查多项式,可预设 CRC 生成器和校验器为全 1 或全 0。
  • SDLC 模式:支持 SDLC 和 HDLC 等同步位导向协议,自动执行标志发送、零插入和 CRC 生成。接收器可自动在帧的起始标志处实现同步,并可根据地址进行帧过滤。
  • SDLC 循环模式:支持 SDLC 循环模式,作为辅助站可监听并转发消息,在特定时间发送自己的消息。

3.3 波特率发生器和数字锁相环

  • 波特率发生器(BRG):每个通道都有一个可编程的波特率发生器,由两个 8 位时间常数寄存器、一个 16 位递减计数器和一个输出触发器组成。输出的 BRG 可作为发送时钟、接收时钟或两者,其时间常数与波特率的关系为:[Time Constant =frac{ PCLK or RTxC Frequency }{2 (Baud Rate)( Clock Mode )}-2]
  • 数字锁相环(DPLL):用于从 NRZI 或 FM 编码的数据流中恢复时钟信息,由一个标称频率为数据速率 32(NRZI)或 16(FM)倍的时钟驱动。

3.4 数据编码和回显功能

  • 数据编码:SCC 可通过四种不同方法对串行数据进行编码和解码,包括 NRZ、NRZI、FM1 和 FM0。此外,还可通过 DPLL 在 FM 模式下对曼彻斯特数据进行解码。
  • 自动回显和本地回环:支持自动回显功能,在异步、同步和 SDLC 模式下都可工作;本地回环模式将内部发送数据连接到内部接收数据,RxD 被忽略。

3.5 SDLC FIFO 帧状态 FIFO 增强

SCC 的 10 深 x 19 位宽状态 FIFO 可最大程度地提高接收高速连续 SDLC 帧的能力。当启用时,DMA 可继续将数据传输到内存,CPU 可稍后检查消息。每个 SDLC 帧的 14 位字节计数和 5 个状态/错误位存储在 FIFO 中,可通过读寄存器 6 和 7 访问。

四、编程与设置

4.1 寄存器编程

  • Z85C30:数据寄存器通过 D/C 引脚直接寻址,其他寄存器(除 WR0 和 RR0)的编程需要两次写操作,读取需要一次写和一次读操作。
  • Z80C30:所有 SCC 寄存器都可直接寻址,WR0B 中的命令控制如何解码地址/数据总线上的地址。

4.2 系统设置

系统程序首先发出一系列命令来初始化基本操作模式,然后根据所选模式设置其他条件,如异步模式下的字符长度、时钟速率、停止位和奇偶校验等,最后设置中断模式并启用接收器和发送器。

五、电气特性

5.1 绝对最大额定值

  • Vcc 电源电压范围:–0.3 V 至 +7.0 V
  • 所有引脚相对于 GND 的电压:–3 V 至 VCC + 0.3 V
  • 工作环境温度:见订购信息章节
  • 存储温度:–65° C 至 +150° C

5.2 标准测试条件

DC 特性和电容测量在标准测试条件下进行,所有电压以 GND 为参考,正电流流入参考引脚。

5.3 电容和 DC/AC 特性

文档还给出了输入、输出和双向电容的参数,以及 Z80C30 和 Z85C30 设备的 DC 和 AC 特性参数,包括输入输出电压、电流、时钟周期等。

六、封装与订购信息

6.1 封装

Z80C30 和 Z85C30 提供 40 引脚 DIP 封装和 44 引脚 PLCC 封装,文中给出了这两种封装的详细尺寸图。

6.2 订购信息

提供了不同速度(8 MHz、10 MHz、16 MHz)下的订购型号,同时介绍了部件编号后缀的含义,包括环境、温度范围、封装和速度等信息。

七、总结

Z80C30 和 Z85C30 CMOS SCC 串行通信控制器以其丰富的功能、出色的性能和灵活的编程能力,为电子工程师在串行数据通信设计中提供了强大的工具。无论是在异步通信还是同步通信应用中,它们都能满足不同的需求。在实际设计中,工程师需要根据具体的应用场景和系统要求,合理选择和配置这两款控制器,以实现高效、稳定的数据传输。大家在使用过程中遇到过哪些问题呢?或者对这两款控制器有什么其他的见解,欢迎在评论区分享交流。

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

全部0条评论

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

×
20
完善资料,
赚取积分