PDA

Просмотр полной версии : Ленин1 256к на ALTERe



Mirazh
16.05.2010, 23:39
Добрый день.
Вот, что то захотелось изобразить. цель - ну типа экономия монтажного поля на ленине :)
в принципе это первое, что я изобразил на программируемой логике.
вся информация по расширению взята с форума. ( Спасибо Калдуну за подсказки :) )
на идеал не претендую, явно можно еще доработать, впихнуть порты музыкалки.... но эт чуть позже думаю...
ну в общем может кому и пригодится.

ps: про канифоль знаю... потом смою :)

http://photofile.ru/photo/mmarkssc/115775572/small/137164797.jpg (http://photofile.ru/users/mmarkssc/115775572/137164797/)
http://photofile.ru/photo/mmarkssc/115775572/small/137164815.jpg (http://photofile.ru/users/mmarkssc/115775572/137164815/)
http://photofile.ru/photo/mmarkssc/115775572/middle/137639323.jpg (http://photofile.ru/users/mmarkssc/115775572/137639323/)

https://i.ibb.co/4NgpjP0/256.jpg (https://ibb.co/w6r4KM2)

KALDYH
17.05.2010, 00:36
Изящно, блин! А на каком чипе собрано? У меня EPM7032 валяется, из разобранного на детали хаба, подойдет?

Mirazh
17.05.2010, 00:39
Изящно, блин!
да лана. сачковал по полной, особенно в конце )


У меня EPM7032 валяется, из разобранного на детали хаба, подойдет?
у мя тока 3032 в наличии. но думаю без проблем перекомпилится и под 7032

Alex_NEMO
04.06.2010, 22:22
ALTERA_LENIN_256.ZIP (527.5 Кб, 38 просмотров)

Mirazh, проект при открытии требует файл "lenin128\lenin128.bdf"! Обнови архивчик, ПЛС!

Ewgeny7
04.06.2010, 22:33
ps: про канифоль знаю... потом смою
Маладец, што саабразил! :)

Mirazh
05.06.2010, 00:41
проект при открытии требует файл "lenin128\lenin128.bdf"!
упс. утром сделаю.

---------- Post added at 00:41 ---------- Previous post was at 00:39 ----------


