PDA

Просмотр полной версии : Орион-128: Первые опыты постройки компьютера на ПЛИС от ewgeny7



Ewgeny7
12.12.2008, 18:48
комменарий ом модератора: Хоть ewgeny7 и просил убить эти сообщения, потому как это были всего лишь наброски. Я их переместил в отдельную тему - может кому и пригодятся промежуточные результаты постройки узлов компьютера.


Процессоры все едут... :(
От нефиг делать сбацал видеоподсистему Ориона на Альтере. Бит D0 для наглядной "полосатости" подтянут на землю. Почти полсхемы Ориона влезли в древнебюджетную EPM3032ALC44. Сваять чтоли потом на досуге Орион на EPM7128...? :v2_conf2:

Error404
12.12.2008, 19:56
Процессоры все едут... :(
От нефиг делать сбацал видеоподсистему Ориона на Альтере. Бит D0 для наглядной "полосатости" подтянут на землю. Почти полсхемы Ориона влезли в древнебюджетную EPM3032ALC44. Сваять чтоли потом на досуге Орион на EPM7128...? :v2_conf2:

Сваяй :) А на что хватает этой ПЛМ?
Как раз нужна компактная версия для Z80. Хочу себе, но ломает 60 мсх рассыпухи паять, да и вариант переделывать под Z80Card II на стандартной журнальной печатке, да еще с минимально необходимыми доработками (512кб DRAM, расширение экрана 480x256, турбирование) будет не менеее, а возможно и более трудоемким. Делать на CPLD новое для 8080 смысла нет, ИМХО.

Ewgeny7
12.12.2008, 20:27
Сейчас пишу для эксперимента для EPM7064.
Впихнул туда кроме СГ и ВГ схему регенерации ОЗУ и вывода из ОЗУ на монитор.
Т.е. вся верхняя часть схемы с кусочком нижней (формирователь WE и триггер доступа процессора к ОЗУ).
Занято 75% чипа. Осталось 7 свободных ног. С учетом, что я "подключил" только одну банку ОЗУ.
Итого вывод - 7064 не хватает. Нужна 7128 с ее сотней ног и в два раза большим объемом.

Добавлено через 5 минут
Думал насчет СИММ. Проблема в том, что видеогенератор юзает в цветном режиме сразу две банки ОЗУ одновременно. Блин, две планки симок чтоли ставить...

Mick
12.12.2008, 20:55
Думал насчет СИММ. Проблема в том, что видеогенератор юзает в цветном режиме сразу две банки ОЗУ одновременно. Блин, две планки симок чтоли ставить...

Если ты под Z80 пишешь, то попробуй использовать Спековский прицип вывода инфы. Тоесть у тебя есть планка сим на 256 кб. Ты также организуешь захват видеоинфы по так называемому H2=0 первая станица(пикселы) H2=1 вторая страница(цвет). Очень удобно :)

Кстати почти распаял ОРИОН :) - осталось чуток переходных отверстий запаять. Напрягает конечно запайка компонентов с обоих сторон, но по кранейм мере почти полный хендмейд :)

Ewgeny7
12.12.2008, 21:16
Ладно, будем разбираться помаленьку.
Сначала надо закончить с выводом видео с одной банки. Все равно у меня в наличии только 7064.

Error404
12.12.2008, 22:26
Думал насчет СИММ. Проблема в том, что видеогенератор юзает в цветном режиме сразу две банки ОЗУ одновременно. Блин, две планки симок чтоли ставить...

Если по-простому, то да - надо две банки. А вообще, это несложно вроде делается. В Орион-про так сделано (из 2-х банок берется одновременно 4 плоскости).

Я по случаю M514256B затарил. Если соберусь, буду на них ваять (4 корпуса дают 2 банка по 256кб в каждом). Симм - не буду, нет их у меня, разъемов тоже нет, да и на плате займет больше места с учетом разводки.

Mick
12.12.2008, 22:36
Если по-простому, то да - надо две банки. А вообще, это несложно вроде делается. В Орион-про так сделано (из 2-х банок берется одновременно 4 плоскости).

Я по случаю M514256B затарил. Если соберусь, буду на них ваять (4 корпуса дают 2 банка по 256кб в каждом). Симм - не буду, нет их у меня, разъемов тоже нет, да и на плате займет больше места с учетом разводки.

А если взять микруху из видеокарты PCI, там организхация памяти 256кбх16. Это означает вообще одну микруху. Единственное но - корпус с загнутыми ножками, хотя и их можно запаять. :)

Error404
12.12.2008, 22:58
А если взять микруху из видеокарты PCI, там организхация памяти 256кбх16. Это означает вообще одну микруху. Единственное но - корпус с загнутыми ножками, хотя и их можно запаять. :)

Мои DIP-20. А из видеокарт наверное PLCC/SOJ (в лучшем случае). Опять же не совсем понятно как в 16-битное слово заталкивать 8-битные чтобы незадействованные при текущей операции записи 8 бит не затирались. Навешивать половинно-управляемые коммутаторы, соединяющие вход с выходом?

Ewgeny7
15.01.2009, 20:04
Разделался я наконец-то со СМУКом, снова стало нечего делать :)
Смотался сегодня по магазинам, приобрел "жирную" альтеру EPM7128, несколько планок СИММок, регистры ИР22 для них есть. BYTEMAN любезно подогнал парочку КР580ИК80, я купил две "Зиловские-тайваньские" Z80B, флеш-ПЗУ выдрал из старого винчестера... :v2_rolley
Начинаю помаленьку лепить "Орион-128" на альтере. :v2_smoke:

Ввиду моей бестолковости вижу работу с ОЗУ таким образом: 2 планки СИММ, с каждой будет забираться только по 64кб. Если кто-нибудь "покажет пальцем" прямо на схеме как сделать по разумному с одной СИММкой сразу мегабайт, буду просто чертовски благодарен :v2_devil:

Error404
16.01.2009, 15:57
Ввиду моей бестолковости вижу работу с ОЗУ таким образом: 2 планки СИММ, с каждой будет забираться только по 64кб. Если кто-нибудь "покажет пальцем" прямо на схеме как сделать по разумному с одной СИММкой сразу мегабайт, буду просто чертовски благодарен :v2_devil:

Вот методика замены 2х8 РУ5 (128к) на 2х8 РУ7 (512к) в штатном Орионе-128, опубликованном в журнале Радио N1 за 1990г. Может, поможет... Но это опять же 2 банка, а как перейти на один общий, чтобы одновременно доставать изображение из 2-х плоскостей по 64к, я не соображу (не силен в схемотехнике).
Регенерацию 2хSIMM1024 (2048к) делай по аналогии на второй половинке DD1'. Раз уж делаешь заново, то несколько ТМ7 делать естественно не надо - порт 0F9h (регистр страниц по 64к) нужно делать на одном общем регистре ТМ9 (ну или там ИР22/23 - как фантазия подскажет).



