Новая прошивка 7i93

Работа с платами MESA, подключение, конфигурация.
VitalikD
Мастер
Сообщения: 305
Зарегистрирован: 29 авг 2013, 20:17
Репутация: 41
Контактная информация:

Новая прошивка 7i93

Сообщение VitalikD »

Нужно 8 энкодеров, 8 степгенов и хотябы пару смартсериал. Готовой такой прошивки нет, но в папке с исходниками есть на 10 энкодеров, 8 степгенов и пол ведра смарт сериал. Прошивка для трехразъемной платы. ФПЖА вроде бы подходит. Достаточно будет изменить пин файл и откомпилировать проект? Хотелось бы убрать два энкодера со второго разъема ( еще там есть 2 ноги без спецфункций ) и посадить на это место 4 смарт сериал порта, как на картинке. Третий разъем уволить.
Вложения
fw.png (5285 просмотров) <a class='original' href='./download/file.php?id=167022&sid=9ac826e410dc8dc30b23d17b52f82b46&mode=view' target=_blank>Загрузить оригинал (219.19 КБ)</a>
D.L.
Мастер
Сообщения: 471
Зарегистрирован: 25 авг 2018, 10:11
Репутация: 152
Настоящее имя: Дмитрий
Откуда: Киров
Контактная информация:

Re: Новая прошивка 7i93

Сообщение D.L. »

