OldComp.cz

Komunitní diskuzní fórum pro fanoušky historických počítačů

DOSDev 2020

Právě je 08.07.2020, 09:42

Všechny časy jsou v UTC + 1 hodina [ Letní čas ]




Odeslat nové téma Odpovědět na téma  [ Příspěvků: 66 ]  Přejít na stránku 1, 2, 3, 4, 5  Další
Autor Zpráva
 Předmět příspěvku: Obsah EPROM pro 4bit ALU
PříspěvekNapsal: 03.02.2020, 08:49 
Offline
Pan Štábní
Uživatelský avatar

Registrován: 16.03.2017, 11:36
Příspěvky: 1474
Bydliště: Kósek vod Brna
Has thanked: 78 times
Been thanked: 103 times
Pustil jsem se do realizace danhardova vynálezu ALU z 27C64. Idea je asi následující:

Adresní vstupy budou obsazeny následovně

4 bity reg A
4 bity reg B
1 bit CY
4 bity = 16 funkcí

dohromady 13 bitů, což je právě adresní prostor 27C64

Výstup 4 bity výsledku + 1 CY

Začal jsem tabulku v excelu, ale pro bitové operace to asi není nejlepší nástroj.

Má někdo nápad, čím to zmechanizovat?

_________________
TEMS-49, PMI-80, rep. MK14, ZX81, ZXspectrum+, TI58, MZ-800


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Obsah EPROM pro 4bit ALU
PříspěvekNapsal: 03.02.2020, 11:58 
Offline
Pan Generální

Registrován: 16.06.2014, 12:23
Příspěvky: 2920
Bydliště: Jesenice u Prahy
Has thanked: 19 times
Been thanked: 161 times
Zadrátuj tu přídavnou ALU jako ROMku a přečti jí :)

Volné výstupy můžou dělat ještě test na zero a komparátor A=B.

Tabulková implementace logické funkce není můj vynález, jen se snažím o náhradu brouků, které jsou už nesehnatelné a aby to mělo malou spotřebu.

Líbil by se mi třeba 74LS281, 74LS382, nebo 74LS681, ale ty jsou nesehnatelné, tak spíš jen koukám, co tam použili za množinu funkcí.

74181 se dá jediná ještě koupit ve výprodeji, ale 74HC283 je stále dostupná, tak bych jí doplnil lepší logikou než 74HC86, možná by stačil další pomocný registr a základní log. funkce a nebo programovatelná logická funkce v GALu.


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Obsah EPROM pro 4bit ALU
PříspěvekNapsal: 03.02.2020, 12:32 
Offline
Pan Generální

Registrován: 22.05.2013, 21:14
Příspěvky: 2633
Bydliště: Bratislava
Has thanked: 279 times
Been thanked: 504 times
microlan píše:
Má někdo nápad, čím to zmechanizovat?
Normalne si napis program, ktory pre vsetky kombinacie vstupov vypocita vystup.


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Obsah EPROM pro 4bit ALU
PříspěvekNapsal: 03.02.2020, 14:06 
Offline
Pan Štábní
Uživatelský avatar

Registrován: 16.03.2017, 11:36
Příspěvky: 1474
Bydliště: Kósek vod Brna
Has thanked: 78 times
Been thanked: 103 times
Citace:
Zadrátuj tu přídavnou ALU jako ROMku


To je nápad, mrknu na tu 181ku

_________________
TEMS-49, PMI-80, rep. MK14, ZX81, ZXspectrum+, TI58, MZ-800


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Obsah EPROM pro 4bit ALU
PříspěvekNapsal: 03.02.2020, 15:34 
Offline
Pan Štábní
Uživatelský avatar

Registrován: 16.03.2017, 11:36
Příspěvky: 1474
Bydliště: Kósek vod Brna
Has thanked: 78 times
Been thanked: 103 times
Tady už mají něco hotový, jen nevím, jestli to půjde aplikovat

http://39k.ca/2016/05/13/using-eproms-and-simple-combinational-logic/

_________________
TEMS-49, PMI-80, rep. MK14, ZX81, ZXspectrum+, TI58, MZ-800


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Obsah EPROM pro 4bit ALU
PříspěvekNapsal: 03.02.2020, 15:45 
Offline
Pan Generální

Registrován: 16.06.2014, 12:23
Příspěvky: 2920
Bydliště: Jesenice u Prahy
Has thanked: 19 times
Been thanked: 161 times
Nad tím nebádej, zapoj to i s tou 74188 a bude se to chovat stejně.
Generátor ALU by měl smysl, až kdyby jsi chtěl dělat vlastní soubor instrukcí.


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Obsah EPROM pro 4bit ALU
PříspěvekNapsal: 04.02.2020, 19:51 
Offline
Kecálek

