[AutoSar] TLF38854 产品对SBC的一般需求(一)

关键词

嵌入式、C语言、autosar

平台说明

项目Value
OSautosar OS
芯片厂商Infineon ,TC234,TLF35584
编程语言C,C++
编译器tasking

在这里插入图片描述
>>>>>回到总目录<<<<<<

一、背景

描述了一款产品对TLF35584 功能安全芯片的一般需求。本文以EPS(electric power steering)为例。

二、需求

1.SPI

SPI在35584中用于与mcu的通信,需做到以下功能:
1.1能配置SPI的引脚,波特率,通道,周期,缓存,时钟等相关参数;
1.2能读写35584相关寄存器;
1.3能检测SPI自身的错误;

2. 故障监控和错误报警部分

本模块用于对35584各输出以及自身SPI通讯的监控和报警,需做到以下功能:

2.1 SPI状态监控。

通过SPI周期读取SPI状态寄存器,当发现状态错误的时 候停止助力并报故障;

2.2 LDO_μC电压监控。

通过SPI周期(T<tStG/2)读取LDO_μC 的寄存器,当监测到LDO_μC过压的时候电源芯片将进入FAILSAFE State状态,程序在进入FAILSAFE State状态前发出故障报警。当检测到LDO_μC欠压的的时候INIT状态,pin ROT被拉低,程序在ROT被拉低拉低前发出故障报警(ROT=reset ouput)。

2.3 LDO_Com电压监控。

通过SPI周期读取LDO_Com的寄存器,当LDO_Com过压的时候LDO_Com会自动关闭,并产生一个中断。这时在中断事件中如果通过SPI读取到LDO_Com的寄存器的值的确为过压,则系统将停止助力并发出故障报警。如果LDO_Com欠压,时间超过tStG, LDO_Com将会自动关闭并且产生一个中断的事件。这时如果在中断事件通过SPI读取到的LDO_Com寄存的状态为欠压,则系统将停止助力并发出故障报警。

2.4 Volt_Ref电压监控。

通过SPI周期(T<tStG/2)读取Volt_Ref 的寄存器,当监测到Volt_Ref过压的时候电源芯片将进入FAILSAFE State状态,程序在进入FAILSAFE State状态前发出故障报警当检测到Volt_Ref欠压,时间超过tStG, Volt_Ref将会自动关闭并且产生一个中断的事件。这时如果在中断事件通过SPI读取到的Volt_Ref寄存的状态为欠压,则系统将关闭Volt_Ref停止助力并发出故障报警。

2.5 Tracker1/2电压监控。

通过SPI周期读取Tracker1/2状态,当检测到了Tracker1/2过压时,关闭相应的跟踪器,产生中断,在中断事件中如果通过SPI读取到Tracker1/2状态为过压,则停止助力并报警。如果Tracker1/2欠压时间超过tStG,相应的跟踪器将被关闭,产生一个中断,在中断事件中通过SPI读取到的Tracker1/2状态为欠压,则停止助力并报警。

2.6 LDO_μC温度监控。

当LDO_μC的温度超过报警阈值时,会产生一个中断。在中断事件中读取LDO_μC的状态,如果为温度异常则确认为温度异常,此时发出报警。当温度超过关闭LDO_μC的阈值的时候,设备会进入错误安全状态,ROT被拉低,程序在断电之前发出报警。

2.7 LDO_Com温度监控。

当LDO_Com的温度超过报警阈值时,会产生一个中断。在中断事件中读取LDO_Com的状态,如果为温度异常则确认为温度异常,此时发出报警。当温度超过关闭LDO_μC的阈值的时候,LDO_Com被关闭,产生一个中断事件,在中断中通过spi读取LDO_Com的状态,如果为超过关闭阈值,则关闭输出。发出故障警报。

2.8 Volt_Ref温度监控。

通过SPI周期读取Volt_Ref的状态,当Volt_Ref的温度超过报警阈值时,会产生一个中断。在中断事件中读取Volt_Ref的状态,如果为温度异常则确认为温度异常,此时发出报警。当温度超过关闭Volt_Ref的阈值的时候,LDO_Com被关闭。通过spi读取Volt_Ref的状态,如果为超过关闭阈值,则关闭输出发出故障警报。

2.9 Tracker1/2温度监控。

