OldComp.cz
http://oldcomp.cz/

Dospělý nibblák
http://oldcomp.cz/viewtopic.php?f=138&t=8378
Stránka 13

Autor:  microlan [ 10.03.2020, 14:59 ]
Předmět příspěvku:  Dospělý nibblák

Abychom neničili vlákno CLAUDIE, tak zakládám nové vlákno.

4 bitový procesor s 8 bitovou adresní sběrnicí.

ALU v EPROM variantě je navrhnuta, spočítána a odzkoušena na nepájivém poli.

Jako RAM je navržena MHB6561, případně IMS1423

Dále se počítá s 16 vst. porty a 16 výst. portů

Instrukce 2 nibb. Kód a 1 parametr

Spustil bych veřejnou diskusi o instrukční sadě, které funkce zadrátovat. Navrhuji vycházet instrukční sady Z80 k jejich popisu


Kód:
instrukce   parametr     popis
0         0           LD a, a ? jakási NOP
0         1           LD a, b
0         2           LD b, a
0         3           LD l, a
0         4           LD h, a

1          0           IN a, (0)
1          1           IN a, (1)
..
..
1           F           IN a, (F)

2           0           OUT (0), a
..
..
2           F            OUT (F), a

3           0           A + B     (dle ALU)
3           1           A + B + C
..
..
4            0           JP Z, 00h
4            1           JP Z, 10h
4            2           JP Z, 20h
..
..
5             0          JP 00h
5            1           JP 10h
5             2          JP 20h
..
..
atd...

Autor:  Busy [ 10.03.2020, 16:14 ]
Předmět příspěvku:  Re: Dospělý nibblák

microlan píše:
4 bitový procesor s 8 bitovou adresní sběrnicí
Pises o Z80 ? :poke: :lol:

Autor:  faraon [ 10.03.2020, 17:37 ]
Předmět příspěvku:  Re: Dospělý nibblák

Ne, píše o Z40 :lol:

Však i ta ALU ze Z80 vychází.

Autor:  microlan [ 11.03.2020, 09:16 ]
Předmět příspěvku:  Re: Dospělý nibblák

Z40 je dobrý nápad!

Autor:  danhard [ 11.03.2020, 17:26 ]
Předmět příspěvku:  Re: Dospělý nibblák

Asi bych nejdříve promyslil omezení mikrořadiče.
Jestli tam nechat nějakou rezervu do budoucna, nebo hned vycházet s omezení minimální EPROM pamětí 74188.
V každém případě bych to viděl rád logicky učesané.

Na přepracování bych viděl Claudia Lite, nebo
https://www.bigmessowires.com/nibbler/

Samozřejmě tak, aby to bylo jednodušší a výkonější :D

Autor:  microlan [ 12.03.2020, 10:12 ]
Předmět příspěvku:  Re: Dospělý nibblák

Já na to přemýšlení moc nejsem, tak zatím otrocky modifikovaný PC. V rámci srozumitelnosti a z nostalgie jsem si dovolil využít nejen funkcionalitu ale také názvy signálů

schema zde:

http://elektrotest.cz/files/4bit/PC.sch

//V knihovně nemám 193ku, tak jsem tam picnul 192, zapojená je stejně, jen jinak počítá

Přílohy:
PC.png
PC.png [ 24.51 KiB | Zobrazeno 13843 krát ]

Autor:  lukz [ 12.03.2020, 10:55 ]
Předmět příspěvku:  Re: Dospělý nibblák

Já tedy konstrukci procesoru z obvodů nerozumím, takže se jen podle toho schematu snažím pochopit, jakou to má funkci. Ale na co je tam ten IC3 74AC175N? To na výstupu dává ty stejné signály jako přijdou na vstupu. Nefungovalo by to tedy i bez toho, s přímým připojením D0-D3 na vstupy IC1?

Autor:  microlan [ 12.03.2020, 11:06 ]
Předmět příspěvku:  Re: Dospělý nibblák

Ne, to je PC (program counter), který bere jednu instrukci za druhou pomocí čítání (CLK193) ale když má někam skočit (JP) tak si vezme (LOAD193) horní adresu ze sběrnice pomocí 175ky a spodní vynuluje, takže může skákat jen po 16 nib. blocích

Autor:  danhard [ 12.03.2020, 12:57 ]
Předmět příspěvku:  Re: Dospělý nibblák

To je ale programový čítač.
Začal bych tím řadičem.
A nebo spíš použitelným materiálem, asi by mě vyhovovalo něco, co je ještě dobře k mání :D

Autor:  microlan [ 12.03.2020, 13:05 ]
Předmět příspěvku:  Re: Dospělý nibblák

Proč nějaký omezení, prostě se udělá z toho, kam to vejde. 27C64 a 2x LS138 to jistí

Dále bych navrhnul zásadní změnu v krokování, od kterého by se odvíjel pouze aplikační program, gdežto mikrokód by probíhal v rychlých hodinových dávkách

Autor:  PotPalo [ 12.03.2020, 13:08 ]
Předmět příspěvku:  Re: Dospělý nibblák

microlan píše:
...//V knihovně nemám 193ku, tak jsem tam picnul 192, zapojená je stejně, jen jinak počítá

V EAGLE s funkciou VALUE sa dá premenovať na 193.

Autor:  microlan [ 12.03.2020, 13:12 ]
Předmět příspěvku:  Re: Dospělý nibblák

Už jsem to ve svých datech opravil, vystavovat znova se mě to nechce

Autor:  danhard [ 12.03.2020, 13:35 ]
Předmět příspěvku:  Re: Dospělý nibblák

Třeba MH74188 v Claudii Lite na mikroprogram stačí, mám jich dostatek, ale stejně tam musím dát 8 pullupů, můžu to napálit jen jednou a žere to :)
Když tam použiji AT28C64, tak můžu mikroprogram připravit na dalekosáhlé možnosti, které ale nemusím využít (AT28C16 by šla také, ale je u číňana méně dostupná).
Čítač mikroprogramu 2x74HC163 a hned tam umístím 16 instrukcí délky až 16 mikroinstrukcí.
Kromtoho můžu zatáhnou do vstupu 4 bit atribut a podmínku skoku.

Autor:  microlan [ 12.03.2020, 14:05 ]
Předmět příspěvku:  Re: Dospělý nibblák

U Tebou postovaného nibbleru, se používá jen 2f mikrokód? nebo jsem to špatně pochopil?

Citace:
4 bit atribut


Ten tam nemusí, bral by se přímo z Datovky do ALU nebo PC přes patřičné registry

//Aha, ono bude potřeba pořešit ty LD a to by jinak nešlo

///

Asi bych to zredukoval na 8f mikrokódu a 8 možností neadresových parametrů, abychom tam dostali aspoň 3 flagy

Autor:  danhard [ 12.03.2020, 14:51 ]
Předmět příspěvku:  Re: Dospělý nibblák

Právě, že tam ty registry nemusí vůbec být.
Teď je v cestě čtení programu z paměti registr IR, který se ale stejně naplní při další části instrukce.
Je to vyrovnávací registr pro čtení instrukce.
Vlastní IR registr je vlastně čítač mikroprogramu, v kterém se udělá rozeskok, pak už se IR nepotřebuje.
Do něj se nahraje další část mikroinstrukce, atribut a ten se použije jako kód pro aritmetiku, nebo jako adresa skoku. Není zapotřebí tam mít další vyrovnávací registry.
Až kdyby jsi potřeboval další atribut, tak tam přidáš další registr, do kterého se atribut přesune.
Máš pak k dispozici atributy 2 a můžeš skákat 8-mi bitově.

Prostě začal bych s funkcí a možnostmi mikrořadiče, s tím jaké má být časování mikroinstrukce a jak se má vykonávat.

Projdi si Claudii Lite, je v tom pěkný zmatek.

Stránka 13 Všechny časy jsou v UTC + 1 hodina [ Letní čas ]
Powered by phpBB® Forum Software © phpBB Group
http://www.phpbb.com/