大家好,又见面了,我是你们的朋友全栈君。
Hi3798MV300/Hi3798MV300H处理器子系统
Hi3798MV300/Hi3798MV300H采用 ARMCortex-A53MPCore 四核处理器,Cortex-A53 MPCore 具有以下特点:
处理器集成了 256KB L2 cache。
支持 ARMv8-A 架构。
支持 DVFS 自动调频调压和 AVS 自适应调压。
安全子系统具有以下特性:
支持安全启动。硬件复位后,从内嵌片上 ROM 启动,然后再从 Flash 启动。支持boot loader 的签名校验。
支持硬件控制字保护。
支持内容保护,支持 AES 和 3DES 加解密算法。
支持 JTAG 保护。
支持 OTP,支持 Unique ID
Hi3798MV300/Hi3798MV300H应用场景
芯片中恒电区子系统主要用于芯片的低功耗模式控制,控制芯片的待机和唤醒流程,以及相关的系统控制。
Hi3798MV300/Hi3798MV300H架构
芯片恒电区子系统提供具体内容包括:
恒电区处理器
8051 中断系统
系统定时器
外设接口
系统控制寄存器
恒电区处理器
恒电区子系统集成 8051CPU 处理器作为待机控制 CPU,完成系统低功耗模块切换控制和待机时系统任务:
MCE-8051 在芯片正常工作时的主频为 200MHz,待机时的主频为 24MHz。
集成 MCE-8051 Core,包含 256B IRAM 和 32KB 指令 RAM。
通过 AHB 总线访问其他业务模块的寄存器和指令 RAM。
芯片主 CPU 可以加载 8051 程序到指令 RAM,控制 8051 CPU 的执行。
MCE-8051 可以利用扩展的 SFR(特殊功能寄存器),通过系统总线访问系统其它模块的寄存器。
内部集成简单 Watch Dog 电路。
处理器支持 32 个中断源的处理。
MCE-8051 SFR 寄存器
MCE-8051 Local 寄存器
MCE-8051Local 寄存器空间为 64KB,ARM CPU 可以通过该寄存器空间访问 MCE-8051 内部指令 RAM 和查询中断状态等。
MCE-8051 中断系统
MCE-8051 可以向 ARM 上报 10 个中断:
中断 0~7 由 MCU 配置 SFR 寄存器 0xB1 产生
中断 8 为 PC 值溢出中断
中断 9 为 WDG 中断
所有的 10 个中断最后或成一个 mce2arm_int 输出,连接到 ARM CPU 的中断源。
MCE-8051 共有 40 个中断源:
中断 0~7 由 arm 配置寄存器 0xf000 的[15:8]产生
中断 8~39 由系统外部接入
其中 32 个外部中断源对应的中断映射如图所示。
定时器
集成 1 组 Dual-Timer 模块:Dual-Timer0。
Dual-Timer0 包括 Timer0、Timer1,他们功能完全相同,共用同一个基地址和同一根中断线。
Timer 模块主要实现定时、计数功能,可以供操作系统用作系统时钟,也可以供应用程序用作定时和计数。
外设接口
外设接口用于进行各种外设连接或系统功能扩展。
红外接口
集成红外遥控接收单元 IR(Infrared Remoter),通过红外接口接收红外数据。
LED/KeyPAD 控制器
集成 LED/KeyPAD 控制器,实现 LED 显示控制和按键扫描控制。
GPIO
集成 1 个 GPIO 控制器:GPIO5,提供 8 个可编程的输入输出管脚。
每个管脚可以配置为输入或者输出
作为输入管脚时,GPIO 可作为中断源
作为输出管脚时,每个 GPIO 都可以独立的清 0 或置 1
UART
集成 UART0(Universal Asynchronous Receiver Transmitter),用于调试、控制。
系统控制器
系统控制器提供了控制系统运行的手段,它控制系统运行的模式,监控系统运行状态,管理系统中的重要功能(如时钟、复位、管脚复用等),完成对外设的某些功能的配置。
控制并监控系统的运行模式,控制系统待机和唤醒流程;
提供系统软复位的控制,提供MCE8051/IR/LEDC/TIMER01/UART/HDMI_TX_AON 模块的时钟和复位控制
提供系统时钟控制和状态查询
提供通用外设寄存器
提供对恒电区管脚复用的控制
提供 HDMI_TX_CEC 唤醒相关控制寄存器
提供对关键寄存器的写保护功能
提供芯片的标识寄存器
电源管理与低功耗模式控制
低功耗模式可以有效降低芯片功耗。软件通过调度芯片提供的多种低功耗模式来动态降低功耗:
系统工作模式控制
包含正常工作模式和待机工作模式,待机工作模式对功耗都有一定的减小作用,可以根据实际的功耗要求和功能要求选择不同的工作模式。
时钟门控和时钟频率调整
提供时钟关断和时钟调整功能,结合模块实际工作情况,关闭模块时钟或者调整模块时钟频率,动态降低芯片功耗。
模块级低功耗控制
提供模块级的低功耗控制,可以在某模块不工作的情况下,关断该模块或使模块处于低功耗状态,以减少芯片的功耗。
基于 CPU 负载监控的 DVFS(动态调频调压)功能。
基于 CPU 时序监控的 AVS(自动调压)功能。
基于 CORE 时序监控的 SVB 功能。
复位
复位管理模块对整个芯片的复位、各功能模块的复位进行统一的管理,包括:
上电复位的管理和控制
系统软复位、功能模块单独软复位控制
低功耗模式时下电区软复位控制
复位信号同步到各模块对应时钟域
复位管理模块生成芯片内部各功能模块的复位信号。
复位信号控制框图如图所示。
RSTN:上电复位信号,源自芯片内部上电复位模块 POR 的输出或 IO 的复位输入。
sysrst_req:全局软复位请求信号,源自系统控制器。
pd_rst_req:下电区复位请求信号,源自系统控制器。
xxx_srst_req:各模块单独软复位请求信号,源自系统控制器或 CRG 控制器。例如:tde_srst_req。
输出的复位信号具体描述如图所示。
复位配置
上电复位
RSTN 是高清芯片的上电复位模块 POR 的输出,完成上电复位过程必须同时满足以下条件:
上电复位模块 POR 输出一个低电平脉冲。
晶振时钟输入管脚 XIN 输入的时钟正常无误。
系统复位
实现系统复位有 2 种途径:
上电复位。
系统软复位,通过系统控制器 SC_SYSRES 控制。
软复位
软复位控制通过配置相应的系统控制器来实现,具体配置方法如图所示。
············
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/147740.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...