|
|
  |
Performance analyzer, Keil c8051F411 |
|
|
|
Sep 29 2009, 15:25
|

Гуру
     
Группа: Свой
Сообщений: 2 399
Регистрация: 10-05-06
Из: г. Новочеркасск
Пользователь №: 16 954

|
Цитата(Hellper @ Sep 29 2009, 17:39)  Если кто-нибудь удачно использовал анализ производительности для 8051 семейство (желательно Silabs), то поясните как грамотно настроить и использовать. Анализ производительности - дело тонкое, и Performance Analyzer, имхо, для этого - вещь бесполезная. Цитата(Hellper @ Sep 29 2009, 17:39)  Счетчик тактов от начала выполнения не нашел, он есть ? Project Workspace -> Regs -> states (ещё sec, если правильно указана тактовая частота). Цитата(Hellper @ Sep 29 2009, 17:39)  Программная отладка не дает возможность управлять периферией мк Конкретизируйте. Что желаете? Что не получается?
|
|
|
|
|
Sep 29 2009, 15:51
|

Местный
  
Группа: Участник
Сообщений: 217
Регистрация: 13-08-07
Из: Санкт-Петербург
Пользователь №: 29 745

|
Цитата(Палыч @ Sep 29 2009, 19:25)  Анализ производительности - дело тонкое, и Performance Analyzer, имхо, для этого - вещь бесполезная. как, посоветуете, анализировать производительность отдельных частей кода( например Ф. )? кроме, корректного написание непосредственно кода, подсчета тиков и прямых рук  . Цитата(Палыч @ Sep 29 2009, 19:25)  Project Workspace -> Regs -> states (ещё sec, если правильно указана тактовая частота). спс. на железе, возможно, посчитать или излишне ? Цитата(Палыч @ Sep 29 2009, 19:25)  Конкретизируйте. Что желаете? Что не получается? допустим, установка флагов прерываний, изменение содержимого регистров(результаты работы периферии).
--------------------
|
|
|
|
|
Sep 29 2009, 23:43
|
Знающий
   
Группа: Свой
Сообщений: 540
Регистрация: 16-08-07
Из: Владивосток
Пользователь №: 29 831

|
Цитата(Hellper @ Sep 30 2009, 01:51)  как, посоветуете, анализировать производительность отдельных частей кода( например Ф. )? кроме, корректного написание непосредственно кода, подсчета тиков и прямых рук допустим, установка флагов прерываний, изменение содержимого регистров(результаты работы периферии). По первому - я анализирую по внешнему пину и осциллографом смотрю. При входе в критическую процедуру перевожу контрольный пин в 1, при выходе в 0. Как правильней - не знаю  По второму - в keil IDE не знаю как, а в родной silabs IDE поменять содержимое регистров и памяти можно в соответствующих окнах и нажатием кнопки "refresh values" (alt-R)
|
|
|
|
|
Sep 30 2009, 05:44
|

Гуру
     
Группа: Свой
Сообщений: 2 399
Регистрация: 10-05-06
Из: г. Новочеркасск
Пользователь №: 16 954

|
Цитата(Hellper @ Sep 29 2009, 18:51)  как, посоветуете, анализировать производительность отдельных частей кода( например Ф. )? кроме, корректного написание непосредственно кода, подсчета тиков и прямых рук. Собственно, так и делаю. Ну, ещё представлять: как часто отдельные участки кода будут выполняться, т.е. имеет ли смысл улучшать отдельные части программы - даст ли это приращение производительности... Цитата(Hellper @ Sep 29 2009, 18:51)  на железе, возможно, посчитать или излишне ? МК разных производителей имеют разное время выполнения команд. Не знаю - насколько Keil это учитывает. Нужно свериться как в симуляторе считается время выполнения - проконтролировать вручную (взяв данные из DS) отдельный кусок. Если результаты в симуляторе и руками - совпали, можно им довериться. В железе время выполнения должно быть таким же. Цитата(Hellper @ Sep 29 2009, 18:51)  допустим, установка флагов прерываний, изменение содержимого регистров(результаты работы периферии). После старта Debug session: Menu -> Peripherals
|
|
|
|
|
Sep 30 2009, 10:18
|

Местный
  
Группа: Участник
Сообщений: 217
Регистрация: 13-08-07
Из: Санкт-Петербург
Пользователь №: 29 745

|
Цитата(Палыч @ Sep 30 2009, 09:44)  После старта Debug session: Menu -> Peripherals ничего не отображается, кроме ресет. если открывать проекты в примерах под другие мк, то доступно. у меня некорректно работает иде или глобальная проблема с silabs? IDE-Version: µVision3 V3.60 Copyright © Keil Elektronik GmbH / Keil Software, Inc. 1995 - 2008 Tool Version Numbers: Toolchain: PK51 Prof. Developers Kit Version: 8.12 Toolchain Path: C:\Keil\C51\BIN\ C Compiler: C51.Exe V8.12 Assembler: A51.Exe V8.01 Linker/Locator: BL51.Exe V6.11 Librarian: LIB51.Exe V4.24 Hex Converter: OH51.Exe V2.6 CPU DLL: S8051.DLL V3.60 Dialog DLL: DCYG.DLL V2.51 Target DLL: BIN\SiC8051F.dll V3.0.0.0 Dialog DLL: TCYG.DLL V2.51
Прикрепленные файлы
1.bmp ( 63.49 килобайт )
Кол-во скачиваний: 13
--------------------
|
|
|
|
|
Sep 30 2009, 11:22
|

Местный
  
Группа: Участник
Сообщений: 235
Регистрация: 28-01-05
Из: Санкт-Петербург
Пользователь №: 2 276

|
Цитата(Hellper @ Sep 30 2009, 14:18)  ничего не отображается, кроме ресет. если открывать проекты в примерах под другие мк, то доступно. у меня некорректно работает иде или глобальная проблема с silabs? Добрый день. Было подобное, точно не вспомню как справлялся, но помоему: 1. переустановил dll под uVision 2 и 3 (в вашем случае вроде как последняя уже) 2. попробуйте в uVision2 со свежей установленной dll'кой (под uVision 2) 3. выбрать похожий по ресурсам контроллер в Keil.
--------------------
Удачи.
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|