Scorpion ZS 256 - лечим глюки (Новая версия прошивки "турбо" для зеленого скорпиона!!!)

Postby KOE » 25 Sep 2007, 21:48

Итак, ниже выложен VHDL-исходник новой прошивки "турбо" для зеленого скорпиона (by KOE).

Исправлены следующие ошибки зоновской прошивки:

1. Формирование сигнала WAIT в нетурбе. Теперь он формируется как ему и положено, в циклах M1 в зависимости от состояния H1. У Зонова были глюки.
2. Формирование сигнала WAIT в турбе. Алгоритм формирования WAIT был сделан таким образом, чтобы диаграмма работы с памятью в турбе на 100% совпадала с работой в нетурбе. Только так можно добиться безглючного функционирования компа. В Зоновской прошивке были серьезные ошибки и его прошивка теоретически работать не могла. Я уж и так и эдак пытался согласовать ее с диаграммами работы Z80, но не получилось. Функционирование же ее на практике можно объяснить только тем, что память может схватывать и выдавать данные быстрее, чем за 0.5 такта 3.5 МГц. Отсюда и глючность скорпионов и их жуткаая критичность к типу ИМС памяти. Теперь все это отсутствует. На моем скорпе с этой прошивкой без единого глюка работают советские ОКР565РУ7Д2.

Вместо p.s.:

К сожалению, контроллер дисковода не всегда безглючно работает в турбе. Обезглючить его просто удлинением WAIT'a при обращении к портам не всегда удается. В идеале, турбу в TR-DOSe надо ВЫКЛЮЧАТЬ, как это сделано в Pentagon-1024sl 2.2. Сделать это в рамках ПЛИС, вставляющейся в переходную колодку вместо оригинальной ПЛИС скорпиона, невозможно. А хотелось сделать так, чтобы для использования моей прошивки не нужно было делать аппаратных изменений в компьютере. Поэтому был сделан 'финт ушами' и состояния компьютера (турбо/нетурбо) были поменяны местами. Т.е. комп стартует теперь с отключенной турбой и с ней же вываливается в TR-DOS, а юзер сам включит турбу кнопкой, когда ему это будет надо. Единственное неудобство в том, что при управлении турбой через теневик надо помнить, что на самом деле все наоборот. Хотя я теневиком еще ни разу не пользовался. Следует заметить, что это минимальная расплата за кривую зоновскую схемотехнику.
Attachments
04907504.vhd
(1.64 KB) Downloaded 377 times
Last edited by KOE on 25 Sep 2007, 22:41, edited 1 time in total.
Мы рождены, чтоб сказку сделать былью
"Кто не обломался, тем еще предстоит"
User avatar
KOE
 
Posts: 4674
Joined: 15 Apr 2007, 13:06
Group: Registered users

Postby lvd » 26 Sep 2007, 09:33

А давно ли вы, сударь, вхдл выучили, если не секрет? smile
F̞͖̭̿̔ͯu̐̅cͬ̑ͩk̨̤̳͇̮̭̪̠̽̿̓̆ͭͩ ̷̩̰͎̩͓̘̾̀ͬ̊ͭ͛ͅda̝̺͙̬͎̝̾͟ ̰̜̝̯͉̯̖̓̎́ͨ̽ͫ͟f̟͇̭̀ͬͨͭ̐̚u̹̼̹̗̞͑̔͂͐̚cͭ̅̊̆̒̆ǩ̝̩̯́ͥ̔̍̑ḭ͓͍̳̬ͦ̽͂n͍͎͈̈̅ͩͬ ̊ͫ̂̾̑̈́f̲͚͉͓͗̋́ͧͦ̅ȗ͇̲̻͈̲̅̎͗͒ͭ͡c̬̟̠̹̯̈́ͩ͘ͅk̫̠̻̋͜a̲͒̾̇!͙͕̺͉̗̩̲̂̏̄̀
User avatar
lvd
 
Posts: 7239
Joined: 07 Apr 2007, 21:28
Group: Registered users

Postby KOE » 26 Sep 2007, 19:21

С пол-года, как уже. Просто на работе занимаюсь теперь дизайном fpga, а сложные и громоздкие вещи на AHDL писать неудобно.
Мы рождены, чтоб сказку сделать былью
"Кто не обломался, тем еще предстоит"
User avatar
KOE
 
Posts: 4674
Joined: 15 Apr 2007, 13:06
Group: Registered users

Postby fk0 » 27 Sep 2007, 00:41

Как мне выучить vhdl?
* Origin: зип файл! (2:5030/1559)
User avatar
fk0
 
Posts: 1533
Joined: 07 Apr 2007, 01:08
Group: Registered users

Postby KOE » 27 Sep 2007, 00:52

fk0 wrote:Как мне выучить vhdl?

Я использовал, в основном, книгу Стешенко "ПЛИС фирмы Altera. Элементная база, система проектирования и языки описания аппаратуры", САПР Quartus и тренировочную плату, на которой стояла EP2C5, контроллер ARM LPC2149 и SRAM K6R4008. Не ставил цель изучить VHDL полностью, сначала изучил минимум, необходимый для начала работы, потом уже по ходу при возникновении вопросов обращался к книге и к знающим людям на работе.
Мы рождены, чтоб сказку сделать былью
"Кто не обломался, тем еще предстоит"
User avatar
KOE
 
