fc2ブログ

[NEEK][動画再生]MMC/SPI仕様


 
 
 
階層TOP 下位階層1
avalonif_mmcdma.vSDIF.v
SDIF_MEM.v



    
    
    
    
    
    
    
    
    
    
    
    
    
    
offsetレジスタ名bit verilog内regコメント
0 status 31:16 - 0固定
15 irqena_reg 1:割込み許可
14 - 0固定
13 - 0固定
12 frczero_reg 0:Timeoutカウンタ(=frc_reg)=0
11 mmc_wp_reg 入力端子WP状態
10 mmc_cd_reg 入力端子CD状態
9 exit_reg 0:転送開始要求
8 ncs_reg 出力端子NCS制御
7:0 rxddata SPI受信データ
4 divref_reg divref_reg SPIクロックの分周設定(入力周波数/divref_reg/2)
8 frc_reg frc_reg Timeoutカウンタ


■DMA動作流れ

    
    
    
    
    
    
ファイル名 mmcdma_stateトリガ      結果     コメント
avalonif_mmcdma.v レジスタwrite[10]dmastart_reg=1[10]へwrite
avalonif_mmcdma.vIDLE dmastart_reg=1 dmadone_reg=0DMAスタートするとdone=0へ
avalonif_mmcdma.v SDIF/avs_readdata[9]=1mmcifexit_sig=1SDIF部出力データ(詳細未確認)
avalonif_mmcdma.vREADWAIT 転送終了でないdmaread_countに+1
avalonif_mmcdma.vREADWAIT mmcifexit_sig=1 & (dmaread_count = dmarefcount_reg)dmadone_reg=1


・mmcifrxd_sig = mmcifrddata_sig[7:0] = SDIF/avs_readdata(アドレスに応じたdataを出力。つまりrxdataをを参照)
・RESWAIT & mmcifrxd_sig==8'hFE → READSET(mmcifwr_reg=0) → READWAIT(mmcifwr_reg=1)


・ソース内で、rxdata=0xfeを検出すると、DMA長分だけMEM/WRがトグルし、リードデータを格納する。
 なぜ0xfeか?の理由は以下の「データトークン」が該当すると予想。
http://bluefish.orz.hm/sdoc/psoc_mmc.html#%E3%83%87%E3%83%BC%E3%82%BF%E3%83%88%E3%83%BC%E3%82%AF%E3%83%B3
スポンサーサイト



カレンダー
02 | 2010/03 | 04
- 1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31 - - -
累積訪問者
現在の訪問者
現在の閲覧者数:
最新記事
最新トラックバック
最新コメント
月別アーカイブ
カテゴリ
プロフィール

bobgosso

Author:bobgosso
FPGAのブログへようこそ!

検索フォーム
RSSリンクの表示
リンク
ブロとも申請フォーム

この人とブロともになる

QRコード
QRコード