|
|||||||
| Home | Forums | Rules | Articles | Store | Gallery | Blogs | Register | Donations | FAQ | Calendar | Search | Today's Posts | Mark Forums Read | Search |
| Digital Source Digital Players and Recorders: CD , SACD , Tape, Memory Card, etc. |
|
|
Please consider donating to help us continue to serve you.
Ads on/off / Custom Title / More PMs / More album space / Advanced printing & mass image saving |
![]() |
|
|
Thread Tools | Search this Thread |
|
|
#1 |
|
diyAudio Member
Join Date: Apr 2005
Location: Mexico City
|
Hello everybody!
I am working on a project bout digital audio processing based on a dspic from microchip, but I have a little problem with RAM memory as of the dspics 8kb onboard ram present. So i was considering on using a NVSRAM i had around. its a 8bit 2megabyte chip, with 70ns access time. I was hoping to hear any advice on what would be the FASTEST and simpliest way of interfacing such a memory to a dspic (or any 16bit dsp/uc) One of my limitations is that i only have 512 assembler instruction cycles to process every 2 (L/R) samples. I program in C, so that way, that cycle number decreases of course. What do people usually use for this kind of stuff ? Is it good to simply use the dsp's ports to write data and address the ram? or maybe some external circuitry could speed up the process of writing and retrieving data from the ram? Should i consider using inline assembler to speedup ? thats pretty much it thanks in advance |
|
|
|
#2 |
|
diyAudio Member
Join Date: Jun 2004
Location: Bern
|
Let' s see...
2 MB = 21 Address lines, 8 bit data... If you have 29 I/O lines free to use on your DSPic, you can address directly the RAM and read/write the data (very fast), otherwise you will have to latch/multiplex the address and data lines, loosing some machine cycles. Some more data about your chips would be useful... And yes, some inline assembler could be necessary, as in all time-critical applications. Cheers, Bruno |
|
|
|
#3 |
|
diyAudio Member
Join Date: Apr 2005
Location: Mexico City
|
Ok
thank youI do have enough free pins on the dsp, being the chip tqfp 80, dsPIC30F6014 , with several 16bit parallel ports. I will do it this way then, direct addressing and writing lets see setup address - 1 or 2 instructions write a byte - 1 instruction toggle write - 1 instruction so i'd need 4 cycles to write 1 byte 16 instructions for writing 2 16bit words say top 20 instructions for either writing or reading i think i can live with that ![]() thanks for clarifying my mind |
|
|
|
#4 |
|
diyAudio Member
Join Date: Apr 2004
Location: Nijmegen
|
You could consider a seccond ram.
That way you can read and write 16Bits in a cycle Regards Simon |
|
|
|
#5 |
|
diyAudio Member
Join Date: Mar 2005
Location: Mexico
|
Just do not forget to check the setup and write times of the SRAM. It is advisable to use a nop instruction to let settle the pins.
By the way, I beleive that you are in Mexico, it is right? It is for a commercial purpose, some school project, etc.? Regards. |
|
|
|
#6 |
|
diyAudio Member
Join Date: Apr 2005
Location: Mexico City
|
Hey, thanx for all the replies !
Second RAM sounds nice didnt think of it that way hehei actually happen to have a couple of BQ4015 here, which is a 512kbyte 8bit NVSRAM, one with 70ns access time, the other with 85ns. 19 address lines, 8 bit data bus, and Write Enable, Chip Enable and Output Enable pins. I'd need 19 shared address lines, 8 bits for one ram, 8 bit for another, and 1 write enable.. 36 pins I could position the data on a single 16bit port. For address I would need another whole 16bit port , plus 3 more pins from some other port. Now this makes me wonder how would i implement fast 19bit addressing on a 16bit processor? or maybe there is some alternative way of doing this? With 24.576MIPS, i have a 40.6ns instruction period. The ram, 1 chip is 70ns the other 85ns. so then i guess i would need a couple or 3 "nop"'s after every action to get an acceptable settle down time for both chips. I am russian but living in Mexico for 15years now ![]() Bout the project... its my own design, pure work at home no school. Maybe if lucky sometime something could be sold, but yet a lot of stuff to do ![]() First thing will be an audio digital dynamic range compressor which will be my repay to a friend of mine who sponsored me with cash for an oscilloscope ![]() ... actually the system will allow other audio fx/processing. I am looking forward to using another dsp processor, the Analog Devices Shark. Seems a very promising chip, running at 200mhz allowing 1200MFLOPs, with 24 digital audio data channels ![]() got couple of these for free as samples, but i have yet to attempt solder a 144TQFP with .5mm pitch by hand .. another thing is how i am going to get the firmware into it, need to look for some diy programmer or design one myself, because i cant afford getting development boards for every thing i do ... so this will be next project hehe think thats it Good luck! |
|
|
|
#7 |
|
diyAudio Member
Join Date: Apr 2004
Location: Nijmegen
|
Why 19bit adressing?
Why not 16bit adressing and 3bit banking! The switch between a bank woud not happen that often to justify a 19bit routine. regards, simon |
|
|
|
#8 | |
|
diyAudio Member
Join Date: Oct 2003
Location: Ottawa, Canada
|
Quote:
|
|
|
|
|
#9 |
|
diyAudio Member
Join Date: Apr 2005
Location: Mexico City
|
Banking indeed!
I was talking with a buddy on #electronics on EFnet and he suggested me that. I havent thought of it that way but very true, easy and fast to implement ![]() thanks for all the replies! |
|
![]() |
| Thread Tools | Search this Thread |
|
|
Similar Threads
|
||||
| Thread | Thread Starter | Forum | Replies | Last Post |
| 24 bit ADC interfacing with ARM using I2S | sukhdeep | Digital Line Level | 2 | 20th June 2009 03:37 PM |
| Interfacing the I2S bus to an Atmel | Daryl | Digital Line Level | 15 | 25th January 2009 09:39 AM |
| 3.3v to 5v CMOS interfacing | Zodiac | Digital Source | 9 | 15th May 2006 10:11 PM |
| PCM1733 Interfacing | poynton | Digital Source | 6 | 3rd February 2006 06:29 PM |
| Interfacing to TDA1543A | Ian Wilson | Parts | 0 | 13th November 2004 09:17 PM |
| New To Site? | Need Help? |