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

 
 
> NIOS II, программирование ниос2 на СИ
x66
сообщение Jan 20 2015, 06:52
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 65
Регистрация: 7-05-10
Пользователь №: 57 122



Здравствуйте, пишу программу на Си в ниос2 эклипс. Проект был собран в qsys, там имеется ниос2, DDR2, PIO, on-chip memory2 и т.д. Возник вопрос: как на языке Си обратиться например именно к выводу PIO или к шине адреса DDR2? Вставил несколько строк, но не знаю правильно ли сделал
ALT_MODULE_CLASS_pio_in (PIO_IN_BASE, data_inp);
ALT_MODULE_CLASS_pio_out_on (PIO_OUT_ON_BASE, data_out_on);
ALT_MODULE_CLASS_pio_out (PIO_OUT_BASE, data_out);
ALT_MODULE_CLASS_onchip_memory2_0 (ONCHIP_MEMORY2_0_BASE, on_chip);
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
x66
сообщение Jan 20 2015, 10:45
Сообщение #2


Участник
*

Группа: Участник
Сообщений: 65
Регистрация: 7-05-10
Пользователь №: 57 122



Когда смотрел примеры, на сайте альтеры нашел файл где была программа с использованием указателей. натыкался на другие примеры там с использованием макросов было. Это меня и сбивало с толку, как я понял это два способа работы с одним и тем же
Go to the top of the page
 
+Quote Post
doom13
сообщение Jan 20 2015, 10:53
Сообщение #3


Профессионал
*****

Группа: Свой
Сообщений: 1 404
Регистрация: 11-03-11
Из: Минск, Беларусь
Пользователь №: 63 539



Цитата(x66 @ Jan 20 2015, 13:45) *
Когда смотрел примеры, на сайте альтеры нашел файл где была программа с использованием указателей. натыкался на другие примеры там с использованием макросов было. Это меня и сбивало с толку, как я понял это два способа работы с одним и тем же

Сомневаюсь, что Вы могли найти примеры от Alter-ы с использованием указателей для обращения к регистрам периферии, тут всё только через макросы (возможно какой-то очень "особенный" пример для ниоса без кэша, но очень маловероятно). Для работы с памятью (On-Chip, SDRAM, DDR и т.д.) указатели и используются.
Go to the top of the page
 
+Quote Post
x66
сообщение Jan 20 2015, 11:00
Сообщение #4


Участник
*

Группа: Участник
Сообщений: 65
Регистрация: 7-05-10
Пользователь №: 57 122



Цитата(doom13 @ Jan 20 2015, 13:53) *
Сомневаюсь, что Вы могли найти примеры от Alter-ы с использованием указателей для обращения к регистрам периферии, тут всё только через макросы (возможно какой-то очень "особенный" пример для ниоса без кэша, но очень маловероятно). Для работы с памятью (On-Chip, SDRAM, DDR и т.д.) указатели и используются.


вот код примера

int to_hex(char* pkt)
{
int value[8];
int value1;
int q;
for (q=0; q <= 7; q++)
{
value[q] = (pkt[q] > 0x39) ? (pkt[q] - 0x37) : (pkt[q] - 0x30);
if (q == 0)
value1 = (0 + value[q]);
else
value1 = ((value[q-1] << 4) + value[q]);
}
return value1;
}

