TA的每日心情 | 开心 2019-11-28 15:03 |
---|
签到天数: 1 天 [LV.1]初来乍到
|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
本帖最后由 流誓星空 于 2019-12-24 15:56 编辑
. e+ U6 U$ P4 g0 b8 L2 ~5 s3 _2 u ? A* J- l7 |
终于弄懂了,原来是我把SPI的MOSI和MISO接反了…………一个小小的失误浪费了太多时间/ G/ x% [# q* e) K9 d X& Y. B/ @: Q
8 f% r K' C+ E' |" p! I本人设计了一块DSP+FPGA的板子,FPGA是Xilinx公司的XC6SLX45,刚开始采用M25P80的FLASH,板子生产好之后发现FLASH容量小了,所以换成了M25P16,但是现在程序无法烧写进FLASH内,本人也做了一些测试,图片如下。请大家帮忙看看可能是什么问题吧。(程序在FPGA上在线运行是没问题的)1.板子局部设计图(D21为M25P80)
( b4 B1 ^- c1 c9 I9 m
- K: |+ b; `* C2 r) C5 `
' C; e3 T# J. y! F$ ?
2.下图是使用ISE14.7尝试烧写到M25P80的瞬间用示波器测试的结果(鼠标指向图片会显示图片注释)% ]# W9 Y! B' p8 K* ]- _
0 p6 h( C0 N: n5 c
H" E0 B; S+ \3 @
3.下图是FPGA的24MHz时钟波形
! T' ?- ~$ Z6 Z0 x6 O% S' B2 f
( C3 n8 I, U5 u1 w6 w" D
6 m. Z1 U+ M6 I$ b$ F3 d T
+ ]$ a8 L# G6 y- F* c8 u* i附ISE显示的失败信息:INFO:iMPACT - Current time: 2019/12/23 15:18:28* V9 v4 v+ L- K* h+ Q- q$ e/ f! _
PROGRESS_START - Starting Operation.
' W" I, O. B, J- T0 JMaximum TCK operating frequency for this device chain: 25000000.8 j& }( @; j$ b
Validating chain...
# e+ i4 J. h* f _" ?9 P7 v' ^Boundary-scan chain validated successfully.& |; e" ~' `& G5 h0 l+ ^
'1': IDCODE is '000000' (in hex).
6 ?8 A- Q+ r/ U: H'1': ID Check failed.
# X, y# }6 `6 i0 }! @INFO:iMPACT:2488 - The operation did not complete successfully.
, X7 z/ W7 L; h* g6 eINFO:iMPACT - SPI Device not found.
0 B7 J" Z, C' s* ]8 M- ~; @- IINFO:iMPACT:2488 - The operation did not complete successfully.% p) w! b% b6 J/ U* @( j: |
INFO:iMPACT - '1': Flash was not programmed successfully.0 w6 x l0 s, W/ a2 j
PROGRESS_END - End Operation.
9 r+ o0 l t1 u& [! R% oElapsed time = 0 sec.+ h b2 ]3 P7 x! ^
. i3 |" g4 k# k( q) Z* K
我自己来看,这些现象值得注意:
, I% B h' k( h6 c$ v# `- G1.在ISE14.7的控制下,FPGA发出的SPI时钟不是连续的,是间断的;(我对照M25P16的指令,发现都对不上)& I8 Q2 m. i& b( m
2.M25P16的MISO口始终没有信号,一直是低电平;
/ s9 \+ Z+ z( \/ Y3.FPGA的时钟质量不太好;(时钟是3.3V电平)
! [( k6 l. z' U% P' K: {, u6 X9 R8 w6 j. X5 a, ^
我自己分析,可能的原因:! _: U( r5 x8 M* c6 `( m- O' R
1.软件或软件设置有问题,导致FPGA输出的时钟和MOSI都发生错误,无法读取;: ~$ h, e: r7 B! c
2.FPGA或FPGA与上位机的接触有问题(可能性不太大,因为上位机都能让FPGA在线运行程序);
) d2 G' T$ R4 }6 }" Z. z; O; h3.M25P16与M25P80无法兼容(可能性也不大,应该是能兼容的);
; ]' k. ]. y4 P/ X4.M25P16损坏,需要更换一个新的(或许有可能,但也不至于这么脆弱);4 @* o2 N- \) [4 j& y3 {
5.FPGA的时钟质量不好,导致输入到M25P80的时钟出现一定的问题;(FPGA的时钟质量看起来是不太好,但我看多数FPGA的时钟质量不好也能正常运行)3 [ x- l8 ^/ v: e+ A2 g
E! f) L+ E" X7 F9 p/ b# B" D请大家帮忙想想可能是什么问题吧。
( {- t* Y d( L" p$ X( y/ H! C- i2 {: ~' }6 h6 ]0 c# X
1 e# s# M# k. r/ |; F9 I7 ?. e- e6 e3 q# e- I) k7 b
|
|