Chip123 科技應用創新平台
標題:
Flash memory 的讀寫
[打印本頁]
作者:
difgor0426
時間:
2008-3-13 02:38 PM
標題:
Flash memory 的讀寫
module Altera_UP_Avalon_Flash(
! H9 ^ S; H- p4 ~$ F& f }$ L
// Inputs
9 t W2 ?6 C. H9 A
clk,
1 A: |: ^8 v" Y2 q5 H1 R
reset_n,
! \# y% L& T6 I, `
6 v& x3 \- V& @# {+ T
avalon_address,
; J+ C$ U1 Z/ Q) Y% Z- v
avalon_chipselect_n,
% x# {( n; J- k
avalon_read_n,
/ u8 }3 C1 c& ]: q
avalon_write_n,
- E3 f E& H9 ?( A
avalon_writedata,
2 d' |( r8 X8 T8 l9 _3 S) K
3 L7 e" F. D5 O
// Bidirectionals
' D4 d2 b& p6 a/ f
FL_DQ,
) W! h, l& H& K" m
" O5 ?( }/ d: ^3 y* o+ o6 F
// Outputs
; B. ~6 _# j. |9 e
FL_CE_N,
6 j; D4 p, e0 |% V* g2 j- d) I: Z
FL_WE_N,
1 M! |' ~ s. U) ?0 m1 r+ V& P
FL_OE_N,
, X$ ]" o5 V' v
FL_ADDR,
4 l9 t0 { ~3 `+ |+ M
FL_RST_N,
6 @ e l+ U4 e, c+ T
@! R& h& r) B- E. P& n( G* _
avalon_readdata
7 j/ C/ W" r' @" I2 r B
);
7 T) d0 d$ D4 [6 E) H
. `( |" k) u+ m' }. O/ G" E
input clk, reset_n;
# k5 ]) j [: J5 h5 j, m! M8 r
input [23:0] avalon_address;
% t0 T( f* K" x5 k: f0 V
input avalon_chipselect_n, avalon_read_n, avalon_write_n;
5 O8 c: `3 q9 }7 P$ @1 u
input [7:0] avalon_writedata;
* e) x" r9 \9 n& K8 Z5 i: Q, H
# |5 R3 T9 B( X- K* l1 B2 Y
inout [7:0] FL_DQ;
5 E, X/ a& y4 z: U+ `) }4 }9 H- [7 {" u
: ]9 M+ E) Q$ l, {1 @; |' P: ]
output [7:0] avalon_readdata;
) m1 ]& }3 _% ]
6 a) V! \$ w5 M5 |
output [23:0] FL_ADDR;
( I9 [" a; L+ q$ c B, w* S
output FL_WE_N, FL_CE_N, FL_OE_N, FL_RST_N;
& r t0 O" a. w# @4 Y, k$ t
1 o2 G m6 e4 K
assign FL_RST_N = reset_n;
, X. o4 _. n+ s) w- b
assign FL_CE_N = avalon_chipselect_n;
& m# o2 j' `/ ~+ W( u M
assign FL_WE_N = avalon_write_n;
& n$ y% y5 q+ z5 A) w
assign FL_OE_N = avalon_read_n;
* V. V/ H7 ^9 q" Y# b3 v
assign FL_ADDR = avalon_address;
3 O4 [0 n/ o5 f1 U( z' F4 n( [9 n6 O) z
4 w: x# |$ j. {
assign FL_DQ = (~avalon_write_n) ? avalon_writedata : 8'hzz;
$ F( m7 @$ F9 ^2 U4 k/ Q% A
assign avalon_readdata = FL_DQ;
: g/ \/ m% p- ?8 U/ D
6 f% R2 b" y* M
endmodule
5 q$ P5 \3 n3 B1 q$ b
9 i- n/ ]& N) ]1 W7 M
//======================================================================================
7 d3 X3 j2 d' z3 v; Y
現在我有了flash memory的讀寫控制,在quartus編譯也沒錯誤!
6 f+ C% R( R9 b( R9 r" x
*.sof檔下載到kit上是否正常~我還不知!
7 g: H3 Q1 |/ l4 B
因為~到這~我已經不知道要怎麼樣去測試這段flash memory的讀寫
8 H. \+ R/ P; S; K9 M
要利用這段控制flash的描述啊!
2 p' T! N6 P4 \0 p+ g, F
懇請先進傳授一下!
7 A# J# O5 W H& E
另外附上 assignment跟RTL的圖檔、還有SOF檔及POF檔!
. O; l s9 R9 X, K: w4 `( R5 X
[attach]3184[/attach]
/ U" e$ L! I) B6 u/ Z
[attach]3185[/attach]
作者:
tommywgt
時間:
2008-3-14 02:15 PM
接顆cpu去測如何? NIOS-II也好啊
作者:
kevin
時間:
2008-3-17 06:42 PM
要先寫一個Flash memory 的簡單controller去做read/write.
% r& }/ R$ N% V( H j- N
先讀flash memory的data sheet,根據其read/write timing,寫一個state machine
% e2 m, Y: {$ T' @- a( \( m7 g% o
去控制flash memory 讀寫.
歡迎光臨 Chip123 科技應用創新平台 (http://free.vireal.world/chip123_website/innoingbbs/)
Powered by Discuz! X3.2