Atmel ATPL00B:电力线通信SoC的深度解析

电子说

1.4w人已加入

描述

Atmel ATPL00B:电力线通信SoC的深度解析

在电力线通信(PLC)领域,Atmel ATPL00B作为一款功能强大的系统级芯片(SoC),为自动化抄表、街道照明、家庭自动化等应用提供了可靠的解决方案。本文将深入剖析ATPL00B的各项特性、架构以及应用要点,帮助电子工程师更好地理解和应用这款芯片。

文件下载:ATPL00BDK-99.pdf

一、产品概述

ATPL00B是一款采用FSK调制的电力线通信SoC,集成了增强型8051核心(ADD8051C3A)、媒体访问控制器(ADD1210)和PLC调制解调器(ADD1310)。它的设计旨在降低PLC系统中CPU的计算负载,使微控制器能够专注于应用任务。

核心特性

  1. 增强型8051核心:ADD8051C3A核心相比标准8051微控制器速度提升了5倍,内置128KB的SRAM,支持在线串行闪存编程和自动从串行闪存加载程序。
  2. 媒体访问控制:具备卷积和块(FEC)信道编码、维特比解码功能,支持硬件CRC错误检测和FEC错误纠正,还提供旁路模式以支持早期无MAC的FSK调制解调器软件。
  3. 调制解调器:适用于50和60Hz的电力线载波调制解调器,载波频率为132.5kHz,波特率可在600至4800bps之间选择,半双工通信,接收器灵敏度高达44dBμVrms。
  4. 外设:拥有三个2线UART、两个SPI接口,支持可编程看门狗和四路调光器输入/输出,最多可提供20个I/O线。
  5. 封装:采用144引脚的LQFP封装,尺寸为16 x 16 mm,引脚间距0.4 mm,符合无铅和RoHS标准。

二、处理器与架构

1. ADD8051C3A微控制器

ADD8051C3A与传统8051微控制器完全兼容,但在硬件上有一些改进。其机器周期从12个时钟周期减少到3个时钟周期,大多数指令在1或2个机器周期内执行,程序执行速度比标准8051架构设备快至少4倍。芯片内集成了128KB的SRAM,程序内存和外部数据(XDATA)内存共享该SRAM,其中低64KB始终用于存储程序内存,高64KB可根据银行切换页面大小配置不同的程序和XDATA内存大小。

2. 内存组织

ATPL00B的程序内存和XDATA内存共享128KB的SRAM,通过内部RD和PSEN信号功能访问。程序内存只能读取,写入可能导致意外结果。有64KB的基本程序内存,可通过扩展程序页面增加容量。XDATA占用独立的地址空间,最多可寻址64KB。此外,ADD8051C3A核心还包含384字节的内部数据内存(IDATA)。

3. 指令集

ATPL00B的指令集提供了多种快速寻址模式,支持对内部RAM的字节操作,还支持单比特变量的直接操作,适用于需要布尔处理的控制和逻辑系统。指令集包括算术指令、逻辑指令、数据传输指令、布尔指令和跳转指令等。

4. CPU时序与电源管理

CPU执行时间分为机器周期,每个机器周期由3个状态组成,持续3个时钟周期。除MOVX指令外,所有指令的取指/执行序列相同。MOVX指令需要两个机器周期执行。ADD8051C3A具有空闲和掉电两种省电模式,可通过设置特殊功能寄存器PCON中的位来激活。

5. 中断系统

微控制器有10个用户中断源,包括2个外部中断、3个定时器中断、3个串行端口中断和2个标准串行外设中断。中断优先级可由用户选择,范围从“000”到“011”。每个中断源可通过设置特殊功能寄存器IE和IE2中的位来单独启用或禁用。

6. I/O端口

P1、P3、P4和P5端口为双向端口,每个端口由寄存器、输出驱动器和输入缓冲器组成。端口3、4和5的引脚具有多功能,可作为微控制器外设的输入或输出。端口可配置为伪双向模式或推挽模式。

三、定时器

