什么是 SSC? 如何为音频应用配置 SSC 简介 同步串行控制器 (Synchronous Serial Controller,SSC) 是一种串行同步通信模块, 可用于 Microchip 32 位 ARM Cortex -M3 Cortex -M4 和 Cortex -M7 系列单片机 (MCU) SSC 支持音频和电信应用中常用的多个同步通信协议, 如 I 2 S(Inter-IC Sound, 集成电路内置音频 ) 短帧同步和长帧同步 SSC 具有独立的发送器和接收器模块以及通用的时钟分频器模块 SSC 接口使用数据 时钟和帧同步信号进行发送和接收 SSC 与 DMA 一起使用时可在没有处理器干预的情况下进行连续的高速率数据传输, 通常用于通过 I 2 S 接口连接的音频应用 DS90003175A_CN 第 1 页
目录 简介... 1 1. 说明... 3 2. 配置 SSC 和 XDMAC... 5 3. 技巧... 7 4. 相关资源... 9 Microchip 网站... 10 变更通知客户服务... 10 客户支持... 10 Microchip 器件代码保护功能... 10 法律声明... 11 商标... 11 DNV 认证的质量管理体系... 12 全球销售及服务网点... 13 DS90003175A_CN 第 2 页
1. 说明 SSC 位于单片机的外设桥接器上 外设总线可为 SSC 提供时钟, 并通过功率管理控制 (Power Management Control,PMC) 模块进行配置和使能时钟 SSC 可与通用扩展直接内存访问控制器 (Extended Direct Memory Access Controller,XDMAC) 连接, 以增强工作性能 它可产生 TD/RD TF/RF 和 TK/RK 三种接口信号, 用于发送和接收通过外设输入输出 (Peripheral Input Output,PIO) 控 制器路由的数据 下表是有关 SSC 信号的说明 表 1-1. SSC 信号 引脚名称 引脚说明 类型 RF 接收帧同步 输入 / 输出 RK 接收时钟 输入 / 输出 RD 接收数据 输入 TF 发送帧同步 输入 / 输出 TK 发送时钟 输入 / 输出 TD 发送数据 输出 将 MCU 连接到音频编解码器模块就是一个使用 SSC 以 I 2 S 协议进行连接的典型案例 编解码器具有两个接口 : 通过 I 2 S 协议连接的音频数据接口, 和一般通过 I 2 C 协议连接的命令接口 Microchip 32 位 ARM Cortex MCU 具有一个两线接口 (Two Wired Interface,TWI) TWI 是兼容 I 2 C 的 Microchip 串行接口 下图展示了 SSC( 位于 Cortex MCU 上 ) 和编解码器器件之间典型的立体声输出和单声道输入连接 MCU 充当 I 2 S 主器件, 负责向从器件 ( 编解码器 ) 提供时钟 DS90003175A_CN 第 3 页
图 1-1. SSC-I 2 S 接口 MCU 向编解码器发送命令接口 (TWI) 信号, 并将 SSC 信号与 I 2 S 协议信号进行匹配 注 : 以下小节介绍的配置寄存器适用于 Cortex-M7 器件 有关 Cortex-M3 和 Cortex-M4 器件上寄存器的详 细信息, 请参见特定的器件数据手册 DS90003175A_CN 第 4 页
2. 配置 SSC 和 XDMAC 下图展示了将 SSC 连接到音频编解码器时通过寄存器进行配置的流程顺序 图 2-1. SSC 配置顺序 下图展示了将 XDMAC 用于优化 SSC 工作性能时通过寄存器配置 XDMAC 的流程顺序 DS90003175A_CN 第 5 页
图 2-2. XDMAC 配置顺序 DS90003175A_CN 第 6 页
3. 技巧 1. SSC 提供三个用于生成 TK/RK 的时钟源选项 对于发送器, 支持的时钟源为 : MCK: 分频的内部外设时钟 接收时钟 (RK): 接收器时钟可充当生成发送器时钟的输入 发送时钟 (TK): 外部生成的时钟可充当 TK 引脚上的输入 对于接收器, 支持的时钟源为 : MCK: 分频的内部外设时钟 接收时钟 (RK): 外部生成的时钟可充当 RK 引脚上的输入 发送时钟 (TK): 发送器时钟可充当生成接收器时钟的输入 注 : 1. SSC_TCMR/SCC_RCMR 寄存器中的 CKS 域提供的选项可指定时钟源 2. 时钟源为 MCK 时, 将在 SSC_CMR 寄存器中指定内部外设时钟的分频值 2. 要将 SSC 寄存器配置为使用 16 位宽传输音频数据, 请在 MCU 充当 I 2 S 主器件时使用两个通道和 48000 Hz 的采样率 2.1. 要从内部外设时钟 (MCK) 生成 TK, 应将以下除数因子编程到 SSC_CMR 中 与 I 2 S 器件连接时, 发送时钟 (TK) 信号将对应所需音频数据的比特率 I 2 S 比特率 = 每个通道的位数 * 通道数 * 采样频率 I 2 S 比特率 =16 * 2 * 48000 = 1536000 Hz 因此,SSC 需要生成 1536000 Hz 的 TK 为生成所需的 TK,SSC 外设提供了一个选项, 即将其内部外设时钟除以一个整数因子 对于 150 MHz 的 MCK, 整除数因子 => MCK/TK => 150 MHz/1536000 => 97.65 => 98 默认情况下,SSC 将内部时钟除以 2, 因此要编程到 SSC 时钟模式寄存器 SSC_CMR 中的因子 = 49 2.2. 要生成发送帧同步 (TF), 需要将哪些设置编程到 SSC_TFMR 寄存器中? 表 3-1. SSC_TFMR 中的可编程设置 域 值 说明 DATLEN 15 DATLEN+1 对应数据字长度 DATDEF 0 默认数据值 0 MSBF 1 首先发送 MSB DATNB 1 每帧 DATNB+1 字 FSLEN 15 每个帧同步脉冲的 FSLEN+1 时钟周期长度 FSOS 1 在负 TK 脉冲上使能帧同步输出 DS90003175A_CN 第 7 页
域 值 说明 FSDEN 0 使用默认数据值 (DATDEF) 驱动帧同步数据 FSEDGE 0 为正脉冲使能帧同步边沿检测 FSLEN_EXT 0 禁止扩展的脉冲长度 2.3. 要生成 TK, 需要将哪些设置编程到 SSC_TCMR 寄存器中? 表 3-2. 生成 TK 的编程设置域 值 说明 CKS 0 分频的 MCK 时钟是生成 TK 的源 CKO 1 可进行切换的连续 TK 时钟 CKI 0 在 TK 下降沿移出数据 CKG 0 对 TK 无门控, 总是使能 START 7 在检测到边沿时开始数据传输 STTDLY 1 延时 1 个时钟周期才开始传输 ( 对应 I 2 S 协议 ) PERIOD 15 位宽 (16)-1, 因此将实现 32 位宽的帧长度 ( 左和右通道 ) DS90003175A_CN 第 8 页
4. 相关资源 SAMV71 器件的同步串行控制器 (SSC), 可通过片上 WM8904 编解码器输出音频流 http://asf.atmel.com/docs/latest/ sam.components.audio.codec.wm8904.example.samv71_xplained_ultra/html/index.html SAM3S 器件的同步串行控制器 (SSC), 可通过片上 WM8731 编解码器输出音频流 http://asf.atmel.com/docs/latest/sam.components.audio.codec.wm8731.example.sam3x_ek/html/ index.html I 2 S 模式中的 ASF SSC 示例 EVK 1100 http://asf.atmel.com/docs/latest/avr32.drivers.ssc_i2s.example.evk1100/html/index.html I 2 S 模式中的 ASF SSC 示例 EVK 1101 http://asf.atmel.com/docs/latest/avr32.drivers.ssc_i2s.example.evk1101/html/index.html 将 Atmel 基于 ARM 的串行同步控制器 (SSC) 连接到兼容 I 2 S 的串行总线 http://www.atmel.com/images/doc6020.pdf 如何在 I 2 S 模式中使用 SSC http://www.atmel.com/images/doc32127.pdf 在 SAM S/SAM E/SAM V 上使用 XDMAC http://www.atmel.com/images/atmel-42761-usage-of-xdmac-on-sams-same- SAMV_ApplicationNote_AT17417.pdf DS90003175A_CN 第 9 页
Microchip 网站 Microchip 网站 http://www.microchip.com/ 为客户提供在线支持 客户可通过该网站方便地获取文件和信息 只要使用常用的互联网浏览器即可访问, 网站提供以下信息 : 产品支持 数据手册和勘误表 应用笔记和示例程序 设计资源 用户指南以及硬件支持文档 最新的软件版本以及归档软件 一般技术支持 常见问题 (FAQ) 技术支持请求 在线讨论组以及 Microchip 顾问计划成员名单 Microchip 业务 产品选型和订购指南 最新 Microchip 新闻稿 研讨会和活动安排表 Microchip 销售办事处 代理商以及工厂代表列表 变更通知客户服务 Microchip 的变更通知客户服务有助于客户了解 Microchip 产品的最新信息 注册客户可在他们感兴趣的某个产品系列或开发工具发生变更 更新 发布新版本或勘误表时, 收到电子邮件通知 欲注册, 请登录 Microchip 网站 http://www.microchip.com/ 在 支持 (Support) 下, 点击 变更通知客户 (Customer Change Notification) 服务后按照注册说明完成注册 客户支持 Microchip 产品的用户可通过以下渠道获得帮助 : 代理商或代表 当地销售办事处 应用工程师 (FAE) 技术支持 客户应联系其代理商 代表或应用工程师 (FAE) 寻求支持 当地销售办事处也可为客户提供帮助 本文档后附有销售办事处的联系方式 也可通过以下网站获得技术支持 :http://www.microchip.com/support Microchip 器件代码保护功能 请注意以下有关 Microchip 器件代码保护功能的要点 : Microchip 的产品均达到 Microchip 数据手册中所述的技术指标 Microchip 确信 : 在正常使用的情况下,Microchip 系列产品是当今市场上同类产品中最安全的产品之一 目前, 仍存在着恶意 甚至是非法破坏代码保护功能的行为 就我们所知, 所有这些行为都不是以 Microchip 数据手册中规定的操作规范来使用 Microchip 产品的 这样做的人极可能侵犯了知识产权 Microchip 愿意与关心代码完整性的客户合作 Microchip 或任何其他半导体厂商均无法保证其代码的安全性 代码保护并不意味着我们保证产品是 牢不可破 的 代码保护功能处于持续发展中 Microchip 承诺将不断改进产品的代码保护功能 任何试图破坏 Microchip 代码保护功能的行为均可视为违反了 数字器件千年版权法案 (Digital Millennium Copyright Act) 如果这种行为导致他人在未经授权的情况下, 能访问您的软件或其他受版权保护的成果, 您有权依据该法案提起诉讼, 从而制止这种行为 DS90003175A_CN 第 10 页
法律声明 本出版物中所述的器件应用信息及其他类似内容仅为您提供便利, 它们可能由更新之信息所替代 确保应用符合技术规范, 是您自身应负的责任 Microchip 对这些信息不作任何明示或暗示 书面或口头 法定或其他形式的声明或担保, 包括但不限于针对其使用情况 质量 性能 适销性或特定用途的适用性的声明或担保 Microchip 对因这些信息及使用这些信息而引起的后果不承担任何责任 如果将 Microchip 器件用于生命维持和 / 或生命安全应用, 一切风险由买方自负 买方同意在由此引发任何一切伤害 索赔 诉讼或费用时, 会维护和保障 Microchip 免于承担法律责任, 并加以赔偿 除非另外声明, 否则在 Microchip 知识产权保护下, 不得暗中或以其他方式转让任何许可证 商标 Microchip 的名称和徽标组合 Microchip 徽标 AnyRate AVR AVR 徽标 AVR Freaks BeaconThings BitCloud CryptoMemory CryptoRF dspic FlashFlex flexpwr Heldo JukeBlox KeeLoq KeeLoq 徽标 Kleer LANCheck LINK MD maxstylus maxtouch MediaLB megaavr MOST MOST 徽标 MPLAB OptoLyzer PIC picopower PICSTART PIC32 徽标 Prochip Designer QTouch RightTouch SAM-BA SpyNIC SST SST 徽标 SuperFlash tinyavr UNI/O 和 XMEGA 是 Microchip Technology Incorporated 在美国和其他国家或地区的注册商标 ClockWorks The Embedded Control Solutions Company EtherSynch Hyper Speed Control HyperLight Load IntelliMOS mtouch Precision Edge 和 Quiet-Wire 为 Microchip Technology Incorporated 在美国的注册商标 Adjacent Key Suppression AKS Analog-for-the-Digital Age Any Capacitor AnyIn AnyOut BodyCom chipkit chipkit 徽标 CodeGuard CryptoAuthentication CryptoCompanion CryptoController dspicdem dspicdem.net Dynamic Average Matching DAM ECAN EtherGREEN In-Circuit Serial Programming ICSP Inter-Chip Connectivity JitterBlocker KleerNet KleerNet 徽标 Mindi MiWi motorbench MPASM MPF MPLAB Certified 徽标 MPLIB MPLINK MultiTRAK NetDetach Omniscient Code Generation PICDEM PICDEM.net PICkit PICtail PureSilicon QMatrix RightTouch 徽标 REAL ICE Ripple Blocker SAM-ICE Serial Quad I/O SMART-I.S. SQI SuperSwitcher SuperSwitcher II Total Endurance TSHARC USBCheck VariSense ViewSpan WiperLock Wireless DNA 和 ZENA 为 Microchip Technology Incorporated 在美国和其他国家或地区的商标 SQTP 为 Microchip Technology Inc. 在美国的服务标记 Silicon Storage Technology 为 Microchip Technology Inc. 在除美国外的国家或地区的注册商标 GestIC 是 Microchip Technology Inc. 的子公司 Microchip Technology Germany II GmbH & Co. KG 在除美国外的国家或地区的注册商标 在此提及的所有其他商标均为各持有公司所有 2018, Microchip Technology Incorporated, 美国印刷, 版权所有 ISBN:978-1-5224-2823-7 DS90003175A_CN 第 11 页
DNV 认证的质量管理体系 ISO/TS 16949 Microchip 位于美国亚利桑那州 Chandler 和 Tempe 与位于俄勒冈州 Gresham 的全球总部 设计和晶圆生产厂及位于美国加利福尼亚州和印度的设计中心均通过了 ISO/TS-16949:2009 认证 Microchip 的 PIC MCU 和 dspic DSC KEELOQ 跳码器件 串行 EEPROM 单片机外设 非易失性存储器和模拟产品严格遵守公司的质量体系流程 此外,Microchip 在开发系统的设计和生产方面的质量体系也已通过了 ISO 9001:2000 认证 DS90003175A_CN 第 12 页
10/25/17 全球销售及服务网点 美洲 亚太地区 亚太地区 欧洲 公司总部 Corporate Office 2355 West Chandler Blvd. Chandler, AZ 85224-6199 Tel: 1-480-792-7200 Fax: 1-480-792-7277 技术支持 : http://www.microchip.com/ support 网址 :www.microchip.com 亚特兰大 Atlanta Duluth, GA Tel: 1-678-957-9614 Fax: 1-678-957-1455 奥斯汀 Austin, TX Tel: 1-512-257-3370 波士顿 Boston Westborough, MA Tel: 1-774-760-0087 Fax: 1-774-760-0088 芝加哥 Chicago Itasca, IL Tel: 1-630-285-0071 Fax: 1-630-285-0075 达拉斯 Dallas Addison, TX Tel: 1-972-818-7423 Fax: 1-972-818-2924 底特律 Detroit Novi, MI Tel: 1-248-848-4000 休斯敦 Houston, TX Tel: 1-281-894-5983 印第安纳波利斯 Indianapolis Noblesville, IN Tel: 1-317-773-8323 Fax: 1-317-773-5453 Tel: 1-317-536-2380 洛杉矶 Los Angeles Mission Viejo, CA Tel: 1-949-462-9523 Fax: 1-949-462-9608 Tel: 1-951-273-7800 罗利 Raleigh, NC Tel: 1-919-844-7510 纽约 New York, NY Tel: 1-631-435-6000 圣何塞 San Jose, CA Tel: 1-408-735-9110 Tel: 1-408-436-4270 加拿大多伦多 Toronto Tel: 1-905-695-1980 Fax: 1-905-695-2078 中国 - 北京 Tel: 86-10-8569-7000 中国 - 成都 Tel: 86-28-8665-5511 中国 - 重庆 Tel: 86-23-8980-9588 中国 - 东莞 Tel: 86-769-8702-9880 中国 - 广州 Tel: 86-20-8755-8029 中国 - 杭州 Tel: 86-571-8792-8115 中国 - 南京 Tel: 86-25-8473-2460 中国 - 青岛 Tel: 86-532-8502-7355 中国 - 上海 Tel: 86-21-3326-8000 中国 - 沈阳 Tel: 86-24-2334-2829 中国 - 深圳 Tel: 86-755-8864-2200 中国 - 苏州 Tel: 86-186-6233-1526 中国 - 武汉 Tel: 86-27-5980-5300 中国 - 西安 Tel: 86-29-8833-7252 中国 - 厦门 Tel: 86-592-238-8138 中国 - 香港特别行政区 Tel: 852-2943-5100 中国 - 珠海 Tel: 86-756-321-0040 台湾地区 - 高雄 Tel: 886-7-213-7830 台湾地区 - 台北 Tel: 886-2-2508-8600 台湾地区 - 新竹 Tel: 886-3-577-8366 澳大利亚 Australia - Sydney Tel: 61-2-9868-6733 印度 India - Bangalore Tel: 91-80-3090-4444 印度 India - New Delhi Tel: 91-11-4160-8631 印度 India - Pune Tel: 91-20-4121-0141 日本 Japan - Osaka Tel: 81-6-6152-7160 日本 Japan - Tokyo Tel: 81-3-6880-3770 韩国 Korea - Daegu Tel: 82-53-744-4301 韩国 Korea - Seoul Tel: 82-2-554-7200 马来西亚 Malaysia - Kuala Lumpur Tel: 60-3-7651-7906 马来西亚 Malaysia - Penang Tel: 60-4-227-8870 菲律宾 Philippines - Manila Tel: 63-2-634-9065 新加坡 Singapore Tel: 65-6334-8870 泰国 Thailand - Bangkok Tel: 66-2-694-1351 越南 Vietnam - Ho Chi Minh Tel: 84-28-5448-2100 奥地利 Austria - Wels Tel: 43-7242-2244-39 Fax: 43-7242-2244-393 丹麦 Denmark - Copenhagen Tel: 45-4450-2828 Fax: 45-4485-2829 芬兰 Finland - Espoo Tel: 358-9-4520-820 法国 France - Paris Tel: 33-1-69-53-63-20 Fax: 33-1-69-30-90-79 德国 Germany - Garching Tel: 49-8931-9700 德国 Germany - Haan Tel: 49-2129-3766400 德国 Germany - Heilbronn Tel: 49-7131-67-3636 德国 Germany - Karlsruhe Tel: 49-721-625370 德国 Germany - Munich Tel: 49-89-627-144-0 Fax: 49-89-627-144-44 德国 Germany - Rosenheim Tel: 49-8031-354-560 以色列 Israel - Ra anana Tel: 972-9-744-7705 意大利 Italy - Milan Tel: 39-0331-742611 Fax: 39-0331-466781 意大利 Italy - Padova Tel: 39-049-7625286 荷兰 Netherlands - Drunen Tel: 31-416-690399 Fax: 31-416-690340 挪威 Norway - Trondheim Tel: 47-7289-7561 波兰 Poland - Warsaw Tel: 48-22-3325737 罗马尼亚 Romania - Bucharest Tel: 40-21-407-87-50 西班牙 Spain - Madrid Tel: 34-91-708-08-90 Fax: 34-91-708-08-91 瑞典 Sweden - Gothenberg Tel: 46-31-704-60-40 瑞典 Sweden - Stockholm Tel: 46-8-5090-4654 英国 UK - Wokingham Tel: 44-118-921-5800 Fax: 44-118-921-5820 DS90003175A_CN 第 13 页