gbadev.org forum archive

This is a read-only mirror of the content originally found on forum.gbadev.org (now offline), salvaged from Wayback machine copies. A new forum can be found here.

DS development > DSi XpertTeak coprocessor (DSP)

#177999 - nocash - Fri Jul 12, 2013 2:14 pm

The DSi is said to contain a CEVA "XpertTeak" DSP coprocessor (additionally to the ARM9 and ARM7 processors). The ARM9 appears to access that DSP thing via ports 4004300h..4004337h. Other than that, things I don't know are:

* DSP Instructions Set (opcodes) ?
* DSP Clock speed ?
* DSP I/O ports (at DSP side) ?
* DSP Memory Map ?

I haven't yet found any official datasheets / programmers guides yet (though at least the opcodes shoule be documented somewhere).

#178008 - nocash - Mon Jul 15, 2013 12:47 am

I've found one (1) webpage mentioning the Nintendo DSi's XpertTeak, http://www.elotrolado.net/hilo_comprobando-la-potencia-del-homebrew-para-dsi_1271774_s10 using a translation machine, the text says:
Quote:
"Do not you know? Well you know. The main cpu is an ARM946E-S to 134.056mhz. The sub processor is a 33.514mhz ARM7TDMI. The CEVA-DSP ​​is the same mhz XPertTeak the main cpu."

No idea where that info comes from, and if it's correct. Elsewhere I've read that the XpertTeak thing can be clocked at more than 500MHz... but well, 134MHz might be more reasonable for the DSi. I've also read that an XpertTeak can execute 8 instructions simultaneously... whatever that means... if it means 8 instructions at 134MHz... that would be 1 billion instructions per second... ?

Even if it isn't that fast - I would assume that the XpertTeak is having at least as much horsepower as the DSi's ARM9 processor. But then... I don't understand why Nintendo+DSi+XpertTeak doesn't get more than one (1) single google hit... did I miss or misunderstood somehing???

As it looks to me, Nintendo could have gotten the same attention when re-releasing the Gameboy Camera instead of building the DSi.

#178009 - FluBBa - Mon Jul 15, 2013 10:36 am

http://www.ceva-dsp.com/CEVA-Powered-Products

Almost at the bottom is the DSi and 3DS pictures.

http://data.eefocus.com/myspace/5/26152/bbs/1199851067/1199851107_27313e48.pdf

Here is a doc about a previous DSP core from Ceva (DSP group).
Hope that can bring something to the table.
_________________
I probably suck, my not is a programmer.

#178010 - nocash - Mon Jul 15, 2013 4:23 pm

Good finding! I've no idea how close the TeakLite is resembling the XpertTeak, but the Lite datasheet is very nice to get started.

I've picked some words/sentences from the Lite datasheet, like "bkrep Block Repeat"... but that merely revealed some older "Oak" datasheets from Atmel and LSI :-/

The http://www.ceva-dsp.com/CEVA-Products page only lists three product families: CEVA-TeakLite, CEVA-X, and CEVA-XC. But nothing about "XpertTeak", almost looks as if XpertTeak is some inofficial nickname (for CEVA-X, maybe), or XpertTeak is some old discontinued stuff...???

About the instruction set, the TeakLite datasheet seems to be the one and only document (aside from the old Oak docs). The newer CEVA-X(C) opcodes seem to be undocumented (apparently supposed to be programmed in HLL code, or via preprogrammed audio/video decoder libraries).

Best might be to find some DSi binaries and compare them with the TeakLite datasheet...

Some related I/O ports on ARM9 side are 4004044h..400404Bh (WRAM mapping for TeakDSP program code), and 4004308h (TeakDSP reset/config).

EDIT: Here's some timeline, based on press releases mentioning the launch (or licensing dates in some cases) of different CEVA DSP cores.
Code:
  Oak             January, 1998 (CWDSP1650 datasheet date)
  TeakLite        April 6, 2000 (licensing date)
  XpertTeak         Jul 8, 2002
  CEVA-X      December 08, 2003
  TeakLite II  January 10, 2005
  TeakLite III    June 25, 2007
  TeakLite 4     April 16, 2012