EDA365电子论坛网

标题: CPU不工作 [打印本页]

作者: legendarrow    时间: 2012-12-24 23:12
标题: CPU不工作
CPU与FPGA的公共电源为1.8VIO,由一路开关电源供电。FPGA还有一个CORE电压为1.1V。
' J& Z( o3 [7 R3 V& N- R* F现在的情况是CORE必须后于1.8V的IO上电FPGA才可以正常工作。于是在CORE上面加了个延时,50ms吧,于是系统开始正常跑了。频繁断电上电后,会出现CPU不工作的情况,测量电压输出正常。再加大延时,100ms吧,比50ms的情况好多,但是频繁上电以后还是出现同样现象。
$ F# I  y% h0 Y+ Q5 w" JCPU采用PMIC,FPGA CORE用PWM,他们的source是一样的。
3 w: s# ^5 G3 }延时电路是用FDS4395加上RC延时撘的。电流需要流过PMOS。3 Q3 ^) P. c) p* ^
当CPU不工作以后,将FPGA CORE的1.1V取下,CPU马上正常工作/ U- ?9 j4 L( i7 \8 c5 k) T" E9 u* o
现在的疑问是,FPGA的与CPU仅仅是电源的输入是一样的,怎么FPGA会影响CPU呢,奇怪。
, Q: r# s8 j4 c& p$ N) m: c也请大家指点。
4 G9 n* Y3 ^$ o( n+ I/ F% c谢谢先
作者: jacklee_47pn    时间: 2012-12-25 07:43
"频繁的断电上电" =>不知道中間的間隔的時間夠不夠使 CPU 所有电压放到 0.7V 以下? 怕是速度太快,造成開機的 RESET 失效。用示波器看一下 RESET 信號的電平正不正確?可能要設計一個關機的時候加速放電的電路。
" x# f% a0 @4 o2 R8 G8 ^3 R) E/ j0 X& _. Z
"FPGA的与CPU仅仅是电源的输入是一样的,怎么FPGA会影响CPU呢"  =>  FPGA 可能是有漏電行為,造成 CPU 開機的 RESET 失效。或是 CPU 軟件在等待  FPGA 回答,所以拖住  CPU  動作。
  ~  Z: @  |( T3 I1 s9 s5 Q$ Q
作者: lidean    时间: 2012-12-25 09:29
验证下,如果不进行频繁的上下电,是否工作正常,或是上下电间隔时间大一点会不会出现相同现象?
作者: legendarrow    时间: 2012-12-25 14:34
jacklee_47pn 发表于 2012-12-25 07:43
* r$ c8 C& \* \"频繁的断电上电" =>不知道中間的間隔的時間夠不夠使 CPU 所有电压放到 0.7V 以下? 怕是速度太快,造成開機 ...

% `; U" h, H9 R# a间隔时间是有个1~2秒,你说的CPU电压到0.7V以下reset正常有什么参考理论吗,我想知道下他的原理。. f) v- H: o% Y" Z
FPGA的漏电行为一般是什么原因造成的呢,. b& @% G& k( D* t8 ^" d
这个系统CPU的启动与FPGA无瓜葛,FPGA基本上相当于一个NOR flash,我CPU按时去读他的数据就可以了。
3 S- \1 z+ I& j2 L+ b) k. o- e* s6 V还有一个现象是,我不给FPGA加CORE电源,那么CPU每次都是正常启动的。
作者: edajf    时间: 2012-12-25 14:42
提示: 作者被禁止或删除 内容自动屏蔽
作者: legendarrow    时间: 2012-12-25 14:54
edajf 发表于 2012-12-25 14:42
, a( v, [) x4 H5 q% ^/ pFPGA哪里接了大电容么?如果接了大电容,开机关机电还没放完,导致上电时序又变了,上电时序可能导致CPU起不 ...
& l7 I- q: s7 s4 g8 d# k
因为FPGA的CORE必须要晚于IO上电,CPU才可以起来,所以在CORE的输入上飞了一个延时电路,用RC控制PMOS通路慢慢打开,电容10uF,电阻1M,(最初是100K,300k,820k,1M 以为感觉延时大点CPU就不那么容易当掉)。
$ b5 p( Y( v: h2 L现在又想起另外一个关键的地方,为什么FPGA的CORE晚于IO(也是CPU的DDR电源),CPU就会起不来呢。目前还没有做一个仔细的测量,仔细测量一下再与大家讨论@~@
作者: jacklee_47pn    时间: 2012-12-25 15:10
legendarrow 发表于 2012-12-25 14:34
. w/ [' n  z5 r3 `' z! ~# y# p间隔时间是有个1~2秒,你说的CPU电压到0.7V以下reset正常有什么参考理论吗,我想知道下他的原理。
9 O7 _( d" L, @( o& @FPGA的 ...
6 R0 I. C7 _1 T- p3 ?! \
0.7V 這是經驗值,真正要看你的 CPU 和 RESET 電路來決定。6 O  ]+ X6 k, h5 \$ J& p* i/ X

7 W5 Y3 \. m  a: Q' M# y4 @3 a% V如果 CPU 只使用 RC 來做開機 RESET,一些單晶片 (例如 8751) ,你可以試試看,開機關機速度過快 CPU 會不動,甚至於會發燙。因為矽半導體的電位差最小是 0.7V。當 CPU 沒有放電乾淨並且 RESET 失效的時候,Program Counter  (PC 寄存器) 是不會乖乖地從 RESET 指定地址開始 (我不說從 0x0000H,是因為不是所有的 CPU 都是 0x0000H 開始)。開機如果不是從 RESET 指定地址開始,有機會進到不對的無窮迴圈,或是造成機器錯誤的動作。  J( `7 h# s2 L) K4 F

; J6 C: s+ D5 H. Z7 I; C5 ~如果 CPU 有使用專屬的 RESET IC ,那就要看 RESET IC 的特性。除了開機 RESET 之外,是不是有監看電壓瞬間掉落到某程度,然後會重新發出 RESET 信號。而這個監看電壓掉落的值是多少? 當你快速開機關機,有沒有低於這個監看電壓?
  Q7 @4 y1 {; }' b( ~) K- I; k# R
作者: legendarrow    时间: 2013-1-5 17:30
jacklee_47pn 发表于 2012-12-25 07:43
( x. p. _# Y8 Q, U1 F7 v6 h6 z"频繁的断电上电" =>不知道中間的間隔的時間夠不夠使 CPU 所有电压放到 0.7V 以下? 怕是速度太快,造成開機 ...
5 n0 M' {2 m5 m8 S0 F
确认是放电未放完导致的,只要掉电与上电的时间很短,CPU就无法启动,稍微长点(2s左右)就没有问题了。! S1 w! f6 g1 ]
现在在想做一个加速放电电路,没什么思路,有经验的还请指导下。
作者: bluskly    时间: 2013-1-6 11:31
jacklee_47pn 发表于 2012-12-25 07:43 : S* Q9 P3 o* @' \( G4 ?
"频繁的断电上电" =>不知道中間的間隔的時間夠不夠使 CPU 所有电压放到 0.7V 以下? 怕是速度太快,造成開機 ...

% m+ K$ E( q/ ~1 l8 c: P3 V又学习了。。
作者: salseguo    时间: 2013-1-6 12:24
问题解决了没,要不你把延时再加大
作者: really2003    时间: 2013-2-18 13:09
保险起见,电容搞小一些吧
作者: xin_515    时间: 2013-2-19 16:19
在电容上并个二极管试试。




欢迎光临 EDA365电子论坛网 (https://bbs.eda365.com/) Powered by Discuz! X3.2