RK3036S 是一款低功耗、高性能的SoC处理器,适用于OTT电视盒子和其他数字多媒体应用,集成了双核Cortex-A7,配备独立的NEON协处理器和128KB L2缓存。支持主流格式的1080P视频解码,具有丰富的拓展接口。以下是RK3036S的datasheet,方便客户选型。
许多嵌入式的强大硬件引擎为高端应用提供了优化的性能。RK3036S支持几乎所有全格式的1080P H.264解码器和H.265解码器,高质量的JPEG解码器以及特殊的图像预处理器和后处理器。
嵌入式3D GPU使RK3036S完全兼容OpenGL ES1.1和2.0,OpenVG1.1等。
RK3036S具有高性能的外部内存接口(DDR3/DDR3L),能够支持高要求的内存带宽,同时提供一整套周边接口,支持非常灵活的应用。
微处理器
- 双核ARM Cortex-A7 MPCore处理器,一款高性能、低功耗且带缓存的应用处理器。
- 完全实现了ARM架构v7-A指令集,ARM Neon高级SIMD(单指令,多数据)支持加速媒体和信号处理计算。
- 超标量、变长、乱序流水线,具有动态分支预测,8级流水线。
- 包含VFPv3硬件,支持单精度和双精度的加、减、除、乘和累加以及平方根操作。
- SCU确保两个CPU之间的内存一致性。
- 集成32KB L1指令缓存,32KB L1数据缓存,4路集合关联。
- 128KB统一L2缓存。
内存组织
- 内部片上内存
- 16KB启动Rom
- 8KB内部SRAM
- 外部片外内存①
- DDR3-1066/DDR3L-1066,16位数据宽度,2个等级,总共2GB(最大)地址空间,每个等级的最大地址空间为1GB。
- 异步Nand Flash(包括LBA Nand),8位数据宽度,1个银行,60位ECC。
内部内存
- 内部BootRom
- 容量:16KB
- 支持从以下设备启动系统:
- 8位异步Nand Flash
- SPI Nand Flash
- SPI Nor Flash
- eMMC卡
- SD卡
- 支持通过以下接口下载系统代码:
- USB OTG接口
- 支持安全启动。
- 内部SRAM
- 容量:8KB
外部内存或存储设备
- 动态内存接口(DDR3/DDR3L)
- 兼容JEDEC标准DDR3/DDR3L SDRAM
- 数据速率高达1066Mbps(533MHz)适用于DDR3/DDR3L
- 支持多达2个等级(芯片选择),每个等级最大1GB地址空间
- 数据宽度为8位或16位,软件可编程
- 四个主机端口,带有64位/128位AXI总线接口,用于系统访问,AXI总线时钟与DDR时钟异步
- 可编程时序参数,支持来自不同供应商的DDR3/DDR3L SDRAM
- 先进的命令重排序和调度,以最大化总线利用率
- 低功耗模式,例如对于DDR3/DDR3L SDRAM的电源下降和自刷新
- 可编程输出和ODT阻抗,具有动态PVT补偿
- 支持一种低功耗工作模式:关闭DDR PHY和大部分DDR IO,除了两个cs和cke输出信号,使SDRAM仍然处于自刷新状态,以防止数据丢失
- Nand Flash接口
- 支持异步nand flash,每个通道8位,1个银行
- 支持可配置的接口时序
- 嵌入式特殊DMA接口进行数据传输
- 也支持与SoC系统中的PERI_DMAC一起进行数据传输
- eMMC接口
- 兼容标准eMMC接口
- 支持MMC4.5协议
- 提供eMMC启动序列,从外部eMMC设备接收启动数据
- 支持CRC生成和错误检测
- 嵌入式时钟调整,用于高速传输
- 支持1到65535字节的块大小
- 支持8位数据宽度,信号数据速率或双数据速率
- SD/MMC接口
- 兼容SD2.0,MMC4.5
- 通过自动停止卡时钟支持FIFO溢出和下溢保护
- 支持CRC生成和错误检测
- 嵌入式时钟调整,用于高速传输
- 支持1到65535字节的块大小
- 支持4位数据宽度,信号数据速率或双数据速率
- 串行闪存控制器(SFC)
- RK3036S内嵌一个SFC
- 支持命令/地址/数据x1/x2/x4位模式可配置
- 支持2个芯片选择
- 支持连接到串行Nor闪存或串行Nand闪存
系统组件
- CRU(时钟和复位单元)
- 支持RK3036S内部各个组件的时钟门控控制
- 一个振荡器,带有24MHz时钟输入和三个嵌入式PLL:ARM PLL,DDR PLL,通用PLL
- 支持全局软件复位控制整个SOC,也支持每个组件的单独软件复位
- 定时器
- SOC内嵌四个64位定时器,基于中断操作
- 提供两种操作模式:自由运行和用户定义计数
- 支持定时器工作状态可检查
- 24MHz或pclk_peri可选作为时钟输入
- PWM
- SOC内嵌四个PWM,基于中断操作
- 可编程预缩放操作到总线时钟,然后进一步缩放
- 嵌入式32位定时器/计数器设施
- 支持捕获模式
- 支持连续模式或单次模式
- 提供参考模式和输出各种占空比波形
- 看门狗
- 32位看门狗计数器宽度
- 计数器时钟来自APB总线时钟
- 计数器从预设值倒数到0,表示超时发生
- WDT可以在超时时执行两种类型的操作:
- 产生系统复位
- 首先产生中断,如果服务程序在第二次超时发生前没有清除,则产生系统复位
- 可编程复位脉冲长度
- 总共16个定义范围的主要超时周期
- 总线架构
- 128位/64位/32位多层AXI/AHB/APB复合总线架构
- 五个嵌入式AXI互连:
- 总线互连
- 周边互连
- 显示互连
- GPU互连
- VCODEC互连
- 对于每个带有AXI/AHB/APB复合总线的互连,AXI/AHB/APB域的时钟始终同步,支持它们之间的不同整数比率。
- 灵活的不同QoS解决方案,提高总线带宽的利用率
- 中断控制器
- 支持3个PPI中断源和128个SPI中断源输入,来自RK3036S内部的不同组件
- 支持16个软件触发中断
- 输入中断级别固定,仅高电平敏感
- 两个中断输出(nFIQ和nIRQ),分别对应每个Cortex-A7,两者都是低电平敏感
- 支持每个中断源的不同中断优先级,始终是软件可编程的
- DMAC
- 基于微代码编程的DMA
- 特定的指令集为编程DMA传输提供灵活性
- 支持链表DMA功能,完成分散-收集传输
- 支持内部指令缓存
- 嵌入式DMA管理线程
- 支持内存到内存、内存到周边、周边到内存的数据传输类型
- 使用中断输出信号指示各种DMA事件的发生
- 每个通道与不同中断输出之间的映射关系是软件可编程的
- 一个嵌入式DMA控制器,PERI_DMAC用于周边系统
- PERI_DMAC特性:
- 总共8个通道
- 来自周边的13个硬件请求
- 2个中断输出
视频编解码器
- 嵌入式内存管理单元(MMU)
- 视频解码器
- 实时视频解码器MPEG-1、MPEG-2、MPEG-4、H.263、H.264、VP8、MVC
- 支持所有视频格式的错误检测和隐藏输出数据格式为YUV420半平面,YUV400(单色)也支持H.264
-
- H.264高达HP级别5.2:1080p@30fps(1920×1088)③
- MPEG-4高达ASP级别5:1080p@30fps(1920×1088)
- MPEG-2高达MP:1080p@30fps(1920×1088)
- MPEG-1高达MP:1080p@30fps(1920×1088)
- H.263:576p@30fps(720×576)
- VP8:1080p@30fps(1920×1088)
- MVC:1080p@30fps(1920×1088)
- 对于H.264,不支持图像裁剪
- 对于MPEG-4,不支持GMC(全局运动补偿)
- 对于MPEG-4 SP/H.263,使用修改后的H.264内环滤波器在后处理单元中实现去块滤波器
HEVC解码器
- 根据主要规范的HEVC/H.265解码器
- 支持高达1920×1088(1080P@30fps)分辨率
- 嵌入式内存管理单元(MMU)
- 流错误检测器(28个ID)
- 内部128k缓存,用于减少带宽
- 多时钟域和自动时钟门控设计,节省功耗
JPEG编解码器
- JPEG解码器
- 输入JPEG文件:YCbCr 4:0:0、4:2:0、4:2:2、4:4:0、4:1:1和4:4:4采样格式
- 输出原始图像:YCbCr 4:0:0、4:2:0、4:2:2、4:4:0、4:1:1和4:4:4半平面
- 解码器大小从48×48到8176×8176(66.8M像素)
- 支持JPEG ROI(图像区域)解码
- 最大数据速率④高达7600万像素每秒
- 嵌入式内存管理单元(MMU)
图像增强
- 图像后处理器(嵌入式在视频解码器内)
- 与高清视频解码器和JPEG解码器结合,后处理器可以直接从解码器输出读取输入数据,以减少总线带宽
- 也可以作为独立模式工作,其输入数据来自存储在外部内存中的图像数据
- 输入数据格式:
- 视频解码器在组合模式下生成的任何格式
- YCbCr4:2:0半平面
- YCbCr4:2:0平面
- YCbYCr 4:2:2
- YCrYCb 4:2:2
- CbYCrY 4:2:2
- CrYCbY 4:2:2
- 输出数据格式:
- YCbCr4:2:0半平面
- YCbYCr 4:2:2
- YCrYCb 4:2:2
- CbYCrY 4:2:2
- CrYCbY 4:2:2
- 完全可配置的ARGB通道长度和位置在32位内,如ARGB8888、RGB565、ARGB4444等。
- 输入图像大小:
- 组合模式:从48×48到8176×8176(66.8M像素)
- 独立模式:宽度从48到8176,高度从48到8176,最大尺寸限制为16.7M像素
- 步长为16像素
- 输出图像大小:从16×16到1920×1088(水平步长8,垂直步长2)
- 支持图像上采样:
- 使用双三次多项式插值,具有四抽头水平核和双抽头垂直核
- 任意非整数缩放比例,分别用于两个维度
- 最大输出宽度是输入宽度的3倍
- 最大输出高度是输入高度的3倍
- 支持图像下采样:
- 任意非整数缩放比例,分别用于两个维度
- 无限制的下采样比例
- 支持YUV到RGB颜色转换,兼容BT.601-5、BT.709和用户可定义的转换系数
- 支持抖动(Allegro抖动算法)用于4/5/6位RGB通道精度
- 支持RGB图像对比度/亮度/色彩饱和度调整
- 支持图像裁剪和数字变焦,仅适用于JPEG或独立模式
- 支持画中画
- 支持图像旋转(水平翻转、垂直翻转、旋转90、180或270度)
图形引擎
- 3D图形引擎(GPU)
- 高性能OpenGL ES1.1和2.0,OpenVG1.1等。
- 嵌入式1个着色核心,具有共享的层次瓦片
- 分离的顶点(几何)和片段(像素)处理,以实现最大并行吞吐量
- 提供MMU和L2缓存,大小为64KB
视频输出
- 显示接口
- 显示处理
- 背景层
- 可编程24位颜色
- Win0(视频)层
- RGB888、ARGB888、RGB565、YCbCr422、YCbCr420、YCbCr444
- 支持虚拟显示
- 1/8到8缩放下降和缩放上升引擎
- 缩放上使用双三次或双线性
- 缩放下使用双线性
- 1个双三次表:catrom
- coord 8位,coe 8位有符号
- Win1(UI)层:
- RGB888、ARGB888、RGB565
- 支持虚拟显示
- 硬件光标:
- 8bpp
- 支持两种尺寸:32×32、64×64
- 叠加:
- Win0/Win1 256级alpha混合(支持预乘alpha)
- Win0/Win1 叠加位置可交换
- Win0/Win1 透明色键
- Win0/Win1 全局/像素alpha
- HWC 256级alpha混合
- HWC 全局/像素alpha
- 背景层
- 其他
- 最大输出分辨率:1920×1080
- 最大扫描时序:4096×4096
- YcbCr2RGB(rec601-mpeg/rec601-jpeg/rec709)和RGB2YcbCr
- 支持BCSH功能
- QoS请求信号
- 总线地址对齐
- 嵌入式内存管理单元(MMU)
- 显示处理
- HDMI TX
- 符合HDMI版本1.4a、HDCP修订版1.2和DVI版本1.0的发射器
- 支持从480i到1080i/p高清分辨率的DTV
- 支持数据速率从25MHz、1.65bps到单通道HDMI的3.4Gbps
- 带有可编程输出摆动、电阻值和预强调的TMDS Tx驱动器
- 数字视频接口支持24、30、36、48位色深的RGB
- S/PDIF输出支持使用IEC60958和IEC61937传输PCM和压缩音频
- 多相位4MHz固定带宽PLL,低抖动
- HDCP加密和解密引擎包含加密传入音频和视频数据的所有必要逻辑
- 支持HDMI LipSync(如需要)
- 低功耗操作与最佳电源管理功能
- 支持EDID和CEC功能
- 通过热插拔支持可选的显示器检测
- CVBS输出
- 10位分辨率
- PAL/NTSC编码
- 可编程亮度滤波器系数
- 可编程亮度/色度延迟
- 可编程亮度/对比度
音频接口
- I2S/PCM,8通道
- 多达8个通道(4个TX,1个RX)
- 音频分辨率从16位到32位
- 采样率高达192KHz
- 提供主模式和从模式,软件可配置
- 支持3种I2S格式(正常、左对齐、右对齐)
- 支持4种PCM格式(早期、晚期1、晚期2、晚期3)
- I2S和PCM模式不能同时使用
- 音频编解码器
- 24位DAC,信噪比为95dB
-
- 支持线路输出
- 支持单声道、立体声、5.1 HiFi频道性能
- 集成数字插值和抽取滤波器。
- 采样率为8kHz/12kHz/16kHz/24kHz/32kHz/44.1KHz/48KHz/96KHz
- 可选的分数PLL,支持6MHz到20MHz的时钟输入到任何时钟
连接性
- SDIO接口
- 嵌入式一个SDIO接口
- 兼容SDIO 3.0协议
- 4位数据总线宽度
- SPI控制器
- RK3036S内嵌一个SPI控制器
- 支持串行主模式和串行从模式,软件可配置
- 基于DMA或基于中断的操作
- 嵌入式两个32×16位FIFO,分别用于TX和RX操作
- 在串行主模式下支持2个芯片选择输出
- UART控制器
- RK3036S内嵌三个UART控制器
- 基于DMA或基于中断的操作
- 所有UART都嵌入两个64字节FIFO,分别用于TX/RX操作
- 支持5位、6位、7位、8位串行数据传输或接收
- 支持标准异步通信位,如开始、停止和奇偶校验
- 支持不同的输入时钟,以获得高达4Mbps或其他特殊波特率
- 支持非整数时钟分频,以生成波特时钟
- I2C控制器
- 多主I2C操作
- 支持7位和10位地址模式
- 软件可编程时钟频率和传输速率,高达400Kbit/s的快速模式
- 串行8位导向和双向数据传输,可在标准模式下高达100Kbit/s
- GPIO
- 所有GPIO都可用于向Cortex-A7生成中断
- 所有GPIO的上拉方向(上拉或下拉)都是软件可编程的
- 所有GPIO在默认情况下始终是输入方向,在电源重置后
- 驱动强度不可软件编程,由GPIO类型决定;除了用于HDMI iomux的特殊GPIO
- USB Host2.0
- 兼容USB Host2.0规范
- 支持高速(480Mbps)、全速(12Mbps)和低速(1.5Mbps)模式
- 提供16个主机模式通道
- USB OTG2.0
- 兼容USB OTG2.0规范
- 支持高速(480Mbps)、全速(12Mbps)和低速(1.5Mbps)模式
- 支持多达9个设备模式端点,除了控制端点0
- 支持多达6个设备模式IN端点,包括控制端点0
- 端点1/3/5/7只能用作数据IN端点
- 端点2/4/6只能用作数据OUT端点
- 端点8/9可以用作数据OUT和IN端点
- 提供9个主机模式通道
其他
- eFuse
- 一个256位高密度电子熔断器,组织为32×8位
- 在编程模式下每次编程1位
- 在读取模式下每次读取8位
- 三种操作模式:编程模式、读取模式、非活动模式
- 封装类型
- BGA186(本体:9mm x 9mm;引脚间距:0.65mm)
注释: ①:DDR3/DDR3L不能同时使用 ②:在RK3036S中,视频解码器和HEVC不能同时使用 ③:实际最大帧率将取决于时钟频率和系统总线性能 ④:实际最大数据速率将取决于时钟频率和JPEG压缩率