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

 
 
 
Reply to this topicStart new topic
> Одновременная запись в двухпортовую память
gosh74
сообщение Feb 18 2018, 23:15
Сообщение #1


Участник
*

Группа: Свой
Сообщений: 62
Регистрация: 22-09-06
Из: Новосибирск
Пользователь №: 20 585



Привет.
Подскажите, что получится при одновременной записи разных значений в двухпортовую память по одинаковому адресу?
Тактирование портов одним колоком.
Go to the top of the page
 
+Quote Post
Flip-fl0p
сообщение Feb 19 2018, 04:20
Сообщение #2


В поисках себя...
****

Группа: Свой
Сообщений: 658
Регистрация: 11-06-13
Из: Санкт-Петербург
Пользователь №: 77 140



Цитата(gosh74 @ Feb 19 2018, 02:15) *
Привет.
Подскажите, что получится при одновременной записи разных значений в двухпортовую память по одинаковому адресу?
Тактирование портов одним колоком.

Как вариант : http://www.efo.ru/doc/IDT/IDT.pl?48
А вообще читайте доки на FPGA, которая Вам нужна.
Go to the top of the page
 
+Quote Post
lembrix
сообщение Feb 19 2018, 07:16
Сообщение #3


Участник
*

Группа: Участник
Сообщений: 26
Регистрация: 13-04-17
Из: Зеленоград
Пользователь №: 96 508



Цитата(gosh74 @ Feb 19 2018, 02:15) *
Привет.
Подскажите, что получится при одновременной записи разных значений в двухпортовую память по одинаковому адресу?
Тактирование портов одним колоком.

Правильным подходом было бы оставить этот вопрос в стороне, и сконцентрироваться на том, как такую ситуацию не допустить.
Go to the top of the page
 
+Quote Post
Maverick
сообщение Feb 19 2018, 07:37
Сообщение #4


я только учусь...
******

Группа: Модераторы
Сообщений: 3 425
Регистрация: 29-01-07
Из: Украина
Пользователь №: 24 839



Цитата(lembrix @ Feb 19 2018, 09:16) *
Правильным подходом было бы оставить этот вопрос в стороне, и сконцентрироваться на том, как такую ситуацию не допустить.

Разнести на один такт всегда можно...


--------------------
If it doesn't work in simulation, it won't work on the board.

"Ты живешь в своих поступках, а не в теле. Ты — это твои действия, и нет другого тебя" Антуан де Сент-Экзюпери повесть "Маленький принц"
Go to the top of the page
 
+Quote Post
krux
сообщение Feb 19 2018, 07:50
Сообщение #5


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

Группа: Свой
Сообщений: 1 652
Регистрация: 2-07-12
Из: дефолт-сити
Пользователь №: 72 596



написать внешнюю логику, которая при совпадении адресов будет давать not ready в сторону одного из портов.
в остальных случаях поведение может быть непредсказуемым как при переезде с одного семейства ПЛИС на другое, так и при обновлении версии САПР.
Go to the top of the page
 
+Quote Post
RobFPGA
сообщение Feb 19 2018, 08:02
Сообщение #6


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

Группа: Свой
Сообщений: 1 083
Регистрация: 23-12-04
Пользователь №: 1 643



Приветствую!

Цитата(gosh74 @ Feb 19 2018, 02:15) *
Привет.
Подскажите, что получится при одновременной записи разных значений в двухпортовую память по одинаковому адресу?
Тактирование портов одним колоком.

Для точного ответа нужно читать доки на соответствующее семейство FPGA.
Но чаще всего при таком раскладе результат операции write будет неопределен.

Удачи! Rob.
Go to the top of the page
 
+Quote Post
lembrix
сообщение Feb 19 2018, 11:43
Сообщение #7


Участник
*

Группа: Участник
Сообщений: 26
Регистрация: 13-04-17
Из: Зеленоград
Пользователь №: 96 508



Цитата(Maverick @ Feb 19 2018, 10:37) *
Разнести на один такт всегда можно...

Я это и имею в виду. Если возможно обращение к одной ячейке одновременно с двух портов, то в проекте должна быть предусмотрена логика обеспечивающая предсказуемый результат.
Go to the top of the page
 
+Quote Post
gosh74
сообщение Feb 19 2018, 11:49
Сообщение #8


Участник
*

Группа: Свой
Сообщений: 62
Регистрация: 22-09-06
Из: Новосибирск
Пользователь №: 20 585



Спасибо всем откликнувшимся за советы. Буду разносить на такт.

А если по одному порту запись по другому чтение и тактовый сигнал на оба порта один, то коллизий не должно возникать?
Go to the top of the page
 
+Quote Post
RobFPGA
сообщение Feb 19 2018, 12:03
Сообщение #9


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

Группа: Свой
Сообщений: 1 083
Регистрация: 23-12-04
Пользователь №: 1 643



Приветствую!
Цитата(gosh74 @ Feb 19 2018, 14:49) *
Спасибо всем откликнувшимся за советы. Буду разносить на такт.

А если по одному порту запись по другому чтение и тактовый сигнал на оба порта один, то коллизий не должно возникать?
Для точного ответа нужно читать доки на соответствующее семейство FPGA.
Но чаще всего возможны варианты на чтение : READ_FIRST (OLD_DATA), WRITE_FIRST(NEW_DATA), NO_CHANGE, и другие в зависимости от FPGA.

Удачи! Rob.
Go to the top of the page
 
+Quote Post
Jackov
сообщение Feb 19 2018, 14:10
Сообщение #10


Местный
***

Группа: Участник
Сообщений: 293
Регистрация: 25-09-13
Из: Н.Новгород
Пользователь №: 78 485



Цитата(gosh74 @ Feb 19 2018, 02:15) *
Привет.
Подскажите, что получится при одновременной записи разных значений в двухпортовую память по одинаковому адресу?
Тактирование портов одним колоком.

У Циклона 1 и 4 Альтеры (с другими не работал) стоит приоритет по какому-то порту, если не изменяет память, по порту В.

Сообщение отредактировал Jackov - Feb 19 2018, 14:10
Go to the top of the page
 
+Quote Post
gosh74
сообщение Feb 19 2018, 15:36
Сообщение #11


Участник
*

Группа: Свой
Сообщений: 62
Регистрация: 22-09-06
Из: Новосибирск
Пользователь №: 20 585



Цитата(Jackov @ Feb 19 2018, 18:10) *
У Циклона 1 и 4 Альтеры (с другими не работал) стоит приоритет по какому-то порту, если не изменяет память, по порту В.


А действительно, зачем в этом случае с обоих портов писать.
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 24th June 2018 - 23:56
Рейтинг@Mail.ru


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