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

 
 
 
Reply to this topicStart new topic
> C/C++. Как сделать запись только словами?
Олег Гаврильченк...
сообщение Oct 19 2015, 15:13
Сообщение #1


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

Группа: Участник
Сообщений: 177
Регистрация: 10-02-15
Пользователь №: 85 052



Делается система на Xilinx, Kintex-7. Используется МП система на Microblaze. Шина AXI4-lite. К этой шине подключена периферия(моя), которая допускает запись только по словам 32 бита. Если попробовать записать туда по 8 или 16 бит, возникнет ошибка(периферия не обрабатывает Byte Enable). Для компиляции используется GNU C Microblaze. Как правильно в программе описать доступ к этому пространству памяти, чтобы компилятор знал, что писать туда можно только по 32 бита зараз?
Go to the top of the page
 
+Quote Post
smalcom
сообщение Oct 19 2015, 15:24
Сообщение #2


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

Группа: Свой
Сообщений: 1 292
Регистрация: 26-06-07
Пользователь №: 28 718



использовать 32-х битный тип данных
Go to the top of the page
 
+Quote Post
Олег Гаврильченк...
сообщение Oct 19 2015, 15:42
Сообщение #3


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

Группа: Участник
Сообщений: 177
Регистрация: 10-02-15
Пользователь №: 85 052



Цитата(smalcom @ Oct 19 2015, 18:24) *
использовать 32-х битный тип данных


В смысле, если я определяю
CODE
uint32_t *register = (0x44000000);

то гарантировано обращение к нему будет только сразу словом?

Интересно, а в каком стандарте это описано?
Go to the top of the page
 
+Quote Post
zltigo
сообщение Oct 19 2015, 15:48
Сообщение #4


Гуру
******

Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244



QUOTE (Олег Гаврильченко @ Oct 19 2015, 18:42) *
Интересно, а в каком стандарте это описано?

Интересно, а с какого бодуна может быть на 32bit шине 32bit контроллера как-то по другому?


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 13th July 2025 - 06:43
Рейтинг@Mail.ru


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