CRM如何精确控制RT设备和与UMD通信笔记

2024-01-07 01:28

本文主要是介绍CRM如何精确控制RT设备和与UMD通信笔记,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1 CRM工作职责

  • 监控link req是否得到schedule
  • 监控link上各个device的req是否ready
  • 监控SOF或EOF的trigger信号,决定各个设备配置哪个req

2 CRM如何精确控制RT设备

分两步,一是crm知道某帧req的link dev准备好了,可以做apply setting。 二是不同的link dev,他们生效的pipeline delay不同,对于pd为1和pd为2的device,crm如何配置下apply setting,如何控制。

2.1 CRM如何知道link dev准备好了

1)pipeline下openRequest时,调用到kmd的schedule req,此时crm slot status置为add状态
2)每个link device的req从umd下发到kmd后,会调用cb_add_req()回调给crm,crm中req table(有2个,pd为1和pd为2的)中会判断当前link 中所有device是否收到了req,如果满足则将req table中slot status置为ready状态

2.2 CRM如何下apply setting

3)isp收到一帧数据,会触发SOF中断,当SOF发生时会回调crm的process_add_req(),它会检查当前的req在link中,req tbl是否ready,如果满足,Crm将各设备当前SOF需要配置的requested 信息填到 link->req.apply_data[]中,调用send_req()来配置控制每一个实时设备硬件,即通知设备设置哪一个request setting。

什么是EPCR?
在stream on之前提前配置HW。打开early PCR后,ISP只会丢1帧。
如果不打开,可能丢2或3帧,根据设备性能不同,如果性能好,第一个SOF到来处理frame1时,streamon已打开,则丢2帧。否则性能一般,在第二个SOF到来处理frame2时,streamon才打开,则丢3帧。

3 CRM与UMD使用V4L2 event通信

CRM是UMD和KMD通信的桥梁。
从UMD到kmd直接ioctl调用就行,从kmd到umd如何回复消息?
–KMD与UMD通过v4l2 event通信。
在这里插入图片描述

这篇关于CRM如何精确控制RT设备和与UMD通信笔记的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/578291

相关文章

Python实现精确小数计算的完全指南

《Python实现精确小数计算的完全指南》在金融计算、科学实验和工程领域,浮点数精度问题一直是开发者面临的重大挑战,本文将深入解析Python精确小数计算技术体系,感兴趣的小伙伴可以了解一下... 目录引言:小数精度问题的核心挑战一、浮点数精度问题分析1.1 浮点数精度陷阱1.2 浮点数误差来源二、基础解决

SpringBoot 多环境开发实战(从配置、管理与控制)

《SpringBoot多环境开发实战(从配置、管理与控制)》本文详解SpringBoot多环境配置,涵盖单文件YAML、多文件模式、MavenProfile分组及激活策略,通过优先级控制灵活切换环境... 目录一、多环境开发基础(单文件 YAML 版)(一)配置原理与优势(二)实操示例二、多环境开发多文件版

Python学习笔记之getattr和hasattr用法示例详解

《Python学习笔记之getattr和hasattr用法示例详解》在Python中,hasattr()、getattr()和setattr()是一组内置函数,用于对对象的属性进行操作和查询,这篇文章... 目录1.getattr用法详解1.1 基本作用1.2 示例1.3 原理2.hasattr用法详解2.

Spring Boot集成/输出/日志级别控制/持久化开发实践

《SpringBoot集成/输出/日志级别控制/持久化开发实践》SpringBoot默认集成Logback,支持灵活日志级别配置(INFO/DEBUG等),输出包含时间戳、级别、类名等信息,并可通过... 目录一、日志概述1.1、Spring Boot日志简介1.2、日志框架与默认配置1.3、日志的核心作用

Linux之platform平台设备驱动详解

《Linux之platform平台设备驱动详解》Linux设备驱动模型中,Platform总线作为虚拟总线统一管理无物理总线依赖的嵌入式设备,通过platform_driver和platform_de... 目录platform驱动注册platform设备注册设备树Platform驱动和设备的关系总结在 l

Python实现MQTT通信的示例代码

《Python实现MQTT通信的示例代码》本文主要介绍了Python实现MQTT通信的示例代码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一... 目录1. 安装paho-mqtt库‌2. 搭建MQTT代理服务器(Broker)‌‌3. pytho

浅析Spring如何控制Bean的加载顺序

《浅析Spring如何控制Bean的加载顺序》在大多数情况下,我们不需要手动控制Bean的加载顺序,因为Spring的IoC容器足够智能,但在某些特殊场景下,这种隐式的依赖关系可能不存在,下面我们就来... 目录核心原则:依赖驱动加载手动控制 Bean 加载顺序的方法方法 1:使用@DependsOn(最直

Spring如何使用注解@DependsOn控制Bean加载顺序

《Spring如何使用注解@DependsOn控制Bean加载顺序》:本文主要介绍Spring如何使用注解@DependsOn控制Bean加载顺序,具有很好的参考价值,希望对大家有所帮助,如有错误... 目录1.javascript 前言2. 代码实现总结1. 前言默认情况下,Spring加载Bean的顺

基于Python开发Windows屏幕控制工具

《基于Python开发Windows屏幕控制工具》在数字化办公时代,屏幕管理已成为提升工作效率和保护眼睛健康的重要环节,本文将分享一个基于Python和PySide6开发的Windows屏幕控制工具,... 目录概述功能亮点界面展示实现步骤详解1. 环境准备2. 亮度控制模块3. 息屏功能实现4. 息屏时间

Python远程控制MySQL的完整指南

《Python远程控制MySQL的完整指南》MySQL是最流行的关系型数据库之一,Python通过多种方式可以与MySQL进行交互,下面小编就为大家详细介绍一下Python操作MySQL的常用方法和最... 目录1. 准备工作2. 连接mysql数据库使用mysql-connector使用PyMySQL3.