[dorkbotpdx-blabber] Microcontroller + RAM.. recording/playback

Greg Grunest greg at grunest.com
Fri Jul 24 04:27:33 EDT 2009


IMHO, DRAM is a real pain to deal with.  Unless you want to deal with
implementing your own DRAM controller or you really *need* the speed /
density / price that DRAM can offer I tend to avoid it.  The refresh
circuitry and RAS / CAS timing will drive a sane man to drink.  You also
have to deal with issues like pipelining, precharge, CAS latency and
bursting.  SRAM on the other hand is much easier.  You put an address on the
address pins and then either read or write data on the data pins.  That's
it.  It always just kind of works whereas I've spent a ton of time debugging
DRAM timing and commands in the past.

You should be able to implement a 64KB SRAM chip with just two latches using
11 or 12 pins on an Arduino and it's really straight forward. Adding
additional 64K SRAM chips (128K, 192K, 256K etc...) is as easy as peeling
off another pin from the Arduino and tying it to the chip select of the
additional SRAM chip (or you could mux it).

Also, you should be able to easily outperform your data write requirements
for storing audio with any available SRAM chip and an Arduino using this
approach. 

Will the Arduino DAC conversion rate and the bit depth deal well with sound?
Especially if you're looking for a 44.1khz sampling rate (CD quality).  I
tried to do the math on this but my brain stopped working about an hour
ago.(All I can do now is blabber and type.)

Regarding SRAM being too expensive, I'd agree compared to the density (cost
per cell) for DRAM but unless you're building 1000  or more of something,
I'd argue that you'll spend more money, time and effort getting a DRAM
solution to work.  Especially for building 1-off solutions.

Digikey sells Cypress Semiconductor 256Kbit(32K bytes) 45ns SRAM chips in
dip form for $7.50
http://search.digikey.com/scripts/DkSearch/dksus.dll?Detail&name=STK14C88-3W
F45-ND
If you don't need the dip packaging, they get much cheaper with higher
densities.  1Mbit(128K bytes) 45ns for $2.50
http://search.digikey.com/scripts/DkSearch/dksus.dll?Detail&name=428-2066-ND

Granted, in comparison DRAM chips are 4M at 35ns for $1.60 and 16M for $3.50
(but they suck!!!)

-greg

-----Original Message-----
From: dorkbotpdx-blabber-bounces at dorkbot.org
[mailto:dorkbotpdx-blabber-bounces at dorkbot.org] On Behalf Of Jason Plumb
Sent: Thursday, July 23, 2009 10:44 PM
To: A discussion list for dorkbot-pdx (portland, or)
Subject: Re: [dorkbotpdx-blabber] Microcontroller + RAM.. recording/playback

Alex Norman wrote:
> I'm looking to build a very simple audio/control voltage
recorder/"sampler" with
> a micro-controller.  I realize a DSP might be the best thing for this but
I'm
> curious if I can do it with a micro-controller for cheap.

So this has been a desire of mine for a while now too.  I'd love to be 
able to do a few seconds at 44.1kHz mono (ideally up to like 60 or 120 
seconds!!).  I think that DSP is probably overkill for this application 
tho....there's very little *processing* involved, most of the work is on 
the bus.

> Basically, the piece that is the major problem is finding a reasonably
large 
 > memory device which I can quickly read and write single bytes at a
 > time.

This really is the core issue...finding a sweet spot for complexity 
versus price versus capacity.  DRAM is so damn cheap now that it seems 
the way to go...but none of the popular MCUs interface with any out of 
the box.  You'd end up using a controller or rolling your own, the 
price/complexity of either is kinda cost prohibitive (I suspect).

In my experience, it's hard to find static RAM or serial RAM that are 
big, fast, and cheap enough for this application.

> I've been thinking that I could actually do this with eeprom if I make it
so
> that the device doesn't 'record' and 'playback' at the same time.. but it
would
> be ideal if I could do both..

Would eeprom really be fast enough?

What's in the guts of the Line 6 or Echoplex devices?

Paul: Don't pretend like PJRC hasn't interfaced with DRAM before.  :) 
What are your thoughts on doing this?  I fear when it comes to DRAM 
there are a bazillion variables...

-jason
http://noisybox.net
_______________________________________________
dorkbotpdx-blabber mailing list
dorkbotpdx-blabber at dorkbot.org
http://music.columbia.edu/mailman/listinfo/dorkbotpdx-blabber



More information about the dorkbotpdx-blabber mailing list