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

 
 
 
Reply to this topicStart new topic
> Запись байта в DDR3, Правила адресации и маскирования при записи одного или нескольких байт
svedach
сообщение Mar 7 2012, 17:12
Сообщение #1


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

Группа: Свой
Сообщений: 135
Регистрация: 8-01-12
Из: Беларусь
Пользователь №: 69 226



Использую Spartan-6 и встроенный MCB. Имеется канал чтения/записи с шиной данных 32 бита. Иногда нужно записать 1 байт по определенному адресу. Таких операций поток - читается байт и записывается по случайному адресу. Подскажите, где найти информацию по правильному маскированию.
Go to the top of the page
 
+Quote Post
DmitryR
сообщение Mar 9 2012, 14:01
Сообщение #2


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

Группа: Свой
Сообщений: 1 535
Регистрация: 20-02-05
Из: Siegen
Пользователь №: 2 770



В документации по MCB. Однако при случайной записи байт в DRAM вы можете быть неожиданно очень разочарованы скоростью.
Go to the top of the page
 
+Quote Post
svedach
сообщение Mar 9 2012, 14:05
Сообщение #3


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

Группа: Свой
Сообщений: 135
Регистрация: 8-01-12
Из: Беларусь
Пользователь №: 69 226



Документацию читал. Интересен опыт бывалых по формированию маски при случайных адресе и длине данных (первое слово, "внутренние" маска 4'b0000, и последнее слово)...
Go to the top of the page
 
+Quote Post
DmitryR
сообщение Mar 9 2012, 14:11
Сообщение #4


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

Группа: Свой
Сообщений: 1 535
Регистрация: 20-02-05
Из: Siegen
Пользователь №: 2 770



Я честно говоря не понимаю, причем тут советы бывалых. На мой взгляд нет двух вариантов: вы на pX_wr_data ставите данные, на pX_wr_mask - всегда и для каждого слова данных маску байт.
Go to the top of the page
 
+Quote Post
svedach
сообщение Mar 10 2012, 06:47
Сообщение #5


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

Группа: Свой
Сообщений: 135
Регистрация: 8-01-12
Из: Беларусь
Пользователь №: 69 226



Куда и что ставить понятно. Как сформировать маску для адреса, например, 3 и длины данных (количества БАЙТ) 7??? Первое слово должно записаться в FIFO с маской 4'b0111, второе с маской 4'b0000, а третье 4'b1100....
Go to the top of the page
 
+Quote Post
des00
сообщение Mar 10 2012, 09:55
Сообщение #6


Вечный ламер
******

Группа: Модераторы
Сообщений: 7 248
Регистрация: 18-03-05
Из: Томск
Пользователь №: 3 453



Цитата(svedach @ Mar 10 2012, 01:47) *
Куда и что ставить понятно. Как сформировать маску для адреса, например, 3 и длины данных (количества БАЙТ) 7??? Первое слово должно записаться в FIFO с маской 4'b0111, второе с маской 4'b0000, а третье 4'b1100....

бурст рожаете. начальный адресс (3 % 4), маска первого слова 0111, маска среднего слова 0000, последнего слова 1100. итого 7 байт.


--------------------
Go to the top of the page
 
+Quote Post
DmitryR
сообщение Mar 13 2012, 07:55
Сообщение #7


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

Группа: Свой
Сообщений: 1 535
Регистрация: 20-02-05
Из: Siegen
Пользователь №: 2 770



Цитата(svedach @ Mar 10 2012, 10:47) *
и длины данных (количества БАЙТ) 7???

Длина посылки контроллеру передается в словах. Ему все равно, сколько у вас там байт - он словами оперирует.
Go to the top of the page
 
+Quote Post

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

 


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


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