通过SPI周期读取Tracker1/2的状态,当Tracker1/2的温度超过报警阈值时,会产生一个中断。在中断事件中读取Tracker1/2的状态,如果为温度异常则确认为温度异常,此时发出报警。当温度超过关闭Tracker1/2的阈值的时候,Tracker1/2被关闭。通过spi读取Tracker1/2的状态,如果为超过关闭阈值,则关闭输出发出故障警报。

3. 喂狗模块

能够实现对喂狗模式的选择和参数配置,例如开关窗时间,错误计数阈值,周期等。

4.工作模式跳转

35584具有的工作模式有:init,wake,standby,sleep,normal,在不同的工作模式下可以配置不同的工作状态。所有的输出和功能有:LDO_stby、error Monitoring、PreReg、LDO_uc、LDO_Com、Core_Sup adj、Volt_ref、Tr 1 & 2、Wakeup-T、WatchDogs、RESET、SSC, SS1&2。为了实现不同的功能,需要在不同工作模式间进行跳转。各个工作模式的输出和功能状态如下:
Init:开启的输出和功能有LDO_stby、error Monitoring、PreReg、LDO_uc、LDO_Com、Core_Sup adj、Volt_ref、Tr 1 & 2、WatchDogs、RESET(ACTIVE)。
Normal:开启的输出和功能有 LDO_stby、error Monitoring、PreReg、LDO_uc、LDO_Com、Core_Sup adj、Volt_ref、Tr 1 & 2、WatchDogs、RESET(HIGHT)、SSC, SS1&2。
Wake:开启的输出和功能有 LDO_stby、error Monitoring、PreReg、LDO_uc、LDO_Com、Core_Sup adj、Volt_ref、Tr 1 & 2、WatchDogs、RESET(HIGHT)。
SLEEP:开启的输出和功能有 LDO_stby、error Monitoring、PreReg、LDO_uc、LDO_Com、Core_Sup adj、Volt_ref、Tr 1 & 2、Wakeup-T、WatchDogs、RESET(HIGHT)。

4.1 init到normal的跳转

系统在上电之后,首先进入init工作模式。系统在init模式下完成对35584的初始化和自检,在没有出现故障的情况下跳转到normal;跳转通过SPI实现。

4.2 Normal到sleep的跳转

能够实现在掉点火且无锁存的时候跳转到sleep模式。在normal状态下,如果想要进入sleep状态,必须把mcu移动到低功耗状态,使LDO_uc的电流低于设定的阈值。否则会产进入陷阱并跳转到wake。再发送SPI命令跳转到sleep。

4.3 sleep到wake

能够实现在点火或锁存恢复的时候,通过SPI或者wakeT能够从sleep跳转到wake。

4.4 wake到normal

能够实现在wake模式下通过SPI命令跳转到normal。

4.5 normal(wake)到standby

能够实现在normal(wake)模式下,当掉点火且掉锁存的情况下通过spi跳转到standby模式。

4.6 能够实现35584的Analog Built In Self Test (ABIST)。

三、状态机

在这里插入图片描述

附1.简称说明:

ON /OFF:= Switched ON or OFF, not configurable by SPI command
• ON*:= Switched ON by entering the INIT state, then selectable via SPI
• SELECTED:= May be configured (switched ON or OFF) by SPI command in previous state or is selected by
the state transition request (DEVCTRL) in case of LDO configuration for SLEEP state.
• SELECTABLE:= May be switched ON or OFF by SPI command in this state
• SELECTABLE**:= Switched ON by default after POR, then selectable via SPI
• ADJUSTED:= Defined present or not present by configuration pin, not configurable by SPI command
• ACTIVE:= as described in INIT-State
• SSC, SS1&2:= Safe State Control signals 1 and 2
• LOW:= Signal is low
• HIGH:= Signal is high
• OV:= Over voltage
• UV:= Under voltage
• StG:= Short to ground
• TSD:= Thermal shut down
• OC:= Over current
• ABIST:= Analog built in self test
• Comp BG1 <-> BG2 > 4%: The difference between both band gaps 1 and 2 is more than 4%

附2 各工作状态说明

2.1 init state

在这里插入图片描述

2.2 normal state

在这里插入图片描述

2.3 sleep state

在这里插入图片描述

2.4 standby state

在这里插入图片描述

2.5 wake state

在这里插入图片描述

2.6 failsafe state

在这里插入图片描述

小结

Analog Built In Self Test (ABIST) 后续更新。

>>>>>回到总目录<<<<<<

  • 0
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 5
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

老灰╮(╯-╰)╭

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值