巴蜀网

 找回密码
 免费注册

QQ登录

只需一步,快速开始

同板块主题的 前一篇 同板块主题的 后一篇
开启左侧
查看: 201|回复: 0
1# 贡嘎山
跳转到指定楼层

[2023年国产工业CPU,米尔基于全志T507-H开发板的实时性分析与测试

 [复制链接]
源自:电子产品世界
  本文引用地址:
  1.概念
  全志科技T5系列是一个高性能四核 CortexTM–A53 处理器,适用于新一代汽车市场。T5系列符合汽车 AEC – Q100 测试要求。该芯片集成四核 CortexTM–A53 CPU、G31MP2 GPU、32 位 DDR3/LPDDR3/DDR4/LRDDR4 动态随机存储器。
  MYC-YT507H
  基于T507-H处理器研制,具有丰富的接口资源,拥有良好的软件开发环境,内核支持开源操作系统Linux。
  在开发阶段,建议配合核心板配套的评估套件 MYD-YT507H 来加速开发。
  评估套件的详细信息请访问:http://www.myir-tech.com/product
  2.实时内核设计
  实时补丁我们选择RT-Preempt来实现。
  1.1.移植补丁
  RT补丁官网 从RT官网下载4.9.170对应补丁
  https://wiki.linuxfoundation.org/realtime/start
  https://cdn.kernel.org/pub/linux/kernel/projects/rt/4.9/older
  把解压后的补丁放到linux4.9目录下,然后用下面命令打包即可 patch-p1 <./patch-4.9.170-rt129.patch
  由于代码有差异,会提示大量不匹配,导致补丁打入失败则用下面命令找出打入失败文件
  find./-name *.rej
  手动逐一检查rej文件,逐个修改
  难点:
  zram驱动,sdk中源码引用自5.x版本驱动,需要找5.10左右RT补丁参考
  thread_info.h文件中手动将PREEMPT_LAZY宏改序号、宏名字
  问题点1:中断上下文中调用抢占api(rt_spin_lock即mutex)导致sched异常。
  分析与解决:
  这个中断是系统核心timer服务,至关重要。其通过request_percpu_irq注册中断isr,并不是常规request_irq或request_thread_irq,无法线程化。
  继续分析崩溃调用栈,在崩溃前最后的操作为cpufreq_cpu_get,通过分析其源码,基本找到__account_system_time函数中调用了cpufreq_acct_update_power,其中又调用了rt_spin_lock函数导致崩溃。
  通过分析cpufreq_acct_update_power函数,发现通过宏定义:CONFIG_CPU_FREQ_TIMES可以屏蔽该函数,进而不调用rt_spin_lock。
  经测试,在menuconfig中,屏蔽CONFIG_CPU_FREQ_TIMES后,系统能正常启动到login环节。
  解决方法:
  drivers/cpufreq/Kconfig中针对CPU_FREQ_TIMES设置与PREEMPT_RT_BASE的互斥。
  
  configCPU_FREQ_TIMES
  boolCPUfrequencytime-in-statestatistics
  #defaulty
  dependson!PREEMPT_RT_BASE
  help
  ThisdriverexportsCPUtime-in-stateinformationthroughprocfsfile
  system。
  !ItsincompatablewithRT-Preemptscheduler。
  Ifindoubt,sayN。

  在buildroot下面打开相关测试,根据下面描述打开rt-tests工具即可,打开测试工具测试步骤打开RT实时测试工具,进行测试
  1.2.其他影响性能的配置
  禁用CPUFreq自动调频,并设置主频为最高频率:
  cd/sys/devices/system/cpu/cpufreq/policy0
  echo userspace > scaling_governor
  cat saling_max_freq > scaling_setspeed
  (如不禁用cpufreq调频功能,系统会因动态调频产生极大的偶然延迟)
  3.实时性测试
  空载测试
  cyclictest-p 99-t 1-d 100-i 1000-D 24h-m-a-n
  图 空载测试
  CPU&内存满载
  cyclictest-p 99-t 1-d 100-i 1000-D 24h-m-a-n
  增加压力
  stress-ng--cpu 4--cpu-method all--io 4--vm 50-d 5--fork 4--timeout 36000s
  图 满载测试
  数据对比:
  
  板卡
  MYD-YT507H
  测试时间
  120min
  指令
  cyclictest &stress-ng
  空载
  平均 8us;最大 24us
  满载
  平均 13us;最大 136us

  图表 数据信息
  4.产品介绍
  MYC-YT507H核心板采用SMD封装形式贴片(邮票孔+背面焊盘)。标准配置有4种产品型号。它们在存储配置、温度等方面有一些差异,客户可根据需求自行选择合适的型号。
  图 MYC-YT507H核心板
  MYC-YT507H主要参数
  
  名称
  主要参数
  主控芯片系列
  T5 Series
  主控芯片型号
  T507-H
  处理器规格
  4核 ARM CortexTM-A53
  内存
  LPDDR4 1GB/2GB
  存储器
  EMMC 8GB(其他容量可选)
  核心板尺寸
  43×45×3.5 mm(带屏蔽骨架)
  接口类型
  SMD贴片,邮票孔+LGA
  PCB板规格
  10层板设计,沉金工艺
  操作系统
  Linux 4.9

  核心板主要参数
  4.1.MYD-YT507H外设接口资源主要参数
  表
『 巴蜀网 』提醒,在使用本论坛之前您必须仔细阅读并同意下列条款:
  1. 遵守《全国人大常委会关于维护互联网安全的决定》及中华人民共和国其他各项有关法律法规,并遵守您在会员注册时已同意的《『 巴蜀网 』管理办法》;
  2. 严禁发表危害国家安全、破坏民族团结、破坏国家宗教政策、破坏社会稳定、侮辱、诽谤、教唆、淫秽等内容;
  3. 本帖子由 白龙江 发表,享有版权和著作权(转帖除外),如需转载或引用本帖子中的图片和文字等内容时,必须事前征得 白龙江 的书面同意;
  4. 本帖子由 白龙江 发表,仅代表用户本人所为和观点,与『 巴蜀网 』的立场无关,白龙江 承担一切因您的行为而直接或间接导致的民事或刑事法律责任。
  5. 本帖子由 白龙江 发表,帖子内容(可能)转载自其它媒体,但并不代表『 巴蜀网 』赞同其观点和对其真实性负责。
  6. 本帖子由 白龙江 发表,如违规、或侵犯到任何版权问题,请立即举报,本论坛将及时删除并致歉。
  7. 『 巴蜀网 』管理员和版主有权不事先通知发帖者而删除其所发的帖子。
BICS与科威特运营商stc合作完成全球首个实时5G SA异网漫游连接 红帽和甲骨文深化合作,将红帽企业Linux引入Oracle Cloud Infrastructure
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

© 2002-2024, 蜀ICP备12031014号, Powered by 5Panda
GMT+8, 2024-5-10 21:29, Processed in 0.171601 second(s), 15 queries, Gzip On, MemCache On
同板块主题的 后一篇 !last_thread! 快速回复 返回顶部 返回列表