Registrován: 28.10.2016, 21:03
Příspěvky: 119
Has thanked: 13 times
Been thanked: 48 times
Citace:
Má někdo nápad, čím to zmechanizovat?

V jakém formátu by měla být ta data? A jakých 16 funkcí to má umět?


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Obsah EPROM pro 4bit ALU
PříspěvekNapsal: 04.02.2020, 20:50 
Offline
Pan Generální
Uživatelský avatar

Registrován: 23.03.2014, 20:13
Příspěvky: 2023
Has thanked: 101 times
Been thanked: 388 times
Jenom ALU? A už nic víc? ;-)

Tak jsem si to cvičně vyzkoušel v Officu, jen pro sčítání s carry, a nejvíc práce mi daly ty vstupy. Samotný "výpočet" stačilo jenom odladit a rozkopírovat. Viz příloha.

Ale jednodušší by to bylo prostě naprogramovat, a z programu by vypadla hotová data. Na to by stačil i BASIC, ale ty logické funkce by se jednodušeji řešily třeba v Céčku.

Co všechno to teda má dělat?


Přílohy:
ROM ADC.zip [34.39 KiB]
64 krát

_________________
"Dokud nebyly počítače, programování nebylo problémem.
Jestliže bylo několik slabých počítačů, bylo programování malým problémem.
Když však programátoři získali počítače na svou dobu ohromné síly, stalo se také programování ohromným problémem."

E. W. Dijkstra, 1972
Nahoru
 Profil  
 
 Předmět příspěvku: Re: Obsah EPROM pro 4bit ALU
PříspěvekNapsal: 04.02.2020, 21:28 
Offline
Pan Štábní

Registrován: 01.12.2017, 21:01
Příspěvky: 1107
Bydliště: BA-Králikárne
Has thanked: 7 times
Been thanked: 163 times
Keď sa presne definuje čo to má robiť, tak v exceli je to brnkačka spraviť. Čo to má všetko vedieť, tých 16 funkcií? 13 vstupov máme. Čo výstup, bude iba 8 bitové číslo (D0~D7) bez kontroly pretečenia?
Napíš tabuľku, asi takúto:

funkcia - vstupy - výstupy
0 ADD sčítanie A+B - A,B - D0~D3,C
1 SUB odpočítanie A-B - A,B - D0~D3,C
2 SBC odpočítanie s CY (keď je CY 1, bude výsledok znížený o 1) - A,B,CY - D0~D3,C
atď...

Pri 13 bitoch na vstupe to bude 8192 riadkov v exceli, každá funkcia 512 riadkov.

edit: tak som začal v exceli, základ je hotový, zatiaľ sú funkcie ADD, SUB, a SBC, stačí pridať ďalšie. Nič zložité, obyčajné kopírovanie vzorca a čísiel. Kto nerobí moc s excelom, tak napoviem, že Ctrl+šípka presunie kurzor na poslednú vyplnenú bunku.

A mimochodom, išlo by to elegantne spraviť aj v BASICu ZX Spectra (niekoľko FOR-NEXT), a rovno by to ukladalo do pamäti výsledky, takže nakoniec by stačilo uložiť súbor a máš hotovú náplň do epromky. :D

edit2: teraz som si všimol že výsledok má byť 4-bity a CY, upravil som xls. Pridal som aj Zero flag, a opravil chybičku...


Přílohy:
ALU.rar [56.07 KiB]
62 krát

_________________
Všetky mnou poskytnuté informácie sú voľne šíriteľné. Odporúčam ich zálohovať, servery zvyknú padať, informácie sa strácať..... a ľudia tiež. Až sa nadobro stratím, už bude neskoro sa pýtať.
Nahoru
 Profil  
 
 Předmět příspěvku: Re: Obsah EPROM pro 4bit ALU
PříspěvekNapsal: 05.02.2020, 01:19 
Offline
Pan Štábní

Registrován: 01.12.2017, 21:01
Příspěvky: 1107
Bydliště: BA-Králikárne
Has thanked: 7 times
Been thanked: 163 times
Tak ďalšia verzia. :mrgreen:

Funkcie:
0 - ADD
1 - SUB
2 - ADC
3 - SBC

Pridané farebné formátovanie a číslovanie doplnené až do konca, už len dopísať tie funkcie.


Přílohy:
ALU.rar [240.24 KiB]
64 krát

_________________
Všetky mnou poskytnuté informácie sú voľne šíriteľné. Odporúčam ich zálohovať, servery zvyknú padať, informácie sa strácať..... a ľudia tiež. Až sa nadobro stratím, už bude neskoro sa pýtať.
Nahoru
 Profil  
 
 Předmět příspěvku: Re: Obsah EPROM pro 4bit ALU
PříspěvekNapsal: 05.02.2020, 06:21 
Offline
Pan Štábní
Uživatelský avatar