Smolensk 1998 MIFVI
************************************************** *************

МЕТОДИКА УСТАНОВКИ МИКРОСХЕМ ОЗУ К565РУ7 (41256)
В ПРК ОРИОН - 128.2

1. Желательно по тесту убедиться в нормальной работе ОЗУ,
установленного в компьютере.
2. Заменить одну (любую) микросхему ОЗУ на К565РУ7, при этом
вывод 1 следует временно подключить к общему проводу. Проверить
работу заменённой микросхемы ОЗУ по тесту. (Проверяется 64к из
256к).
3. Произвести установку дополнительных микросхем К155ЛИ1 и
К155КП2 согласно следующей методикe:
- установить дополнительную микросхему К155ЛИ1 верхом на DD16
ЛА3 таким образом, что выв.1,7,9,12,14 припаиваются параллельно.
- отрезать печатный проводник от выв.4 DD23 и выв.4 соединить
с общим проводом.
- отрезать проводник от выв.6 DD23 и выв.6 соединить с выв.11
вновь установленной ЛИ1.
- установить поверх DD23 КП2 микросхему дополнительного
мультиплексора К155КП2 таким обраазом, что выв.1,2,8,14,15,16
припаиваются параллельно.
- соединить выводы дополнительной КП2 следующим образом:
выв.3 с выв.1 DD5 ИЕ5,
выв.4 с общим проводом,
выв.5 с выв.14 DD20 (адрес А2)
выв.6 с выв.8 доп ИМС ЛИ1
Таким образом, прлучаем дополнительную линия адреса МА9 для
работы РУ7 и регенерации по 512 адресам.
- выв.16 DD18 ТМ8 отрезать от выв.10 DD16 ЛА3.
- соединить выв.10 DD16 с общим проводом.
- соединить выв.16 DD18 ТМ8 с выв.10 доп. ИМС ЛИ1
- выв.13 доп. ЛИ1 временно соединить с общим проводом.
4. Проверить работу ОЗУ по тесту. При этом тест должен пока-
зать неисправность всех микросхем ОЗУ, кроме одной, заменённой
на РУ7 (она должна быть исправна).
5. Заменить остальные ИМС ОЗУ на К565РУ7. Проверить память
тестом. На данном этапе обеспечивается работа 256 кБ ОЗУ (из
каждой линейки по 128 кБ), т.е. аналогично установленным четы-
рём линейкам на РУ5, но без дополнительной платы ОЗУ.
6. Для полного использования ИМС РУ7 и получения объёма ОЗУ
512 кБайт (а при установке дополнительной платы ОЗУ до 1 МБайт),
небходимо:
- установить верхом дополнительную микросхему К155ТМ7 на
DD18 ТМ7 (для расширения разрядности порта страниц памяти),
таким образом, что выв.5,12,13 припаиваются параллельно.
- соединить выв.2 дополнительной ТМ7 с шиной данных D2 ИМС
DD17 выв.14.
- соединить выв.3 дополнительной ТМ7 с шиной данных D3 ИМС
DD17 выв.15.
- соединить выв.15 дополнительной ТМ7 с выв.13 дополнительной
ЛИ1 (предварительно его отсоединив от общего провода).
- соединить выв.16 дополнительной ТМ7 с выв.10 DD16 ЛА3
(предварительно его отсоединив от общего провода).
7. Проверить работу ОЗУ в целом.

Ewgeny7
16.01.2009, 17:24
Спасибо :)
Это уже хоть что-то, буду лепить с двумя СИММами на 512кб. Хоть не так обидно :)

Error404
16.01.2009, 19:48
Спасибо :)
Это уже хоть что-то, буду лепить с двумя СИММами на 512кб. Хоть не так обидно :)

Вроде не бывает таких? Только по 256к или 1М?
Теоретически с одним банком можно сделать так: ставим 256к по вышеприведенной методике на РУ7 или SIMM. Тупо умножаем частоты сканирования адреса ОЗУ на 2 - переносим один из начальных делителей (1:2 от ИЕ5) "ниже по цепочке делителей" - чтобы регенерация была вдвое чаще, а VSYNC, HSYNC остались нужной частоты. И разносим "защелкивание" 2-х ИР82 в противофазы (одну на четных, другую на нечетных относительно как было ранее), естественно нужно учеть дельту адреса (64к, чтобы второй ИР82 попасть во вторую плоскость). Это получаем как бы "одновременность выборки 2-х плоскостей" при отрисовке кадра видеогенератором.

Ewgeny7
16.01.2009, 20:44
Вроде не бывает таких? Только по 256к или 1М?
Я имел ввиду, что на двух симках будем пользовать 512кб. Сами симы разумеется мегабайтные.

Спасибо за теорию, пока надо запустить самый простой вариант с двумя линейками симм. Заработает - будем извращаться со схемой, благо на альтере эти эксперименты не сложны.

Если позволите, еще один вопросик. На Орионе в отличие от Спекки, выводы данных РУшек не раздельны, а объединены (вход и выход бита данных). Соответственно, вроде бы никакого регистра-буфера при использовании СИММ не требуется? По крайней мере я не вижу причины добавлять еще что-нибудь при использовании СИММ вместо банка РУшек.

Mick
16.01.2009, 21:38
Если позволите, еще один вопросик. На Орионе в отличие от Спекки, выводы данных РУшек не раздельны, а объединены (вход и выход бита данных). Соответственно, вроде бы никакого регистра-буфера при использовании СИММ не требуется? По крайней мере я не вижу причины добавлять еще что-нибудь при использовании СИММ вместо банка РУшек.

Буфера там есть, только выполнены в виде ВА86. :) Так что при использовании в классическом Орионе все должно получится.
А вот вопрос на засыпку. А почему ты не хочешь попробовать применить спековский диспечер памяти. Тогда ты весь SIMM используешь. Только изменить придется распределение страниц по 64 кб.

Ewgeny7
16.01.2009, 21:53
Буфера там есть, только выполнены в виде ВА86.

Mick, ты не понял :)
Я имел ввиду, что на Орионе на РУшках выводы 2 и 14 соединены. Т.е. они не имеют раздельного входа и выхода данных. На Спекки вход и выход раздельны, потому там при использовании СИММ вместо РУ ставится регистр-защелка типа ИР22.
Мне кажется, что на Орионе этот регистр в принципе не нужен. Вот. :)


