|
|
  |
Stratix II + Ethernet, Need help! |
|
|
|
Feb 2 2015, 04:42
|
Частый гость
 
Группа: Участник
Сообщений: 108
Регистрация: 31-01-08
Из: Москва
Пользователь №: 34 633

|
Цитата Не висит она в воздухе, просто ТС не ответил, куда она подключена. Приветствую! Да, она, естественно, не висит в воздухе. Посмотрел по схеме кита, ресет висит на конфигурационной CPLD EPM7256AETC144. Соответственно доступ к нему просто так не получишь. На ней, похоже, все ресеты от переферии висят. Цитата AEN ---> тут надо CS вывести и подключить, в настройках ядра галка не стоит Как Вы и писали ранее, AEN это tristate_conduit_bridge_tcm_address_out[0], посмотрел в схематике кита, а так же: ENET_DATACS_N - VCC ENET_IOCHRDY - VCC ENET_LDEV_N - GND ENET_SRDY_N - GND ENET_W_R_N - VCC Цитата В приложении скрин структуры моего проекта в SOPC Builder. Там видно подключение к проекту самого чипа LAN91c111. В SOPC Builder есть такой компонент LAN91c111, и может быть он там и подключается правильно автоматически. А при переходе в Qsys может Альтера что то и упустила и надо руками допиливать. Цитата Думаю, аналогичный пример должен быть и на кит, что у Azatot. Я уже писал, что кит достался от предыдущего "обладателя", и вся документация, примеры и вообще все, кроме платы пропало.
Сообщение отредактировал Azatot - Feb 2 2015, 04:47
|
|
|
|
|
Feb 2 2015, 06:29
|
Профессионал
    
Группа: Свой
Сообщений: 1 404
Регистрация: 11-03-11
Из: Минск, Беларусь
Пользователь №: 63 539

|
Цитата(Azatot @ Feb 2 2015, 07:42)  В SOPC Builder есть такой компонент LAN91c111, и может быть он там и подключается правильно автоматически. А при переходе в Qsys может Альтера что то и упустила и надо руками допиливать. Автоматически он не мог подключаться, SOPC не может знать, на каких ногах FPGA висит микросхема LAN91C111. Цитата(Azatot @ Feb 2 2015, 07:42)  Да, она, естественно, не висит в воздухе. Посмотрел по схеме кита, ресет висит на конфигурационной CPLD EPM7256AETC144. Соответственно доступ к нему просто так не получишь. На ней, похоже, все ресеты от переферии висят. Т.е. при включении она сформирует ресет, как надо. Далее после правильного подключения LAN91C111 будет возможность сделать программный сброс.
|
|
|
|
|
Feb 2 2015, 06:31
|
Частый гость
 
Группа: Участник
Сообщений: 108
Регистрация: 31-01-08
Из: Москва
Пользователь №: 34 633

|
Цитата Автоматически он не мог подключаться, SOPC не может знать, на каких ногах FPGA висит микросхема LAN91C111. Я имел ввиду, что в SOPC может быть интерфейс Nios с LAN прописан лучше (все сигналы выведены).
|
|
|
|
|
Feb 2 2015, 06:42
|
Знающий
   
Группа: Свой
Сообщений: 721
Регистрация: 23-10-08
Из: next to Odessa
Пользователь №: 41 112