ATPL00B配备了一套完整的定时器,包括两个16位可配置定时器/计数器(定时器0和定时器1)、三个8位自动重载计数器(定时器11、12和14)、一个8位带18位预分频器的看门狗定时器(定时器3)和一个16位定时器/计数器(定时器2)。

1. 定时器0和定时器1

定时器0和定时器1具有2位预分频器,可通过TPR、TMOD和TCON寄存器进行控制。它们有四种操作模式,可选择定时器或计数器功能。

2. 定时器2

定时器2是一个16位定时器/计数器,由TH2和TL2两个8位定时器寄存器级联组成。其操作模式包括捕获模式、自动重载模式、波特率生成器模式和可编程时钟输出模式,可通过T2MOD和T2CON寄存器进行配置。

3. 看门狗定时器(定时器3)

看门狗定时器包括一个18位预分频器,当/EWDG引脚接地时激活。T3必须由软件重新加载以避免溢出和程序重启,重新加载T3需要设置PCON寄存器中的WLE位。

四、标准串行接口

ATPL00B的串行端口为全双工,可同时进行发送和接收。串行端口控制和状态寄存器为SCON(0,1,2),包含模式选择位、第9位数据位和串行端口中断位。串行端口可工作在4种模式下,传输由写入SBUF指令启动,接收由特定条件触发。

1. 串行端口模式

  • 模式0(移位寄存器模式):串行数据通过RxD输入和输出,TxD输出移位时钟,波特率固定为振荡器频率的1/12。
  • 模式1(8位UART):传输10位数据,包括一个起始位、8个数据位和一个停止位,波特率由T1溢出控制。
  • 模式2和模式3(9位UART):传输11位数据,包括一个起始位、8个数据位、一个可编程的第9位数据位和一个停止位,波特率可编程为振荡器频率的1/32或1/64。

2. 串行端口定时器

定时器11、12和14用于作为UART 0、1和2的波特率生成器,它们类似于配置为8位自动重载模式的T1。

五、串行外设接口(SPI)

ATPL00B实现了两个串行外设接口SPI0和SPI1,均为全双工、同步通信总线,具有主模式和从模式两种操作模式。SPI0为字节导向的SPI,SPI1为字节缓冲的SPI。

1. SPI描述

SPI通信中,主设备负责初始化传输、数据移位和采样,所有活动与时钟信号同步。SPI0通过SPCTL、SPSTAT和SPDAT三个特殊功能寄存器进行配置和控制,SPI1通过SPCTL1、SPSTAT1和SPDAT1N寄存器进行配置和控制。

2. SPI时钟相位、极性和操作

SPI有四种时钟相位和极性组合,主设备可随时切换。正确选择时钟相位和极性对于数据传输至关重要。

3. SPI0写冲突

SPI0在发送方向为单缓冲,接收方向为双缓冲。在传输过程中写入数据寄存器会导致写冲突,WCOL位会被置位,新数据将丢失。

4. SPI模式

SPI通信在单主系统中操作简单,主设备和从设备配置为相同模式并开启,主设备选择从设备并写入数据即可启动传输。多主配置中,设备可在主模式和从模式之间切换。

六、引导加载器

ATPL00B需要外部SPI闪存存储器来存储固件和非易失性数据,内部128KB的SRAM用于固件执行和存储易失性变量。引导加载器在系统启动时将目标程序从串行闪存加载到内部SRAM,并在以下情况下执行:上电后、异步复位信号(RSTA)复位系统后、CONF SFR中的第2位被设置时以及看门狗超时且CONF SFR中的第1位被设置时。

1. 引脚描述

  • /PROG:上电后,若该信号接地,则启用系统内编程模式;否则,系统处于执行模式。
  • SECURED:当板卡配置支持时,该引脚启用加密固件执行。
  • P1.7 (SSN):用于读取有效的硅序列号设备的序列号。

2. 闪存编程

  • 系统内编程:通过将/PROG引脚接地启用,引导加载器通过RS - 232命令进行控制。
  • SPI闪存编程:复位后,若/PROG引脚接地,则允许发送标准SPI命令到闪存存储器。

3. 系统启动

系统在执行模式下上电或重新加载后,引导加载器将固件的易失性副本从闪存存储器传输到SRAM存储器,传输过程可能持续约400ms。传输完成后,微控制器开始执行程序。

