SX28 Sound Card

Ok, for those that don't know, I am building a homebrew computer.
My design is probably going to use a 6502 for the CPU and several SX28 (and maybe even some PICs) for the subsystems like audio, I/O, etc.
Anyway, I am working on my "sound card" now.
I would like my sound card to have it's own 32k of RAM and at least 4-8 bit resolution.
So....
If I use a parallel connection to the SRAM and use the 15 pins for the address bus, 2 pins for /OE and /WE that leaves me with only 3 pins. No where near enough for the 8 bit data bus PLUS the number of pins for my audio out.
What should I do? Should I try using a serial connection? Isn't that much more complicated and slower?
Should I ditch the SX28? I know some of the PIC "monsters" can get up to 40 pins (I have some) but I like the speed and power of the SX.
I don't think the SX52 would work unless I get the "con carne" version because I want DIP.
Thanks for any suggestions.
-cbmeeks
My design is probably going to use a 6502 for the CPU and several SX28 (and maybe even some PICs) for the subsystems like audio, I/O, etc.
Anyway, I am working on my "sound card" now.
I would like my sound card to have it's own 32k of RAM and at least 4-8 bit resolution.
So....
If I use a parallel connection to the SRAM and use the 15 pins for the address bus, 2 pins for /OE and /WE that leaves me with only 3 pins. No where near enough for the 8 bit data bus PLUS the number of pins for my audio out.
What should I do? Should I try using a serial connection? Isn't that much more complicated and slower?
Should I ditch the SX28? I know some of the PIC "monsters" can get up to 40 pins (I have some) but I like the speed and power of the SX.
I don't think the SX52 would work unless I get the "con carne" version because I want DIP.
Thanks for any suggestions.
-cbmeeks
Comments
Bean.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
"SX-Video·Module" Now available from Parallax for only $28.95
http://www.parallax.com/detail.asp?product_id=30012
Product web site: www.sxvm.com
"If you keep doing what you always did, you'll keep getting what you always got."
·
I can't keep spending!!! :-/
cbmeeks
I just posted a project where an SX28 uses a 512K CMOS RAM chip by sending port C to one of 4 places - a low-8 address latch, a middle-8 address latch, a high-3 address latch, or the RAM data bus. Port B operates a 74HCT139 data selector to trigger the appropriate latch and to operate the RAM control lines. It's working great.
If you're mainly going to use the RAM serially, you could use counters, like the 12 bit CMOS 4040 (if I remember correctly), to generate any number of address bits - the SX would only have to clock one line to increment all address lines.
David
Any tips/tutorials on the 74HCT139?
I'm a newbie and only have a small understanding of latch registers.
thanks
cbmeeks
Anyone know of one ? I know I can built it with multiple chips, but surely someone makes it.
It would be ideal for this project also.
Bean.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
"SX-Video·Module" Now available from Parallax for only $28.95
http://www.parallax.com/detail.asp?product_id=30012
Product web site: www.sxvm.com
"If you keep doing what you always did, you'll keep getting what you always got."
·
They're pretty common on small computer systems; in fact, if you're building a small computer then this would be a prime candidate for selecting between your RAM and ROM.
In my project, I fed the SX port C to 3 74HCT573 8-bit latches, then when the appropriate 74HCT139 bit was selected, then released, those 8 bits are latched to the outputs of the HCT573's and thus to the RAM address lines.
So, for 32k, how many pins do you think will be needed for just the SRAM?
If you wanted, you could use control 4 pins: two to directly control latching of two address latches and two to directly operate the RAM controls, and forget that HCT139 decoder.
From my experience with wire-wrapping a couple of Z80 microcomputer boards, if you're planning to build a 6502 system I'm sure that you'll know this sort of design inside and out by the time you're done.
David
My suggestion is to use a PLD front end to perform these functions, that is the route I decided to take when I needed too many pins on the SX52 for other purposes. The address lines are driven with a counter and latch and the default action when accessing the memory (reading and writing) is to post increment the address after access is complete (the latch is updated when the SX signals memory access is complete (by sending the function NULL). So random access of any memory address follows this command list: NULL-> LOAD_ADR (data on bus loaded into low address byte) -> NEXT1 (data on bus loaded into·middle address byte) -> NEXT2 (data on bus loaded into high address byte) -> READ_MEM (contents of memory on data bus) -> NULL (address is incremented), subsequent reads from sequential addresses is accomplished via READ_MEM, NULL combinations.
Hey, I was looking at an old dead, NES mobo I have and guess what chip it has? A HD74LS373P. I think that is the latch IC I need.
Now, if I can only figure out how to de-solder it.
Heck, I might steal the CPU!!
cbmeeks