Replacement for MK4164 ram chip?

SgtWookie

Joined Jul 17, 2007
22,230
Where in the world are you, David? Putting at least your country in your profile (User CP ->Edit your Details -> Location) helps people help you.

The 4164 DRAM was a commodity part. Samsung also made them with a KM prefix (KM4164)
 

SgtWookie

Joined Jul 17, 2007
22,230
I wouldn't expect many to be familiar with such old DRAM. Those were used quite a bit in early Z80-based 8-bit computers. The (Tandy Radio Shack) TRS-80 Model 4 and 4P used them, among many others.

I actually have some KM4164A-15's that I bought many years ago for my Model 4. Shipping to the UK would be absurd though.
 

Thread Starter

daviddeakin

Joined Aug 6, 2009
207
I should probably say that I'm not looking for a drop-in replacement, but a modern device which would perform the same function, with minimal circuit bending [see schem].
 

Attachments

retched

Joined Dec 5, 2009
5,207
I would be looking for a drop-on replacement.

Else you may have to change quite a bit.

You may also be able to get a larger DRAM with more memory.

Sarge, shipping shouldn't be soooo bad. Dont you load you own shells?
Im sure daviddeakin has a baseball glove. ;)

Ill find my old FDC books and give it a 'shot'. ;)
 

SgtWookie

Joined Jul 17, 2007
22,230
I'm wondering why they mixed TTL and CMOS in the circuit; they should have stuck with one or the other.

Should be able to adapt the design to one of these:
http://download.cypress.com.edgesuite.net/design_resources/datasheets/contents/cy7c187_8.pdf
CY7C187 - 64k x 1 bit static RAM.
Digikey here in the States carries a few of them at $6.25/ea.

A good low-parts-count alternative would be to duplicate the logic using a uC and a serial static RAM.

Here's Microchip's page on serial SRAM:
http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=2698
 

SgtWookie

Joined Jul 17, 2007
22,230
I hate to tell you this, but 7400 series TTL and 4000 series CMOS are all but obsolete.

That entire circuit could be reduced to one quad opamp, a uC that has a comparator, and a serial RAM.

Oh, in the original circuit a TL071 single opamp was specified, but they actually used a TL074. They didn't show how the 4th channel of the opamp was used; if unused it should be configured as a voltage follower/buffer amp (output to inverting input, noninverting input tied to GND)
 

Thread Starter

daviddeakin

Joined Aug 6, 2009
207
I hate to tell you this, but 7400 series TTL and 4000 series CMOS are all but obsolete.
Steady on! Even uC's will still need extra supporting logic in the future :D
However, until I learn to write software (got a year or so?) I will explore some other possibilities.

New question:
I found these small S23K640 RAMs, which use nothing but an SPI bus.
http://ww1.microchip.com/downloads/en/DeviceDoc/22126B.pdf

I heave been reading up on what SPI is and it looks to me that, since you cannot address data, these chips are really just massive 64k-bit shift registers, right? In other words, if I just hook up a clock to it and keep shoving in data, eventually it will start coming out the other side? Seems to me that I could use this to get a delay effect, with some pretty simple logic. Varying the clock speed would vary the delay...

Am I way off?

EDIT: Ok, you can address the data, but my question still stands. Can it be used as an enormous shift register?
 
Last edited:

Thread Starter

daviddeakin

Joined Aug 6, 2009
207
Sort of. But, you'd need a uC w/SPI to set the control bits inside the RAM.
Interesting...
But since the control bits seem to be nothing more than 00000010 after the chip-enable goes low, I can perhaps achieve this with logic, when the circuit is first powered up. But will it just keep running indefinitely then until power down, or would it need a new control word after it cycles through every address?
Can you think of any other way to make a software-free 64k shift register?
 

SgtWookie

Joined Jul 17, 2007
22,230
For each byte written, you have to send:
1) an 8-bit instruction setting up the SRAM for the write.
2) A 16-bit address as to where to start writing the byte.
3) The 8-bit byte to be written to the address.
In sequential write mode, you can simply continue to send bytes of data. However, if you switch to read mode, you have to send another instruction to read the data in sequential mode.

You can buy FIFO's. They're expensive.

I don't know what kind of fidelity you expect out of this thing; if you're planning on using it for music or just a "fooling around" kind of experiment. If you want decent sound quality, you'll have to sample at 44kHz at least. At that rate, 64k bits will give you a maximum loop delay of about .69 seconds.

Another source of cheap DRAM might be from old 286 and 386 computers that used 30-pin SIMMs. The SIMMs were anywhere from 256k to 4MB in size.
 

Thread Starter

daviddeakin

Joined Aug 6, 2009
207
However, if you switch to read mode, you have to send another instruction to read the data in sequential mode.


I don't know what kind of fidelity you expect out of this thing; if you're planning on using it for music or just a "fooling around" kind of experiment. If you want decent sound quality, you'll have to sample at 44kHz at least.
Darn it, so you can't read and write at the same time.

Yeah this is a lo-fi project. I was planning on using the same delta-sigma ADC as in the original schem, running between 100kHz and 1MHz.
 

Wendy

Joined Mar 24, 2008
23,421
I have a bunch of them kicking around, being into computers before they were considered cool. Commodore is another name that used these chips.

You can find these parts ready to buy (I'd use sockets in the project). Due to the quantities made they are still pretty common.
 

retched

Joined Dec 5, 2009
5,207
Last edited:

SgtWookie

Joined Jul 17, 2007
22,230
The CD4031B is a 64-stage static shift register. It could be used, but you would need 100 of them to get 64kbits. :eek:

I'd already spotted those FIFO's in my search; that's why I didn't bother to include them (just remarked that they were expensive).

Found this during a search:
http://www.armory.com/~rstevew/Public/SoundSynth/Reverb/ddl.htm
It's a modification of the original schematic.

The idea of adding the VCO is interesting, but he used TL082's with a single 5v supply which is not good.

TL07x, TL08x, and LF353 opamps can't "see" within about 1.5v of Vcc or within 3v of the negative rail, so that gives this circuit a range of 0.5v. Changing the opamps to more modern versions would help a great deal; something like an MC33078 would be good.

The MC33078 is 3x as fast and has 1/4 the noise that a TL07x opamp has, and while it does not have rail-to-rail inputs/outputs, it has a greater common mode range than the older opamp family.
 

SgtWookie

Joined Jul 17, 2007
22,230
Just found these at Futurlec:
http://www.futurlec.com/Memory/4164pr.shtml

If you don't mind them charging your credit card within 24 hours and your parts (maybe) arriving a couple of months later, they're cheap and they actually might have some in stock.

I ordered a couple of hard-to-find IC's from them (MAX038) and it took 7 weeks for them to arrive.
 

SgtWookie

Joined Jul 17, 2007
22,230
Another idea; generic 4256 dynamic RAM has virtually identical pinouts of the 4164, with the exception of pin 1 (4164-p1=refresh\, 4256-p1=A8) - and it contains 1MB of DRAM, organized as 256k x 4 bits. You'd need another counter or two to take advantage of the extra memory addresses.
 

bertus

Joined Apr 5, 2008
22,277
Hello,

You could also look in very old PC's.
Some have 1 Mb sdram simms in them.
(I used one to upgrade the memory of my very old MSX2).

Bertus
 
Top