А почему ты не хочешь попробовать применить спековский диспечер памяти.
Дык смысл? Новый стандарт? Программ под него будет ноль :(

Добавлено через 1 час 44 минуты
Наваял часть прошивки, всё кроме портов, дешифратора адреса и формирователя WE. Обломс подкрался незаметно - второй банк ОЗУ имеет свои ноги данных, итого 8 пинов альтеры в минус. Прикинул остаток - нифига нехватает. :mad:
Чтобы хватило ресурсов альтеры, нужно использовать только одну СИММку... Думай башка, шапку куплю... :v2_conf3:

Mick
16.01.2009, 23:50
Mick, ты не понял :)
Я имел ввиду, что на Орионе на РУшках выводы 2 и 14 соединены. Т.е. они не имеют раздельного входа и выхода данных. На Спекки вход и выход раздельны, потому там при использовании СИММ вместо РУ ставится регистр-защелка типа ИР22.
Мне кажется, что на Орионе этот регистр в принципе не нужен. Вот. :)


Дык тут непонятка, ты меня не понял. В Орионе есть микрухи DD49 и DD50(соотвественно по банкам). Называются они как 580ВА86. Собственно они и являются буферами для памяти как на запись так и на чтение. В Спеке в действительности для SIMM приходится ставить две микрухи ИР22 - но это из-за специфики диспечера.



Дык смысл? Новый стандарт? Программ под него будет ноль :(


Опять не понял ты меня. :)
Изобретать новый стандарт не надо. Я уже писал однажды. Собственно часть этой идее было воплощено в "Орион-Про"(с названием могу ошибиться, Error404 точнее скажет).
Структура компа останется неизменной, но просто будет одна линейка памяти, а вторая про запас, :) если SIMM двухрядный. Тем самым мы по аналогии спека выводим видео по так называемому H2(0 - видео, 1- атрибуты). Сейчас мысль пймал? Тем самым надо только правильно разбанковать память.

Ewgeny7
17.01.2009, 00:06
Ээээ... Извините за дурацкий вопрос. Тупо увеличить вдвое частоты RAS и CAS труда не составляет. После этого на каждый фронт удвоенного RAS меняем фазу сигнала А8 на СИММке и одновременно выдаем сигналы записи на регистры банков ИР82 в противофазе. Или я уже просто брежу? Бредю? Дело в том, что я толком незнаю как работают динамические ОЗУ :( Что для них является сигналом выдать данные после получения ими адреса?

Mick
17.01.2009, 09:43
Ээээ... Извините за дурацкий вопрос. Тупо увеличить вдвое частоты RAS и CAS труда не составляет. После этого на каждый фронт удвоенного RAS меняем фазу сигнала А8 на СИММке и одновременно выдаем сигналы записи на регистры банков ИР82 в противофазе. Или я уже просто брежу? Бредю? Дело в том, что я толком незнаю как работают динамические ОЗУ :( Что для них является сигналом выдать данные после получения ими адреса?

Что то мало понятно в твоей мысли :) Ну да ладно.
Давай подумаем по другому: Зная что у нас планируется использовать z80, то зачем городить модель работы с памятью вм80.
Для этого мы берем схему спека, из нее смотрим как там работает диспечер памяти и вставляем его в newОрион. Еще нам необходимо формировать два сигнала MA8 и MA9(в случае 1 метра памяти). Их лучше взять по схеме KAY, так как она позволит использовать минимальный объем сима 256кб. Если совсем туго пойдет. Значит будем рисовать :)

Ewgeny7
18.01.2009, 00:14
Ударно поработали сегодня. На макетке вырисовывается "девборда" для 8-битных компьютеров :)
Под процессор пойдет панелька (хочу оставить возможность установки и Z80 и ВМ80А).
Также места для двух ВВ55 и и Мега48. ПЗУ у меня типа флеш PLCC32, панелька под нее совсем маленькая.
Альтера уже прошита 3/4 схемы Ориона. На телевизоре наблюдается Орионовское окошко, биты данных отображаются. Пока в прошивке поддержка только одной банки ОЗУ (64кб).
Завтра подключу СИММу к Альтере и надеюсь увидеть матрасик. Далее займемся процем.

Mick
18.01.2009, 13:20
Ударно поработали сегодня. На макетке вырисовывается "девборда" для 8-битных компьютеров :)
Под процессор пойдет панелька (хочу оставить возможность установки и Z80 и ВМ80А).
Также места для двух ВВ55 и и Мега48. ПЗУ у меня типа флеш PLCC32, панелька под нее совсем маленькая.
Альтера уже прошита 3/4 схемы Ориона. На телевизоре наблюдается Орионовское окошко, биты данных отображаются. Пока в прошивке поддержка только одной банки ОЗУ (64кб).
Завтра подключу СИММу к Альтере и надеюсь увидеть матрасик. Далее займемся процем.


Значит пока не стал ты заморачиваться с переделкой диспечера памяти, а сделать пока оригинал?

Error404
18.01.2009, 16:20
Значит пока не стал ты заморачиваться с переделкой диспечера памяти, а сделать пока оригинал?

Диспетчер переделать не трудно (делов-то, коммутировать пару старших адресных линий), только смысла в этом никакого нет. Если не будет диспетчера по 64к (с некоммутируемой областью f000-ffff), не будет работать ВСЁ ПО Ориона (а нового написать некому). А диспетчер по 16к (по принципу действия - аналог spectrum128, но в окне 0..3FFF) уже есть в ленинградской Z80 Card-II (которую единственно и имеет смысл внедрять если речь о варианте установки Z80). И некоторые программы (их не более 5-10% от общего числа, в-основном адаптации игр ZX) этот диспечер пользуют.

А вот регенерация/видеовыход могут быть любыми аппаратно, но совместимыми программно (т.е. экраны и атрибуты цвета в тех же страницах памяти и адресах) - тут поле для творчества непаханное (например, чтобы сделать не две линейки ОЗУ, а одну на более емких ИМС), но это и сложнее, чем диспетчер. С Wait или без - несущественно, в Oрионе не было ни одной программы, привязанной к особенностям регенерации или видеовыхода.

Вот, в помощь умельцам. Третьего дня прочитал ПЗУ-шку с ROM_BIOS тестом, заточенным для Z80 Card-II (проверяет 192к ОЗУ, прерывания, диспетчер 16к, порты ВВ55). В виде файла этого пока нет ни на одном Орионовском ресурсе.

Mick
18.01.2009, 17:36
Диспетчер переделать не трудно (делов-то, коммутировать пару старших адресных линий), только смысла в этом никакого нет. Если не будет диспетчера по 64к (с некоммутируемой областью f000-ffff), не будет работать ВСЁ ПО Ориона (а нового написать некому). А диспетчер по 16к (по принципу действия - аналог spectrum128, но в окне 0..3FFF) уже есть в ленинградской Z80 Card-II (которую единственно и имеет смысл внедрять если речь о варианте установки Z80). И некоторые программы (их не более 5-10% от общего числа, в-основном адаптации игр ZX) этот диспечер пользуют.


Опять меня видать не поняли, ну да ладно :) Измененый диспечер никоем образом не повлиял на совместимость, но памяти была бы одна линейка вместо 4-х.

