Belyj Veter 0 8 мая, 2008 Опубликовано 8 мая, 2008 · Жалоба необходимо организовать внешнюю логику , а конкретнее: имеется микроконтроллер (16 разрядная шина данных) - необходимо организовать передачу и приём в устройство с 64разрядной шиной Заранее благодарен за совет Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
MrYuran 21 8 мая, 2008 Опубликовано 8 мая, 2008 · Жалоба 4 регистра-защелки вешаете на свою 16р шину, входы клоков-на 4 дополнительные ноги мк. Классика жанра. Так... ещё и приём... тогда двунаправленные буферы и ещё одна нога мк на DIR Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
r_dot 0 10 мая, 2008 Опубликовано 10 мая, 2008 · Жалоба ... имеется микроконтроллер (16 разрядная шина данных) - необходимо организовать передачу и приём в устройство с 64разрядной шиной Только понадобятся и регистры (с третьим состоянием), и буферы, так как наверняка записывать все 64 разряда параллельно надо. А читать можно и по 16 бит. Только вот реализовать это хозяйство лучше программно, иначе понадобится гораздо больше обвески. Работать это будет просто: Запись - заполнение четырёх регистров, вывод их из третьего состояния, формирование сигналов записи в 64-разрядное устройство, опять выходы регистров в третье состояние. Чтение - установка сигналов чтения 64-разрядного устройства, последовательное чтение четырёх буферов (у каждого своя выборка), снятие сигналов чтения. Схема: К 16-разрядному порту - входы регистров параллельно и выходы буферов параллельно. К 64-разрядному устройству - выходы регистров и входы буферов. А вот если у контроллера "16 разрядная шина данных" действительно шина данных, а не двунаправленный порт, то внешняя логика ещё разрастётся. Можно использовать ещё две линии адреса (добавить младшие). Тогда логика будет такая: При чтении - четыре раза подряд будет читаться один и тот же адрес 64-разрядного устройства, а дешифратором дополнительных двух линий адреса будут выбираться буфера от младшего к старшему слову. При записи - три младших слова запоминаются в регистрах, а по четвёртому все 64 бита записываются в устройство. Где-то так. :) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
LeonY 0 12 мая, 2008 Опубликовано 12 мая, 2008 · Жалоба Если речь идет об Altera-овских FPGA, то можно использовать FIFO с различной разрядность шин данных (16 <-> 64). Я этим пользовался вполне успешно для преобразования 128 <-> 32 в одном из проектов N лет назад на Stratix-е. Не знаю есть ли что-то подобное у Xilinx, у Actel - точно нет. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Belyj Veter 0 21 мая, 2008 Опубликовано 21 мая, 2008 · Жалоба Здравствуйте! Мне необходимо выбрать ПЛИС для решения следующей задачи: необходимо принять данные из 8 разрядного двунаправленного порта , передать их на устройство с 64 разрядной шиной данных через которое они идут транзитом и данные , уже прошедшие через устройство обратно в порт Если у кого есть решения по этому поводу - помогите , оочень надо! заранее благодарен за помощь! Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
vetal 0 21 мая, 2008 Опубликовано 21 мая, 2008 · Жалоба epm3218 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
DmitryR 0 21 мая, 2008 Опубликовано 21 мая, 2008 · Жалоба Если восьмиразрядная шина - это ISA, а 64-разрядная - PCI-X, то нужен Virtex-5LXT или Arria-GX. А если это просто шины - то CPLD в большом будет достаточно. Так что уточните задачу, чтобы получить точный ответ. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Belyj Veter 0 21 мая, 2008 Опубликовано 21 мая, 2008 · Жалоба двунаправленный 8 разрядный порт и 64 разрядная шина данных Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
rezident 0 21 мая, 2008 Опубликовано 21 мая, 2008 · Жалоба двунаправленный 8 разрядный порт и 64 разрядная шина данныхВам уже указали что это неполные данные. У двунаправленного порта долен быть как минимум сигнал, управляющий направлением передачи. И на шине данных тоже какие-то управляющие сигналы. Это раз. Во-вторых, какие частоты преполагаются? В-третьих, какие уровни сигналов на этих шинах? В-четвертых, данные нужно передавать синхронно или ПЛИС еще должна выполнять м функцию буфера-синхронизатора обмена? Если хотите качественный ответ/совет получить, то не играйте в партизанов - сообщайте более полные и подробные исходные данные. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Belyj Veter 0 21 мая, 2008 Опубликовано 21 мая, 2008 · Жалоба модуль WoodmanUSB((2 FIFO буфера (входной и выходной). Размер каждого составляет 1024 Байта )) имеет двунаправленный порт , сигналы управления направлением передачи : PB_RD и PB-WR - Линия чтения данных порта и линия записи данных порта соответственно. При изменении входного уровня с высокого на низкий происходит установка на линии данных порта PORTB текущего байта из входного FIFO буфера модуля (данные из компьютера - IN_FIFO). Теперь возможно чтение этого байта. При переключении обратно на высокий уровень, линии данных возвращаются в исходное состояние, а во входном буфере становится готовым для чтения следующий байт (епри его наличии). При изменении входного уровня с высокого на низкий происходит чтение модулем текущих состояний линий данных порта PORTB и запись полученного байта в выходной FIFO буфер модуля (OUT_FIFO). PORTB_FF -- (FIFO FULL) Если уровень на этом выводе становится низким, это означает что драйвер не успевает транспортировать данные из модуля при их передаче от внешнего устройства в компьютер через PORTB. Необходимо приостановить передачу данных, пока уровень не вернется в свое исходное состояние - высокий. PORTB_FNE -- FIFO not EMPTY) Если уровень на этом выводе становится высоким, это означает что компьютер начинает передачу данных и в буфере модуля есть доступные данные для чтения через порт PORTB. Уровень сохраняется высоким, пока IN_FIFO буфер не будет прочтен полностью. При отсутсвии данных уровень низкий. Частоты - 30 либо 48Мгц - синхронный режим работы модуля с внутренним тактированием на шине данных управляющих сигналов нет Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Belyj Veter 0 21 мая, 2008 Опубликовано 21 мая, 2008 · Жалоба может у кого есть подобный пример реализации ? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
rezident 0 21 мая, 2008 Опубликовано 21 мая, 2008 · Жалоба Woodman USB говорите? Ну с одной стороны EZ-USB от Кипариса, там сигналы 3.3В, но толерантные по входам к 5В уровням - с этим разобрались. Теперь с другой стороной давайте разбираться. Что это за такая 64-разрядная шина данных, не имеющая сигналов квитирования? Просто сигналы ввода и/или вывода что ли? Что к ним или к чему она будет/должна подключаться? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
rezident 0 21 мая, 2008 Опубликовано 21 мая, 2008 · Жалоба Сергей s7, даже если вы и не издеваетесь, то вы явно нарушаете п.3.2 Правил форума, создав два сообщения по одной и той же теме. :twak: http://electronix.ru/forum/index.php?showtopic=48085&hl= Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Belyj Veter 0 21 мая, 2008 Опубликовано 21 мая, 2008 · Жалоба Woodman USB говорите? Ну с одной стороны EZ-USB от Кипариса, а почему против WoodmanUSB? какие с ним проблемы? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Belyj Veter 0 21 мая, 2008 Опубликовано 21 мая, 2008 · Жалоба ок, я понял! а по поводу издевательств - это зря Вы сами видите, что подходы к решению задачи различные если нужно одну тему можно заблокировать Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться