Jump to content
kentawrik

Target Board 78f1146 И Qb-mini2

Recommended Posts

Приобрел QB-MINI2 и сделал сам платку типа таргетбоард на 1146. Плата прилагается

post-45024-1218429386_thumb.jpg

Kit.rar

встала необходимость просмотреть время выполнения определенной процедуры.

void fill()

{

for( i = 0; i < 3; i++)

{

for( j = 0; j< 3072;j++)

{

buffer[j]='2';

}

}

}

инициализация:

void init_hard()

{

// инициализация тактовых частот

OSMC = 0x01; // xxxxxxx0

// +---- (FSEL) частота для памяти: 1 - выше 10 МГЦ / 0 - ниже 10 Мгц(экономия питания)

OSTS = 0x07; // xxxxx000

// +++---- время стабилизации (OSTS2, OSTS1, OSTS0)

// 000 - 2^8/fx

// 001 - 2^9/fx

// 010 - 2^10/fx

// 011 - 2^11/fx

// 100 - 2^13/fx

// 101 - 2^15/fx

// 110 - 2^17/fx

// 111 - 2^18/fx

CMC = 0x51; // 00x0xxx0

// || | +---- (AMPH) частота: 0 от 2 до 10 МГц / 1 - от 10 до 20 МГц

// || +-------- (OSCSELS) XT1,2: 0 - порт, 1 - кристалл

// |+---------- (OSCSEL) X1: 0 - порт / 1 вход(ы) генератора

// +----------- (EXCLK) генератор 0 - внутренний / 1 - внешний вход

CKC = 0x08; // 00001000

// |||||||+----(MDIV0):

// ||||||+-----(MDIV1):

// |||||+------(MDIV2):

// ||||+------- всегда 1

// |||+--------(MCM0) источник для fclk: 0 - fih / 1 - fmx

// ||+---------(MCS) (т.чтение) статус fmain: 0 - fih / 1 - fmx

// |+----------(CSS) источник для fclk: 0 - зависит от MDIV и MCM0 / 1 - fsub/2

// +-----------(CLS) (т.чтение) статус fclk: 0 - fmain/ 1 - fsub

CSC = 0x00; // 00xxxxx0

// || +----(HIOSTOP) fhi внутренний генератор: 0 - запустить / 1 - остановить

// |+----------(XTSTOP) fsub: 0 - запустить / 1 - остановить

// +-----------(MSTOP) fmx внешний: 0 - запустить / 1 - остановить

while(OSTC < 0xFF) // ожидаем пока содержимое регистра достигнет значения в зависимости

{ // от OSTS (в битах отличается)

__no_operation();

}

// генераторы запустили и подождали

CKC = 0x18; // здесь установили источник для fclk на fmx

CSC = 0x01; // остановили внутренний генератор

PER0=0x81; // 0x0000x0

// | |||| +---- (TAUEN) подать тактовую частоту на массив таймеров

// | |||+------ (SAU0EN) подать тактовую частоту на массив 0 последовательных портов

// | ||+------- (SAU1EN) подать тактовую частоту на массив 1 последовательных портов

// | |+-------- (IIC0EN) подать тактовую частоту на IIC0

// | +--------- (ADCEN) подать тактовую частоту на АЦП

// +----------- (RTCEN) подать тактовую частоту на часы реального времени

// частоты проиницализировали и на устройства подали

// инициализация портов

}

запускаю через симулятор -

смотрю через Profiling (Code Coverage не работает на qb-mini2 поэтому использую этот плагин)

время выполнения заливки чуть больше 433000 тактов

запускаю через отладчик - время выполнения 22600000 тактов

исходя из ассемблерного кода и размера массива я больше склоняюсь к тому что отладчик брешет, а симулятор говорит правду.

А вот как заставить отладчик говорить правду - не пойму...

Может неправильно что настроил в IAR?

Share this post


Link to post
Share on other sites

Прошу прощения у модераторов но добавлю отдельным сообщением.

Да и еще у меня стоит как описано в даташите (в памяти при просмотре располагается как надо)

#pragma location = "OPTBYTE"

__root const unsigned char opbytes[4]={0x00,0xFF,0xFF,0x85};

хотя в CoolIt! стоит следующее (78F1166):

#pragma location = "OPTBYTE"

__root const unsigned char opbytes[3]={0x00,0xFF,0x85};

хотя ведут себя программы одинаково и при таком и при таком расскладе.

Share this post


Link to post
Share on other sites

В режиме отладки, когда идет работа с OCD естественно время выполнения будет больше.

Правда не на порядок.

Уточним, посмотрим


Как советовать, так все чатлане ...

Share this post


Link to post
Share on other sites

Вебинар "Разбор новых уникальных модулей FMAC и CORDIC в микроконтроллерах общего назначения STM32G4" (15.07.2020)

Компания КОМПЭЛ приглашает вас принять участие в вебинаре 15.07.2020, посвященном новому семейству микроконтроллеров общего назначения – STM32G4. Вебинар рассчитан на технических специалистов и тех, кто знаком с основами цифровой обработки сигналов. Мы разберем алгоритм работы CORDIC, а также рассмотрим пример создания цифрового фильтра на базе FMAC.

Зарегистрироваться на вебинар

                     

Новые контроллеры VIPerPLUS для ИП – видео и материалы вебинара STMicroelectronics

Видеозапись и материалы вебинара ST о семействе AC/DC регуляторов VIPerPLUS производства компании STMicroelectronics. Инженерами ST было детально рассмотрено новое семейство микросхем VIPerPLUS со встроенным транзистором, их возможности и топологии применения. Продемонстрировано испытание из лаборатории ST в Праге и моделирование в среде E-DesignSuite.

Подробнее

прошу прощения - панику поднял...

в настройках оборудования к отладчику - есть пункт Time Unit.

он как раз и задает величины по которым отсчитывается время.

так вот для симулятора считаются циклы, а для OCD выводится время в величинах которые мы установили...

у меня стояли наносекунды значит время выполнения процедуры fill в тактах 433233, а по времени 22600000 нс или 22,6 мс (миллисекунды).

все это даже лучше чем я ожидал...

:unsure:

Share this post


Link to post
Share on other sites
                     

Конденсаторы ECWFG от Panasonic: теперь и для высоковольтных применений

Компания Panasonic анонсировала существенное расширение серии пленочных конденсаторов ECWFG: на сегодняшний день диапазон рабочих напряжений серии составляет 630…1100 В (DC). Серия ECWFG поддерживает уникальную функцию микропредохранителей.

Подробнее

Вообще следовало ожидать.

В этом процессоре есть конвеер, и однозначно сказать что столько-то команд=столько-то тактов не всегда можно.

В сложно-запутанной программе с кучей переходов, когда конвеер не работает, что-то подсчитать можно.


Как советовать, так все чатлане ...

Share this post


Link to post
Share on other sites

так а как опытный человек что скажите по поводу OPTION?

почему такая разница?

Share this post


Link to post
Share on other sites

Вечером гляну в даташит.

Там должно быть побитовое описание.

Возможно что различающиеся биты в твоей программе не затрагиваются.


Как советовать, так все чатлане ...

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...

×
×
  • Create New...