Page 1 of 14

UltiMem

Posted: Sat Sep 05, 2015 2:48 am
by brain
Here's a pic of the nearly final UltiMem PCB:

Image

8MB FLASH ROM
1MB SRAM

The memory is organized in 5 "windows": RAM1/2/3, BLK1, BLK2, BLK3, and BLK5. Each "window" can be configured to show any 8kB RAM or FLASH ROM page in the memory space (obviously, RAM1/2/3 can only see 3kB of the 8kB window. You can share a page of memory between multiple windows if needed/desired, and you can configure each window to show RAM, ROM, write protected RAM, or nothing. There are 1024 8kB pages of FLASH RAM, and 128 8kB pages of RAM.

I am hoping for a $40-$50 pricing point for units.

Jim

Re: UltiMem

Posted: Sat Sep 05, 2015 3:22 am
by tokra
Looks very nice! Does it have the ubiquitous reset-switch as well?

Can you also map IO2/IO3 (maybe in conjuction with RAM1/2/3)? That way you could hide e.g. SJLOAD-BASIC in that area, like MegaCart does and have fast access to SD2IEC-drives.

Re: UltiMem

Posted: Sat Sep 05, 2015 5:19 am
by majikeyric
The ultimate memory expansion for the VIC ! :)

Count me in !

Re: UltiMem

Posted: Sun Sep 20, 2015 8:14 pm
by brain
Verified CPLD equations work and fit in CPLD.

Unit will offer 8MB of FLASH ROM and 1MB of RAM. I have added IO2/IO3 support for RAM and FLASH. The unit can also hide the registers and reset the machine under software control.
Sending away for prototype boards this week.

Jim

Re: UltiMem

Posted: Sun Sep 20, 2015 10:52 pm
by joshuadenmark
I'm hooked too, count me in for a piece.

Re: UltiMem

Posted: Tue Sep 22, 2015 3:43 pm
by Richardc64
brain wrote: 8MB FLASH ROM
1MB SRAM

The memory is organized in 5 "windows": RAM1/2/3, BLK1, BLK2, BLK3, and BLK5. Each "window" can be configured to show any 8kB RAM or FLASH ROM page in the memory space
Well, this certainly blows away my plan to upgrade my internal memory expansion. Too bad for me you didn't announce this before I spent bux on 32K, 128K and 512K SRAM and 32K EEPROM.
(obviously, RAM1/2/3 can only see 3kB of the 8kB window.
See, stuff like this is why I made my internal vid-accessible 3K have an enable/disable switch.

Count me in as well.

Re: UltiMem

Posted: Tue Sep 22, 2015 5:15 pm
by brain
My apologies, just learned enough Verilog to get this going.

I am sending away for some boards this week, and Marko Makela (of veni, vidi, vic fame) is currently working to port his VIC-FLash codebase to use the new HW. He's using VICE to do development, so there are some initial patches available.

Jim

Re: UltiMem

Posted: Tue Sep 22, 2015 6:01 pm
by eslapion
Nice architecture.

What software tools/programmer do you use to compile the Verilog and program your XC95144XL ?

Re: UltiMem

Posted: Tue Sep 22, 2015 6:19 pm
by brain
ISE WebPack 14.6 on Windows 7 64 bit and a USB Xilinx programmer.

Re: UltiMem

Posted: Tue Sep 22, 2015 7:06 pm
by pixel
You hardware guys are always a good source of I'm-about-to-eat-my-heart-out jealousy.

Re: UltiMem

Posted: Wed Sep 23, 2015 3:39 pm
by Mike
brain wrote:obviously, RAM1/2/3 can only see 3kB of the 8kB window.
Richardc64 wrote:See, stuff like this is why I made my internal vid-accessible 3K have an enable/disable switch.
Well, that implies just an obvious simplification of the logic, which only needs to AND all /RAMx signals into a single "/BLK0" signal, and otherwise relies on the address lines laying out $0400 .. $0FFF within that block. I don't see how a necessity of an enable/disable switch follows from that. Of course the banking facility itself and the possibility to write-protect the external RAM are interesting functions, but so is the bonus of extra VIC-accessible RAM with the internal expansion. :)

Re: UltiMem

Posted: Wed Sep 23, 2015 10:40 pm
by brain
So, besides a RESET button, is there any other switch needs?

I thought of one (Actually, Marko thought of it): You put a bad flash into BLK5, which is default, and you need o bypass it on bootup...

Any others?

Jim

Re: UltiMem

Posted: Tue Sep 29, 2015 2:07 pm
by Kakemoms
I'm in! Finally enough memory... wait.. 640kB was enough for anybody, wasn't it? :lol:

Re: UltiMem

Posted: Tue Sep 29, 2015 2:14 pm
by tokra
Regarding the buttons beside RESET. A second button to "hard-reset" the device and circumvent cartridge-image-warmstart would be most welcome.

The Final Expansion has such a button as well. And the MegaCart's button always returns to its own menu.

Is there any "firmware" planned for the UltiMem? The second button may enter such firmware from where you could also set the memory expansion you want. If no such firmware is planned it would make sense to just have the button enter a service routine in Flash-ROM at a defined place that does a "hard-reset". This routine could then be exchanged for any firmware the user (or this forum) might come up with.

Re: UltiMem

Posted: Tue Sep 29, 2015 5:14 pm
by brain
Right now, I have 3 buttons, which might turn into 2.

button 1 is RESET, no frills

button 2 is BYPASS, which, if held down during reset, will bypass the autostart. If I can master how to make it do a reset plus bypass, I will do it.

button 3 is nothing at present.

Button 2 and 3 can also be used during normal operation for anything the writer cares to implement.

JIm