|
doom13, Вы писали "Не совсем то, что хотелось увидеть. ЕстьSOPC/Qsys-система с контроллером LAN91C111, покажите как порты контроллера LAN91C111 SOPC-системы подключаются к самой микросхеме LAN91C111."
Я работаю с QII-7.2 или QII-8.1, там используется SOPC, что вполне достаточно для Stratix II и Cyclone III. Предполагаю, что в Qsys аналогично, хотя могу и ошибаться. Теперь кратко по шагам. 1. В QII вручную создается начальная версия модуля верхнего уровня, например, main.v, после чего он компилируется. 2. В SOPC Builder создается система NiosII со всеми нужными нам компонентами, в том числе и с компонентом LAN91C111. Только там будет не сам контроллер LAN91C111, а его внешний интерфейсный канал (шины адреса, данных и управление). 3. Теперь в SOPC Builder генерируется система, после чего этот сгенерированный модуль, уже как большой черный ящик, включается в модуль main.v. 4. Для выполнения этого в сгенерированном файле *_sopc.v находится строка *_sopc DUT (обычно она в конце файла), после которой перечисляются все сигналы сгенерированной SOPC Builder системы (большого черного ящика). Все перечисление копируется в main.v и там создается подчиненный модуль. В файле main.v. сигналы от LAN91C111, логически выводятся на внешние выводы ПЛИС. 5. Далее main.v опять компилируется. После компиляции выходные сигналы ПЛИС увязываются с физическими контактами. 6. Теперь из SOPC Builder переходим в Nios II IDE и там создается программный проект для NiosII. При этом там задается ссылка на исходный *_sopc.sopc, чтобы все соответствовало друг-другу. Далее пишется и компилируется программа на С++. При этом надо учитывать то, что после каждой компиляции проекта в QII нужно выполнять процедуру Refresh в Nios II IDE. 7. Загрузка программы для тестирования системы и уже готовой прошивки в EPCS, тоже отдельная тема.
|
|
|
|
|
Feb 2 2015, 06:49
|
Частый гость
 
Группа: Участник
Сообщений: 108
Регистрация: 31-01-08
Из: Москва
Пользователь №: 34 633

|
Цитата Теперь кратко по шагам. Порядок действий нам известен. Вопрос как у Вас подключена FPGA к LAN, физически какие контакты куда идут?
|
|
|
|
|
Feb 2 2015, 06:50
|
Профессионал
    
Группа: Свой
Сообщений: 1 404
Регистрация: 11-03-11
Из: Минск, Беларусь
Пользователь №: 63 539

|
Цитата(Serhiy_UA @ Feb 2 2015, 09:42)  В файле main.v. сигналы от LAN91C111, логически выводятся на внешние выводы ПЛИС. Вот про это логическое подключение подробнее и расскажите. Какие порты для LAN должны быть в SOPC-системе и как они подключаются к физическим ногам микросхемы LAN91C111. Со стандартными настройками компонента LAN91C111 в Qsys получаем только следующие порты для SOPC (есть возможность включить дополнительные сигналы): Код output wire [15:0] tristate_conduit_bridge_tcm_address_out, // tristate_conduit_bridge.tcm_address_out output wire [3:0] tristate_conduit_bridge_tcm_byteenable_n_out, // .tcm_byteenable_n_out output wire [0:0] tristate_conduit_bridge_tcm_read_n_out, // .tcm_read_n_out output wire [0:0] tristate_conduit_bridge_tcm_write_n_out, // .tcm_write_n_out output wire [0:0] tristate_conduit_bridge_tcm_reset_out, // .tcm_reset_out inout wire [31:0] tristate_conduit_bridge_tcm_data_out // .tcm_data_out
|
|
|
|
|
Feb 2 2015, 07:21
|
Знающий
   
Группа: Свой
Сообщений: 721
Регистрация: 23-10-08
Из: next to Odessa
Пользователь №: 41 112

|
Цитата(Azatot @ Feb 2 2015, 09:49)  Вопрос как у Вас подключена FPGA к LAN, физически какие контакты куда идут? Все делать согласно принципиальной схеме на плату. Если Вы её не имеете, то это плохо... Цитата(doom13 @ Feb 2 2015, 09:49)  Вот про это логическое подключение подробнее и расскажите. Какие порты для LAN должны быть в SOPC-системе и как они подключаются к физическим ногам микросхемы LAN91C111. Компонент LAN91C111 должен быть доступен из/в SOPC Buider, иначе он не будет сгенерирован и для него не создастся интерфейсный канал, т.е. не будет автоматом созданы цепи и они не будут увязаны с тактовой частотой NiosII, для корректного обращения к LAN91C111. Вручную это сделать не удастся... По поводу логики подключения, здесь нужно знать про построение иерархических проектов из главного и подчиненных модулей, а так же, уже вручную, увязывать все по названиям цепи из модуля NiosII (подчиненный) и главного модуля проекта. В части физического подключения - нужна принципиальная схема на ПЛИС и LAN91C111 и также ручная увязка контактов. Все делать с учетом названия цепей...
|
|
|
|
|
Feb 2 2015, 07:24
|
Частый гость
 
