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

 
 
> К писавшим собственные драйвера для системы на Microblaze
lim
сообщение Jul 31 2008, 14:27
Сообщение #1


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

Группа: Участник
Сообщений: 101
Регистрация: 27-05-05
Пользователь №: 5 486



Сейчас пишу драйвер для SPI интерфейса ( в виде класса на С++).

В документации на PCORE, например, сказано следующее:

All the SPI and INTR registers are 32-bit wide. The XPS SPI IP Core supports only word access to all SPI and INTR register modules.

Особенно обратите внимание на слово ONLY !

Далее смотрю Си-шный драйвер SPI, предоставляемый Xilinx, где приведено следующее:

/*
* Register offsets for the SPI. Each register except the CR & SSR is 8 bits,
* so add 3 to the word-offset to get the LSB (in a big-endian system).
*/
#define XSP_CR_OFFSET (XSP_REGISTER_OFFSET + 0x2) /* 16-bit Control */
#define XSP_SR_OFFSET (XSP_REGISTER_OFFSET + 0x4 + 3) /* Status */
#define XSP_DTR_OFFSET (XSP_REGISTER_OFFSET + 0x8 + 3) /* Data transmit */
#define XSP_DRR_OFFSET (XSP_REGISTER_OFFSET + 0xC + 3) /* Data receive */
#define XSP_SSR_OFFSET (XSP_REGISTER_OFFSET + 0x10) /* 32-bit slave select */
#define XSP_TFO_OFFSET (XSP_REGISTER_OFFSET + 0x14 + 3) /* Tx FIFO occupancy */
#define XSP_RFO_OFFSET (XSP_REGISTER_OFFSET + 0x18 + 3) /* Rx FIFO occupancy */

Ну и дальше в драйвере применяется доступ к этим регистрам по Byte, Half-Word, Word.

Пока я решил полагаться всё-таки на сам драйвер, нежели на слова, приведенные в описании PCORE.

Вопрос есть ещё такой. Скажем очень часто в некоторых 32-битных регистрах масса бит не используется ( Reserved ). Будет ли какая либо ошибочная ситуация ( типа Bus Transaction Error),
если писать ( или читать ) в такие регистры целым словом WORD. Или же надо в каждом конкретном случае учитывать доступ по Byte, Half-Word, Word.
Я пока склоняюсь к тому, что ничего страшного не произойдёт при 32-бит доступе, но хотелось бы
услышать подтверждение от знатоков.

С Уважением,
Игорь
Go to the top of the page
 
+Quote Post



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

 


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


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