Новая прошивка 7i93
-
- Мастер
- Сообщения: 305
- Зарегистрирован: 29 авг 2013, 20:17
- Репутация: 41
- Контактная информация:
Новая прошивка 7i93
Нужно 8 энкодеров, 8 степгенов и хотябы пару смартсериал. Готовой такой прошивки нет, но в папке с исходниками есть на 10 энкодеров, 8 степгенов и пол ведра смарт сериал. Прошивка для трехразъемной платы. ФПЖА вроде бы подходит. Достаточно будет изменить пин файл и откомпилировать проект? Хотелось бы убрать два энкодера со второго разъема ( еще там есть 2 ноги без спецфункций ) и посадить на это место 4 смарт сериал порта, как на картинке. Третий разъем уволить.
-
- Мастер
- Сообщения: 474
- Зарегистрирован: 25 авг 2018, 10:11
- Репутация: 152
- Настоящее имя: Дмитрий
- Откуда: Киров
- Контактная информация:
Re: Новая прошивка 7i93
Да, только в constant ModuleID исправить количество энкодеров на 8мь:VitalikD писал(а):Достаточно будет изменить пин файл и откомпилировать проект?
(QcountTag, x"02", ClockLowTag, x"08", QcounterAddr&PadT, QCounterNumRegs, x"00", QCounterMPBitMask),
И удалённые строки IOPortTag... заменить на emptypin(24шт).
В файле TopEthernet16HostMot2.vhd:
закомментировать строки use work.@Card@.all; и use work.@Pin@.all;
раскомментировать строки use work.i93_x9card.all; и use work.PIN_SVSSST10_8_8_72.all;(тот который редактировали).
И если всё правильно сделали, то нормально соберётся, хоть и не быстро, у меня около 5ти минут.
-
- Мастер
- Сообщения: 305
- Зарегистрирован: 29 авг 2013, 20:17
- Репутация: 41
- Контактная информация:
Re: Новая прошивка 7i93
Очень хорошо. А этого
достаточно, чтобы ноги третьего порта не ожили? Неиспользуемые, наверно, на плате к питанию или земле прибиты. В 7i93.ucf только до "IOBITS<47>" ножки расписаны. Модули можно вообще на любые ножки раскидывать, или есть ограничения по расположению на кристалле и банкам? Какое по для компиляции мне нужно в минимальном объеме?D.L. писал(а):И удалённые строки IOPortTag... заменить на emptypin(24шт).
-
- Мастер
- Сообщения: 474
- Зарегистрирован: 25 авг 2018, 10:11
- Репутация: 152
- Настоящее имя: Дмитрий
- Откуда: Киров
- Контактная информация:
Re: Новая прошивка 7i93
Да, достаточно.VitalikD писал(а):достаточно, чтобы ноги третьего порта не ожили
Ограничений нет, но есть небольшой шанс что не соберётся.VitalikD писал(а):Модули можно вообще на любые ножки раскидывать, или есть ограничения по расположению на кристале и банкам?
-
- Мастер
- Сообщения: 305
- Зарегистрирован: 29 авг 2013, 20:17
- Репутация: 41
- Контактная информация:
Re: Новая прошивка 7i93
Я там еще по ПО вопрос добавил. Что мне нужно по минимуму? Помню лет 10 назад понадобилось простенькую поделку на цплд сделать, так с альтеры пришлось какое-то огромное чудовище качать.
-
- Мастер
- Сообщения: 474
- Зарегистрирован: 25 авг 2018, 10:11
- Репутация: 152
- Настоящее имя: Дмитрий
- Откуда: Киров
- Контактная информация:
Re: Новая прошивка 7i93
Я качал Xilinx ISE Design Suite 13.4(Xilinx_ISE_DS_Win_13.4_O.87xd.3.0.tar), почти 6Гб.
Но там регаться нужно чтоб скачать, и потом ещё и лицензию получать.
Если лень это делать, то могу скинуть то что получилось, но на свой страх и риск.
Но там регаться нужно чтоб скачать, и потом ещё и лицензию получать.
Если лень это делать, то могу скинуть то что получилось, но на свой страх и риск.
-
- Мастер
- Сообщения: 305
- Зарегистрирован: 29 авг 2013, 20:17
- Репутация: 41
- Контактная информация:
Re: Новая прошивка 7i93
Наверное, нет смысла качать для разовой компиляции. Не могли бы Вы собрать проект, если я выложу измененный TopEthernet16HostMot2.vhd и pin файлы?
-
- Мастер
- Сообщения: 474
- Зарегистрирован: 25 авг 2018, 10:11
- Репутация: 152
- Настоящее имя: Дмитрий
- Откуда: Киров
- Контактная информация:
Re: Новая прошивка 7i93
Я уже собрал, пин файл такой:
Если подходит - вышлю, адрес почты в личку.
Под другой пин файл тоже могу собрать, TopEthernet16HostMot2.vhd не нужен, пин файл можно запостить прямо сюда.
Код: Выделить всё
use work.IDROMConst.all;
package PIN_NEW_48 is
constant ModuleID : ModuleIDType :=(
(WatchDogTag, x"00", ClockLowTag, x"01", WatchDogTimeAddr&PadT, WatchDogNumRegs, x"00", WatchDogMPBitMask),
(IOPortTag, x"00", ClockLowTag, x"03", PortAddr&PadT, IOPortNumRegs, x"00", IOPortMPBitMask),
(QcountTag, x"02", ClockLowTag, x"08", QcounterAddr&PadT, QCounterNumRegs, x"00", QCounterMPBitMask),
(SSerialTag, x"00", ClockLowTag, x"01", SSerialCommandAddr&PadT, SSerialNumRegs, x"10", SSerialMPBitMask),
(StepGenTag, x"02", ClockLowTag, x"08", StepGenRateAddr&PadT, StepGenNumRegs, x"00", StepGenMPBitMask),
(LEDTag, x"00", ClockLowTag, x"01", LEDAddr&PadT, LEDNumRegs, x"00", LEDMPBitMask),
(NullTag, x"00", NullTag, x"00", NullAddr&PadT, x"00", x"00", x"00000000"),
(NullTag, x"00", NullTag, x"00", NullAddr&PadT, x"00", x"00", x"00000000"),
(NullTag, x"00", NullTag, x"00", NullAddr&PadT, x"00", x"00", x"00000000"),
(NullTag, x"00", NullTag, x"00", NullAddr&PadT, x"00", x"00", x"00000000"),
(NullTag, x"00", NullTag, x"00", NullAddr&PadT, x"00", x"00", x"00000000"),
(NullTag, x"00", NullTag, x"00", NullAddr&PadT, x"00", x"00", x"00000000"),
(NullTag, x"00", NullTag, x"00", NullAddr&PadT, x"00", x"00", x"00000000"),
(NullTag, x"00", NullTag, x"00", NullAddr&PadT, x"00", x"00", x"00000000"),
(NullTag, x"00", NullTag, x"00", NullAddr&PadT, x"00", x"00", x"00000000"),
(NullTag, x"00", NullTag, x"00", NullAddr&PadT, x"00", x"00", x"00000000"),
(NullTag, x"00", NullTag, x"00", NullAddr&PadT, x"00", x"00", x"00000000"),
(NullTag, x"00", NullTag, x"00", NullAddr&PadT, x"00", x"00", x"00000000"),
(NullTag, x"00", NullTag, x"00", NullAddr&PadT, x"00", x"00", x"00000000"),
(NullTag, x"00", NullTag, x"00", NullAddr&PadT, x"00", x"00", x"00000000"),
(NullTag, x"00", NullTag, x"00", NullAddr&PadT, x"00", x"00", x"00000000"),
(NullTag, x"00", NullTag, x"00", NullAddr&PadT, x"00", x"00", x"00000000"),
(NullTag, x"00", NullTag, x"00", NullAddr&PadT, x"00", x"00", x"00000000"),
(NullTag, x"00", NullTag, x"00", NullAddr&PadT, x"00", x"00", x"00000000"),
(NullTag, x"00", NullTag, x"00", NullAddr&PadT, x"00", x"00", x"00000000"),
(NullTag, x"00", NullTag, x"00", NullAddr&PadT, x"00", x"00", x"00000000"),
(NullTag, x"00", NullTag, x"00", NullAddr&PadT, x"00", x"00", x"00000000"),
(NullTag, x"00", NullTag, x"00", NullAddr&PadT, x"00", x"00", x"00000000"),
(NullTag, x"00", NullTag, x"00", NullAddr&PadT, x"00", x"00", x"00000000"),
(NullTag, x"00", NullTag, x"00", NullAddr&PadT, x"00", x"00", x"00000000"),
(NullTag, x"00", NullTag, x"00", NullAddr&PadT, x"00", x"00", x"00000000"),
(NullTag, x"00", NullTag, x"00", NullAddr&PadT, x"00", x"00", x"00000000")
);
constant PinDesc : PinDescType :=(
-- Base func sec unit sec func sec pin
IOPortTag & x"01" & QCountTag & x"02", -- I/O 00
IOPortTag & x"01" & QCountTag & x"01", -- I/O 01
IOPortTag & x"00" & QCountTag & x"02", -- I/O 02
IOPortTag & x"00" & QCountTag & x"01", -- I/O 03
IOPortTag & x"01" & QCountTag & x"03", -- I/O 04
IOPortTag & x"00" & QCountTag & x"03", -- I/O 05
IOPortTag & x"03" & QCountTag & x"02", -- I/O 06
IOPortTag & x"03" & QCountTag & x"01", -- I/O 07
IOPortTag & x"02" & QCountTag & x"02", -- I/O 08
IOPortTag & x"02" & QCountTag & x"01", -- I/O 09
IOPortTag & x"03" & QCountTag & x"03", -- I/O 10
IOPortTag & x"02" & QCountTag & x"03", -- I/O 11
IOPortTag & x"05" & QCountTag & x"02", -- I/O 12
IOPortTag & x"05" & QCountTag & x"01", -- I/O 13
IOPortTag & x"04" & QCountTag & x"02", -- I/O 14
IOPortTag & x"04" & QCountTag & x"01", -- I/O 15
IOPortTag & x"05" & QCountTag & x"03", -- I/O 16
IOPortTag & x"04" & QCountTag & x"03", -- I/O 17
IOPortTag & x"07" & QCountTag & x"02", -- I/O 18
IOPortTag & x"07" & QCountTag & x"01", -- I/O 19
IOPortTag & x"06" & QCountTag & x"02", -- I/O 20
IOPortTag & x"06" & QCountTag & x"01", -- I/O 21
IOPortTag & x"07" & QCountTag & x"03", -- I/O 22
IOPortTag & x"06" & QCountTag & x"03", -- I/O 23
IOPortTag & x"00" & SSerialTag & SSerialRX0Pin, -- I/O 24
IOPortTag & x"00" & SSerialTag & SSerialRX1Pin, -- I/O 25
IOPortTag & x"00" & SSerialTag & SSerialTX0Pin, -- I/O 26
IOPortTag & x"00" & SSerialTag & SSerialTXEn0Pin, -- I/O 27
IOPortTag & x"00" & SSerialTag & SSerialTX1Pin, -- I/O 28
IOPortTag & x"00" & SSerialTag & SSerialTXEn1Pin, -- I/O 29
IOPortTag & x"00" & NullTag & x"00", -- I/O 30
IOPortTag & x"00" & NullTag & x"00", -- I/O 31
IOPortTag & x"00" & StepGenTag & x"81", -- I/O 32
IOPortTag & x"00" & StepGenTag & x"82", -- I/O 33
IOPortTag & x"01" & StepGenTag & x"81", -- I/O 34
IOPortTag & x"01" & StepGenTag & x"82", -- I/O 35
IOPortTag & x"02" & StepGenTag & x"81", -- I/O 36
IOPortTag & x"02" & StepGenTag & x"82", -- I/O 37
IOPortTag & x"03" & StepGenTag & x"81", -- I/O 38
IOPortTag & x"03" & StepGenTag & x"82", -- I/O 39
IOPortTag & x"04" & StepGenTag & x"81", -- I/O 40
IOPortTag & x"04" & StepGenTag & x"82", -- I/O 41
IOPortTag & x"05" & StepGenTag & x"81", -- I/O 42
IOPortTag & x"05" & StepGenTag & x"82", -- I/O 43
IOPortTag & x"06" & StepGenTag & x"81", -- I/O 44
IOPortTag & x"06" & StepGenTag & x"82", -- I/O 45
IOPortTag & x"07" & StepGenTag & x"81", -- I/O 46
IOPortTag & x"07" & StepGenTag & x"82", -- I/O 47
emptypin,emptypin,emptypin,emptypin,emptypin,emptypin,emptypin,emptypin,
emptypin,emptypin,emptypin,emptypin,emptypin,emptypin,emptypin,emptypin,
emptypin,emptypin,emptypin,emptypin,emptypin,emptypin,emptypin,emptypin,
emptypin,emptypin,emptypin,emptypin,emptypin,emptypin,emptypin,emptypin,
emptypin,emptypin,emptypin,emptypin,emptypin,emptypin,emptypin,emptypin, -- added for IDROM v3
emptypin,emptypin,emptypin,emptypin,emptypin,emptypin,emptypin,emptypin,
emptypin,emptypin,emptypin,emptypin,emptypin,emptypin,emptypin,emptypin,
emptypin,emptypin,emptypin,emptypin,emptypin,emptypin,emptypin,emptypin,
emptypin,emptypin,emptypin,emptypin,emptypin,emptypin,emptypin,emptypin,
emptypin,emptypin,emptypin,emptypin,emptypin,emptypin,emptypin,emptypin,
emptypin,emptypin,emptypin,emptypin,emptypin,emptypin,emptypin,emptypin,
emptypin,emptypin,emptypin,emptypin,emptypin,emptypin,emptypin,emptypin);
end package PIN_NEW_48;
Под другой пин файл тоже могу собрать, TopEthernet16HostMot2.vhd не нужен, пин файл можно запостить прямо сюда.
-
- Мастер
- Сообщения: 305
- Зарегистрирован: 29 авг 2013, 20:17
- Репутация: 41
- Контактная информация:
Re: Новая прошивка 7i93
Спасибо, это то что нужно. Бинарник можно прилепить в архиве прямо сюда, он небольшой. Если не получится, я скину адрес в личку. А зачем нужен txen выход? Меса вроде использует 422 физический интерфейс а не 485? И для себя нет смысла изобретать. Я как раз хотел посмотреть информацию по этому поводу и решить впихнуть 4 пары рхтх или как у Вас.
-
- Мастер
- Сообщения: 474
- Зарегистрирован: 25 авг 2018, 10:11
- Репутация: 152
- Настоящее имя: Дмитрий
- Откуда: Киров
- Контактная информация:
Re: Новая прошивка 7i93
Видимо для какой-то месовской платы нужен.VitalikD писал(а):А зачем нужен txen выход?
Сейчас и на 4 пары соберу.
-
- Мастер
- Сообщения: 305
- Зарегистрирован: 29 авг 2013, 20:17
- Репутация: 41
- Контактная информация:
Re: Новая прошивка 7i93
Да, если все так просто, месовское ПО могучая штука за сущие копейки.
-
- Мастер
- Сообщения: 474
- Зарегистрирован: 25 авг 2018, 10:11
- Репутация: 152
- Настоящее имя: Дмитрий
- Откуда: Киров
- Контактная информация:
Re: Новая прошивка 7i93
3 варианта прошивки, использовать на свой страх и риск.
-
- Мастер
- Сообщения: 305
- Зарегистрирован: 29 авг 2013, 20:17
- Репутация: 41
- Контактная информация:
Re: Новая прошивка 7i93
Прошивка в плату зашла. Сейчас попробую что-нибудь к ней прикрутить.
-
- Мастер
- Сообщения: 305
- Зарегистрирован: 29 авг 2013, 20:17
- Репутация: 41
- Контактная информация:
Re: Новая прошивка 7i93
Не, не вышел каменный цветок. Не признает ее hostmot
-
- Мастер
- Сообщения: 474
- Зарегистрирован: 25 авг 2018, 10:11
- Репутация: 152
- Настоящее имя: Дмитрий
- Откуда: Киров
- Контактная информация:
Re: Новая прошивка 7i93
Смарт сериал не работает?
-
- Мастер
- Сообщения: 474
- Зарегистрирован: 25 авг 2018, 10:11
- Репутация: 152
- Настоящее имя: Дмитрий
- Откуда: Киров
- Контактная информация:
Re: Новая прошивка 7i93
А пингуется, mesaflash видит?
-
- Мастер
- Сообщения: 305
- Зарегистрирован: 29 авг 2013, 20:17
- Репутация: 41
- Контактная информация:
Re: Новая прошивка 7i93
Извиняюсь. Вот:
halcmd: loadrt hm2_eth board_ip="192.168.1.121"
hm2_eth: loading Mesa AnyIO HostMot2 ethernet driver version 0.2
hm2_eth: 192.168.1.121: Hardware address: 00:60:1b:14:00:73
hm2_eth: discovered 7I93
hm2/hm2_7i93.0: IDROM IOPorts is 2 but MD IOPort NumInstances is 3, inconsistent firmware, aborting driver load
hm2/hm2_7i93.0: failed to parse Module Descriptor 1
board fails HM2 registration
hm2_eth: rtapi_app_main: Invalid argument (-22)
<stdin>:3: waitpid failed /usr/bin/rtapi_app hm2_eth
<stdin>:3: /usr/bin/rtapi_app exited without becoming ready
<stdin>:3: insmod for hm2_eth failed, returned -1
halcmd:
halcmd: loadrt hm2_eth board_ip="192.168.1.121"
hm2_eth: loading Mesa AnyIO HostMot2 ethernet driver version 0.2
hm2_eth: 192.168.1.121: Hardware address: 00:60:1b:14:00:73
hm2_eth: discovered 7I93
hm2/hm2_7i93.0: IDROM IOPorts is 2 but MD IOPort NumInstances is 3, inconsistent firmware, aborting driver load
hm2/hm2_7i93.0: failed to parse Module Descriptor 1
board fails HM2 registration
hm2_eth: rtapi_app_main: Invalid argument (-22)
<stdin>:3: waitpid failed /usr/bin/rtapi_app hm2_eth
<stdin>:3: /usr/bin/rtapi_app exited without becoming ready
<stdin>:3: insmod for hm2_eth failed, returned -1
halcmd:
-
- Мастер
- Сообщения: 474
- Зарегистрирован: 25 авг 2018, 10:11
- Репутация: 152
- Настоящее имя: Дмитрий
- Откуда: Киров
- Контактная информация:
Re: Новая прошивка 7i93
Понял в чём ошибка, сейчас поправлю.
-
- Мастер
- Сообщения: 305
- Зарегистрирован: 29 авг 2013, 20:17
- Репутация: 41
- Контактная информация:
Re: Новая прошивка 7i93
Пингуется, Месафлеш конфигурацию показывает. При загрузке в хал на несовместимую прошивку ругается. Неправильные дескрипторы и аргументы говорит