nedoPC.org

Electronics hobbyists community established in 2002
Atom Feed | View unanswered posts | View active topics It is currently 28 Mar 2024 02:36



Reply to topic  [ 17 posts ]  Go to page 1, 2  Next
8088 в минимальной обвязке 
Author Message
Devil

Joined: 30 Nov 2013 11:08
Posts: 706
Location: WWW
Reply with quote
Что-то надоело смотреть, как уже с год обсуждается запуск простейшей микро-ЭВМ на 8086, но до практических шагов так и не дошло.

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

Примерно в течении часа родилось следующее:

Attachment:
8088-s-49.jpg
8088-s-49.jpg [ 175.78 KiB | Viewed 760 times ]

Схема:

Attachment:
8088-s-50.jpg
8088-s-50.jpg [ 167.9 KiB | Viewed 760 times ]

BIOS:

Code:

         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 Гц - а когда-то этот процессор казался таким быстрым...


09 Nov 2014 12:03
Profile
Doomed

Joined: 18 Nov 2013 02:38
Posts: 662
Location: Москва
Reply with quote
Post 
Аплодисменты.


09 Nov 2014 12:54
Profile
Devil

Joined: 30 Nov 2013 11:08
Posts: 706
Location: WWW
Reply with quote
Post 
Кстати, так как конструкция подключена к регулируемому блоку питания, то посмотрел, при каком минимальном напряжении все это работает.

До 3.80 В все было нормально, на 3.76 засбоило, при 3.70 работу прекратило. Что именно первым перестало работать, выяснять лень :)


09 Nov 2014 13:34
Profile
Doomed

Joined: 18 Nov 2013 02:38
Posts: 662
Location: Москва
Reply with quote
Post 
А до скольких МГц гонится?


09 Nov 2014 13:50
Profile
Devil

Joined: 30 Nov 2013 11:08
Posts: 706
Location: WWW
Reply with quote
Post 
Насчет частоты сказать пока не могу. Если лень не будет, подключу генератор вместо кварца и погоняю. Но вообще у меня 80C88-2, который по паспорту от 0 до 8МГц.


09 Nov 2014 14:00
Profile
Doomed

Joined: 18 Nov 2013 02:38
Posts: 662
Location: Москва
Reply with quote
Post 
Ну по паспорту то и 6502 вроде до 2МГц, но как показала практика - вполне хорошо себя чувствует на 18,4 . Пруф: http://zx-pk.ru/showpost.php?p=710805&postcount=30 Но он чмос вроде. Но все равно, нехилый разгон такой :)


09 Nov 2014 14:36
Profile
Supreme God
User avatar

Joined: 21 Oct 2009 08:08
Posts: 7777
Location: Россия
Reply with quote
Post 
newold86 wrote:
Что-то надоело смотреть, как уже с год обсуждается запуск простейшей микро-ЭВМ на 8086, но до практических шагов так и не дошло.

Так а между ним и 8088 есть существенная разница, поэтому и дело идет с трудом.
А это ты фактически собрал 8-битную схему, которую практически без особых изменений можно запустить что с 8085, что с z80, что с любым подобным 8-битником.

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

Готовность макета на таком же уровне, как и у тебя, просто у человека и опыта поменьше и времени.

_________________
iLavr


10 Nov 2014 09:17
Profile
Novelist
User avatar

Joined: 18 Oct 2014 11:01
Posts: 25
Location: Укра¿на
Reply with quote
newold86 wrote:

BIOS:

Code:

         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 :)

Стесняюсь спросить...
А каким ассемблером Вы пользуетесь, чтоб разложить код программы по адресам?


10 Nov 2014 11:04
Profile
Doomed

Joined: 18 Nov 2013 02:38
Posts: 662
Location: Москва
Reply with quote
Post 
Хоть не автор, но отвечу - любой x86 ассемблер. Начиная с древних MASM и TASM, заканчивая FASM и NASM.


10 Nov 2014 11:16
Profile
Novelist
User avatar

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

Я использую emu8086 но он не хочет по адресам разложить :(


10 Nov 2014 11:23
Profile
Devil

Joined: 30 Nov 2013 11:08
Posts: 706
Location: WWW
Reply with quote
Post 
Если честно, я не понял вопрос насчет раскладывания по адресам.

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

А так любой компилятор может выдать листинг с адресами и кодами операций.


11 Nov 2014 03:07
Profile
Novelist
User avatar

Joined: 18 Oct 2014 11:01
Posts: 25
Location: Укра¿на
Reply with quote
Post 
Должно быть примерно так
Code:
...
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:
E6 00 FE C0  E2 FE EB F8  EA 5B E0 00  F0

Всё получается без какой либо привязки к адресу.


13 Nov 2014 11:06
Profile
Devil

Joined: 30 Nov 2013 11:08
Posts: 706
Location: WWW
Reply with quote
Post 
А причем здесь компилятор ? Вообще это задача линковщика сделать соответствующий файл...


13 Nov 2014 11:12
Profile
Novelist
User avatar

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

Где то, что то я пропустил... :oops:
Подскажите пожалуйста, где об этом можно прочитать?


13 Nov 2014 11:25
Profile
Junior

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


24 Feb 2024 03:19
Profile
Display posts from previous:  Sort by  
Reply to topic   [ 17 posts ]  Go to page 1, 2  Next

Who is online

Users browsing this forum: No registered users and 12 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB® Forum Software © phpBB Group
Designed by ST Software.