Error404
18.01.2009, 19:27
Опять меня видать не поняли, ну да ладно :) Измененый диспечер никоем образом не повлиял на совместимость, но памяти была бы одна линейка вместо 4-х.

Я подумал что речь о страничной коммутации адресного пространства.
Что касается одной линейки вместо N, то это - да, архиважно (как говорил один исторический персонаж :) ). Проблема здесь в том как организовать видеомодуль (т.к. там в каждый момент времени нужно "одновременно" выбирать данные из двух различных областей ОЗУ, чтобы получить цветность).

Ewgeny7
18.01.2009, 20:11
Подключил СИММ. Матрас Ориона, полосатый, ГОСТ 1234-90 :)
Наблюдается мерцание нескольких пикселей. Похоже, СИММку придется менять. В общем, тест-ПЗУ покажет :)
Сейчас буду опираясь на стандартную схему Ориона корректировать прошивку для стандартной Z80 Card II. Пробовать запускать буду на Z80B.
Пока подключена одна линейка 64кб.
Побольше конструктивных предложений, товарищи! :)

balu_dark
18.01.2009, 21:18
возможно дело не в симе а в реализации регенерации динамики.
кстати для разных типов памяти регенерация может отличатся. глянь спецификации именно на SIMM.

Ewgeny7
18.01.2009, 22:28
возможно дело не в симе а в реализации регенерации динамики.
Или просто в отсутствии блокировочных конденсаторов :) Дома нету... Надо искать.

Собрал прошивку под ВМ80А. Вроде всё должно работать.
Завтра буду "подключать" к прошивке Z80 Сard и убирать возникающие излишки.
Дело осложняется отсутствием панелек под проц и ПЗУ... Придется в магазин выбираться.

Mick
18.01.2009, 22:37
Или просто в отсутствии блокировочных конденсаторов :) Дома нету... Надо искать.


Дык на плате сима они должны быть. А если плата такая как ты показал на фотке, то там парочку всего и надо то.
Думаю посмотри лучше прошивку, возможно может что с адресацией.

Ewgeny7
18.01.2009, 22:57
На платке сима конденсаторов нет.
В прошивке ошибок не должно быть, иначе мерцал бы весь разряд или группа адресов. А так мелькают штук пять пикселей (точек) вразброс.
Насколько "живы" СИММки - неизвестно. До этого я их не проверял, неначем.
Завтра на работе воткну конденсаторов, мож поможет.

Добавлено через 7 минут
Кстати, а что за зверь такой Орион-Z?

Mick
18.01.2009, 23:32
На платке сима конденсаторов нет.
В прошивке ошибок не должно быть, иначе мерцал бы весь разряд или группа адресов. А так мелькают штук пять пикселей (точек) вразброс.
Насколько "живы" СИММки - неизвестно. До этого я их не проверял, неначем.
Завтра на работе воткну конденсаторов, мож поможет.



Ну тебе виднее :)

И возвращаясь к диспечеру. Вот табличку набросал, может натолкнет на мысль. Табличка применения спековской модели.
Итак: H1 - сигнал коммутации(процессор/видео), в Орионе сигнал 87
RAS - сигнал коммутации половинок адресов(старшая половинка/младшая), в Орионе это 57
H2 - сигнал коммутации видео(видео/атрибуты), в Орионе сигнал похоже 44
__________ H1 = 0 ______________ H1 = 1
______RAS =1___RAS =0______RAS =1___RAS =0
MA0____A0______A8___________V0______H3
MA1____A1______A9___________V1______H4
MA2____A2______A10__________V2______H5
MA3____A3______A11__________V3______H6
MA4____A4______A12__________V4______H7
MA5____A5______A13__________V5______H8
MA6____A6______A14__________V6______120(Орион )
MA7____A7______A15__________V7______121(Орион )

MA8*___A16_____A17__________V8______H2
MA9*___A18_____A19__________ 0______0

Надеюсь мысля теперь проясняется? Сейчас могу ошибиться с расстановкой A16 и A17, A18 и A19. Вот как можно будет использовать одну линейку памяти. Конечно надо уже будет проанализировать работу буферов и регистров.

Ewgeny7
19.01.2009, 19:24
Прошло 2 часа... :v2_wacko::v2_scare::v2_lol:

Error404
19.01.2009, 21:25
Кстати, а что за зверь такой Орион-Z?

Общее название Орионов с архитектурой питерской Z80 Card II: стандартный + платка Z80 Card II, ташкентский турбо, питерский Альтаир-192.

Добавлено через 3 минуты

Прошло 2 часа... :v2_wacko::v2_scare::v2_lol:

Что, увидел свет истины ? :v2_biggr:

Ewgeny7
19.01.2009, 22:13
Что, увидел свет истины ?
Неа, ИСТЕРИЧЕСКИЙ ПРИПАДОК.
Пытался вникнуть. Но у Ори даже адреса перепутаны на КП, на одной "линейке" RAS стоят А2-А7,А14,А15. И так далее везде. Так что намека я не понял :(

Mick
19.01.2009, 22:20
Неа, ИСТЕРИЧЕСКИЙ ПРИПАДОК.
Пытался вникнуть. Но у Ори даже адреса перепутаны на КП, на одной "линейке" RAS стоят А2-А7,А14,А15. И так далее везде. Так что намека я не понял :(

А попытаться не перепутывать у тебя желания не возникало? ;) В основном перепутывают адреса для удобства разводки. Но вот перенесение A14 и A15 в область младшего адреса меня тоже смутило немного. Хотя по сути если представлять память как матрицу, то это не так уж и страшно. Главное что и адреса видео(типа 120 и 121) тоже там расположены. Мое мнение - это всего лишь удобство разводки. :)

Ewgeny7
20.01.2009, 23:27
Извиняюсь за пропадание, работы подвалило.
Встретился сегодня с Black Cat'ом, заодно заскочил в магазин за запчастями. Теперь есть всё для Ори.
Вопрос с мерцанием СИММ решил банально - заменил симку. Теперь всё в порядке :) Та видать дохлая была.
Переделал прошу под Z80. Альтера практически под завязку. Пришлось мультиплексоры Z80Card вынести наружу (делаю по схеме "Радио-96/4").
Теперь надо паять, паять... :v2_wacko:

>Мое мнение - это всего лишь удобство разводки.<
Наверное... :v2_frown: Покажите пальцем, чаго куды менять в схеме, и я это проверю в деле :v2_wink2:

Error404
21.01.2009, 10:05
Переделал прошу под Z80. Альтера практически под завязку. Пришлось мультиплексоры Z80Card вынести наружу (делаю по схеме "Радио-96/4").
Теперь надо паять, паять... :v2_wacko:


