Re: [請問] 關於NOR Flash下指令cycle的時序問題
※ 引述《madoka82 (惡水上的大橋)》之銘言:
: 大家好,我想問的是今天我拿到一顆 NOR Flash, 溝通介面有 Address Bus,Data Bus
: 另外就是一些 Enable 腳位像說 Write Enable、Chip Enable、Output Enable
: 基本上就是固定的時脈波型刻一刻,位址給一給,理論上 Data Bus 就可以吃到我想要
: 的資料,通常 Write(Program)、跟 Erase 這兩個動作分別要四個跟六個指令 cycle
: 另外要對這顆 NOR Flash 做讀寫動作的元件是顆 DSP, 對外部電路存取最小可控制在
: 20ns 也就是某隻腳位我要拉高或拉低最少需要 20ns。
: 以上是環境描述,下面開始是問題 =w=
: 我讀了原廠的 SPEC 之後,他時序圖都只畫給我最後兩個 cycle 前面兩個 cycle 不論
: 是讀是寫是抹除都是一樣的,都是 Addr. 送 555 Data 送 AA, 接著 Addr. 送 2AA
: Data 送 55。可是原廠 SPEC 都沒告訴我這兩個 cycle 的時序圖長什麼樣子, 有人有
: 什麼操作 NOR Flash 的經驗法則可以指點一下嗎 >w< 謝謝
舉例
Word PGM: 555/AA -> 2AA/55 -> 555/A0 --> Add/Data
Sector ERS: 555/AA -> 2AA/55 -> 555/80 --> 555/AA -> 2AA/55 -> SA/30
先不管是CE控(CE# controlled)還是WE控(WE# controlled),開頭的兩個命令(command)
(或者說接下來的每一個命令)的下法都是一樣:
CE或WE的下緣要注意Tas(adderss setup time)與Tah(address hold time)
CE或WE的上緣要注意Tds(data setup time)與Tdh(data hold time)
只要合於上述,command都是可以吃得到的。
如果你怕下錯,或是不知道這樣下Flash是否會執行對的動作,那可以試試最簡單的
Auto-select mode中的Silicon ID(SID)
即555/AA -> 2AA/55 -> 555/90 -> 000/data
如果讀出來ok(EX: 讀出來的data是01h,表是這顆是AMD, 06h是華邦的....),
那表示你的command沒有下錯,之後的PGM或是ERS就照著這樣去下就好囉。
(若不放心,可以再試試Device ID的comand)
--
在臺灣,何謂R&D工程師?
1.Reverse and Decap :IC反相工程,去膠,打開封裝,拍照,複製電路佈局。
2.Resign and Die :沒死的就操到辭職,沒辭職的就操到死。
3.Rework and Debug :計畫永遠跟不上變化,變化永遠跟不上老闆的一句話!
4.Relax and Delay :太過於輕鬆(Relax),那麼就會Random Death (隨時陣亡)
但是外派到大陸的臺灣郎,晚上是R (鴨)陪客戶,白天是D (豬)任人宰割!
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 59.116.10.34
推
05/22 15:49, , 1F
05/22 15:49, 1F
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 2 之 2 篇):