CGA и CF IDE адаптер на Altera MAX10

16-битные ПЦ-совместимые компьютеры с процессорами 8086/8088/80286 работающие под управлением ДОС

Moderator: Shaos

Mixa64
Doomed
Posts: 480
Joined: 25 Aug 2009 07:02
Location: Москва

Re: CGA и CF IDE адаптер на Altera MAX10

Post by Mixa64 »

Tronix wrote:Хз. По справочнику jmp $ должен работать как должен, а не в качестве nop'ов.
Он не только по справочнику так должен работать. По косвенной инфе из интернета, это обычный прием. Если бы не работало, давно попало бы в анналы. Мой выпад был скорее в сторону Альтеры. А живой не затерявшийся в уголке плисины 88-й дает уникальную возможность непосредственно посмотреть, что же ему скармливается по шине.
newold86
Devil
Posts: 716
Joined: 30 Nov 2013 11:08
Location: WWW

Re: CGA и CF IDE адаптер на Altera MAX10

Post by newold86 »

Mixa64 wrote:Мой выпад был скорее в сторону Альтеры. А живой не затерявшийся в уголке плисины 88-й дает уникальную возможность непосредственно посмотреть, что же ему скармливается по шине.
Вообще моя плата воткнута в самую настоящую материнку XT с практически ламповым 8088...
DimkaM
Maniac
Posts: 261
Joined: 22 Jun 2005 04:35
Location: МО Россия

Re: CGA и CF IDE адаптер на Altera MAX10

Post by DimkaM »

Mixa64 wrote:Вот жеж прогресс скаканул. Во времена, когда 86-е были большими, при отладке юзались только средства непосредственного измерения и сверка со справочниками. Сегодня - гадания на кофейной гуще и прикидки, как вывести еще один индикатор, который покажет косвенное состояние чего-то, о функционировании которого имеется и без того смутное представление.
дык ни схемы ни сорцов альтеры нету, вот и гадаем
Vic3Dexe
Doomed
Posts: 370
Joined: 16 Dec 2014 11:58
Location: Киев

Re: CGA и CF IDE адаптер на Altera MAX10

Post by Vic3Dexe »

Не надо гадать. Достаточно дождаться преполагаемого hlt, после чего хотя бы ткнуться в указанные выше ноги обычным мультиметром.
Если там 5V (т.е., напруга питания), то проц стоит, если меньше (предполагаю 1.5-2V), то шина продолжает дергаться - идет выполнение чего-то.

И даже если он стоит, это все равно не будет показателем, т.к. совершенно неясно, это наш hlt его тормознул, или он встретил мусор в памяти и вывесился.
Нужны осциллограммы шины или сигналтапа (та же шина, но со стороны альтеры).
Заведите какой-то порт, запишите туда единицу в начале ext ROM, а в сигналтапе выставьте триггер на эту единицу.
User avatar
Lavr
Supreme God
Posts: 16680
Joined: 21 Oct 2009 08:08
Location: Россия

Re: CGA и CF IDE адаптер на Altera MAX10

Post by Lavr »

newold86 wrote:моя плата воткнута в самую настоящую материнку XT с практически ламповым 8088...
А сделайте фотку общего вида, если не трудно?
Хотелось бы ретроспективно глянуть на "самую настоящую материнку XT с практически ламповым 8088"... :wink:
iLavr
Mixa64
Doomed
Posts: 480
Joined: 25 Aug 2009 07:02
Location: Москва

Re: CGA и CF IDE адаптер на Altera MAX10

Post by Mixa64 »

newold86 wrote:чем может чтение области памяти отличаться от выполнения программы из этой-же области ???
Чтение скорее всего происходит последовательно, с монотонным возрастанием адресов, выполнение программы использует свойство ЗУПВ быть с ПВ. (или RAM быть RA).
newold86
Devil
Posts: 716
Joined: 30 Nov 2013 11:08
Location: WWW

Re: CGA и CF IDE адаптер на Altera MAX10

Post by newold86 »

Vic3Dexe wrote:Заведите какой-то порт, запишите туда единицу в начале ext ROM, а в сигналтапе выставьте триггер на эту единицу.
Ну что вы на меня все накинулись :) - напущу я анализатор на шину, просто в данный момент в паре тысяч километров от устройства... А за участие и советы - всем огромное спасибо !
Lavr wrote:Хотелось бы ретроспективно глянуть на "самую настоящую материнку XT с практически ламповым 8088"
Боюсь, я мог ввести в заблуждение неоднозначной фразой - имелась ввиду не оригинальная плата IBM PC/XT, а один из многочисленных клонов (вроде Siemens), но достаточно расово верный - полностью на рассыпухе, как и оригинальная плата.
Vic3Dexe
Doomed
Posts: 370
Joined: 16 Dec 2014 11:58
Location: Киев

Re: CGA и CF IDE адаптер на Altera MAX10

Post by Vic3Dexe »

Mixa64 wrote:Чтение скорее всего происходит последовательно, с монотонным возрастанием адресов, выполнение программы использует свойство ЗУПВ быть с ПВ. (или RAM быть RA).
В смысле? Память - она RA хоть для чтения, хоть для выполнения. С какого перепугу чтение последовательно?
Так что в контексте 8088/8086 - ничем не отличается. Разве что девайсы на мамке видят факт fetch и что-то специально предпринимают по этому поводу, но это частный случай.
Mixa64
Doomed
Posts: 480
Joined: 25 Aug 2009 07:02
Location: Москва