"Радио-96/4" - это практически самый худший вариант. Вариант Москва (он же Орион-Сервис). По крайней мере это так для программиста: ни прерываний (и не будет - т.к. там по EI\DI звук :v2_lol: ), ни диспетчера 16к, да и особенности Z80 (65536 портов) при помощи тех самых мультиплексоров кастрированы до 256. Эти мультиплексоры (и соответствующую обвязку) лучше вообще не ставить - подумаешь, не заработает авторский бейсик и еще пара безграмотных программ, которые командой типа OUT 10h пишут (!) в ячейку (!) ОЗУ (!) 1010h.

Mick
21.01.2009, 12:00
>Мое мнение - это всего лишь удобство разводки.<
Наверное... :v2_frown: Покажите пальцем, чаго куды менять в схеме, и я это проверю в деле :v2_wink2:

Вот приблизительно нарисовал. Пока только с МA0 - MA7. Проверить с неперепутанными адресами и во второй схеме формировательзащелки видео. По идее должно чб изображение показывать.
Потом, если все будет в порядке нужно будет добавить еще один мультиплексор и изменить формирователь записи в регистр атрибутов. :)

BYTEMAN
23.01.2009, 18:17
я хотел спросить. Сейчас реально ли достать голую плату для Ориона-ПРО?
ewgeny7, Может быть, стоит попробовать запихнуть ПРО в Альтеру?

Ewgeny7
23.01.2009, 18:39
Может быть, стоит попробовать запихнуть ПРО в Альтеру?
Если только в EPM7256. В 128-ой места не хватает...

Второй день долбаюсь с наводками. На экране матрас с циклично пульсирующими помехами (снегом) в нижней четверти экрана... Фиг поймешь почему :(

Error404
23.01.2009, 18:44
я хотел спросить. Сейчас реально ли достать голую плату для Ориона-ПРО?


Ни разу не встречал ни живого Ориона-Про (даже упоминаний у реальных людей), ни тем более голой платы.
Думаю, не реально.

Mick
23.01.2009, 18:47
Если только в EPM7256. В 128-ой места не хватает...

Второй день долбаюсь с наводками. На экране матрас с циклично пульсирующими помехами (снегом) в нижней четверти экрана... Фиг поймешь почему :(

Скажи, ты это уже с изменным мультиплексором пробовал или пока со стандартным?
Сдвиговый регистр как делал(возможно нужно инвертировать тактовый сигнал на сдвиг). В смысле он может отличаться от работы ИР13. Но это возможная борьба со снегом.

Ewgeny7
23.01.2009, 19:18
Скажи, ты это уже с изменным мультиплексором пробовал или пока со стандартным?
Стандарт. Начинать надо с проверенного :)


Сдвиговый регистр как делал(возможно нужно инвертировать тактовый сигнал на сдвиг). В смысле он может отличаться от работы ИР13. Но это возможная борьба со снегом.
Регистр делал опираясь на логику 74ALS198. Загрузка по... получается H2 (44), "вывод" бита по тактовой (64)

Добавлено через 2 минуты
Вдогонку, я считал, что чтение DRAM производится сигналом CAS. А в схемах "захватывает" данные с DRAM почемуто RAS... 8(

Mick
23.01.2009, 19:25
Стандарт. Начинать надо с проверенного :)


Регистр делал опираясь на логику 74ALS198. Загрузка по... получается H2 (44), "вывод" бита по тактовой (64)


В стандартной схеме загрузка ИР13 происходит по сигналу 96, а не 44(H2). По теории и практике в сдвиговой регистр запись происхотит через каждые 8 клоков(они же пиксели) тактируемой частоты, которая в Орионе идет сигналом 64. H2 нужен будет нам когда будем разделять время для загрузки временного видео и атрибутного регистров.
Посему собственно и в свою 74ALS198 ты также должен запихивать.

Ewgeny7
23.01.2009, 19:29
:)
Я некорректно выразился (или в схему заглянул). Сигнал и в самом деле 96.
Сейчас попробовал проинвертировать тактовую. Ничего (почти) не изменилось. Фото:

Mick
23.01.2009, 19:33
:)
Я некорректно выразился (или в схему заглянул). Сигнал и в самом деле 96.
Сейчас попробовал проинвертировать тактовую. Ничего (почти) не изменилось. Фото:

Тоесть, проще говоря, ты сейчас залил в плису стандартный Орион. Или пока синхрогенератор? Нет ни так :) - что ты запихал в ПЛИСу.

Ewgeny7
23.01.2009, 19:38
что ты запихал в ПЛИСу
Стандартный Орион. +схемы формирования SYN. Орион "урезанный", только один сдвиговый регистр.

Mick
23.01.2009, 19:43
Вдогонку, я считал, что чтение DRAM производится сигналом CAS. А в схемах "захватывает" данные с DRAM почемуто RAS... 8(

Доступ процессора происходит по сигналу CAS. Микросхемы DD49 и DD50 активируются сигналами 94 и 95, в формировании которых участвует сигнал 43.
Сигнал RAS, участвующий в защелкивании видео инфы показывает, что сейчас начнается доступ процессора к памяти. В Орионе когда, процессор спит или занят своими делами, видеопамять сквозняком идет на регистр сдвига и атрибутов. Все там продуманно было. :)

Добавлено через 4 минуты

Стандартный Орион. +схемы формирования SYN. Орион "урезанный", только один сдвиговый регистр.

А регистр DD47 вводил? Если он есть, то можно было ему запретить работать(высокий импенданс), тогда должен появится белый прямоугольник.

Ewgeny7
23.01.2009, 19:58
А регистр DD47 вводил?
Разумеется.
Я хохмы ради делал и это, и вешал на видео 101 внутренние сигналы схемы (А0-А15 например интересно смотрится) :)

Mick
23.01.2009, 20:06
Разумеется.
Я хохмы ради делал и это, и вешал на видео 101 внутренние сигналы схемы (А0-А15 например интересно смотрится) :)

Поглядел сейчас твои скриншоты с нормальным Орионом - там матрас в инверсии к этому, не обратил внимание?

Ewgeny7
23.01.2009, 20:09
Возможно. Я когда инвертировал тактовую на сдвиговый, тоже обратил внимание что картинка маленько изменилась.

Mick
23.01.2009, 20:11
Возможно. Я когда инвертировал тактовую на сдвиговый, тоже обратил внимание что картинка маленько изменилась.

Возможно это работа памяти? Иначе какие то возможно косяки с реализацией библиотек элементов.
Думаю надо дособрать, хотябы чб режиме Орион - тогда ясно будет.

Ewgeny7
23.01.2009, 20:26
Я могу отправить тебе .pdf с изображением чаго-там-внутре. Может какие мысли посетят? :)

Ewgeny7
23.01.2009, 20:31
В общем, смотрите. Возможно есть ошибки, особенно в районе 121.

balu_dark
23.01.2009, 21:31
судя по многочисленным репортам - библиотеки 74й серии у альтеры - кривые!
ты в нагрузку к схеме - поищи оно должно гдето по мотивам схемы создать либо Verilog либо VHDL файл. расширения соотв с .v или .vhd
Думаю тогда будет можно найти неправильно спроектированный элемент и заменить его чем либо другим.
или надо попытаться найти уже чьи-то готовые рабочие библиотеки элементов.

или пробуй запускить симуляцию схемы и смотри где что не так в логике работы

Ewgeny7
23.01.2009, 21:43
Библиотека 74 легко раскладывается на примитивную логику, достаточно пощелкать по функциям 74. Функции, примененные в Орионе проверены, ошибок там нет. Правда, излишества встречались. Например Z-ключи в регистрах сдвига. Но это уже ни на что не влияет. При желании все эти функции можно выкинуть и воткнуть элементарную логику на их место. А в ней уже ошибок нет по определению :)
Вот, к примеру, буфер 74_373:

Mick
23.01.2009, 21:48
Вот, к примеру, буфер 74_373:

Ты его правлильно упомянул. В схеме у тебя присоединяется защелкивания видео не к тактирующему входу а к разрешению выходов. А тактирующий ты запихал на землю. Ты так специально сделал или как?

Ewgeny7
23.01.2009, 22:47
Ты его правлильно упомянул. В схеме у тебя присоединяется защелкивания видео не к тактирующему входу а к разрешению выходов. А тактирующий ты запихал на землю. Ты так специально сделал или как?
Ээээ... Точно!
Это я сегодня перепутал, когда подключал к нему все подряд :)

Mick
24.01.2009, 15:18
Ээээ... Точно!
Это я сегодня перепутал, когда подключал к нему все подряд :)


Поглазел на твою схему. Вроде нормально. Вот только интересно. Я так понимаю у тебя сейчас проц не подключен. В результате на управляющих сигналах хрень какая то. Например сигнал SNY у тебя по логике вещей сейчас в 1(но может прыгать так как входы его формирующие висят в воздухе), а значит у тебя идет процессорный доступ к памяти. А видео показывает матрац - то что защелкнулось в регистре 74373. Попробуй сигнал SNY сделать постоянной еденицей(принудительно его к 1). По идее у тебя должен быть нормальны матрац без искажений. И не забудь вернуть 74373 как надо :)

Ewgeny7
24.01.2009, 23:12
И не забудь вернуть 74373 как надо
Вернул :)


Я так понимаю у тебя сейчас проц не подключен
Не понимаешь :)
Ужо подключен. И ПЗУ стоит. SYN фунциклирует, проверял выводом его на видео :)
Но на матрасе пока ничего не меняется. Такое очучение, что ram_we игнорируется. Хотя оно возникает, также смотрел его выводом на видео.

Mick
25.01.2009, 09:39
Не понимаешь :)
Ужо подключен. И ПЗУ стоит. SYN фунциклирует, проверял выводом его на видео :)
Но на матрасе пока ничего не меняется. Такое очучение, что ram_we игнорируется. Хотя оно возникает, также смотрел его выводом на видео.

Тогда, вопрос к тебе. Без проца картинка устойчивая, т.е. наблюдаться должен полосатый матрац без всяческих вкраплений.
И второе, объясни что ты хотел этим сделать элемент AND4 управления буферами шины данных процессора.
В стандартной схеме ведь идет управление по 73. Когда 73 = 1, идет запись, а когда 73 = 0, то чтение. Как твои буфера TRI управляются, по еденице или по нулю?
Управляется по еденице, то когда 73 = 1(запись) у тебя правильно. Но вот зачем ты сделал на чтение такую большую функцию 74 & 112 & CS0 & CS1. Вроде бы тогда достаточно было бы завести просто 74. А то по твоей логике из ПЗУ читаться никогда не будет. 112 сигнал при обращении к адресу F800h будет равен 0. И при чтении 74 = 1 из ПЗУ у тебя никогда программа выполнятся не будет. И скорее всего мусор который ты видишь, это следствие безумства процессора :mad:
По крайней мере я так понимаю.

Ewgeny7
25.01.2009, 13:06
Тут все просто. TRIstate_buffer управляется "1". Если "0" на управлении, то он переходит в Z-состояние.
ПЗУ и ВВ55 висят прямо на шинах проца. Поэтому при чтении ПЗУ (112) или ВВ55 (cs0 или cs1) выводы Альтеры НЕ ДОЛЖНЫ переключаться на вывод информации, а быть в Z-состоянии. При чтении информации по RD&MREQ сигнал 73 имеет "0", а 74 "1". Если мы читаем RAM или внутренние порты (в Орионе - ячейки памяти), то на входах AND4 получим четыре "1", т.е. выводы альтеры перейдут в режим "вывода информации". При записи в RAM (порты) RD="1", 74="0", 73="1". Альтера открывает пины на ввод информации по активному 73.

Mick
25.01.2009, 17:58
Тут все просто. TRIstate_buffer управляется "1". Если "0" на управлении, то он переходит в Z-состояние.
ПЗУ и ВВ55 висят прямо на шинах проца. Поэтому при чтении ПЗУ (112) или ВВ55 (cs0 или cs1) выводы Альтеры НЕ ДОЛЖНЫ переключаться на вывод информации, а быть в Z-состоянии. При чтении информации по RD&MREQ сигнал 73 имеет "0", а 74 "1". Если мы читаем RAM или внутренние порты (в Орионе - ячейки памяти), то на входах AND4 получим четыре "1", т.е. выводы альтеры перейдут в режим "вывода информации". При записи в RAM (порты) RD="1", 74="0", 73="1". Альтера открывает пины на ввод информации по активному 73.

Ну тогда остается вопрос почему же у тебя идет только процессорный доступ. Не работает у тебя циклы чтения видео. Как говорится процессор пожирает у тебя почти 100% времени, исключая редкие циклы видео(мусор). Либо что то в библиотеке, либо фиг его знает. Все же попробуй без проца запустить - будет чистый матрац или нет?
И таким же макаром чтобы сингнал SNY был равен 0, чтобы хаотичный мусор показывал(работа видео цикла).

Ewgeny7
25.01.2009, 22:40
Все же попробуй без проца запустить - будет чистый матрац или нет?
Да есть матрац, только сумлеваюсь я... Слишком уж он... однообразно ровный. Биты 0-2 всегда "1", остальные всегда "0". Даже мусора не появляется. Скребутся мысли, что сима не хочет работать с такими сигналами...

Mick
25.01.2009, 22:48
Да есть матрац, только сумлеваюсь я... Слишком уж он... однообразно ровный. Биты 0-2 всегда "1", остальные всегда "0". Даже мусора не появляется. Скребутся мысли, что сима не хочет работать с такими сигналами...