Registrován: 16.03.2017, 11:36
Příspěvky: 1474
Bydliště: Kósek vod Brna
Has thanked: 78 times
Been thanked: 103 times
Takový zájem jsem ani nečekal, funkcí 16, ale chci to tak nějak zmechanizovat, aby bylo snadné je měnit. Logické, všechny ty sčítací, rotace, test na =, ....

Tak mám víc času, zjistil jsem, že ta 181 je pinově téměř kompatibilní s EPROMkama, akorát tam jde přes M blokovat jen výstup dat, ale příznaky jedou furt. To jen pro informaci

Výstupy doplnit o flag a = b, případně další, aby se využilo všech 8 výstupů.

Samozřejmě děkuji za tabulky, určitě se rád poučím v užívání excelu.

_________________
TEMS-49, PMI-80, rep. MK14, ZX81, ZXspectrum+, TI58, MZ-800


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Obsah EPROM pro 4bit ALU
PříspěvekNapsal: 05.02.2020, 09:25 
Offline
Pan Štábní

Registrován: 01.12.2017, 21:01
Příspěvky: 1107
Bydliště: BA-Králikárne
Has thanked: 7 times
Been thanked: 163 times
Tak schválne, 4-bitové rotácie doprava/doľava v exceli. :mrgreen: Ale jednoduchšie by to asi bolo naozaj v tom BASICu ZX Spectra.


Přílohy:
4-bit rotácie.rar [1.7 KiB]
71 krát

_________________
Všetky mnou poskytnuté informácie sú voľne šíriteľné. Odporúčam ich zálohovať, servery zvyknú padať, informácie sa strácať..... a ľudia tiež. Až sa nadobro stratím, už bude neskoro sa pýtať.
Nahoru
 Profil  
 
 Předmět příspěvku: Re: Obsah EPROM pro 4bit ALU
PříspěvekNapsal: 05.02.2020, 12:38 
Offline
Kecálek

Registrován: 28.10.2016, 21:03
Příspěvky: 119
Has thanked: 13 times
Been thanked: 48 times
Mám to jako textový soubor. Funkce a+b, a+b+c, a-b, a-b-c, b-a, b-a-c, rlca, rrca, a&b, a|b, a^b, 0. Bit 5 je carry flag, bit 6 je zero flag. Jestli ti tam ještě nějaké funkce chybí, tak dej vědět.

Test a=b je možné provést jako test zero flagu u operace a-b nebo u operace b-a.


Přílohy:
eprom-v1.txt [99.14 KiB]
74 krát
Nahoru
 Profil  
 
 Předmět příspěvku: Re: Obsah EPROM pro 4bit ALU
PříspěvekNapsal: 05.02.2020, 15:28 
Offline
Pan Štábní
Uživatelský avatar

Registrován: 16.03.2017, 11:36
Příspěvky: 1474
Bydliště: Kósek vod Brna
Has thanked: 78 times
Been thanked: 103 times
Vše se dá nějak obejít, jde mi jen o využití všech výstupů EPROM

_________________
TEMS-49, PMI-80, rep. MK14, ZX81, ZXspectrum+, TI58, MZ-800


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Obsah EPROM pro 4bit ALU
PříspěvekNapsal: 05.02.2020, 19:46 
Offline
Pan Štábní
Uživatelský avatar

Registrován: 16.03.2017, 11:36
Příspěvky: 1474
Bydliště: Kósek vod Brna
Has thanked: 78 times
Been thanked: 103 times
Myslel jsem, že jsou v tom texťáku jen ty rovnice, ale ono je to hotový!

Program prosím uschovej, až budu mít jasno, který fce tam chcu, tak Tě potom poprosím o novou sjetinu.

Flag a=b bych chtěl, protože to nejen zrychlí, ale taky zkrátí kód v 256B adresním prostoru

_________________
TEMS-49, PMI-80, rep. MK14, ZX81, ZXspectrum+, TI58, MZ-800


Nahoru
 Profil  
 
Zobrazit příspěvky za předchozí:  Seřadit podle  
Odeslat nové téma Odpovědět na téma  [ Příspěvků: 66 ]  Přejít na stránku 1, 2, 3, 4, 5  Další

Všechny časy jsou v UTC + 1 hodina [ Letní čas ]


Kdo je online

Uživatelé procházející toto fórum: Žádní registrovaní uživatelé a 3 návštevníků


Nemůžete zakládat nová témata v tomto fóru
Nemůžete odpovídat v tomto fóru
Nemůžete upravovat své příspěvky v tomto fóru
Nemůžete mazat své příspěvky v tomto fóru
Nemůžete přikládat soubory v tomto fóru

Hledat:
Přejít na:  
Založeno na phpBB® Forum Software © phpBB Group
Český překlad – phpBB.cz