VitalikD писал(а):Достаточно будет изменить пин файл и откомпилировать проект?
Да, только в constant ModuleID исправить количество энкодеров на 8мь:
(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ти минут.
VitalikD
Мастер
Сообщения: 305
Зарегистрирован: 29 авг 2013, 20:17
Репутация: 41
Контактная информация:

Re: Новая прошивка 7i93

Сообщение VitalikD »

Очень хорошо. А этого
D.L. писал(а):И удалённые строки IOPortTag... заменить на emptypin(24шт).
достаточно, чтобы ноги третьего порта не ожили? Неиспользуемые, наверно, на плате к питанию или земле прибиты. В 7i93.ucf только до "IOBITS<47>" ножки расписаны. Модули можно вообще на любые ножки раскидывать, или есть ограничения по расположению на кристалле и банкам? Какое по для компиляции мне нужно в минимальном объеме?
D.L.
Мастер
Сообщения: 471
Зарегистрирован: 25 авг 2018, 10:11
Репутация: 152
Настоящее имя: Дмитрий
Откуда: Киров
Контактная информация:

Re: Новая прошивка 7i93

Сообщение D.L. »

VitalikD писал(а):достаточно, чтобы ноги третьего порта не ожили
Да, достаточно.
VitalikD писал(а):Модули можно вообще на любые ножки раскидывать, или есть ограничения по расположению на кристале и банкам?
Ограничений нет, но есть небольшой шанс что не соберётся.
VitalikD
Мастер
Сообщения: 305
Зарегистрирован: 29 авг 2013, 20:17
Репутация: 41
Контактная информация:

Re: Новая прошивка 7i93

Сообщение VitalikD »

Я там еще по ПО вопрос добавил. Что мне нужно по минимуму? Помню лет 10 назад понадобилось простенькую поделку на цплд сделать, так с альтеры пришлось какое-то огромное чудовище качать.
D.L.
Мастер
Сообщения: 471
Зарегистрирован: 25 авг 2018, 10:11
Репутация: 152
Настоящее имя: Дмитрий
Откуда: Киров
Контактная информация:

Re: Новая прошивка 7i93

Сообщение D.L. »

Я качал Xilinx ISE Design Suite 13.4(Xilinx_ISE_DS_Win_13.4_O.87xd.3.0.tar), почти 6Гб.
Но там регаться нужно чтоб скачать, и потом ещё и лицензию получать.
Если лень это делать, то могу скинуть то что получилось, но на свой страх и риск.
VitalikD
Мастер
Сообщения: 305
Зарегистрирован: 29 авг 2013, 20:17
Репутация: 41
Контактная информация:

Re: Новая прошивка 7i93

Сообщение VitalikD »

Наверное, нет смысла качать для разовой компиляции. Не могли бы Вы собрать проект, если я выложу измененный TopEthernet16HostMot2.vhd и pin файлы?
D.L.
Мастер
Сообщения: 471
Зарегистрирован: 25 авг 2018, 10:11
Репутация: 152
Настоящее имя: Дмитрий
Откуда: Киров
Контактная информация:

Re: Новая прошивка 7i93

Сообщение D.L. »

Я уже собрал, пин файл такой:

Код: Выделить всё

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 не нужен, пин файл можно запостить прямо сюда.
VitalikD
Мастер
Сообщения: 305
Зарегистрирован: 29 авг 2013, 20:17
Репутация: 41
Контактная информация:

Re: Новая прошивка 7i93

Сообщение VitalikD »

Спасибо, это то что нужно. Бинарник можно прилепить в архиве прямо сюда, он небольшой. Если не получится, я скину адрес в личку. А зачем нужен txen выход? Меса вроде использует 422 физический интерфейс а не 485? И для себя нет смысла изобретать. Я как раз хотел посмотреть информацию по этому поводу и решить впихнуть 4 пары рхтх или как у Вас.
D.L.
Мастер
Сообщения: 471
Зарегистрирован: 25 авг 2018, 10:11
Репутация: 152
Настоящее имя: Дмитрий
Откуда: Киров
Контактная информация:

Re: Новая прошивка 7i93

Сообщение D.L. »

VitalikD писал(а):А зачем нужен txen выход?
Видимо для какой-то месовской платы нужен.
Сейчас и на 4 пары соберу.
VitalikD
Мастер
Сообщения: 305
Зарегистрирован: 29 авг 2013, 20:17
Репутация: 41
Контактная информация:

Re: Новая прошивка 7i93

Сообщение VitalikD »

Да, если все так просто, месовское ПО могучая штука за сущие копейки.
D.L.
Мастер
Сообщения: 471
Зарегистрирован: 25 авг 2018, 10:11
Репутация: 152
Настоящее имя: Дмитрий
Откуда: Киров
Контактная информация:

Re: Новая прошивка 7i93

Сообщение D.L. »

3 варианта прошивки, использовать на свой страх и риск.
projects_new_bits.rar
(340.37 КБ) 248 скачиваний
VitalikD
Мастер
Сообщения: 305
Зарегистрирован: 29 авг 2013, 20:17
Репутация: 41
Контактная информация:

Re: Новая прошивка 7i93

Сообщение VitalikD »

Прошивка в плату зашла. Сейчас попробую что-нибудь к ней прикрутить.
VitalikD
Мастер
Сообщения: 305
Зарегистрирован: 29 авг 2013, 20:17
Репутация: 41
Контактная информация:

Re: Новая прошивка 7i93

Сообщение VitalikD »

Не, не вышел каменный цветок. Не признает ее hostmot
D.L.
Мастер
Сообщения: 471
Зарегистрирован: 25 авг 2018, 10:11
Репутация: 152
Настоящее имя: Дмитрий
Откуда: Киров
Контактная информация:

Re: Новая прошивка 7i93

Сообщение D.L. »

Смарт сериал не работает?
VitalikD
Мастер
Сообщения: 305
Зарегистрирован: 29 авг 2013, 20:17
Репутация: 41
Контактная информация:

Re: Новая прошивка 7i93

Сообщение VitalikD »

Не, вообще не работает.
Вложения
hal.png
hal.png (10.78 КБ) 5148 просмотров
D.L.
Мастер
Сообщения: 471
Зарегистрирован: 25 авг 2018, 10:11
Репутация: 152
Настоящее имя: Дмитрий
Откуда: Киров
Контактная информация:

Re: Новая прошивка 7i93

Сообщение D.L. »

А пингуется, mesaflash видит?
VitalikD
Мастер
Сообщения: 305
Зарегистрирован: 29 авг 2013, 20:17
Репутация: 41
Контактная информация:

Re: Новая прошивка 7i93

Сообщение VitalikD »

Извиняюсь. Вот:
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:
D.L.
Мастер
Сообщения: 471
Зарегистрирован: 25 авг 2018, 10:11
Репутация: 152
Настоящее имя: Дмитрий
Откуда: Киров
Контактная информация:

Re: Новая прошивка 7i93

Сообщение D.L. »

Понял в чём ошибка, сейчас поправлю.
VitalikD
Мастер
Сообщения: 305
Зарегистрирован: 29 авг 2013, 20:17
Репутация: 41
Контактная информация:

Re: Новая прошивка 7i93

Сообщение VitalikD »

Пингуется, Месафлеш конфигурацию показывает. При загрузке в хал на несовместимую прошивку ругается. Неправильные дескрипторы и аргументы говорит
Ответить

Вернуться в «MESA»