Posts: 4674
Joined: 15 Apr 2007, 13:06
Group: Registered users

Postby deathsoft » 27 Oct 2007, 20:39

fk0 wrote:Как мне выучить vhdl?

Погуглить на предмет vhdl cook book - в данной книжке в доступной форме все объяснено на примерах. В качестве законченного примера разработан простенький RISC процессор.
User avatar
deathsoft
 
Posts: 4709
Joined: 07 Apr 2007, 00:58
Group: Registered users

Postby deathsoft » 27 Oct 2007, 20:40

KOE wrote:Т.е. комп стартует теперь с отключенной турбой и с ней же вываливается в TR-DOS

Ну и в чем плюс такой доработки? В скорпе был специально пропатченый TR-DOS который прекрасно работал в турбе, а ты из скорпа KAY сделал, в котором турба в досе отключалась.

Более того, в моем скорпе, (плата SC14 желтая схема) вообще нет ни кнопки ни индикатора турбы, турба включается/выключается только через монитор.

Описать турбу на vhdl - это конечно - просто подвиг (вопрос зачем только?, ПЛМ вхдл не поддерживают). В оригинальной турбе было всего с десяток простейших булевых функций написаны на abel (понимается всеми ПЛМ), ну на vhdl их можно было переписать 1 в 1 (те же 10 строк).

Исправление временной диаграмы - это конечно хорошо, но думаю можно было сделать и в рамках ПЛМ.
Last edited by deathsoft on 27 Oct 2007, 20:45, edited 1 time in total.
User avatar
deathsoft
 
Posts: 4709
Joined: 07 Apr 2007, 00:58
Group: Registered users

Postby KOE » 28 Oct 2007, 17:11

deathsoft wrote:Ну и в чем плюс такой доработки?


В том, что она рботет на любом зеленом скорпионе и сразу, и без настройки, и незвисимо от того, кто этот скорп собирал, незвисимо от марки используемых микросхем ОЗУ, независимо от времени суток, температуры, влажности, времени года и фазы луны.

deathsoft wrote:
В скорпе был специально пропатченый TR-DOS который прекрасно работал в турбе, а ты из скорпа KAY сделал, в котором турба в досе отключалась.

В моем экземпляре TR-DOS в турбе не работает. Ты думаешь, что если бы родная прошивка у меня без проблем и сразу заработала, я бы стал что-то делать? Изначально я взял родную Зоновскую прошивку. Прошил. Нифига не работает. Начал разбираться, в чем дело, волосы дыбом встали. Я человек жутко ленивый, если бы не было крайней необходимости, я никогда бы не стал что-то переделывать.

deathsoft wrote:ПЛМ вхдл не поддерживают


Ну и в зад их.

deathsoft wrote:vhdl их можно было переписать 1 в 1 (те же 10 строк)


Если бы еще эти 10 строк нормально работали...

deathsoft wrote:Исправление временной диаграмы - это конечно хорошо, но думаю можно было сделать и в рамках ПЛМ


ПЛМ в Москве стоит дороже, чем простые ПЛИС. Зачем я буду извращаться н abel-е, чтобы потом еще и переплачивать за ПЛМ?
Last edited by KOE on 28 Oct 2007, 17:17, edited 1 time in total.
Мы рождены, чтоб сказку сделать былью
"Кто не обломался, тем еще предстоит"
User avatar
KOE
 
Posts: 4674
Joined: 15 Apr 2007, 13:06
Group: Registered users

Postby deathsoft » 29 Oct 2007, 23:00

KOE wrote:В моем экземпляре TR-DOS в турбе не работает.

Не безизвестный Mikka A собрал штук 10 зеленых скорпов, на платах полученных им в фирме скорпион, и не заработала всего 1 плата, во всех остальных TR-DOS прекрасно работает в турбе. Другое дело - что режим турбо может быть реализован криво. Но если уж и дорабатывать, то сделать так, чтобы в доработаной турбе TR-DOS работал в турбо режиме - как в оригинале, а не в заторможеном режиме как на KAY-1024.
User avatar
deathsoft
 
Posts: 4709
Joined: 07 Apr 2007, 00:58
Group: Registered users

Postby deathsoft » 29 Oct 2007, 23:05

KOE wrote:В моем экземпляре TR-DOS в турбе не работает.

А прошивка то какая? От проф ПЗУ? Если 2.95 - то она в турбе вроде и не работала, а если от проф пзу - то работала нормально, я ее вообще во флэшку винбондовскую прошил, вместо пзу, хотя у меня вообще желтый скорпион, в котором int сделан на RC-цепочке и еще куча RC-цепочек для подгона времянок. Глюков с турбой на моем скорпе никогда не было.
User avatar
deathsoft
 
Posts: 4709
Joined: 07 Apr 2007, 00:58
Group: Registered users

Next

Return to Hardware

Who is online

Users browsing this forum: No registered users and 4 guests

cron