int main()
{
unsigned long *DDR_address; //long is 32 bits.
int addr;
int datar;
int ddr_data_out;

char packet[32];
DDR_address = (unsigned long *)0x2000000; //make non-cache
iprintf("DDR test installed \n");
while (1)
{

gets(packet);

switch(packet[0])
{
case 'B': // write operation
addr = to_hex(&packet[1]);
datar = to_hex(&packet[9]);
DDR_address[addr] = datar;
iprintf("Written %08x to address %08x \n", datar, addr);
break;

case 'C': // Read operation
addr = to_hex(&packet[1]);
ddr_data_out = DDR_address[addr];
iprintf("Read %08x from address %08x \n", ddr_data_out, addr);
break;

default:
iprintf("Error: Unexpected command. Switch was - %C \n",packet[0]);
break;
}
}

return 0;
}
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- x66   NIOS II   Jan 20 2015, 06:52
- - doom13   Цитата(x66 @ Jan 20 2015, 09:52) Здравств...   Jan 20 2015, 07:55
|- - x66   Цитата(doom13 @ Jan 20 2015, 10:55) Смотр...   Jan 20 2015, 08:24
|- - doom13   Цитата(x66 @ Jan 20 2015, 11:24) Все что ...   Jan 20 2015, 08:36
- - Golikov A.   DDR2 - это не просто статичная память, даже когда...   Jan 20 2015, 08:38
- - doom13   Обманул Вас, для DDR2 как и для On-Chip Memory не ...   Jan 20 2015, 08:49
- - x66   получается, что я могу работать только с адресами ...   Jan 20 2015, 09:07
|- - doom13   Цитата(x66 @ Jan 20 2015, 12:07) altera_a...   Jan 20 2015, 09:09
||- - x66   Цитата(doom13 @ Jan 20 2015, 12:09) Да, т...   Jan 20 2015, 09:14
||- - x66   Цитата(doom13 @ Jan 20 2015, 12:09) Да, т...   Jan 20 2015, 09:19
||- - doom13   Цитата(x66 @ Jan 20 2015, 12:19) В моем с...   Jan 20 2015, 09:26
|- - doom13   Цитата(x66 @ Jan 20 2015, 12:07) получает...   Jan 20 2015, 09:16
|- - x66   Цитата(doom13 @ Jan 20 2015, 12:16) Не со...   Jan 20 2015, 09:22
|- - doom13   Цитата(x66 @ Jan 20 2015, 12:22) Имеется ...   Jan 20 2015, 09:42
|- - x66   Цитата(doom13 @ Jan 20 2015, 12:42) Нет, ...   Jan 20 2015, 09:57
- - Golikov A.   С DDR можно работать как с памятью вообще Для этог...   Jan 20 2015, 09:21
- - Golikov A.   нет потому что нужно адрес не int addr_on_chip=0x...   Jan 20 2015, 09:24
|- - x66   Цитата(Golikov A. @ Jan 20 2015, 12:24) н...   Jan 20 2015, 09:36
- - Golikov A.   имеет ввиду тоже что и я... просто ответил позже ...   Jan 20 2015, 09:59
|- - doom13   Цитата(Golikov A. @ Jan 20 2015, 12:59) В...   Jan 20 2015, 10:19
- - serjj   ЦитатаТолько вот в случае ниоса обращение к регист...   Jan 20 2015, 10:26
- - Golikov A.   Ну прекратите сбивать человека ну возьмите вы свои...   Jan 20 2015, 10:59
|- - doom13   Цитата(Golikov A. @ Jan 20 2015, 13:59) Н...   Jan 20 2015, 11:38
- - krux   http://www.altera.com/literature/hb/nios2/n2sw_nii...   Jan 20 2015, 11:00
- - Golikov A.   ох... ЦитатаПервый код будет работать, а второй не...   Jan 20 2015, 11:51
|- - doom13   Цитата(Golikov A. @ Jan 20 2015, 14:51) а...   Jan 20 2015, 11:55
- - Golikov A.   раскройте вы макрос и поглядите что в нем, я не сп...   Jan 20 2015, 12:01
|- - doom13   Цитата(Golikov A. @ Jan 20 2015, 14:58) ...   Jan 20 2015, 12:24
- - Golikov A.   ну пипец ваша альтера.... этож надо было придумат...   Jan 20 2015, 12:28
|- - doom13   Цитата(Golikov A. @ Jan 20 2015, 15:27) н...   Jan 20 2015, 12:30
- - x66   Вот перевод http://www.naliwator.narod.ru/N2swHb9...   Jan 20 2015, 12:30
- - Golikov A.   Цитатат.е. вся дискуссия была для того, чтобы Вы с...   Jan 20 2015, 13:12
|- - doom13   Цитата(Golikov A. @ Jan 20 2015, 16:12) я...   Jan 20 2015, 13:41
- - Golikov A.   не надо передергивать я говорил что никакой магии ...   Jan 20 2015, 16:28
- - x66   Возник еще такой вопрос: во время переключения DDR...   Jan 23 2015, 07:47
|- - doom13   Цитата(x66 @ Jan 23 2015, 10:47) Возник е...   Jan 23 2015, 08:39
|- - x66   Цитата(doom13 @ Jan 23 2015, 11:39) Для п...   Jan 23 2015, 08:50
|- - doom13   Цитата(x66 @ Jan 23 2015, 11:50) я планир...   Jan 23 2015, 08:54
|- - x66   Цитата(doom13 @ Jan 23 2015, 11:54) Смотр...   Jan 23 2015, 09:02
|- - doom13   Цитата(x66 @ Jan 23 2015, 12:02) Проблема...   Jan 23 2015, 11:16
- - Golikov A.   Вам FIFO надо. Данные поступают в FIFO а оттуда ...   Jan 23 2015, 11:59
|- - doom13   Цитата(Golikov A. @ Jan 23 2015, 14:59) О...   Jan 23 2015, 12:03
|- - x66   Цитата(Golikov A. @ Jan 23 2015, 14:59) В...   Jan 28 2015, 06:26
|- - doom13   Цитата(x66 @ Jan 28 2015, 09:26) ФИФО мак...   Jan 28 2015, 06:59
|- - x66   Цитата(doom13 @ Jan 28 2015, 09:59) Что з...   Jan 28 2015, 07:08
|- - doom13   Цитата(x66 @ Jan 28 2015, 10:08) На входе...   Jan 28 2015, 07:26
|- - x66   Цитата(doom13 @ Jan 28 2015, 10:26) А поя...   Jan 28 2015, 08:09
|- - doom13   Цитата(x66 @ Jan 28 2015, 11:09) Из Ваши...   Jan 28 2015, 08:22
|- - x66   Цитата(x66 @ Jan 28 2015, 11:09) Из Ваших...   Jan 28 2015, 08:31
|- - doom13   Цитата(x66 @ Jan 28 2015, 11:31) Чтение п...   Jan 28 2015, 08:33
|- - x66   Цитата(doom13 @ Jan 28 2015, 11:33) Т.е. ...   Jan 28 2015, 08:35
|- - doom13   Цитата(x66 @ Jan 28 2015, 11:35) нет, там...   Jan 28 2015, 08:58
|- - x66   Цитата(doom13 @ Jan 28 2015, 11:58) Что-т...   Jan 28 2015, 09:03
|- - x66   Цитата(doom13 @ Jan 28 2015, 11:58) Уто...   Jan 28 2015, 09:13
- - Golikov A.   Чего то мне говорит что начиная с ддр2, уже не мож...   Jan 23 2015, 17:44
|- - doom13   Цитата(Golikov A. @ Jan 23 2015, 20:44) Ч...   Jan 23 2015, 19:27
- - Golikov A.   смело...   Jan 23 2015, 21:48
|- - doom13   Цитата(Golikov A. @ Jan 24 2015, 00:48) с...   Jan 24 2015, 12:03
- - serjj   Xilinx MPMC И у Xilinx вроде давно уже есть контро...   Jan 26 2015, 08:02
|- - doom13   Цитата(serjj @ Jan 26 2015, 11:02) Xilinx...   Jan 26 2015, 08:48
- - Golikov A.   В целом конечно я не прав. Все же вопрос частоты. ...   Jan 26 2015, 09:26
|- - doom13   Цитата(Golikov A. @ Jan 26 2015, 12:26) В...   Jan 26 2015, 10:24
- - Golikov A.   БЛИН! Ну пипец эта ваша альтера - это так что...   Jan 28 2015, 08:59
|- - doom13   Цитата(Golikov A. @ Jan 28 2015, 11:59) Б...   Jan 28 2015, 09:11
|- - doom13   Цитата(Golikov A. @ Jan 28 2015, 11:59) Б...   Jan 28 2015, 10:32
|- - x66   Цитата(doom13 @ Jan 28 2015, 13:17) В Qsy...   Jan 28 2015, 10:37
|- - doom13   Цитата(x66 @ Jan 28 2015, 13:37) А что ес...   Jan 28 2015, 10:54
|- - x66   Цитата(doom13 @ Jan 28 2015, 13:54) Вы мо...   Jan 28 2015, 11:05
|- - doom13   Цитата(x66 @ Jan 28 2015, 13:57) Можете п...   Jan 28 2015, 11:06
- - Golikov A.   ЦитатаЦелых два дня и две ночи Вы не спали - думал...   Jan 28 2015, 10:35
|- - doom13   Цитата(Golikov A. @ Jan 28 2015, 13:35) П...   Jan 28 2015, 10:47
- - Golikov A.   ЦитатаУточнил кое какую деталь: пользователь нажим...   Jan 28 2015, 10:45
|- - x66   Цитата(Golikov A. @ Jan 28 2015, 13:45) У...   Jan 28 2015, 10:53
- - Golikov A.   ЦитатаО каких 60 МГц говорили Вы - Вам виднее. О с...   Jan 28 2015, 11:12
|- - x66   Цитата(Golikov A. @ Jan 28 2015, 14:12) В...   Jan 28 2015, 11:34
|- - doom13   Цитата(Golikov A. @ Jan 28 2015, 14:12) О...   Jan 28 2015, 11:48
|- - Timmy   Цитата(Golikov A. @ Jan 28 2015, 14:12) В...   Jan 28 2015, 11:50
|- - doom13   Цитата(Timmy @ Jan 28 2015, 14:50) Остало...   Jan 28 2015, 12:02
|- - x66   Цитата(doom13 @ Jan 28 2015, 15:02) В DDR...   Jan 28 2015, 13:44
- - Golikov A.   Кстати а какая частота DDR2?   Jan 28 2015, 12:23
|- - doom13   Цитата(Golikov A. @ Jan 28 2015, 15:23) К...   Jan 28 2015, 12:30
|- - x66   Цитата(doom13 @ Jan 28 2015, 15:30) Это в...   Jan 28 2015, 12:38
- - Golikov A.   200 МГц Я ошибаюсь или пропускная способность так...   Jan 28 2015, 12:39
|- - x66   Цитата(Golikov A. @ Jan 28 2015, 15:39) 2...   Jan 28 2015, 13:02
|- - doom13   Цитата(x66 @ Jan 28 2015, 16:02) Цитата(G...   Jan 28 2015, 13:22
- - Golikov A.   а... 3.2 Гигабита... А с учетом необходимой задер...   Jan 28 2015, 13:39
|- - doom13   Цитата(Golikov A. @ Jan 28 2015, 16:39) а...   Jan 28 2015, 14:34
- - Golikov A.   нет. Надо просто линкеру указать что у него есть т...   Jan 28 2015, 13:54
|- - x66   Цитата(Golikov A. @ Jan 28 2015, 16:54) н...   Jan 28 2015, 14:02
|- - doom13   Цитата(x66 @ Jan 28 2015, 17:02) Кстати, ...   Jan 28 2015, 14:14
|- - x66   Цитата(doom13 @ Jan 28 2015, 17:14) Этого...   Jan 28 2015, 14:22
- - Golikov A.   Получается что я ошибся... мне только не понятно ч...   Jan 28 2015, 14:34
|- - doom13   Цитата(Golikov A. @ Jan 28 2015, 17:34) Е...   Jan 28 2015, 14:52
- - Golikov A.   Из полезного вот что надо сделать надо ниосом в па...   Jan 28 2015, 15:42
|- - doom13   Цитата(Golikov A. @ Jan 28 2015, 18:42) К...   Jan 28 2015, 16:55
- - Golikov A.   А сколько тактов доступ к данным по шине Avalon? Н...   Jan 28 2015, 17:20
- - doom13   Цитата(Golikov A. @ Jan 28 2015, 20:20) А...   Jan 28 2015, 18:25
2 страниц V   1 2 >


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

 


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


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