16 bit to 8 bit multiplexers options (other than 74xx257)

Discussion of hardware and software development for Super NES and Super Famicom.

Moderator: Moderators

Forum rules
  • For making cartridges of your Super NES games, see Reproduction.
Post Reply
mightydidz
Posts: 18
Joined: Wed Jan 24, 2018 12:04 pm

16 bit to 8 bit multiplexers options (other than 74xx257)

Post by mightydidz » Thu Oct 11, 2018 6:47 am

Hello guys, I'm currently looking to update some of my schematic with smaller components.
For a long time I've been using 2x257 mux to convert 16bit eeprom to 8bit eeprom.
Its for snes custom carts.
It is working fine but in some complexe build with lot of IC when 8bit conversion + mix mapping + microcontroller + multiEprom, Its getting tight on the PCB.
I'm looking for a smaller, more effective SMD IC.

I'm no expert in electronics so I tough asking you guys might be easier.

I found two IC that are I'm not 100% would work:
http://www.ti.com/lit/ds/scds307c/scds307c.pdf
https://www.idt.com/products/memory-log ... ultiplexer

Let me know if other options exists
Thanks

User avatar
getafixx
Posts: 370
Joined: Tue Dec 04, 2012 3:28 pm
Location: Canada

Re: 16 bit to 8 bit multiplexers options (other than 74xx257

Post by getafixx » Thu Oct 11, 2018 10:17 am

Why not just go the route of using a CPLD? That can easily handle all of those functions, and take up very little space.

lidnariq
Posts: 9700
Joined: Sun Apr 13, 2008 11:12 am
Location: Seattle

Re: 16 bit to 8 bit multiplexers options (other than 74xx257

Post by lidnariq » Thu Oct 11, 2018 10:51 am

mightydidz wrote:I'm looking for a smaller, more effective SMD IC.
You can get 74HC257 in TSSOP...?

You can get other parts in QFN, or if you're really ambitious, BGA.

You can also use two 74'244s instead.

[ TI TS3L501E ] is a 3V part, cannot be used in the SNES without adding protection and/or uptranslation.
[ IDT QS32390 ] is an analog nMOSFET multiplexer and will function as an uncalibrated nMOSFET voltage clamp. This can be used, but be careful.

User avatar
infiniteneslives
Posts: 2100
Joined: Mon Apr 04, 2011 11:49 am
Location: WhereverIparkIt, USA
Contact:

Re: 16 bit to 8 bit multiplexers options (other than 74xx257

Post by infiniteneslives » Thu Oct 11, 2018 11:23 am

Sorry for the advocation of the devil here.. But I’m genuinely curious.

If you’re already working with small SMD devices, and using ~$0.50-$1 of logic to support an ~$1 EPROM; why not just spend that logic budget on comparably priced level shifters, and get the many benefits of 3v flash? It sounds like the logical answer to your size and complexity problem, but I don’t know much about your overall design and goals with the OP alone.
If you're gonna play the Game Boy, you gotta learn to play it right. -Kenny Rogers

mightydidz
Posts: 18
Joined: Wed Jan 24, 2018 12:04 pm

Re: 16 bit to 8 bit multiplexers options (other than 74xx257

Post by mightydidz » Thu Oct 11, 2018 1:17 pm

I was considering going one level up with cpld sometime and using level shifting 3v to make cartridge safe.
I could definitely save money and space, but always feared the programmer socket price.
I only have a qg4x and a xeltek superpro 610p.

Any suggestion on cpld models or family to start digging into datasheet?

User avatar
infiniteneslives
Posts: 2100
Joined: Mon Apr 04, 2011 11:49 am
Location: WhereverIparkIt, USA
Contact:

Re: 16 bit to 8 bit multiplexers options (other than 74xx257

Post by infiniteneslives » Thu Oct 11, 2018 2:11 pm

mightydidz wrote:Any suggestion on cpld models or family to start digging into datasheet?
Lattice 4000v family is one of the few (only?) 3v powered, 5v tolerant devices still recommended for new designs on the market. There are other options if you don't mind designing for discontinued/EOL devices, have fun scrounging for those parts in the near future.. See this discussion for a more in depth conversation on CPLD market as a whole. Most of the devices discussed in that page can't be used for level shifting though as they are not 5v tolerant themselves.

For the purposes of level shifting *alone* a 3v powered, 5v tolerant CPLD is a pretty poor/expensive option. If you don't have added value to gain from that CPLD's abilities, you're likely better off with discrete logic translators/levelshifters. For example a ~30 i/o LC4032V device is going to cost $1+, that device will only be capable of levelshifting ~15 signals. Where as a 16bit level shifter is $0.50 or less depending on volume, and doesn't need to be programmed.

Higher i/o count CPLDs are only going to cost more per i/o typically, you'll end up spending $2-4 for a complete CPLD solution, when you could use ~$1 worth of levelshifters.

FWIW I often use a mix of CPLD, level shifters, and 5v tolerant logic on my SNES designs. The CPLD+discrete logic provides some level shifting and also permits togging between HiROM/LoROM and SRAM sizing post-assembly. But when those options are fixed I use levelshifters alone.
If you're gonna play the Game Boy, you gotta learn to play it right. -Kenny Rogers

lidnariq
Posts: 9700
Joined: Sun Apr 13, 2008 11:12 am
Location: Seattle

Re: 16 bit to 8 bit multiplexers options (other than 74xx257

Post by lidnariq » Thu Oct 11, 2018 2:33 pm

infiniteneslives wrote:Lattice 4000v family is one of the few (only?) 3v powered, 5v tolerant devices still recommended for new designs on the market
And Microchip/Atmel's ATF150x series is the only 5V CPLD left. (and only the smallest one, the ATF1502, is less expensive than a 3V CPLD plus all the regulators and translation)

User avatar
infiniteneslives
Posts: 2100
Joined: Mon Apr 04, 2011 11:49 am
Location: WhereverIparkIt, USA
Contact:

Re: 16 bit to 8 bit multiplexers options (other than 74xx257

Post by infiniteneslives » Thu Oct 11, 2018 4:18 pm

Yeah I was specifically talking CPLDs which could be used for level shifting (3v powered, 5v tolerant). But the 5v powered atmel would be a viable solution for the original question focused on MUXes.
If you're gonna play the Game Boy, you gotta learn to play it right. -Kenny Rogers

mightydidz
Posts: 18
Joined: Wed Jan 24, 2018 12:04 pm

Re: 16 bit to 8 bit multiplexers options (other than 74xx257

Post by mightydidz » Sun Oct 14, 2018 6:19 pm

Thank you guys for the ATF1502 suggestion. It seems an interesting solution. It have 32 i/o and is 5v tolerant.
I think it would be enough for my needs with some discrete logics for lo/hi mapping, rom/ram banking, etc.
I havent read completely the datasheet yet, but I'm wondering if it have some similar features to the pic microcontroller like clc and pps?
How do I develop with it? I havent found a free development environment.

User avatar
Memblers
Site Admin
Posts: 3884
Joined: Mon Sep 20, 2004 6:04 am
Location: Indianapolis
Contact:

Re: 16 bit to 8 bit multiplexers options (other than 74xx257

Post by Memblers » Sun Oct 14, 2018 6:41 pm

The software for Atmel CPLDs I believe is WinCUPL. It's old, like Win3.11-era. It must be working well enough, if they're still selling the parts.

lidnariq
Posts: 9700
Joined: Sun Apr 13, 2008 11:12 am
Location: Seattle

Re: 16 bit to 8 bit multiplexers options (other than 74xx257

Post by lidnariq » Sun Oct 14, 2018 6:59 pm

mightydidz wrote:Thank you guys for the ATF1502 suggestion. It seems an interesting solution. It have 32 i/o and is 5v tolerant.
Be careful: it is only 5V tolerant when it is operated at 5V. It isn't helpful in a multiple voltage situation.
[PIC] CLC and PPS?
I ... sorta. CLCs and PPS are both extremely minimalist subsets of an FPGA/CPLD.

The other huge gotcha for the ATF1502 is that although you can program it with JTAG, and you can generate a fusemap that disables JTAG, you can't program it again after disabling JTAG unless you buy a very expensive programmer. So of the 44 pins, 4 are Vcc, 4 are Gnd, 4 are JTAG, and 4 are global inputs. Importantly, you can still use the latch inside a macrocell associated with a pin reserved for JTAG.
Memblers wrote:The software for Atmel CPLDs I believe is WinCUPL. It's old, like Win3.11-era. It must be working well enough, if they're still selling the parts.
They do provide on request a time-limited key for a verilog synthesis toolchain.

Post Reply