8088 в минимальной обвязке

8-битные микроконтроллеры и микропроцессоры от Intel и их клоны, а также компьютеры на них построенные

Moderator: Shaos

newold86
Devil
Posts: 716
Joined: 30 Nov 2013 11:08
Location: WWW

8088 в минимальной обвязке

Post by newold86 »

Что-то надоело смотреть, как уже с год обсуждается запуск простейшей микро-ЭВМ на 8086, но до практических шагов так и не дошло.

А тут под руку подвернулась макетная плата, которая уже второй год валяется нераспечатанной, вот и решил в качестве развлечения сделать на ней суперкомпьютер. Только 8086 под рукой нету, так что пришлось задействовать 8088.

Примерно в течении часа родилось следующее:
8088-s-49.jpg
Схема:
8088-s-50.jpg
BIOS:

Code: Select all


			org		0e05b
Again:
			out		0, al
			inc		al
Delay:
			loop	Delay
			jmp		Again

			org		0fff0h
Reset:	
			db		0eah				; jump far
			dw		0e05bh, 0f000h		; F000:E05B

Адрес перехода после начального сброса выбран таким с целью полной совместимости с оригинальной IBM PC XT :)

Так как из памяти только читается, а в порт только пишется, то удалось упростить дешифратор адресного пространства путем его (дешифратора) полного отсутствия...

Кстати, с кварцем 12 МГц светодиод на D0 мигает с частотой приблизительно 1.7 Гц - а когда-то этот процессор казался таким быстрым...
You do not have the required permissions to view the files attached to this post.
Tronix
Doomed
Posts: 662
Joined: 18 Nov 2013 02:38
Location: Москва

Post by Tronix »

Аплодисменты.
newold86
Devil
Posts: 716
Joined: 30 Nov 2013 11:08
Location: WWW

Post by newold86 »

Кстати, так как конструкция подключена к регулируемому блоку питания, то посмотрел, при каком минимальном напряжении все это работает.

До 3.80 В все было нормально, на 3.76 засбоило, при 3.70 работу прекратило. Что именно первым перестало работать, выяснять лень :)
Tronix
Doomed
Posts: 662
Joined: 18 Nov 2013 02:38
Location: Москва

Post by Tronix »

А до скольких МГц гонится?
newold86
Devil
Posts: 716
Joined: 30 Nov 2013 11:08
Location: WWW

Post by newold86 »

Насчет частоты сказать пока не могу. Если лень не будет, подключу генератор вместо кварца и погоняю. Но вообще у меня 80C88-2, который по паспорту от 0 до 8МГц.
Tronix
Doomed
Posts: 662
Joined: 18 Nov 2013 02:38
Location: Москва

Post by Tronix »

Ну по паспорту то и 6502 вроде до 2МГц, но как показала практика - вполне хорошо себя чувствует на 18,4 . Пруф: http://zx-pk.ru/showpost.php?p=710805&postcount=30 Но он чмос вроде. Но все равно, нехилый разгон такой :)
User avatar
Lavr
Supreme God
Posts: 16682
Joined: 21 Oct 2009 08:08
Location: Россия

Post by Lavr »

newold86 wrote:Что-то надоело смотреть, как уже с год обсуждается запуск простейшей микро-ЭВМ на 8086, но до практических шагов так и не дошло.
Так а между ним и 8088 есть существенная разница, поэтому и дело идет с трудом.
А это ты фактически собрал 8-битную схему, которую практически без особых изменений можно запустить что с 8085, что с z80, что с любым подобным 8-битником.

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

Готовность макета на таком же уровне, как и у тебя, просто у человека и опыта поменьше и времени.
iLavr
User avatar
Vasiliy
Novelist
Posts: 25
Joined: 18 Oct 2014 11:01
Location: Укра¿на

Re: 8088 в минимальной обвязке

Post by Vasiliy »

newold86 wrote:
BIOS:

Code: Select all


			org		0e05b
