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

 
 
 
Reply to this topicStart new topic
> Проблемы с MIG Spartan6
maxics
сообщение Oct 28 2015, 14:39
Сообщение #1


Местный
***

Группа: Участник
Сообщений: 229
Регистрация: 16-11-09
Пользователь №: 53 649



Учусь работать с MIG для Spartan 6. DDR 2 ГБ, x16, row 14, col 10, bank 3. Научился записывать и читать из памяти. Непонятным остается один вопрос... Адрес для обращения к памяти (29 downto 0), т.е. 30 бит. Каждая ячейка адреса содержит 1 байт. Если посчитать, то это соответствует только 1 Гб памяти. Куда делся еще 1 Гб? Помогите разобраться в этом вопросе...
Go to the top of the page
 
+Quote Post
Amurak
сообщение Oct 28 2015, 15:23
Сообщение #2


Местный
***

Группа: Свой
Сообщений: 211
Регистрация: 18-11-12
Пользователь №: 74 459



А точно каждая ячейка содержит 1 байт? х16 же, не?
Go to the top of the page
 
+Quote Post
maxics
сообщение Oct 28 2015, 15:32
Сообщение #3


Местный
***

Группа: Участник
Сообщений: 229
Регистрация: 16-11-09
Пользователь №: 53 649



Цитата(Amurak @ Oct 28 2015, 18:23) *
А точно каждая ячейка содержит 1 байт? х16 же, не?


Использую ширину порта 32 бит. Исходя из ug388: table 4-2; 4-3 видно, что каждая ячейка содержит 1 байт. Или я чего-то не так понимаю?
Эскизы прикрепленных изображений
Прикрепленное изображение
 
Go to the top of the page
 
+Quote Post
maxics
сообщение Oct 29 2015, 09:01
Сообщение #4


Местный
***

Группа: Участник
Сообщений: 229
Регистрация: 16-11-09
Пользователь №: 53 649



Что, никто с MIG не работал???

Сообщение отредактировал maxics - Oct 29 2015, 09:01
Go to the top of the page
 
+Quote Post
Amurak
сообщение Oct 29 2015, 14:37
Сообщение #5


Местный
***

Группа: Свой
Сообщений: 211
Регистрация: 18-11-12
Пользователь №: 74 459



Цитата(maxics @ Oct 28 2015, 18:32) *
Использую ширину порта 32 бит. Исходя из ug388: table 4-2; 4-3 видно, что каждая ячейка содержит 1 байт.

Не знаю, откуда вы взяли что из таблиц это видно.

Шина данных между контроллером и памятью 2 байта. Поэтому условно на каждый 30 битный адрес приходится 2 байта данных.
Go to the top of the page
 
+Quote Post
Andrew Su
сообщение Oct 29 2015, 16:13
Сообщение #6


Местный
***

Группа: Свой
Сообщений: 301
Регистрация: 18-09-07
Из: Украина
Пользователь №: 30 647



Цитата(maxics @ Oct 29 2015, 11:01) *
Что, никто с MIG не работал???

Добрый день.
В UG388 в Features and Benefits написано:
Memory densities up to 4 Gb
В таблице Table 4-5: Memory Device Mapping
разрисовано как распределяются адреса.
Если я не ошибаюсь, то 4 Gb это не 4 Гигабайта, а 4 Гигабита
(https://ru.wikipedia.org/wiki/GB_%28%D0%B7%D0%BD%D0%B0%D1%87%D0%B5%D0%BD%D0%B8%D1%8F%29)
Т.е. контроллер памяти поддерживает максимум 512Мбайт для DD3 и 256Мбайт для DDR2.
Возможно, я ошибаюсь.
Go to the top of the page
 
+Quote Post
maxics
сообщение Oct 29 2015, 19:16
Сообщение #7


Местный
***

Группа: Участник
Сообщений: 229
Регистрация: 16-11-09
Пользователь №: 53 649



Цитата(Amurak @ Oct 29 2015, 17:37) *
Не знаю, откуда вы взяли что из таблиц это видно.

Шина данных между контроллером и памятью 2 байта. Поэтому условно на каждый 30 битный адрес приходится 2 байта данных.


В таблице 4-3 показано как укладываются данные. 32 бита в адрес 0x00, следующие 32 бита в адрес 0x04 и т.д. 32/4=8. В одном адресе 8 бит! Это подтверждается экспериментом с памятью. Шина памяти между контроллером и памятью это физический уровень, а здесь контроллер с фифо, разрядность может быть другой.
Go to the top of the page
 
+Quote Post
Amurak
сообщение Oct 30 2015, 06:30
Сообщение #8


Местный
***

Группа: Свой
Сообщений: 211
Регистрация: 18-11-12
Пользователь №: 74 459



Чет меня переклинило.

Andrew Su прав. 2 Gb - это 2 гигабита. И для адресации вообще используется 28 бит.
Go to the top of the page
 
+Quote Post
maxics
сообщение Oct 30 2015, 06:44
Сообщение #9


Местный
***

Группа: Участник
Сообщений: 229
Регистрация: 16-11-09
Пользователь №: 53 649



Цитата(Amurak @ Oct 30 2015, 09:30) *
Чет меня переклинило.

Andrew Su прав. 2 Gb - это 2 гигабита. И для адресации вообще используется 28 бит.


Память MT47H128M16 – 16 Meg x 16 x 8 banks, т.е 2 Гигабайта.
Правильно-ли я понимаю, что контроллер использует только 256 Мегабайт от всей памяти? Как использовать всю память?
Go to the top of the page
 
+Quote Post
Amurak
сообщение Oct 30 2015, 07:20
Сообщение #10


Местный
***

Группа: Свой
Сообщений: 211
Регистрация: 18-11-12
Пользователь №: 74 459



Цитата(maxics @ Oct 30 2015, 09:44) *
Память MT47H128M16 – 16 Meg x 16 x 8 banks, т.е 2 Гигабайта.


16 Meg - это 16 мегабит, а не мегабайт.
Go to the top of the page
 
+Quote Post
maxics
сообщение Oct 30 2015, 08:13
Сообщение #11


Местный
***

Группа: Участник
Сообщений: 229
Регистрация: 16-11-09
Пользователь №: 53 649



Цитата(Amurak @ Oct 30 2015, 10:20) *
16 Meg - это 16 мегабит, а не мегабайт.


Мда.... действительно так(((( Спасибо, разобрался.
Go to the top of the page
 
+Quote Post
Andrew Su
сообщение Oct 30 2015, 08:22
Сообщение #12


Местный
***

Группа: Свой
Сообщений: 301
Регистрация: 18-09-07
Из: Украина
Пользователь №: 30 647



Цитата(maxics @ Oct 30 2015, 08:44) *
Память MT47H128M16 – 16 Meg x 16 x 8 banks, т.е 2 Гигабайта.
Правильно-ли я понимаю, что контроллер использует только 256 Мегабайт от всей памяти? Как использовать всю память?


Добрый день.
Объем указанной микросхемы памяти составляет (16*1048576)*16*8 = 268435456 Байт,
где 16-разрядность шины данных, т.е. 2 Байта
8-количество банков
(16*1048576) - 16МБайт
что подтверждается данными из
Прикрепленные файлы
Прикрепленный файл  2Gb_DDR2.pdf ( 2.07 мегабайт ) Кол-во скачиваний: 4
 
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 30th June 2025 - 19:51
Рейтинг@Mail.ru


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