七、调光器外设

ATPL00B SoC包含一个调光器外设,可控制多达四个三端双向可控硅(TRIAC)和四个开关。该外设可进行相位角控制以改变负载功率,也可用于生成PWM控制信号。

1. 配置寄存器

调光器外设的配置寄存器用于改变触发角、开启/关闭负载以及读取开关状态。这些寄存器包括DIM_CTRL、INP_ST、OUT_ST、OUT_REF、POLARITY、D_CONF、V_SWC、PWM_PER和INP_SOURCE等。

2. 外部电路

控制连接到ATPL00B的负载需要一些外部组件,外部电路的配置取决于集成电路GND引脚是否连接到电力线中性线。

八、媒体访问层

在电力线通信系统中,媒体访问控制(MAC)任务需要大量的CPU计算时间。ATPL00B通过ADD1210硬连线MAC单元加速关键任务的执行,以减轻集成MCU(8051C3A核心)的计算负载。

1. 数据包封装

MAC可根据启用的纠错和检测机制,以不同配置封装数据包。标准数据包封装包括前导码、头部、有效负载和后导码。

2. MAC架构

MCU与MAC的接口通过将其作为外部数据RAM进行寻址实现。MAC有十五个配置寄存器,可由MCU访问,用于控制MAC的操作。

3. MAC配置寄存器

MAC配置寄存器包括CTRL、FLAGS1、FLAGS2、DATA、TH_PREAM、TH_HEADER、BAUDRATE、TRACK、PREAM、CTRL2、BC、MODE1 - MODE4、VTB_BE_HARD、VTB_BE_SOFT和FEC_BER等,用于配置MAC的工作模式、波特率、错误检测阈值等。

4. 操作模式

MAC有多种操作模式,包括旁路模式、WHD模式、BYTE模式、FEC模式、VTB模式、FCS模式和NULL模式。不同模式适用于不同的应用场景。

5. 操作程序

操作程序包括STOP周期、WHD模式操作程序、传输程序和接收程序。这些程序指导MCU如何与MAC硬件进行交互。

九、PLC调制解调器

ATPL00B的PLC调制解调器支持多波特率,工作在132.5kHz的载波频率下。它可由硬连线MAC ADD1210控制,也可由微控制器ADD8051C3A控制,在微控制器控制时,MAC处于旁路模式。

1. 频率编码

逻辑符号“1”和“0”通过不同的频率值表示,可选择不同的频率偏差。

2. 调制解调器传输和接收

  • 传输特性:采用直接传输配置,通过电阻阵列生成传输信号,适用于家庭自动化应用。
  • 接收特性:提供低成本的直接模拟输入级,使用VIN、VRH和VRL输入,也可提供高性能的外部比较器接收接口。

3. PLC调制解调器配置寄存器

调制解调器有一组配置寄存器,用于设置主要工作特性,包括GAIN、CONTROL2、CONFIG、GFSK_DX、COMP、KNX_EN、CD_ENABLE、CD_DECISION_TIME、CD_DECISION_ERROR、TXRX_CTL和Ri等寄存器。

十、电气和机械特性

1. 电气特性

包括绝对最大额定值、推荐工作条件、直流特性、功耗、热数据、振荡器和上电等方面的特性。

2. 机械特性

采用144引脚的LQFP封装,引脚间距0.4mm,封装尺寸为16 x 16 mm。

3. 推荐安装条件

包括标准回流焊条件和手动焊接条件,确保芯片的正确安装和使用。

总结

Atmel ATPL00B作为一款功能丰富的电力线通信SoC,在自动化抄表、街道照明、家庭自动化等领域具有广泛的应用前景。其强大的核心性能、完善的外设功能和灵活的配置选项,为电子工程师提供了一个可靠的解决方案。在实际应用中,工程师需要根据具体需求合理配置芯片的各项参数,以充分发挥其性能优势。你在使用ATPL00B的过程中遇到过哪些问题呢?欢迎在评论区分享你的经验和见解。

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

全部0条评论

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

×
20
完善资料,
赚取积分