深入剖析Atmel AT43USB370:USB 2.0双角色处理器的卓越性能与应用

电子说

1.4w人已加入

描述

深入剖析Atmel AT43USB370:USB 2.0双角色处理器的卓越性能与应用

在嵌入式设备的设计领域,USB连接功能的实现至关重要。Atmel的AT43USB370作为一款USB 2.0兼容的双角色、全速主机/功能处理器,为嵌入式设备的点对点USB连接提供了出色的解决方案。今天,我们就来深入剖析这款处理器的特性、架构和应用。

文件下载:AT43USB370E-AC.pdf

一、产品特性概览

1. USB 2.0全速主机/功能处理器

AT43USB370具备实时主机/功能切换能力,内部集成了USB和系统接口控制器。它拥有32位通用系统处理器接口并支持DMA,为数据传输提供高效通道。同时,主机和功能操作分别设有独立的TX和RX缓冲区,还支持系统内固件升级。

2. 自主USB主机操作

无需系统处理器干预,AT43USB370就能完成设备枚举、USB协议管理、总线带宽回收和状态处理等任务。它支持控制、批量、中断和同步传输,最多可同时支持7个USB设备。

3. 全速功能控制器

具有1个双向控制端点和6个可编程端点(可设置最大数据包大小和端点类型),支持控制、中断、批量和同步传输,非同步端点还具备自动重试功能。

4. 集成USB固件

提供易于使用、符合ANSI C标准的API,方便进行USB设备驱动开发。同时,还集成了嵌入式、与操作系统无关的USB主机栈、嵌入式系统接口控制器驱动和嵌入式USB集线器驱动。

5. 其他特性

工作频率为6 MHz,支持1.8 V和3.3 V供电,采用100引脚LQFP封装。

二、架构与功能详解

1. 硬件架构

AT43USB370采用SRAM版本,利用片上的USB控制器(USBC)和系统接口控制器(SIC)来分担系统处理器的USB相关处理任务。上电或复位时,系统处理器通过系统总线接口将相应的固件下载到USBC和SIC中。

  • USB收发器:符合通用串行总线2.0版标准,能以12 Mbps和1.5 Mbps的速率进行串行数据的发送和接收。
  • 串行接口引擎(SIE):完全由硬件实现,负责时钟和数据恢复、串行/并行转换、NRZI编码/解码、CRC计算等功能。
  • SIE控制器:作为SIE和USBC之间的接口,负责解码USBC的命令并更新USB事务结束后的状态,同时控制FIFO以进行数据和控制包的管理。
  • USB控制器:专门用于管理USB协议,其控制和状态寄存器映射到数据存储器中,固件决定其工作模式(主机或功能)。
  • 系统接口控制器:作为USB控制器和外部系统处理器之间的接口,管理数据流向系统处理器的传输,并为系统应用提供通用的USB设备驱动接口。
  • FIFO:包含一个数据FIFO块和一个控制FIFO块。控制FIFO有128字节的内存,用于双向控制端点;数据FIFO有2 Kbytes的内存,可动态配置以支持不同的数据端点需求。

2. 控制和状态寄存器

用于在操作开始时配置AT43USB370,USBC和SIC与系统处理器接口逻辑共享该寄存器集。默认情况下,该块为启用32位数据总线DMA的主机操作进行了预配置。在功能模式下,可定义端点的数量和性质。

3. 时钟与复位

AT43USB370需要一个外部6 MHz晶体为片上PLL提供参考时钟频率,PLL为处理器提供所有内部时钟源。复位信号为低电平有效,复位时,USBC和SIC初始化,系统处理器接口寄存器恢复默认值。

4. 固件下载机制

通过外部系统处理器对USBC和SIC进行系统内编程,需要SELECT、PROG、READY和DONE控制信号。编程时,先选择要编程的控制器,然后通过一系列操作将固件下载到程序存储器中。

三、系统处理器接口与数据传输机制

1. 系统处理器接口

AT43USB370通过通用32位系统处理器接口与外部系统处理器连接,系统接口信号包括地址总线、数据总线、片选、读使能和写使能。片上DMA引擎提供系统处理器和片上USB FIFO块之间的最大数据吞吐量。

2. 数据传输机制

  • 可编程IO(PIO)接口:用于系统处理器对AT43USB370的系统处理器接口寄存器进行单或多读写操作,需要MORE和INTR_IN信号。
  • 直接FIFO接口:系统处理器可通过该接口直接读写AT43USB370的片上FIFO,通过在地址总线上写入0xFF进行配置。
  • DMA接口:用于AT43USB370内部FIFO和系统处理器内存之间的数据传输,AT43USB370通过断言DREQ_N信号发起DMA过程,采用块模式传输数据。

四、固件架构

1. 主机固件

由主机USB控制器驱动(HUSBCD)和主机系统接口控制器驱动(HSICD)组成。HUSBCD负责自主集线器支持、设备枚举、帧管理、事务调度、总线回收和状态处理等任务;HSICD负责数据传输管理、高级API管理、描述符管理和USB主机系统库的管理。

2. 功能或设备固件

包括设备USB控制器驱动(DUSBCD)和设备系统接口控制器驱动(DSICD)。DUSBCD负责设备配置、FIFO配置、设备枚举和标准请求处理、挂起检测和事务处理等任务;DSICD负责数据传输管理和高级API管理。

五、电气特性与封装信息

1. 电气特性

AT43USB370的绝对最大额定值包括3.3V电源供应范围为3.0 - 3.6V,工作温度范围为0 - 70°C等。同时,文档还给出了DC和AC电气特性的详细参数。

2. 封装信息

采用100引脚LQFP封装,符合JEDEC参考MS - 026,Variation AED标准。

六、总结与思考

AT43USB370以其高度集成的USB硬件/固件架构,隐藏了传统USB设计的复杂性,释放了系统资源,是资源受限嵌入式环境中实现点对点USB连接的理想解决方案。在实际应用中,电子工程师可以根据具体需求,合理配置AT43USB370的工作模式、端点参数等,以实现最佳的性能和功能。同时,对于其数据传输机制和固件架构的深入理解,有助于开发出高效、稳定的USB设备驱动和应用程序。大家在使用AT43USB370的过程中,是否遇到过一些有趣的问题或挑战呢?欢迎在评论区分享交流。

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

全部0条评论

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

×
20
完善资料,
赚取积分