Minimig Discussion Forum

Discussing the Open Source FPGA Amiga Project
It is currently Fri Oct 20, 2017 12:40 pm

All times are UTC




Post new topic Reply to topic  [ 25 posts ]  Go to page Previous  1, 2, 3
Author Message
 Post subject: Re: PacMan - fpgaarcade
PostPosted: Fri Apr 20, 2012 9:15 pm 
Offline

Joined: Fri Dec 09, 2011 11:31 am
Posts: 91
boing4000 wrote:
If possible it would help to use one of the existing S-RAM chips on Minimig board instead of FPGA Blockram to cure the sprite/graphics glitches.
This design ran out of Blockram and already uses LUTs as memory. This is not working very well.

I think at least the "cram" or "wram" should be able to work in real S-RAM IC.
Maybe both at different address range or same addresses and upper/lower byte parts of the 16bit unit.
I will try this but any help is welcome!


My experiments with the S-RAM are unsuccessful. I am a beginner .... :?


Top
 Profile  
 
 Post subject: Re: PacMan - fpgaarcade
PostPosted: Fri Apr 20, 2012 9:18 pm 
Offline

Joined: Mon Dec 01, 2008 9:58 pm
Posts: 1568
Location: .de
No problem, Im a beginner too regarding VHDL and RAM chip access.
I will give it a try in next days...

Here is a raw construct... as a start...

Pin assignment in .ucf file:
Code:
# S-RAM
NET "ramAddr<0>"  LOC = "p27" | PULLUP ;
NET "ramAddr<1>"  LOC = "p26" | PULLUP ;
NET "ramAddr<2>"  LOC = "p24" | PULLUP ;
NET "ramAddr<3>"  LOC = "p22" | PULLUP ;
NET "ramAddr<4>"  LOC = "p21" | PULLUP ;
NET "ramAddr<5>"  LOC = "p35" | PULLUP ;
NET "ramAddr<6>"  LOC = "p36" | PULLUP ;
NET "ramAddr<7>"  LOC = "p37" | PULLUP ;
NET "ramAddr<8>"  LOC = "p57" | PULLUP ;
NET "ramAddr<9>"  LOC = "p58" | PULLUP ;
NET "ramAddr<10>"  LOC = "p61" | PULLUP ;
NET "ramAddr<11>"  LOC = "p62" | PULLUP ;

NET "ramData<0>"  LOC = "p29" | PULLUP ;
NET "ramData<1>"  LOC = "p31" | PULLUP ;
NET "ramData<2>"  LOC = "p33" | PULLUP ;
NET "ramData<3>"  LOC = "p34" | PULLUP ;
NET "ramData<4>"  LOC = "p65" | PULLUP ;
NET "ramData<5>"  LOC = "p67" | PULLUP ;
NET "ramData<6>"  LOC = "p68" | PULLUP ;
NET "ramData<7>"  LOC = "p71" | PULLUP ;

NET "ram_oe"          LOC = "P39"  | PULLUP ;
NET "ram_we"          LOC = "P72"  | PULLUP ;
NET "ram_highbyte"    LOC = "P40"  | PULLUP ;
NET "ram_lowbyte"     LOC = "P42"  | PULLUP ;

NET "ram_ce<0>"       LOC = "P28"  | PULLUP ;
NET "ram_ce<1>"       LOC = "P20"  | PULLUP ;
NET "ram_ce<2>"       LOC = "P15"  | PULLUP ;
NET "ram_ce<3>"       LOC = "P18"  | PULLUP ;


Toplevel module:
Code:
    ramAddr                 : out   std_logic_vector(11 downto 0);
    ramData                 : inout std_logic_vector(7 downto 0);
    ram_oe                 : out   std_logic; -- low active signal
    ram_we                 : out   std_logic; -- low active signal
    ram_highbyte           : out   std_logic; -- low active signal
    ram_lowbyte           : out   std_logic; -- low active signal
    ram_ce                 : out   std_logic_vector(3 downto 0); -- low active signal


Necessary definition in Toplevel module for 4MB Minimig board:
Code:
    ram_ce(3 downto 1) <= '111'; -- disable 2nd and both piggi-back S-RAM chip

ram_ce(0)==0 would select 1st S-RAM IC and can hold 2 independent 8bit value.
Lower 8bit at ram_lowbyte==0 (e.g. for "wram")
Upper 8bit at ram_highbyte==0 (e.g. for "cram")

I don't know how to wire those signal up to the RAM modules.
Verilog would be much more clear to me!

_________________
_____________________________
JMP $00000BED ; will guru-meditation until next morning


Top
 Profile  
 
 Post subject: Re: PacMan - fpgaarcade
PostPosted: Sat Apr 21, 2012 12:38 am 
Offline

Joined: Mon Dec 07, 2009 3:53 pm
Posts: 26
Yes, plays nicely. The artifacts on the sprites don't bother me.
I prefer playing with the joystick rotated 90 degrees(normal way), that way I'll stand a chance to win.

Thanks to _emu and boing.


Top
 Profile  
 
 Post subject: Re: PacMan - fpgaarcade
PostPosted: Fri May 04, 2012 9:44 am 
Offline

Joined: Fri Dec 09, 2011 11:31 am
Posts: 91
I'm in an effort to save as much RAMB16 I caused the sprite errors, this is already fixed.


Attachments:
PacMan-Minimig.zip [1.7 MiB]
Downloaded 231 times
Top
 Profile  
 
 Post subject: Re: PacMan - fpgaarcade
PostPosted: Fri May 04, 2012 9:50 am 
Offline

Joined: Mon Dec 01, 2008 9:58 pm
Posts: 1568
Location: .de
Thanks for your work and time to this project!

Works great and no more gfx glitches to observe, COOL :)

_________________
_____________________________
JMP $00000BED ; will guru-meditation until next morning


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 25 posts ]  Go to page Previous  1, 2, 3

All times are UTC


Who is online

Users browsing this forum: No registered users and 1 guest


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Translated by Xaphos © 2007, 2008, 2009 phpBB.fr