[dorkbotpdx-blabber] Microcontroller + RAM.. recording/playback
Alex Norman
alex at x37v.info
Fri Jul 24 16:13:35 EDT 2009
On 0, Greg Grunest <greg at grunest.com> wrote:
> 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.
Thanks for the advice!
>
> 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).
Sounds like a plan. I'm assuming you'd tie the data I/O directly to the
micro-controller, drive the address pins with shift registers, and drive the
~CE, ~WE, ~OE directly?
I guess the ~CE could be used as an address bit.. so these could be driven by
the shift regs.
The nonvolatile store feature is pretty neat.
>
> 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.)
I have 8-bit 44.1Khz output with a teensy++ working well right now, though who
knows what will happen once I add input..
I'm currently storing my audio in program memory..
-Alex
>
> 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
>
> _______________________________________________
> 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