Ну почему же так сразу. У стандартного Ориона тоже полосатый матрац и без мусора. Полоски происходят из-за того что регистр защелка(74373) так защелкнула(то что было в памяти). Для интереса сравни с нормальным Орионом - наверяка также будет.
И еще сделай SNY принудительно 0, по идее у тебя будет хаотичная картинка, но не матрац. Тогда мы отвяжемся от управления видео.

Ewgeny7
27.01.2009, 19:20
Плюнул на это безобразие.
Начал потихоньку ваять этот же Орион на VHDL.

Mick
27.01.2009, 19:20
ewgeny7 как там дела то продвигаются, интересно же :) Матрац хаотичный был или нет?

Ewgeny7
27.01.2009, 19:38
Нет, конечно.
Поменял еще одну СИММку. Теперь матрац стал более правильным, "узорчатым".
С процем экран шебуршит, без него отдельные точки мерцают. СИН ничего не изменил.

Mick
27.01.2009, 20:06
Нет, конечно.
Поменял еще одну СИММку. Теперь матрац стал более правильным, "узорчатым".
С процем экран шебуршит, без него отдельные точки мерцают. СИН ничего не изменил.

Понятно, будем ждать когда ты вариант на VHDL напишешь.

Ewgeny7
27.01.2009, 20:40
Хех, слепил на скорую руку синхрогенератор на VHDL. На телевизоре получилась картина ЗаМалевича "Белый квадрат" :)
Начну прицеплять память. Пока не знаю, мож лучше сразу СРАМ привинчивать?
Товарищи, ни у кого нету случаем информации о таймингах видеогенератора Ориона, типа длительности и расположение синхры ? Ато я наугад поставил.
И еще, буду безмерно благодарен тому, кто толком расскажет, а еще лучше покажет на осциллограммах как работать с СИММ DRAM... Замучило меня оно... :(
Внизу - типо Арион с его телевизором :)

Error404
28.01.2009, 19:40
Переделал прошу под Z80. Альтера практически под завязку. Пришлось мультиплексоры Z80Card вынести наружу (делаю по схеме "Радио-96/4").
Теперь надо паять, паять...


"Радио-96/4" - это практически самый худший вариант. Вариант Москва (он же Орион-Сервис). По крайней мере это так для программиста: ни прерываний (и не будет - т.к. там по EI\DI звук :v2_lol: ), ни диспетчера 16к, да и особенности Z80 (65536 портов) при помощи тех самых мультиплексоров кастрированы до 256. Эти мультиплексоры (и соответствующую обвязку) лучше вообще не ставить - подумаешь, не заработает авторский бейсик и еще пара безграмотных программ, которые командой типа OUT 10h пишут (!) в ячейку (!) ОЗУ (!) 1010h.

Вот может кому пригодится - во вложении образ диска где находится методика переделки московской Z80Card (Радио-96/4) в прогрессивную ленинградскую. Текст и схемы (картинки). Просматривать в эмуляторе.

Error404
11.02.2009, 16:53
Хех, слепил на скорую руку синхрогенератор на VHDL. На телевизоре получилась картина ЗаМалевича "Белый квадрат" :)
Начну прицеплять память. Пока не знаю, мож лучше сразу СРАМ привинчивать?
Товарищи, ни у кого нету случаем информации о таймингах видеогенератора Ориона, типа длительности и расположение синхры ? Ато я наугад поставил.
И еще, буду безмерно благодарен тому, кто толком расскажет, а еще лучше покажет на осциллограммах как работать с СИММ DRAM... Замучило меня оно... :(
Внизу - типо Арион с его телевизором :)

Есть прогресс?

Ewgeny7
11.02.2009, 19:44
Прогресс сомнительный. Заменил СИММ на СРАМ. Пытаюсь изобрести велосипед чтобы разделить доступ проца и ПЛИСы к памяти. Пока что сделал приостановку тактовой проца в момент обращения ВГ к памяти. Извращенческий сигнал получается :)
При "базовой" частоте CLK 5Мгц после "корректировки" видеогенератором выходит аж 3.7Мгц. Интересно, это плохо или совсем плохо? :)

Mick
11.02.2009, 19:52
Прогресс сомнительный. Заменил СИММ на СРАМ. Пытаюсь изобрести велосипед чтобы разделить доступ проца и ПЛИСы к памяти. Пока что сделал приостановку тактовой проца в момент обращения ВГ к памяти. Извращенческий сигнал получается :)
При "базовой" частоте CLK 5Мгц после "корректировки" видеогенератором выходит аж 3.7Мгц. Интересно, это плохо или совсем плохо? :)

Что то ты в какие то дебри полез :) Я же тебе предлагал, сделай разделение доступа по спековски. Тут все достаточно интересно, пока себе не представишь весь процесс по тактикам, трудно понять где и что не так. Спековсое разделение достаточно уже обмусолено. А так можно долго искать ошибку. Тем более ты же всеравно прменил Z80.

Ewgeny7
11.02.2009, 20:32
Дык легких путей мы не ищем :)
Легкий путь у меня есть - один человече отдал мне исходники для Ориона (рабочие). Пущай пока поваляются.

LeBohdan
11.02.2009, 20:52
Так может помощь нужна? (практическая)


исходники для Ориона (рабочие)
Исходники ? Интересно ...

Ewgeny7
11.02.2009, 21:17
Так может помощь нужна? (практическая)
Да, в общемто, не нужна. Я ковыряюсь и получаю от этого удовольствие :)
Чтобы побыстрее проскочить эту затыку с памятью, помогли бы идеи, оформленные в виде осциллограмм...


Исходники ? Интересно ...
Да, есть исходники. Но там несколько другое железо подразумевается. Память, например, СРАМ 16бит (типа 2 линейки) и проц симулируемый с раздельными шинами данных на вход и выход (Т80).

Mick
11.02.2009, 21:26
Чтобы побыстрее проскочить эту затыку с памятью, помогли бы идеи, оформленные в виде осциллограмм...


А в чем собственно затык с памятью. В каком месте остановился. Описывай подробней.

Error404
11.02.2009, 21:53
Да, есть исходники. Но там несколько другое железо подразумевается. Память, например, СРАМ 16бит (типа 2 линейки) и проц симулируемый с раздельными шинами данных на вход и выход (Т80).

Это которые для DE1 ?

Ewgeny7
11.02.2009, 22:09
Это которые для DE1 ?
Да, всё это можно сделать и на DE1, и на маленькой платке с CYCLON II. Если вынести проц наружу, то и первого циклона хватит (12$).


А в чем собственно затык с памятью. В каком месте остановился. Описывай подробней.
Сейчас, только подумаю как это "оформить" :)