Маладец, што саабразил!
три каких то гомнофлюса покупал.... ну не паяецо так как с канифолью. походу надо брать чо-то фирменное чего у нас не привозят - а чо - хз (

Ewgeny7
05.06.2010, 01:23
походу надо брать чо-то фирменное чего у нас не привозят
ЛТИ-120 (спиртоканифоль + активатор) рулит всегда. Смывать не обязательно.

Mirazh
05.06.2010, 01:26
ЛТИ-120
ога. но последнюю нормальную я у носил с завода. и еще как то покупал году в 2003.... а недавно купил - какое то пережженое фуфло ((( вроде и копейки и толку все равно никакого. могу чистый спирт с канифолью сам набодяжить по идее )

Tuvic
05.06.2010, 03:50
ЛТИ-120 (спиртоканифоль + активатор) рулит всегда. Смывать не обязательно.

немного не в тему но всё-же, у нас лти-120 нет, но есть флюс F3 активированный бескислотный(состав: спирт, канифоль, диэтиламинхлорид, триэтаноламин), как думаете тоже самое?

Mirazh
05.06.2010, 11:36
проект при открытии требует файл "lenin128\lenin128.bdf"! Обнови архивчик, ПЛС!
залил пока рядышком. проверьте плз.

ps: добавил музыкалку. петь - поет. а вот индикаторы в демках не работают. может кто подскажет в чем дело....

Alex_NEMO
05.06.2010, 14:25
залил пока рядышком. проверьте плз.
Проверил - все равно с путями что-то "намучено"! Квартус теперь ищет папку "128lenin" и файлик "lenin128.bdf" в ней. Так же нет файлика "lenin128_ay.bdf"
Видать, ты кучу версий наделал в разных папках, и конечный проект их использует из разных мест. но, в принципе, разобраться можно.

ps: добавил музыкалку. петь - поет. а вот индикаторы в демках не работают. может кто подскажет в чем дело....
Я не сильно большой спец по этому вопросу, но в топике по "апгрейду" Спекки2007 до 128к озвучивалась эта проблема. Там что-то связано с тем, что AY/YM не только "читается", но и пишется. И на мой взгляд, дешифрация грубовато сделана! Хотя, емкости ПЛИСки Х032 может и не хватить на все дела... Может, "мелкую логику" в дешифраторе AY стоит заменить на "классику" - ИД7 + ЛА3? ЛА3 у тебя там есть, осталось квартусовским "аналогом" ИД7 заменить "мелочевку".

Mirazh
05.06.2010, 14:29
Проверил - все равно с путями что-то "намучено"! Квартус теперь ищет папку "128lenin" и файлик "lenin128.bdf" в ней. Так же нет файлика "lenin128_ay.bdf"
Видать, ты кучу версий наделал в разных папках, и конечный проект их использует из разных мест. но, в принципе, разобраться мо
все так и есть :(

---------- Post added at 14:29 ---------- Previous post was at 14:27 ----------


И на мой взгляд, дешифрация грубовато сделана
да я схемы 3-4 пробовал... чо то не так с портом чтения наверно. хз я пока... (

Хотя, емкости ПЛИСки Х032 может и не хватить на все дела...
ни. емкости хватит.... а вот ног.....

zx-kit
08.06.2010, 19:13
Я не сильно большой спец по этому вопросу, но в топике по "апгрейду" Спекки2007 до 128к озвучивалась эта проблема. Там что-то связано с тем, что AY/YM не только "читается", но и пишется. И на мой взгляд, дешифрация грубовато сделана! Хотя, емкости ПЛИСки Х032 может и не хватить на все дела... Может, "мелкую логику" в дешифраторе AY стоит заменить на "классику" - ИД7 + ЛА3? ЛА3 у тебя там есть, осталось квартусовским "аналогом" ИД7 заменить "мелочевку".

Как писали на VHDL (http://zx.pk.ru/showpost.php?p=208602&postcount=113):

AY_BC1 <= '1' when VAR(1 downto 0) = "01" and M1 = '1' and IOREQ = '0' and A14 = '1' and A15 = '1' else '0';
AY_BDIR <= '1' when VAR(1 downto 0) = "01" and M1 = '1' and IOREQ = '0' and A15 = '1' and WR = '0' else '0';

Что на обычном языке:

BC1 = 1 когда A1 = 0, A0 = 1, M1 = 1, IOREQ = 0, A15 = 1, A14 = 1; иначе = 0
BDIR = 1 когда A1= 0, A0 = 1, M1 = 1, IOREQ = 0, A15 = 1, WR = 0; иначе = 0

В последней версии прошивки код такой (VHDL):

AY_CLK <= ChrC_Cnt(1);
AY_PORT <= '0' when WR = '1' and RD = '1' else
'1' when VBUS_MODE = '0' and VA(1 downto 0) = "01" else
'0' when VBUS_MODE = '0' else
AY_PORT;

AY_BC1 <= '1' when AY_PORT = '1' and M1 = '1' and IOREQ = '0' and A14 = '1' and A15 = '1' else '0';
AY_BDIR <= '1' when AY_PORT = '1' and M1 = '1' and IOREQ = '0' and A15 = '1' and WR = '0' else '0';

Что очень похоже на верхние строки.

Keeper
08.06.2010, 19:35
Смотрел файл который в аттаче, вроде на чтение правильно сигналы должен выставлять, нужно проверять монтаж и посмотреть что там в RTL viewere получается... Выложи рабочий проект.

Mirazh
12.06.2010, 16:58
во, должен открываться и компилиться.
засаду с музыкалкой так и не вычислил (

Mirazh
12.06.2010, 17:00
http://www.emuverse.ru/wiki/%D0%A0%D0%B0%D0%B4%D0%B8%D0%BE%D0%BB%D1%8E%D0%B1%D 0%B8%D1%82%D0%B5%D0%BB%D1%8C_1994-02%2C03/%D0%A1%D0%BF%D0%B5%D0%BA%D1%82%D1%80%D1%83%D0%BC-128



Стандартная схема включения AY-3-8912 (8910) предполагает наличие двух входных сигналов ВC1, BDIR и трех выходных сигналов: А, В, С. Обращение к музыкальным функциям AY-3-8912 происходит в компьютере через два порта с адресами BFFDh (десятичный 49149) и FFFDh (десятичный 65533). В порт FFFDh программно можно записать число от 00h до ODh, выбрав тем самым один из 14 регистров (режимов работы). Порт ВFFDh предназначен только для записи данных в ранее выбранный регистр. Особенностью системы-128 является то, что обратно считывать данные необходимо с порта FFFDh (табл.2), а не с BFFDh как логично было бы предположить [5].

На основании приведенной таблицы истинности можно составить электрическую схему сопряжения, будь то на логических элементах И-ИЛИ-НЕ или на дешифраторах типа К555ИД4, К555ИД7.

В самодельных схемах иногда путают адрес порта чтения и, вместо FFFDh, данные пытаются считывать с порта BFFDh. В некоторых компьютерных программах специально проверяется наличие в схеме музыкального сопроцессора путем чтения данных. Например, в дисковых версиях музыкальных программ MICRO SOUND-128 «PART-3» (INX SOFTWARE, 1989); FANTAZY DEMO (RAFII SOFTWARE, ПОЛЬША, 1990) при неправильной адресации порта чтения пропадает индикация каналов А, В, С.

Правильность обращения к порту чтения определяет программа:

10 OUT 65533, 12
20 FOR A=0 TO 15: OUT 49149, А
30 PRINT IN 65533, IN 49149
40 NEXT A

На экране должны появиться два вертикальных столбика по 16 цифр. Если оба столбика содержат все цифры 255, то в Вашей схеме вообще отсутствует чтение AY-3-8912.

Если первый (левый) столбик содержит все цифры 255, а второй (правый) — цифры от 0 до 15, то у Вас «неправильная» приставка с адресом чтения BFFDh.

Табл.2
СИГНАЛЫ КОМПЬЮТЕРА СИГНАЛЫ AY-3-8912 ПРИМЕЧАНИЯ
А1 А15 А14 WR RD IORQ ВС1 BDIR
0 1 0 0 1 0 0 1 запись BFFDh
0 1 1 0 1 0 1 1 запись FFFDh
0 1 0 1 0 0 1 0 чтение FFFDh
Любой другой набор 0 0 Нет выбора

Нормальной работе соответствует левый столбик из цифр от 0 до 15, а правый — все цифры 255.




у меня прога выдает оба столбца 224.

molodcov_alex
12.06.2010, 17:18
С кемпстоном конфликтует. Который в ленине сделан по адресу xxxx xxxx xxxx xxx1

Mirazh
12.06.2010, 17:28
С кемпстоном конфликтует.
опа! спасибо за наводку!! покопаю...

Mirazh
14.06.2010, 00:04
заткнул нафег кемпстон на плате - сразу индикаторы в демках заморгали )

Mirazh
14.06.2010, 00:59
убийство джойстика )

Mirazh
14.06.2010, 13:31
текущее состояние:
http://photofile.ru/photo/mmarkssc/115775572/small/137827537.jpg (http://photofile.ru/users/mmarkssc/115775572/137827537/)

Mirazh
18.06.2010, 18:19
накинул контролер пц клавы и поставил разъем для контроллера.
имхо все. больше ничего не влезет на монтажное поле ленина ))

https://i.ibb.co/x7zrJMm/256-2.jpg (https://ibb.co/yQgxW8h)


http://photofile.ru/photo/mmarkssc/115775572/small/137932088.jpg (http://photofile.ru/users/mmarkssc/115775572/137932088/)

http://photofile.ru/photo/mmarkssc/115775572/small/137932079.jpg (http://photofile.ru/users/mmarkssc/115775572/137932079/)

Mirazh
25.05.2020, 17:20
а случайно никто не больше так не делал? ))

valerium
01.06.2020, 10:08
Шикарно выглядит разрыв в 10 лет (!) между двумя предыдущими сообщениями темы )

