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

 
 
> Мультиплексор шины на Altera, Может, я что не так делаю?
Вовка_Бызов
сообщение Jun 7 2011, 08:52
Сообщение #1


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

Группа: Свой
Сообщений: 182
Регистрация: 26-11-07
Из: Москва, Зеленоград
Пользователь №: 32 692



Ситуация - классическая. Процессор от TI (C6455) подключен к внешней шине через контроллер, собранный на основе ПЛИС Cyclone III по параллельной шине EMIFA.

А проблема состоит в том, что общая шина, выходящая на процессор, с появлением очередного внутреннего регистра, становится все медленнее и медленнее. Т.е. - как я понимаю, внутри Cyclone нет трехстабильных шин и схема реализуется как очень большой мультиплексор, быстродействие которого зависит напрямую от кол-ва псевдовыходов. Это я так думаю.

На практике получается, что для чтения данных мне приходится все больше увеличивать длину сигнала READ (OE) с процессора для нормального чтения (в противном случае в читаемых данных появляются артефакты). При начале разработки она составляла 1+1 такт (12нс). Сегодня я уже вынужден поставить 1+3 такта (24нс).

Нет ли какой-то системной ошибки с моей стороны? Нельзя ли как-то описать шину, чтобы ее быстродействие было выше?

Спасибо!
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Sergey'F
сообщение Jun 7 2011, 10:15
Сообщение #2


Местный
***

Группа: Свой
Сообщений: 351
Регистрация: 17-09-05
Из: Москва
Пользователь №: 8 660



Мне кажется, что стоит рассмотреть работу EMIF в синхронном режиме и регистр на выходе этого дерева мультиплексоров. Все входные сигналы EMIF тоже синхронизировать. Задержка чтения получится 2 такта.

После этого будет проблема с OE, он медленно идет от TMS, потом через ПЛИС и до буферов. Можно в таком случае попробовать его не использовать, а эмулировать внутри ПЛИС из чипселекта и сигнала чтения/записи.

Go to the top of the page
 
+Quote Post
Вовка_Бызов
сообщение Jun 7 2011, 10:49
Сообщение #3


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

Группа: Свой
Сообщений: 182
Регистрация: 26-11-07
Из: Москва, Зеленоград
Пользователь №: 32 692



