реклама на сайте
подробности

 
 
> ASM для NIOS2, для начинающих
AndriAno
сообщение Feb 9 2009, 11:12
Сообщение #1


Частый гость
**

Группа: Свой
Сообщений: 103
Регистрация: 17-03-06
Из: Томск
Пользователь №: 15 319



Начинаю разбираться с NIOS2
Создал несколько простых проектов в Срр
поработал с таймерами, шинами, обработкой прерываний.
Возникло несколько вопросов к знатокам:
  • Cистема к моему довольно незначительному коду добавляет свой весьма внушительный стартап код, из-за которого прошивка не помещается в onchip memory(пришлось .rodata писать в EPCS). Есть ли возможность уменьшить или совсем убрать этот служебный код?
  • Для ускорения работы системы хочется писать программу на ASM. Нашел список инструкций, вроде бы разобрался с использованием прерываний(через custom instructions). Включил в проект файл с кодом, но получил следующее: alt_main.c:161: undefined reference to `main'

Что посоветуете??
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
AndriAno
сообщение Feb 13 2009, 11:23
Сообщение #2


Частый гость
**

Группа: Свой
Сообщений: 103
Регистрация: 17-03-06
Из: Томск
Пользователь №: 15 319



Спасибо всем за померную помощь.
У меня теперь возникла еще проблема:
немогу написать обработчик прерывания, может ктонибудь выложить простенький обработчик.
А также использование custom_instruction.

Заранее спасибо
Go to the top of the page
 
+Quote Post
Stewart Little
сообщение Feb 13 2009, 12:19
Сообщение #3


Лентяй
******

Группа: Свой
Сообщений: 2 203
Регистрация: 11-10-04
Из: Санкт-Петербург
Пользователь №: 843



Цитата(AndriAno @ Feb 13 2009, 14:23) *
немогу написать обработчик прерывания, может ктонибудь выложить простенький обработчик.
А также использование custom_instruction.

Изучайте первоисточники :
Exception Handling
Nios II Custom Instruction User Guide
Design Example


--------------------
Чтобы слова не расходились с делом, нужно молчать и ничего не делать...
Go to the top of the page
 
+Quote Post
AndriAno
сообщение Feb 16 2009, 04:12
Сообщение #4


Частый гость
**

Группа: Свой
Сообщений: 103
Регистрация: 17-03-06
Из: Томск
Пользователь №: 15 319



Цитата(Stewart Little @ Feb 13 2009, 15:19) *
Изучайте первоисточники :
Exception Handling


Ненашел ни строчки упоминания, выполнения прерывания напрямую из ASM, обработчик из Срр у самого уже давно работает.
А вот запись наподобие этой работать отказывается.

Код
movui    r4,0
movui    r5, 0xffff
wrctl    status, r5
wrctl    ienable,r5


Затем инициализируем таймер
Код
movui    r4,0
    movui    r5, 0x00
    stwio    r5, timer_base(r4)

    
    movui    r4,8
    movui    r5, 0x00ff
    stwio    r5, timer_base(r4)
    
    movui    r4,4
    movui    r5, 0x07
    stwio    r5, timer_base(r4)


После всего этого взводиться
ipending 0x02

По идее он должен входить в исключение.
Описан следующий обработчик:
Код
globl alt_exception    
.globl alt_irq_entry
alt_irq_entry:

{исполняемый код}


но вот както это код не исполняется

Поэтому БОЛЬШАЯ ПРОСЬБА может ктонибудь выложить рабочий код (хотябы рыба), потому как документация это очень хорошо, но она несколько не полная с точки зрения разработки на ассемблере.
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- AndriAno   ASM для NIOS2   Feb 9 2009, 11:12
- - Methane   Цитата(AndriAno @ Feb 9 2009, 13:12) Что ...   Feb 9 2009, 11:16
|- - AndriAno   Цитата(Methane @ Feb 9 2009, 14:16) Отклю...   Feb 9 2009, 12:07
|- - Methane   А ручную, из командной строки? Посмотрите ключи д...   Feb 9 2009, 12:22
|- - AndriAno   Цитата(Methane @ Feb 9 2009, 15:22) А руч...   Feb 9 2009, 12:40
|- - Stewart Little   Цитата(AndriAno @ Feb 9 2009, 15:40) А ес...   Feb 10 2009, 09:03
||- - AndriAno   Цитата(Stewart Little @ Feb 10 2009, 13:0...   Feb 10 2009, 10:20
|- - Methane   Цитата(AndriAno @ Feb 9 2009, 14:40) А ес...   Feb 10 2009, 10:33
|- - AndriAno   Цитата(Methane @ Feb 10 2009, 14:33) Я го...   Feb 10 2009, 11:06
|- - Methane   Цитата(AndriAno @ Feb 10 2009, 13:06) В т...   Feb 10 2009, 11:18
- - vadimuzzz   в настройках линкера есть полезная опция "ген...   Feb 10 2009, 12:30
|- - id_gene   Цитата(AndriAno @ Feb 16 2009, 07:12) Ну ...   Feb 17 2009, 08:13
|- - AndriAno   Цитата(id_gene @ Feb 17 2009, 12:13) Цита...   Mar 2 2009, 04:03
- - PeterD   Я вот собрал свой проект на ASM вот по этому приме...   Mar 18 2009, 08:48
|- - PeterD   http://www.ict.kth.se/courses/IS1200/2008-...etup/...   Mar 18 2009, 11:33
- - PeterD   Господа подозреваю что Я один здесь такой тупой но...   Mar 24 2009, 11:47


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 23rd July 2025 - 05:56
Рейтинг@Mail.ru


Страница сгенерированна за 0.01418 секунд с 7
ELECTRONIX ©2004-2016