Again:
			out		0, al
			inc		al
Delay:
			loop	Delay
			jmp		Again

			org		0fff0h
Reset:	
			db		0eah				; jump far
			dw		0e05bh, 0f000h		; F000:E05B

Адрес перехода после начального сброса выбран таким с целью полной совместимости с оригинальной IBM PC XT :)
Стесняюсь спросить...
А каким ассемблером Вы пользуетесь, чтоб разложить код программы по адресам?
Tronix
Doomed
Posts: 662
Joined: 18 Nov 2013 02:38
Location: Москва

Post by Tronix »

Хоть не автор, но отвечу - любой x86 ассемблер. Начиная с древних MASM и TASM, заканчивая FASM и NASM.
User avatar
Vasiliy
Novelist
Posts: 25
Joined: 18 Oct 2014 11:01
Location: Укра¿на

Post by Vasiliy »

Tronix wrote:Хоть не автор, но отвечу - любой x86 ассемблер. Начиная с древних MASM и TASM, заканчивая FASM и NASM.
Я использую emu8086 но он не хочет по адресам разложить :(
newold86
Devil
Posts: 716
Joined: 30 Nov 2013 11:08
Location: WWW

Post by newold86 »

Если честно, я не понял вопрос насчет раскладывания по адресам.

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

А так любой компилятор может выдать листинг с адресами и кодами операций.
User avatar
Vasiliy
Novelist
Posts: 25
Joined: 18 Oct 2014 11:01
Location: Укра¿на

Post by Vasiliy »

Должно быть примерно так

Code: Select all

...
6050: 00 00 00 00  00 00 00 00  00 00 00 E6  00 FE C0 E2
6060: FE EB F8 00  00 00 00 00  00 00 00 00  00 00 00 00
...
7FF0: EA 5B E0 00  F0 00 00 00  00 00 00 00  00 00 00 00
Вот так должен разместится код по адресам.
Но компиляторы почему то всё пишут в одну строку.
Этот код должен занять примерно 8 кБ.

Code: Select all

E6 00 FE C0  E2 FE EB F8  EA 5B E0 00  F0
Всё получается без какой либо привязки к адресу.
newold86
Devil
Posts: 716
Joined: 30 Nov 2013 11:08
Location: WWW

Post by newold86 »

А причем здесь компилятор ? Вообще это задача линковщика сделать соответствующий файл...
User avatar
Vasiliy
Novelist
Posts: 25
Joined: 18 Oct 2014 11:01
Location: Укра¿на

Post by Vasiliy »

newold86 wrote:А причем здесь компилятор ? Вообще это задача линковщика сделать соответствующий файл...
Где то, что то я пропустил... :oops:
Подскажите пожалуйста, где об этом можно прочитать?
Fess198777
Junior
Posts: 2
Joined: 24 Feb 2024 02:19

Re: 8088 в минимальной обвязке

Post by Fess198777 »

Всем привет! Смотрю эта тема давно.... Нет ооочень давно неактивна. Попробую грузануть в неё своих проблем :ebiggrin: Решил погрузиться в мир процессоров интел и собрать тестовую плату для изучения основ программирования. Собрал схему из первого поста только пока без регистров и памяти - то есть пока есть генератор кр1810гф84 и сам 8088. В книге Robert Grosblatt "8088 Project book" вычитал, что при такой схеме включения процессора его работоспособность можно проверить по наличию сигнала на 25 выводе - на осциллографе должны быть видны импульсы ALE с частотой примерно в 4 раза ниже CLK. Но черт побери бери этот процессор... 8088,включённый по схеме, на 25 выводе выдаёт 0В. При этом процессор корректно в общем реагирует на Reset, поскольку уровни на адресных выходах сбрасываются с 5В до 0В вместе с сигналом сброса. Пробовал взамен 8088 включать КР1810ВМ86, блин, но он сигнал ALE выдаёт. Запутался... Подскажите, есть ли между ними разница по схемам включения?!?