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

 
 
> 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
Ответов
Methane
сообщение Feb 9 2009, 11:16
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 3 615
Регистрация: 12-01-09
Из: США, Главное разведовательное управление
Пользователь №: 43 230



Цитата(AndriAno @ Feb 9 2009, 13:12) *
Что посоветуете??

Отключить стартап. Как именно вы компилируете и собираете программу?
Go to the top of the page
 
+Quote Post
AndriAno
сообщение Feb 9 2009, 12:07
Сообщение #3


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

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



Цитата(Methane @ Feb 9 2009, 14:16) *
Отключить стартап. Как именно вы компилируете и собираете программу?


В SOPC Builder создаю систему, получаю .sopc файл
В NIOS II создаю новый проект с указанием этого файла.

Затем создается С/С++ application(пустую папку создать иначе не дает),
создаю source folder , и в ней prject_asm.s
в нем объявляю .global main

как я понимаю main вызывается из alt_main()
Go to the top of the page
 
+Quote Post
Methane
сообщение Feb 9 2009, 12:22
Сообщение #4


Гуру
******

Группа: Свой
Сообщений: 3 615
Регистрация: 12-01-09
Из: США, Главное разведовательное управление
Пользователь №: 43 230



А ручную, из командной строки?
Посмотрите ключи для gcc --nostdlib --nostartfiles --nodefaultlib итд. Это для gcc

Сообщение отредактировал Omen_13 - Feb 15 2009, 19:21
Go to the top of the page
 
+Quote Post
AndriAno
сообщение Feb 9 2009, 12:40
Сообщение #5


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

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



Цитата(Methane @ Feb 9 2009, 15:22) *
А ручную, из командной строки?


А если без командной строки??
Существует возможность???
gcc как я понимаю ниосовский??
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- AndriAno   ASM для NIOS2   Feb 9 2009, 11:12
|- - 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
- - AndriAno   Спасибо всем за померную помощь. У меня теперь воз...   Feb 13 2009, 11:23
|- - Stewart Little   Цитата(AndriAno @ Feb 13 2009, 14:23) нем...   Feb 13 2009, 12:19
|- - AndriAno   Цитата(Stewart Little @ Feb 13 2009, 15:1...   Feb 16 2009, 04:12
|- - 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
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 22nd July 2025 - 17:53
Рейтинг@Mail.ru


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