Chip123 科技應用創新平台

標題: serial flash 介面 [打印本頁]

作者: mclaren_18    時間: 2008-12-16 03:07 PM
標題: serial flash 介面
請教一下 :
) o* d9 K% b$ W/ i1 D% a+ r有人做過SPI的介面嗎......小弟目前需使用到 serial flash 但是不知讀寫控制如何做起??; n6 T8 z8 K1 _1 `. f
我有寫過一般ram rom 的控制介面 但是由於 serial 是串列的 所以不知從做起 !!
0 Y) Y+ i- a" d1 O2 I8 }+ z. B, f, h0 W$ y3 m
有經驗的大大 拜託了!!
作者: M9202108    時間: 2008-12-16 10:43 PM
依SPI clock 將parallel data 透過SPI data 一個位元一個位元送出或讀入~~7 \% M/ ^6 z: h# [. c1 Q
通常SPI flash data sheet都會說明此protocol~~9 G7 [+ e3 D0 |5 ^
在opencores 網站上也有人家做好的SPI Controller可參考
9 \) J" q6 J( z5 h% Y6 Rhttp://www.opencores.org
作者: mclaren_18    時間: 2008-12-17 10:33 AM
m9202108大大:
" o3 d$ {+ `9 |- j) X1 |感謝你的回覆...我會上去找資料來看看
' \& U/ k4 s  i8 V% W) s謝謝
作者: M9202108    時間: 2008-12-18 03:19 PM
再來補充一下,以一個BMbit SPI flash來說 http://www.sst.com/downloads/datasheet/S71296.pdf: U  O2 d% V% w6 ^: ?5 r0 s& s
. f0 G9 R* W( C- W
如果要做read 的指令# }* r5 L) G  U# K9 F
1. 透過FPGA的SDO 連至flash 的SDI 將 8-bit 的OP Code送出,告知flash你的動作是什麼,如果是read則OP CODE為 0x03。
; S  u  w. x  @% h& T! o& D) ?# E2. 再將Address(8Mbit 需要3 bytes) 透過SDO(FPGA)依序送出% Y5 ^. p" C; {8 }
3. 接著透過SDI(FPGA)將資料依序讀入~~
- h. G8 y0 o: X& L2 C  r& T2 m9 ^  v! g$ z5 j! \
以上"依序"是基於SCK就是從FPGA送出至flash的clock,詳細操作方式看完data sheet 應該就會明白了
作者: jason_lin    時間: 2008-12-19 08:55 AM
Hi,
" u9 K. [# f# U6 `+ W( ~如果看不懂怎麼驅動SPI Flash,沒關係!
! H! F; u9 Z" @( B" E! yAltera有提供一個免費IP,叫Serial FlashLoader,只要學會怎麼用就好,& D. j( E) Z! r2 t1 n- P4 ?
Altera 參考設計裡有一步一步教怎麼使用,從開一個project到整個project建好,還有教怎麼燒錄.
' e% F+ ^4 J  X9 U. }附上這個參考設計,有問題我們在來討論^__^
, N  q% O5 [2 Z; |5 C希望對你有幫助.




歡迎光臨 Chip123 科技應用創新平台 (http://www.chip123.com/) Powered by Discuz! X3.2