Papilio proのSDRAMを使うまで

調査メモ

簡易SDRAMコントローラでSDRAMを読み書きしてみる(DE0編)
http://www.hmwr-lsi.co.jp/fpga/fpga_10.htm

Simple SDRAM Controller@hamsterworks
http://hamsterworks.co.nz/mediawiki/index.php/Simple_SDRAM_Controller

SDRAM controller@fpga4fun
http://www.fpga4fun.com/SDRAM.html


以下はUCFのメモ
Papilio Pro with SDRAMのUCF

SDRAM_DQML: Input output mask(low)
SDRAM_DQMH: Input output mask(high)
SDRAM_BA0: Bank address inputs 0
SDRAM_BA1: Bank address inputs 1
SDRAM_nWE: command inputs
SDRAM_nCAS: command inputs
SDRAM_nRAS: command inputs
SDRAM_CLK: Clock
SDRAM_CKE: Clock enable

Xilinx本のUCF(Nexis2 and Cellurar RAM)

OE: Output enable
WE: Write enable
CS: Chip select
LB: Lower byte
UB: Upper byte
ADV: 
CLK: Clock
CRE: 

追記:動いたものをgithubに上げた
https://github.com/shohei/PapilioPro-SDRAMController
バースト長2でのバースト書き込みに失敗するのでバーストはOFFにして
連続でコマンドを発行して読み書きする方法にした。
(Microblaze MCSのI/Oバス:32bit, SDRAM : 16bitなので一度に2回読み書きする)