Группа: Участник
Сообщений: 108
Регистрация: 31-01-08
Из: Москва
Пользователь №: 34 633

|
Цитата Все делать согласно принципиальной схеме на плату. Если Вы её не имеете, то это плохо... Это все понятно, схема есть. Вопрос в том, какие сигналы в Вашем проекте создал SOPC для связи с LAN91C111?
|
|
|
|
|
Feb 2 2015, 07:28
|
Профессионал
    
Группа: Свой
Сообщений: 1 404
Регистрация: 11-03-11
Из: Минск, Беларусь
Пользователь №: 63 539

|
Цитата(Serhiy_UA @ Feb 2 2015, 10:21)  Похоже, мы на разных языках разговариваем Цитата(Serhiy_UA @ Feb 2 2015, 10:21)  В части физического подключения - нужна принципиальная схема на ПЛИС и LAN91C111 и также ручная увязка контактов. Все делать с учетом названия цепей... Где-то названия совпадают, а есть и такие пины на микросхеме, которых нет в сгенерированной SOPC системе.
|
|
|
|
|
Feb 2 2015, 07:48
|
Знающий
   
Группа: Свой
Сообщений: 721
Регистрация: 23-10-08
Из: next to Odessa
Пользователь №: 41 112

|
Цитата(Azatot @ Feb 2 2015, 10:24)  Вопрос в том, какие сигналы в Вашем проекте создал SOPC для связи с LAN91C111? Откройте прилагаемый файл, там почти в конце есть строка: NiosII_stratixII_2s60_RoHS_small_sopc DUT После неё все сигналы большого черного ящика, что создал SOPC, в том числе для работы с LAN91C111. Это и есть та заготовка для подчиненного модуля, что вставляется в модуль верхнего уровня. Теперь нужные Вам сигналы перетягиваются на выход ПЛИС, а не нужные используются внутри главного модуля... Цитата(doom13 @ Feb 2 2015, 10:28)  Где-то названия совпадают, а есть и такие пины на микросхеме, которых нет в сгенерированной SOPC системе. Бывыет, здесь надо разбираться... Просто в моем случае, на готовом ките, все заработало... В приложении схема кита.
|
|
|
|
|
Feb 2 2015, 07:48
|
Частый гость
 
Группа: Участник
Сообщений: 108
Регистрация: 31-01-08
Из: Москва
Пользователь №: 34 633

|
Цитата Откройте прилагаемый файл, там почти в конце есть строка: NiosII_stratixII_2s60_RoHS_small_sopc DUT Получается, что сигналы все те же, только irq(видимо прерывание с LAN) добавился.
|
|
|
|
|
Feb 2 2015, 08:33
|
Частый гость
 
Группа: Участник
Сообщений: 108
Регистрация: 31-01-08
Из: Москва
Пользователь №: 34 633

|
Цитата Проверил, так и есть, для Вас - это внешняя память и никаких драйверов в BSP нет. Регистры LAN пишете через указатель. Кстати, драйвера то в BSP LAN91C111 есть таки. altera_avalon_lan91c111_regs.h и altera_avalon_lan91c111.h.
|
|
|
|
|
Feb 2 2015, 08:43
|
Профессионал
    
Группа: Свой
Сообщений: 1 404
Регистрация: 11-03-11
Из: Минск, Беларусь
Пользователь №: 63 539

|
Цитата(Azatot @ Feb 2 2015, 10:48)  Получается, что сигналы все те же, только irq(видимо прерывание с LAN) добавился. Получили, что все ножки LAN91C111 заведены на FPGA. В получаемой Qsys-системе ног меньше (если смотреть на описание шин, с которыми может работать LAN91С111, то для любой из них сигналов в Qsys-системе должно быть намного больше). Из приведённого примера не понятно, что делать с остальными ножками микросхемы. Пробуйте на оставшиеся повесить '0' или '1' (что подходит, смотрите по даташиту).
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|