HardwareHeaven.com

HardwareHeaven.com

Looking for the skin chooser?
 
 
  • Home

  • Hardware reviews

  • Articles

  • News

  • Tools

  • Gaming at HardwareHeaven

  • Forums

 

Go Back   HardwareHeaven.com > Forums > Hardware and Related Topics > kX Project Audio Driver Support Forum > Effects and the DSP


Reply
 
Thread Tools
Old Dec 4, 2003, 06:02 AM   #1
DriverHeaven Junior Member
 
Join Date: Nov 2003
Location: Shropshire, England
Posts: 21
Rep Power: 0
Kevin Horden is on a distinguished road

Look up Table

Is there any documentation on using the TRAM for lookup tables?

I'm working on converting MIDI note inputs into delta's for an oscilator. I have calculated all the deltas and worked out an algorithm for deriving the deltas but the most efficient way to implement this would be a lookup table. Calculating it on the fly would take a lot of registers and opcodes.

Cheers,

Kevin
Kevin Horden is offline   Reply With Quote


Old Dec 4, 2003, 11:17 AM   #2
h/h member-shmember
 
Join Date: Dec 2002
Location: Evil Empire
Posts: 2,639
Rep Power: 69
Max M. is just super!Max M. is just super!Max M. is just super!Max M. is just super!Max M. is just super!Max M. is just super!

Unfortunally, look-up tables are not implemented on 10k1 processor... So it does not make too much sense to bother with thing not present on all of supported cards.
__________________

Last edited by Max M.; Dec 4, 2003 at 11:32 AM.
Max M. is offline   Reply With Quote
Old Dec 4, 2003, 02:15 PM   #3
kX Project DSP Engineer
 
Join Date: Dec 2002
Location: Denmark
Posts: 94
Rep Power: 0
Soeren_B is on a distinguished road

What is preventing you from calculating these values inside the GUI/C++ code ? You have to get MIDI input from somewhere...

/Soeren
Soeren_B is offline   Reply With Quote
Old Dec 4, 2003, 03:52 PM   #4
DriverHeaven Addict
 
Join Date: Dec 2002
Posts: 259
Rep Power: 0
eyagos is on a distinguished road

Lookup tables, that would be fantastic, altouhg as Max says, they are not supported.

I have an aproximation algorithm to make divisions in dane (i.e. 1/0.4 = 2.5 = 2 + 0.5). It needs 25 opcodes, and with a lookup table could be reduced to 5 or 6. And, almost in my case, these can not be done in the kxl, because each sample needs a different calculation.
eyagos is offline   Reply With Quote
Old Dec 4, 2003, 05:17 PM   #5
kX Project Lead Programmer and Coordinator
 
Join Date: Dec 2002
Posts: 3,119
Rep Power: 75
Eugene Gavrilov has much to be proud ofEugene Gavrilov has much to be proud ofEugene Gavrilov has much to be proud ofEugene Gavrilov has much to be proud ofEugene Gavrilov has much to be proud ofEugene Gavrilov has much to be proud ofEugene Gavrilov has much to be proud ofEugene Gavrilov has much to be proud ofEugene Gavrilov has much to be proud of

yes, Look-up tables are support in hardware only for 10k2 boards
moreover, kX kernel-level driver currently doesn't handle them at all
and the existing information about look-up tables is not sufficient and will require some investigation...
I doubt I can currently spend time on this...

/E
Eugene Gavrilov is offline   Reply With Quote
Old Dec 16, 2003, 01:48 AM   #6
h/h member-shmember
 
Join Date: Dec 2002
Location: Evil Empire
Posts: 2,639
Rep Power: 69
Max M. is just super!Max M. is just super!Max M. is just super!Max M. is just super!Max M. is just super!Max M. is just super!

btw. eyagos, you could not use tablelookups in your division approximation algorithm anyway:
Since those table look-ups made on emu10k2 through external tram - there're the same issues and limitations as for xtram delay lines... and yep main of them: the value of data register is not updated immidiatelly after changing its address register (e.g. there's the same latency between time you change "look-up pointer" and time you get desired value from your "look-up data")
E.g. i'd said that emu10k2 implementation of table look-ups is absolutely useless for "every-samplecycle" algorithms...
(anyway i think this means it should never be supported by kX ;)

[color=gray] oh, how cool probably it is to program fx8010 on rfx32 - since there's no xtram at all, but only one huge itram instead ;)[/color]
__________________

Last edited by Max M.; Dec 17, 2003 at 09:45 PM.
Max M. is offline   Reply With Quote
Old Dec 17, 2003, 08:19 PM Threadstarter Thread Starter   #7
DriverHeaven Junior Member
 
Join Date: Nov 2003
Location: Shropshire, England
Posts: 21
Rep Power: 0
Kevin Horden is on a distinguished road

The only reason I asked about look-up tables (apart from seeming like a neat solution to my problem) is that while I was trawling for info I found Danial Bertrand's 10k1 assembler guide and saw a reference to look up tables in it. His 10k1 assembler which I believe is used in the Linux Alsa drivers mentions, and has, assembler directives for look up tables on a 10k1. Is he talking or writing rubbish?
Kevin Horden is offline   Reply With Quote
Old Dec 17, 2003, 09:44 PM   #8
h/h member-shmember
 
Join Date: Dec 2002
Location: Evil Empire
Posts: 2,639
Rep Power: 69
Max M. is just super!Max M. is just super!Max M. is just super!Max M. is just super!Max M. is just super!Max M. is just super!

When Daniel wrote his assembler and that manual it was not 100% known if table-lookups are present at emu10k1 or not... (Later we found that table-lookups are implemented only on 10k2)

(presence of some feature in assembler does not mean that same feature is supported by driver and/or hardware, for example "dane" assembler also supports some features which are not supported by kX driver - i think i'll start some little war on this just after the new year ;)
__________________

Last edited by Max M.; Dec 17, 2003 at 10:31 PM.
Max M. is offline   Reply With Quote
Old Dec 18, 2003, 06:28 AM Threadstarter Thread Starter   #9
DriverHeaven Junior Member
 
Join Date: Nov 2003
Location: Shropshire, England
Posts: 21
Rep Power: 0
Kevin Horden is on a distinguished road

Thanks Max. I think the basic problem is Creative Labs and the way they want to keep all the information under lock and key.
Kevin Horden is offline   Reply With Quote
Reply

Thread Tools