Page гранични пропускателни проблем с tms320c55x

G

Guest

Guest
Здравейте приятели!

Бих искал да споделя practicle програмиране tms320c5509 проблем.

В голяма памет модел на данните указатели са 23 бита дълго, така че те се съхраняват в 2 думи (32 бита).
Използване на С, ако пиша

Int * пинта;
пинта = (INT *) 0xffff;
пинта / / резултат зависи от версията на процесора.ако това е версия 3.0 или по-висок резултат е 0x10000 otherwice е 0x0000

Сега код:
Int * пинта;
пинта = (INT *) 0xffff;
пинта пинта = 10 / / на reselt е 0x0009 независимо от версията CPU, тъй като Добавяне # 10, AR1 се използва не на пълен регистър XAR1.Това поведение налага много строги ограничения на секцията по отношение на размера на страницата граници.За пример на куп не могат да бъдат по-големи след 64 К думи.Молбата ми е в зона за обработка на изображения, така че е много лошо за мен.

Моят въпрос е да сте изправени пред подобни проблеми страница граница?Има ли soltion?Някои съвети?

Благодаря предварително!
Дора

 
Аз не работи с TMS320 но аз мисля, че има проблем, съставител - ако пинта може да даде 0x10000 и пинта 10 = 0x09.
Bcoz пинта може да се разглежда като пинта 1.Е, съставител могат да използват техники като оптимизация замени Освен с ASM изявление VAR увеличение в RAM, но резултатите трябва да са съседни.

 

Welcome to EDABoard.com

Sponsor

Back
Top