EPROM Access Speed question

Discuss hardware-related topics, such as development cartridges, CopyNES, PowerPak, EPROMs, or whatever.

Moderator: Moderators

Post Reply
casprog
Posts: 70
Joined: Fri Oct 28, 2016 12:37 pm

EPROM Access Speed question

Post by casprog »

Hi all,

I'm looking to buy some EPROMs for my homebrew projects.

I found some online (27c64 and 27c128) for my 8KB CHR ROM and 16KB PRG ROM.

The chips I found are postfixed with 120ns, 150ns, etc. Does that matter when it comes to NES chips? Is there a value I should be targetting?

Thanks
tepples
Posts: 22705
Joined: Sun Sep 19, 2004 11:12 pm
Location: NE Indiana, USA (NTSC)
Contact:

Re: EPROM Access Speed question

Post by tepples »

200 ns or faster should be good enough for NES or for Super NES slow ROM. For Super NES fast ROM, you want 120 ns or faster.
User avatar
krzysiobal
Posts: 1036
Joined: Sun Jun 12, 2011 12:06 pm
Location: Poland
Contact:

Re: EPROM Access Speed question

Post by krzysiobal »

Older and smaller EPROMS (2764) tends to be slower.
When using 250ns, I had issues with graphics (but Kazzo readbacks were OK), so probably yes, 200ns or faster.
User avatar
tokumaru
Posts: 12427
Joined: Sat Feb 12, 2005 9:43 pm
Location: Rio de Janeiro - Brazil

Re: EPROM Access Speed question

Post by tokumaru »

Keep in mind that you don't need chips of the exact sizes of the binaries you're programming on them, you can safely use larger chips and ground the upper address lines. So if by any chance you find chips that are cheaper, faster, etc. but are larger than what you need, you can get those too.
casprog
Posts: 70
Joined: Fri Oct 28, 2016 12:37 pm

Re: EPROM Access Speed question

Post by casprog »

Keep in mind that you don't need chips of the exact sizes of the binaries you're programming on them, you can safely use larger chips and ground the upper address lines. So if by any chance you find chips that are cheaper, faster, etc. but are larger than what you need, you can get those too.
Nice, thanks
200 ns or faster should be good enough for NES
Thanks, I'll pick up some of the 120 or 150ns pairs.

Excited :D
casprog
Posts: 70
Joined: Fri Oct 28, 2016 12:37 pm

Re: EPROM Access Speed question

Post by casprog »

tokumaru, when you mentioned grounding the address lines I assume that's only if the chip isn't packed right?

So I ended up getting two 27c128 eproms for my NROM game. 16KB PRG and 8KB CHR. PRG will fit nicely, but what are options for CHR? If I just write an 8KB CHR file will it cause problems?

I picked up a cheap little programmer to get started, a TL866ll Plus.
User avatar
tokumaru
Posts: 12427
Joined: Sat Feb 12, 2005 9:43 pm
Location: Rio de Janeiro - Brazil

Re: EPROM Access Speed question

Post by tokumaru »

No problem at all. Here's a little crash course on address lines:

The address lines in a memory chip are controlled by the console, and they're used to tell the chip which address the NES is going to access. Each address pin is a bit, and as you probably know, a bit can only be 0 or 1 (from the hardware's point of view, GND or +5V), so each bit is only enough to choose which half of a portion of the chip will be accessed. Say you have a 16KB chip, with address lines labeled A0 through A13 (not coincidentally, 2 to the 14th power is 16384: 2 values per bit ^ 14 bits = 16384 combinations). The highest line, A13, will select which 8192 (8K) half to access. The next line, A12, will select a 4192 (4K) half from the chosen 8K block. A11 will select a 2048 (2K) half from the 4K block, A10 will select a 1024 (1K) half out of the selected 2K, and so on, until A0 selects one byte out of a pair of bytes, and that's the byte that will be accessed.

If you need a 16KB chip to hold only 8KB of data, all you have to do is take control of the highest address line (A13) and force it to either GND or +5V, in order to force the lower or upper 8KB to be accessed, respectively. You can take a look at the pinouts of the chip and the PCB to see what the A13 line will be connected to in order to predict which half of the chip will be read. If the pin goes to GND or +5V, you're in luck, and don't need to do any rewiring, just drop the chip in.

To improve your chances of things working correctly even more, write the 8KB of data TWICE (i.e. double the file before writing), filling the entire chip, so that regardless of what A13 is connected to, the correct data will be returned. If both halves of the chip contain the same data, it doesn't matter which half gets selected for reading. Note that this is only true of ROM! If you ever need to use RAM that's larger than needed, you absolutely need to connect the unneeded address lines to a constant signal (either GND or +5V will work), so the same part of the chip is used every time.
casprog
Posts: 70
Joined: Fri Oct 28, 2016 12:37 pm

Re: EPROM Access Speed question

Post by casprog »

Wow, very cool information, I appreciate the in depth explanation.

So for my first board sounds like doubling the chr data should work by itself, though that does feel a little dirty / grounding seems more elegant. I ordered some wipe sockets so I can practice writing the eproms a bit first so for now I'm soldering the other components.

I may be going off tangent a bit but since my chip is 16KB should I leave the mirror jumpers alone? And I read how the nes header needs to be stripped from my rom prior to writing to the eprom, so I found this utility and was wondering if you've used it or if it seems legit?

https://www.romhacking.net/utilities/683/
User avatar
tokumaru
Posts: 12427
Joined: Sat Feb 12, 2005 9:43 pm
Location: Rio de Janeiro - Brazil

Re: EPROM Access Speed question

Post by tokumaru »

casprog wrote:I may be going off tangent a bit but since my chip is 16KB should I leave the mirror jumpers alone?
Mirror jumpers? Do you mean the H and V solder pads? If so, those control the name table (background) mirroring, and are not related to the CHR-ROM chip in any way. Different games need different mirroring types. If you're gonna socket the board and use different games with it, it's better to install a switch so you can change the NT mirroring depending on the game, otherwise, just solder the pads to permanently select the type of mirroring the game needs.

Do note that the information on the NES header refers to MIRRORING, while the letters on the board refer to ARRANGEMENT (whoever came up with that header format probably didn't have a cartridge PCB in front of him!). Horizontal mirroring is vertical arrangement (solder the pads marked "V"), and vice versa.
And I read how the nes header needs to be stripped from my rom prior to writing to the eprom, so I found this utility and was wondering if you've used it or if it seems legit?
I've always used hex editors to split ROMs, so I can't really vouch for any specialized tools. It's a very simple procedure though, so I'm sure there are tons of tools out there that can do it.
casprog
Posts: 70
Joined: Fri Oct 28, 2016 12:37 pm

Re: EPROM Access Speed question

Post by casprog »

Thanks for the help tokumaru. I got my eproms programmed and board all ready to go, however the eproms are not in yet (waiting for my switches to arrive). I will make this first board my test board and solder the eproms to other boards after they have been tested. This has been a lot of fun : ) I'm currently using the repro x boards which so far seem very straight forward.
casprog
Posts: 70
Joined: Fri Oct 28, 2016 12:37 pm

Re: EPROM Access Speed question

Post by casprog »

And it works! After verifying on my test board with the switches I went ahead and soldered the chips onto a dedicated board.

What's the best way to cover the eprom windows? Just some electrical tape?
Attachments
20181021_173012.jpg
20181021_173021.jpg
Post Reply