Цитата(Sergey'F @ Jun 7 2011, 14:15) *
Мне кажется, что стоит рассмотреть работу EMIF в синхронном режиме и регистр на выходе этого дерева мультиплексоров. Все входные сигналы EMIF тоже синхронизировать. Задержка чтения получится 2 такта.

После этого будет проблема с OE, он медленно идет от TMS, потом через ПЛИС и до буферов. Можно в таком случае попробовать его не использовать, а эмулировать внутри ПЛИС из чипселекта и сигнала чтения/записи.

А сигнал чтения/записи - это кто? Я до сих пор считал, что HaWE - это сигнал записи, а HaOE - сигнал чтения. Оба идут достаточно медленно. Можно, конечно, разнести CS-ы на читаемые и записываемые.. Но тогда - зачем синхронный режим, если и так получается достаточно быстро. Замечу еще раз - у меня достаточно редко читаются регистры.. И уж точно, что у меня нет потока данных из них. А синхронный режим в первую очередь удобен, когда есть постоянный обмен.
Проблема в том, что расширяя OE, я фактически останавливаю на это время процессор.. Пока думаем над ПДП.

А с TimeQust - ну не въезжаю я в логику построения SDC файла. Что туда пихать надо, когда оно берется, когда запускать Analizer.. Те "для чайников" описания, что в гугле лежат - это, может для девочки-третьекурсницы полезно - чтобы не въезжая ответить что-то преподу.. А вот толкового описания сути я так и не нашел sad.gif
Go to the top of the page
 
+Quote Post
des00
сообщение Jun 7 2011, 16:48
Сообщение #4


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

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



Цитата(Вовка_Бызов @ Jun 7 2011, 05:49) *
Те "для чайников" описания, что в гугле лежат - это, может для девочки-третьекурсницы полезно - чтобы не въезжая ответить что-то преподу..

вы первый с таким отзывом о моих статьях wacko.gif


Цитата(Koluchiy @ Jun 7 2011, 06:09) *
Как такие вопросы можно обсуждать без (блок-)схемы и (желательно)временных диаграмм?

что там обсуждать то? EMIFA обычная процессорная шина с двунаправленной шиной данных. Асинхронный режим прост, но не удобен. Куда лучше взять синхронный с латентностью.


--------------------
Go to the top of the page
 
+Quote Post
Вовка_Бызов
сообщение Jun 8 2011, 11:41
Сообщение #5


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

Группа: Свой
Сообщений: 182
Регистрация: 26-11-07
Из: Москва, Зеленоград
Пользователь №: 32 692



Цитата(des00 @ Jun 7 2011, 20:48) *
вы первый с таким отзывом о моих статьях wacko.gif

Ну что я могу сделать. Для меня эталоном доведения информации до пользователя всегда были книги Кернигана и Ричи.
Просто читая ваши (как оказалось) wink.gif заметки, я так и не понял того, что надо квартусу. А самое главное - зачем. Вполне возможно, что если бы я начал читать литературу по таймингам начиная с макса - я бы все понял. Но так сложилось, что я всего этого не читал. Хотя, возможно, готов.

Т.е. - с моей колокольни - не хватило разжевывания "для чего" с присутствием описания "как". Потому я и сказал, что это скорее всего для студентов sm.gif Без какого-либо желания обидеть автора. Которому в любом случае - респект (как и всем авторам, пишущим для нашего брата).


Цитата(des00 @ Jun 7 2011, 20:48) *
что там обсуждать то? EMIFA обычная процессорная шина с двунаправленной шиной данных. Асинхронный режим прост, но не удобен. Куда лучше взять синхронный с латентностью.

Может быть. В любом случае - я могу попробовать в следующей итерации, т.к. все необходимое в виде сигналов на ПЛИСину приходит. Просто изначально в концепции был асинхронный обмен, как традиционный для нашей конторы. Не исключаю, что ошибался.

В общем - не попробовав, не узнаешь.. Обещаю к осени попробовать wink.gif
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- Вовка_Бызов   Мультиплексор шины на Altera   Jun 7 2011, 08:52
- - vadimuzzz   порезать мультиплексор конвейерами?   Jun 7 2011, 09:00
|- - Вовка_Бызов   Цитата(vadimuzzz @ Jun 7 2011, 13:00) пор...   Jun 7 2011, 09:14
|- - vadimuzzz   еще и асинхронный?! ужас Цитата(Вовка_Бызов ...   Jun 7 2011, 09:24
|- - Вовка_Бызов   Цитата(vadimuzzz @ Jun 7 2011, 13:24) еще...   Jun 7 2011, 09:44
|- - vadimuzzz   Цитата(Вовка_Бызов @ Jun 7 2011, 16:44) А...   Jun 7 2011, 09:49
- - Kuzmi4   2 Вовка_Бызов у данного чипа есть выход клока EMIF...   Jun 7 2011, 09:30
- - des00   если читать более одного регистра за раз : синхрон...   Jun 7 2011, 09:49
|- - andrew_b   Цитата(Вовка_Бызов @ Jun 7 2011, 14:49) А...   Jun 7 2011, 11:44
- - Koluchiy   Объясните мне, граждане... Как такие вопросы можно...   Jun 7 2011, 11:09
- - iosifk   Цитата(Вовка_Бызов @ Jun 7 2011, 12:52) С...   Jun 7 2011, 11:43
|- - Вовка_Бызов   Цитата(iosifk @ Jun 7 2011, 15:43) 1. Син...   Jun 7 2011, 12:45
- - Koluchiy   Ну я как бы в курсе, что такое EMIF . Дело в том, ...   Jun 7 2011, 17:06
|- - Stewart Little   А вот это не поможет отцу российской демократии : ...   Jun 7 2011, 17:22
- - ViKo   Синхронная шина будет выдавать данные еще медленне...   Jun 8 2011, 13:16
|- - Вовка_Бызов   Цитата(ViKo @ Jun 8 2011, 17:16) (Живого ...   Jun 9 2011, 06:33
|- - ViKo   Цитата(Вовка_Бызов @ Jun 9 2011, 09:33) А...   Jun 9 2011, 07:29
- - Kuzmi4   2 Вовка_Бызов Мне вот этот документик тоже понрав...   Jun 9 2011, 07:56
- - Вовка_Бызов   Спасибо огромное. Уже сел читать.   Jun 9 2011, 08:42


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

 


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


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