Хочу попробовать реализовать нечто подобное - тоже именно потому, что нет места на плате Ленинграда (это Веста ИК-30, там нет макетного поля).
Пока в 128-м варианте на двух линейках РУ5.
И не хочу паять кучу корпусов на "второй этаж" - глючно это как-то. Будет один корпус CPLD где-то в уголке на стойках и на обрезке макетки.

Я так понимаю, EPM3032/3064 выбраны именно потому, что они 5V-tolerant по входам/выходам и все удобно напрямую соединяется со 5-вольтовым Спеком ?
А можно ли то же самое сделать на EPM240 с каким-то простым согласованием уровней ? Вот в TK-pie это сделано просто последовательными резисторами 330 ом на все входы (но там у EPM240 используются только входы).

Mirazh
01.06.2020, 15:54
в этом ленине выбраны Ру7 именно потому, чтобы второй этаж не паять - как раз 8 микросхем. ну а раз уж поставили ру7 - то что ж 128к ограничиваться - пусть все 256к работают ))

А епм 3032/64 выбраны потому - что они у меня были.
по согласованию не подскажу. в эту сторону совсем не смотрел (

- - - Добавлено - - -

зыЖ на мотнтажное поле ленина впихнуто:
- порт для расширения до 256к+порт музыкалки (в альтере)
- сама музыкалка (короткая)
- контроллер PC клавы на тини 2313
- разъем для бета-диска.

valerium
03.06.2020, 23:05
Смотрю схему с прицелом запустить ее на 41256, но пока с 128к и с битом блокировки (D5). А дальше как пойдет.
Память с демонтажными иголками как-то при случае была заказана из китая, поэтому едет и очень небыстро, а я пока раздобыл настоящую EPM3032 (а к ней вдогонку теплые пятивольтовые EPM7064S PLCC44 и EPM7128S PLCC84 китайского происхождения - для экспериментов). Ну а пока едет, поиграю со схемой и соберу "плоский картридж", чтоб засунуть его в Весту 48 ).

