微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 微电子和IC设计 > 微电子学习交流 > 请教一个技术问题

请教一个技术问题

时间:12-12 整理:3721RD 点击:
如图的信号如何检测:
master端发出sclk和sdata,slave端没有时钟,依靠sclk工作
图上开始sclk=0,sdata有一个时钟宽度的脉冲,表示传输开始
请问slave端如何检测这个开始信号,谢谢

让sdata作为时钟信号驱动触发器
btw,slave端为啥不搞个本地时钟?

拿sclk的负沿所sdata就好了,为什么一定要用sdata那个preamble的pulse?

这个是协议规定的起始信号,没有这个信号,后面的数据都是无效的

设计一个状态机呀~,
用SDATA 与 SCLK 的条件触发判断进入
接受数据状态
最后拿SCLK Negedge 采样数据

之前没有时钟
如何才能确认sdata和sclk符合协议的要求?

状态机的触发以
           CLK 为零 ,SDATA  Posedge为 触发条件,看看
           这种东西需要先写,然后慢慢修改,完善

其实,你可以这么看时钟,
在没有时钟的情况下, SDATA的上升沿是可以用来做时钟沿的不是么
反正你的状态机现在处于一种IDLE的状态

用sdata作时钟来采sclk的方法我也想过,就是怕弄出亚稳态来

亚稳态是怎么产生的
Reg是一对反相器加时钟构成的
里面需要满足一定的充电时间,否则数据不定态
仔细考虑考虑这个问题

sdata和sclk都是master端产生,只能保证sdata相对于sclk的时序,没法保证sclk相对于sdata的时序啊
万一sdata的沿和sclk的下降沿太近,岂不是会有亚稳态的问题?
如果master端能保证不出现这种情况倒是可以考虑

我感觉遇到这样的问题,你先不要考虑太多
先把功能实现,然后再RTL的基础上修正所谓的亚稳态
还有,既然搞这么个协议标准,速度肯定比较慢,50M一下,或者更低
这么低的速率,亚稳态再想法子出来

我觉得你的担心是多余的,看信号名和时序图就能猜出来这是类似I2C(或者就是I2C)的协议,而I2C协议中tSTA时间最少有0.6us

这个是MIPI RFFE的spec吧,slave端内部应该需要一个高速clock来检测SSC才行吧

是MIPI的,必须有个高速clock吗?似乎不太省电

我不明白的是,如果slave没clock,协议上说的一个T的高电平preamble是怎么定义的?

我也不明白,但是对这种协议来说,slave有自己的clock也不太合理

这种接口一般都是低速的,slave端应该有个高速本地时钟,用这个时钟采

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top