Ewgeny7
11.02.2009, 22:32
Вот, собственно, состояние сигналов на сегодня.
green - это выход видео. Разряды данных я выставил в "01010101", чтобы было наглядней.
Синхра настроена.
Разряды адреса, как видно, при чтении каждого байта из видеоОЗУ переключаются из "Z" в требуемое состояние. Чтение происходит когда три младших разряда Н-счетчика становятся равными "0".
А вот сигнал clk_cpu самый интересный :)
Слева видно нормальный его период (5Мгц), а дальше начинает вмешиваться видеогенератор. Принцип такой - сигнал clk_cpu инвертируется если нет обращения плисины к видеоОЗУ. Если обращение есть, то он инвертируется следующим клоком 5Мгц. Одновременно с приостановкой тактовой процессора выдается сигнал на отключение буфера адреса "процессор - ОЗУ" и буфера данных. Буфера сделаны по принципу Speccy-2007. По окончании цикла чтения видеогенератором буфера снова включаются и затем идет следующий клок процессору.

Какие будут разумные мысли по этому поводу? Только "не умничай, ты пальцем покажи" :)
Да, основной клок вверху - 20Мгц.

Mick
11.02.2009, 22:48
А вот сигнал clk_cpu самый интересный :)
Слева видно нормальный его период (5Мгц), а дальше начинает вмешиваться видеогенератор. Принцип такой - сигнал clk_cpu инвертируется если нет обращения плисины к видеоОЗУ. Если обращение есть, то он инвертируется следующим клоком 5Мгц. Одновременно с приостановкой тактовой процессора выдается сигнал на отключение буфера адреса "процессор - ОЗУ" и буфера данных. Буфера сделаны по принципу Speccy-2007. По окончании цикла чтения видеогенератором буфера снова включаются и затем идет следующий клок процессору.

Какие будут разумные мысли по этому поводу? Только "не умничай, ты пальцем покажи" :)

Ну собственно пальцем пока не покажу :) потому как немного не догнал что ты попытался показать. :)
Если сигнал clk_cpu является клоком для проца, то это неправильно однозначно я так думаю.
Лучше скажем так, у тебя есть код стандартного синхрогенератора Ориона и он у тебя работает. Далее ты запихал вместо ВМ80 Z80 по схеме Радио, так?!

Ewgeny7
11.02.2009, 23:05
ты запихал вместо ВМ80 Z80 по схеме Радио, так?!
Неа. Никаких радио. Я просто повесил процессор на шины предназначенные для ВМ80. Мелкие доработки можно сделать и потом.

Ewgeny7
11.02.2009, 23:19
Вот, по быстрому нарисовал на бумажке :)

Error404
12.02.2009, 11:34
Вот, по быстрому нарисовал на бумажке :)

Кстати, что и как работает в Орионе в режиме "прозрачного ОЗУ" в варианте i8080 и Z80 (такты, сигналы CPU) можно почерпнуть отсюда:

http://emuverse.ru/wiki/%D0%9E%D1%80%D0%B8%D0%BE%D0%BD-128/ZCard-II

AlexBel
12.02.2009, 17:32
Прошу пардону, что вмешиваюсь - просто скажу насчет исходников Ориона для DE1. Поскольку проект еще не завершен, автор не планирует его выкладывать. Это его первый проект, так сказать, "проба пера" в работе с плисками. И нет времени на "причесывание" исходников, точнее сказать - на полную переделку. Поэтому рано говорить "исходники в студию" :)
Написать самому у него возможности нет, поскольку ему не удалось зарегистрироваться на форуме. Это так, на всякий случай.

Ewgeny7
12.02.2009, 18:49
Про исходники мы договаривались. В студию их может выкладывать только сам автор.
Подождем, когда он преодолеет внутренние барьеры и зарегистрируется на Форуме :)

AlexBel
12.02.2009, 19:37
Про исходники мы договаривались. В студию их может выкладывать только сам автор.
Подождем, когда он преодолеет внутренние барьеры и зарегистрируется на Форуме :)

То, что вы договаривались, я знаю. И пишу это не для тебя, а для других, поскольку ты сам сразу не написал о том, что исходники пока что не для выкладывания. А стоило, раз уж упомянул о том, что они у тебя.

Ewgeny7
13.02.2009, 23:36
Нарисовал на скорую руку схему в сегодняшнем виде. Ато сам уже начал запутываться :)
Забыл генератор пририсовать... на 20Мгц. У меня только такой кварц. :v2_devil:

Error404
14.02.2009, 13:42
Нарисовал на скорую руку схему в сегодняшнем виде. Ато сам уже начал запутываться :)
Забыл генератор пририсовать... на 20Мгц. У меня только такой кварц. :v2_devil:

А вроде говорил, что динамику пользуешь? А на картинке статика.
Буфер на данные в перспективе тоже нужен.
А что, без привязки к +U входов прерываний, wait, захвата шин, камень нормально запускается?

Ewgeny7
14.02.2009, 14:02
А вроде говорил, что динамику пользуешь? А на картинке статика.
Буфер на данные в перспективе тоже нужен.
А что, без привязки к +U входов прерываний, wait, захвата шин, камень нормально запускается?
Форррруммм торррмозззит...

Я ужо давно сообщил, что пересел на СРАМ. :)
Буфера на данные не будет, данные "прогоню" через альтеру.
Резюки на управляющие забыл указать. Я их прямо внутри панельки ЦПУ присобачил.

Error404
14.02.2009, 15:22
Форррруммм торррмозззит...

Я ужо давно сообщил, что пересел на СРАМ. :)
Буфера на данные не будет, данные "прогоню" через альтеру.
Резюки на управляющие забыл указать. Я их прямо внутри панельки ЦПУ присобачил.

На системную шину ШД будет из Альтеры выходить? Т.е. под данные придется отдать 16 ног (CPU->CPLD->BUS)?

Ewgeny7
14.02.2009, 18:04
Т.е. под данные придется отдать 16 ног (CPU->CPLD->BUS)?
Да. Ибо восемь ног и так уже отдано по определению ВГ. Будет не хватать - поставлю буфер :)

Error404
15.02.2009, 13:54
Да. Ибо восемь ног и так уже отдано по определению ВГ. Будет не хватать - поставлю буфер :)

Определенно будет не хватать - к гадалке не ходи. Т.к. стандартный Орион - это лишь 50% от того, на чем хоть как-то можно жить.
Но это фиг с ним, дело будущего, если хоть что-то заработает, я изложу в какую сторону надо расти и почему. :)

Ewgeny7
19.02.2009, 17:33
я изложу в какую сторону надо расти и почему
Договорились :)
Сейчас методом научного тыка отлажена работа со статической РАМой.
Маленько откорректировал времянки видеогенератора.
Поставил буфера и на адреса и на данные. Проц жужжит и весьма рад жизни.
Ваяю переключалку rom_oe для старта компьютера (после ресета РОМ выбирается по нулевым А14 и А15. Далее только по А14=1 и А15=1).