Марк, подскажи, в дешифрации порта 7ffd несколько ступеней 2-ИЛИ - это так случайно получилось или так экспериментально выстроена какая-то задержка ? Просто в CLPD легко можно все это заменить на один 4-ИЛИ и читаться будет легче.
И в схеме запрета записи в нулевую страницу через нижние адреса - обычно там ставится один элемент 2-ИЛИ, а здесь стоит 2-ИЛИ-НЕ, а за ним инвертор - это просто копирка со схемы, оптимизированной под живые корпуса логики, или в этом другой смысл ?

NEO SPECTRUMAN
04.06.2020, 00:08
https://i.ibb.co/x7zrJMm/256-2.jpg

а случайно никто не больше так не делал? ))
а этот изящный жгут мгтф-а спустя 10 лет не отвалился и еще работает?

- - - Добавлено - - -

вопрос номер два
его изолировали до пайки?
или после

Mirazh
04.06.2020, 11:58
Марк, подскажи, в дешифрации порта 7ffd несколько ступеней 2-ИЛИ - это так случайно получилось или так экспериментально выстроена какая-то задержка ? Просто в CLPD легко можно все это заменить на один 4-ИЛИ и читаться будет легче.
И в схеме запрета записи в нулевую страницу через нижние адреса - обычно там ставится один элемент 2-ИЛИ, а здесь стоит 2-ИЛИ-НЕ, а за ним инвертор - это просто копирка со схемы, оптимизированной под живые корпуса логики, или в этом другой смысл ?