Re: CGA и CF IDE адаптер на Altera MAX10

Post by Mixa64 »

Vic3Dexe wrote:
Mixa64 wrote:Чтение скорее всего происходит последовательно, с монотонным возрастанием адресов, выполнение программы использует свойство ЗУПВ быть с ПВ. (или RAM быть RA).
В смысле? Память - она RA хоть для чтения, хоть для выполнения. С какого перепугу чтение последовательно?
Так что в контексте 8088/8086 - ничем не отличается. Разве что девайсы на мамке видят факт fetch и что-то специально предпринимают по этому поводу, но это частный случай.
Как я понял, внутри фпгашки у автора какой-то девайс, в поте лица работающий, а ПЗУшкой только прикидывающийся. И может такое случиться, что на последовательный перебор ячеек этот аппарат реагирует адекватно, а при произвольном начинает гнать лажу. Но я могу понимать неправильно.
newold86
Devil
Posts: 716
Joined: 30 Nov 2013 11:08
Location: WWW

Re: CGA и CF IDE адаптер на Altera MAX10

Post by newold86 »

Не думаю, что проблема именно в ROM внутри FPGA... Но вообще это навело на мысль - нет ли у меня какой-то лажи в управлении буферами шины данных ???
Похоже, действительно первым делом, как доберусь, нужно снять анализатором работу шины и внимательно на нее посмотреть...
Vic3Dexe
Doomed
Posts: 370
Joined: 16 Dec 2014 11:58
Location: Киев

Re: CGA и CF IDE адаптер на Altera MAX10

Post by Vic3Dexe »

Mixa64 wrote:что на последовательный перебор ячеек этот аппарат реагирует адекватно, а при произвольном начинает гнать лажу
Нет, там память моделируется как RAM/ROM, т.е. именно с произвольным доступом.
newold86
Devil
Posts: 716
Joined: 30 Nov 2013 11:08
Location: WWW

Re: CGA и CF IDE адаптер на Altera MAX10

Post by newold86 »

Да, нужно было сразу анализатор использовать, но меня вначале не в ту сторону понесло... Сразу стало видно проблемное место (почему-то иногда на шине данных появляется фигня), но причина проблемы еще неясна. Как разберусь окончательно (ну, или зайду в тупик :) ), напишу по результатам...
newold86
Devil
Posts: 716
Joined: 30 Nov 2013 11:08
Location: WWW

Re: CGA и CF IDE адаптер на Altera MAX10

Post by newold86 »

Вроде разобрался:

ROM внутри таких FPGA в стандартном виде всегда синхронный, т.е. (как минимум) требует сигнал, по фронту которого защелкивается адрес выбираемой ячейки. В данном случае в качестве такого адреса я использовал инвертированный сигнал ALE с ISA слота.
При рассмотрении анализатором циклов шины был обнаружен периодически выставляющийся адрес, увеличивающийся каждый раз на единицу. Практически уверен, что это цикл DMA регенерации памяти (могу удостовериться окончательно, но пока лень). Так вот, по каким-то совершенно непонятным пока для меня причинам после такого цикла при следующей выборке из ROM сигнал ALE почему-то не выставляется !!! Соответственно, ROM выдает не то, что у него просят, а то, что было защелкнуто в его адресном регистре прошлый раз...

Еще раз - всем, проявившим участие в разборках, огромное спасибо, и извините за беспокойство ! :)
Tronix
Doomed
Posts: 662
Joined: 18 Nov 2013 02:38
Location: Москва

Re: CGA и CF IDE адаптер на Altera MAX10

Post by Tronix »

newold86

Кстати по поводу саундбластера - есть такой проект из середины 90'х - ванин бластер назывался. Чувак взял 8031 контроллер и сэмулировал DSP на нем. При этом он говорит, что не срисовывал схему или что-то еще, а просто по описанию регистров все делал. Но ведь по-сути SB DSP - это и есть масочный 8051 (или 52, не помню точно). Ну и в архиве у него там есть схема и прошивки для ВЕ31, сорцов увы нет. Так же утверждается, что этот пепелац полностью совместим с SB 2.0, и игры принимают его за родного.

Image

Я к чему - вроде 51-ых ядер для FPGA есть свободные. Прошивка бля этого бластера есть... DAC у вас на плате вроде бы то же есть. Можно just for fun попробовать сэмулировать этот "ванин бластер" в FPGA. То есть такая эмуляция через эмуляцию для эмуляции, ну вы понимаете о чем я -)

Архив со всей требухой здесь: https://cloud.mail.ru/public/3SrbC9zHWL4J/sb-vanin.zip
User avatar
Lavr
Supreme God
Posts: 16680
Joined: 21 Oct 2009 08:08
Location: Россия

Re: CGA и CF IDE адаптер на Altera MAX10

Post by Lavr »

Tronix wrote:Архив со всей требухой здесь: https://cloud.mail.ru/public/3SrbC9zHWL4J/sb-vanin.zip
А закинь архив сюда на форум, а? У меня что-то проблемы с "Облаком Mail.RU"... :osad:
iLavr