谷动谷力

 找回密码
 立即注册
查看: 1115|回复: 0
打印 上一主题 下一主题
收起左侧

快到离谱!?HPM6700/6400系列的MCU这才是我见过的GPIO翻转频...

[复制链接]
跳转到指定楼层
楼主
发表于 2022-11-24 16:50:03 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
快到离谱!?HPM6700/6400系列的MCU这才是我见过的GPIO翻转频率最高的MCU!

本期内容将由先楫技术官带您解锁如何利用HPM6700系列做到高达400Mhz的GPIO 翻转频率,往下翻即可了解详情!


---------  “ 解锁之旅 ” 由此开启 ---------

(本期测试开发板为:HPM6750EVK2)


1 GPIO模块特点简介


HPM6700/6400系列的MCU输入输出提供PA~PZ共8组最多195个GPIO功能复用引脚,每个GPIO都可以由2个GPIO控制器和2个快速GPIO控制器控制,由GPIO管理器GPIOM指定。提到的2 个快速 GPIO 控制器 FGPIO,作为处理器私有的 IO 快速访问接口,处理器因此可以零等待周期来访问FGPIO控制器。


2 GPIO控制器介绍


本节将介绍HPM6700/6400系列的通用输入输出控制器(General Purpose Input Output),GPIO 控制器包括:2 个 GPIO 控制器(GPIO0,GPIO1), 2 个快速 GPIO 控制器(FGPIO0, FGPIO1) 。


2.1 通用GPIO控制器控制


GPIO 控制器与快速 GPIO 控制器功能基本相同,可以按照 IO 端口 Port 读取输入,配置IO作为输入或者输出,设置 IO 输出,或者同时把一个或者多个 IO 输出设置高,设置低或者翻转。GPIOx 和 FGPIOx 可以控制通用 IO(PA, PB, PC, PD, PE, PF)。


2.2  快速 GPIO 控制器


快速GPIO控制器属于处理器的私有外设,如图1所示,处理器因此可以零等待周期来访问FGPIO控制器。当IO由FGPIO控制时,IO最大翻转率可达CPU主频的一半,以HPM6750 CPU运行在816MHz为例,IO翻转频率可408MHz。


图 1. 系统架构框图


通过在程序中选用FGPIO0或者FGPIO1这两个控制器来控制IO,将IO配置为输出后,可以使用DO【TOGGLE】寄存器,令这个IO循环反复做一个翻转,部分代码如图2所示:将PD16配置完成。需要注意的是,在测试波形之前,需要在Project的选项中打开优化设置,如图3所示:将Optimization Level设定为Level 2 for speed。


图2. FGPIO控制IO翻转代码


图3. 开启优化


设定完成后,就可以使用示波器连接到此IO后,得到的波形如图4.1所示,测量峰-峰值,此时的频率为409.7MHz, 的确达到了CPU主频的一半。


图4. 1 FGPIO控制IO的翻转波形


由于FGPIO控制IO的情况下,IO的翻转频率为主频的一半,那么修改当前的主频频率,还可以测出其他几种频率的翻转波形,如图4.2与4.3所示,分别是200Mhz和100Mhz频率的翻转波形,它们对应的主频分别是400Mhz与200Mhz。


图4. 2  FGPIO控制IO下200mhz波形


图4. 3  FGPIO控制IO下100mhz波形


HPM6700/6400系列MCU中的普通GPIO控制器控制IO时,也可以有5.8Mhz左右的翻转频率,图4.4为GPIO0控制IO时,用示波器抓取的波形。


图4.4  GPIO控制IO下的翻转波形


3 GPIO管理器GPIOM介绍


GPIO管理器是一个能为任一IO指定GPIO配置生效的模块,管理器的主要特点如下:


可以为IO分配指定的GPIO控制器,作为一个管理权限,可以从两个GPIO控制器和FGPIO控制器里任意选择。

可以配置IO输入是否对特定的GPIO控制器可见。

可以锁定一个IO的对应寄存器

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|深圳市光明谷科技有限公司|光明谷商城|Sunshine Silicon Corpporation ( 粤ICP备14060730号|Sitemap

GMT+8, 2024-4-27 06:54 , Processed in 0.080768 second(s), 40 queries .

Powered by Discuz! X3.2 Licensed

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表