на за давностью лет конечно точно не вспомню - но скорее всего тупое копирование схемы (

- - - Добавлено - - -


https://i.ibb.co/x7zrJMm/256-2.jpg

а этот изящный жгут мгтф-а спустя 10 лет не отвалился и еще работает?

- - - Добавлено - - -

вопрос номер два
его изолировали до пайки?
или после

я чот сдуру продал тут на барахолке этот ленин ((
но уверен на 100% - жгут не отвалился )

вы про красную термоусадку? да, надевал ее до пайки конечно.
сначала распаял на разъеме, потом сформировал, надел термоусадку, закрепил и уже на проце распаивал по месту.
вызванивал конечно каждый проводок.

Serg6845
04.06.2020, 20:53
а случайно никто не больше так не делал? ))

не совсем так, но делал :)

http://sksb3.no-ip.org:8085/lenin_top.jpg

внутри - 256к, половина BDI, выборка AY, SPI порт для speccyboot (макетка с RJ-45 слева), порт FF, и до кучи - UART (позволяет грузить код по XMODEM при старте)

http://sksb3.no-ip.org:8085/lenin_bot.jpg


а МГТФ я в таких применениях не люблю - его зачищать удолбаешься...

- - - Добавлено - - -



а этот изящный жгут мгтф-а спустя 10 лет не отвалился и еще работает?



не знаю как МГТФ, а вот это

http://sksb3.no-ip.org:8085/sp_l_bot.jpg

было спаяно в 89 или 90 году прошлого века, и до сих пор без проблем работает.

valerium
04.06.2020, 23:17
внутри - 256к, половина BDI, выборка AY, SPI порт для speccyboot (макетка с RJ-45 слева), порт FF, и до кучи - UART .
Клево, а которая половина bdi внутри альтеры ? вг93 снаружи висела ?

А как лак на проводах выдерживает всякие деформации при сборке и дальнейшей эксплуатации ? мне всегда казалось, что если его чуть шоркнуть - лак облезет и в таком клубке КЗ найти будет просто нереально. Последнее фото доказывает обратное, конечно.
Или с такой платой все-таки надо было сильно осторожничать?

Serg6845
04.06.2020, 23:40
Клево, а которая половина bdi внутри альтеры ? вг93 снаружи висела ?

снаружи конечно, в такую альтеру ВГ93 даже близко не влезет. внутри - триггер трдос с обвязкой, коммутация ПЗУ, наружу идут - шина данных, А5, А6, А7 (если не ошибаюсь), /RD, /WR и выборка ВГ_и_всего_что_вокруг


А как лак на проводах выдерживает всякие деформации при сборке и дальнейшей эксплуатации ? мне всегда казалось, что если его чуть шоркнуть - лак облезет и в таком клубке КЗ найти будет просто нереально. Последнее фото доказывает обратное, конечно.
Или с такой платой все-таки надо было сильно осторожничать?

да без проблем вобще. даже кратковременное тыкание паяльником выдерживает в процессе отладки. ну разумеется не рассчитано на постоянное шевеление (механическое) - но если плата живет себе спокойно в корпусе - обычно его и нет.

p.s. ну конечно оторвать такую проволочку проще чем МГТФину - просто из-за толщины, потому слишком тонкие не рекомендуются. по мне оптимум - 0.15-0.25мм.

Mirazh
05.06.2020, 14:26
не совсем так, но делал :)

http://sksb3.no-ip.org:8085/lenin_top.jpg

внутри - 256к, половина BDI, выборка AY, SPI порт для speccyboot (макетка с RJ-45 слева), порт FF, и до кучи - UART (позволяет грузить код по XMODEM при старте)


Богато однако ))


http://sksb3.no-ip.org:8085/lenin_bot.jpg
а МГТФ я в таких применениях не люблю - его зачищать удолбаешься...


Я вот такой зачисткой пользуюсь для мгтф
https://i.ibb.co/wr35dwm/image.jpg (https://ibb.co/S7WF6dC)



не знаю как МГТФ, а вот это
http://sksb3.no-ip.org:8085/sp_l_bot.jpg
было спаяно в 89 или 90 году прошлого века, и до сих пор без проблем работает.
усидчиво ))