> Hi, I'm having problems using dual memory access operands on my TI C5410 (using
> a TIGER 5410.
> I'm trying the following:
> MACSU *AR2, *AR3, A
> Where ar2 and ar3 contain 0x04A4 and 0x04A5 (ie < 0x1fff and hence in dual
> access memory according to the TI manual). This instruction gives strange
> results (I tried 0+= 1*1 = FFFF7DDE ).
Are you saying that address 0x04A4 contained the value 0x0001, 0x04A5 the
value 0x0001, and accumulator A the value 0x00 0000 0000 before the MACSU,
then after the MACSU the accumulator was 00 FFFF 7DDE? If so, this makes no
sense.
Quote:> I have tried calling functions in the TI
> DSPLib (mul32) and this returned strange results as well. I have FRCT =1, SXM = 1
> and OVA = 0.
Just to see what happens, try the same thing with SXM = 0.
Quote:> The only thing I can think of is that the memory is not operating
> in dual access mode. Do I need to set up the DSP to enable the bottom 8K as dual
> access ram.
No, you shouldn't have to worry about that at all. The worst that could
happen is that you'd be charged an extra cycle.
Quote:> Does anyone have any other suggestions of why dual access operations
> would not work?
No. It looks fine to me. Just to see what happens, try putting the second
address (the "ymem") into 0x0CA4 or greater. This puts it in another
block (blocks are 2k on the 5410).
--
% Randy Yates % "...the answer lies within your soul
%% DIGITAL SOUND LABS % 'cause no one knows which side
%%% Digital Audio Sig. Proc. % the coin will fall."
http://personal.lig.bellsouth.net/~yatesc