OldComp.cz

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

Zde me bt odkaz na vai retro prty

Právě je 03.03.2021, 07:40

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: 1517
Bydliště: Kósek vod Brna
Has thanked: 84 times
Been thanked: 107 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: 3186
Bydliště: Jesenice u Prahy
Has thanked: 20 times
Been thanked: 185 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.

_________________
Diagnóza: Touretteův syndrom, Koprolálie, Dyslexie, Obsedantně kompulzivní porucha.
Kalkulačky: Privileg PR56, TI51-III, TI57, TI58, TI59, TI83, TI-83 Premium CE, TI89
Počítadla: BOBO64, ZX48 plus, DG-88, Didaktik-M, C16, C64C, Amiga 500+, MZ800, MUPID C2A2


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: 3025
Bydliště: Bratislava
Has thanked: 308 times
Been thanked: 575 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: 1517
Bydliště: Kósek vod Brna
Has thanked: 84 times
Been thanked: 107 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: 1517
Bydliště: Kósek vod Brna
Has thanked: 84 times
Been thanked: 107 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: 3186
Bydliště: Jesenice u Prahy
Has thanked: 20 times
Been thanked: 185 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í.

_________________
Diagnóza: Touretteův syndrom, Koprolálie, Dyslexie, Obsedantně kompulzivní porucha.
Kalkulačky: Privileg PR56, TI51-III, TI57, TI58, TI59, TI83, TI-83 Premium CE, TI89
Počítadla: BOBO64, ZX48 plus, DG-88, Didaktik-M, C16, C64C, Amiga 500+, MZ800, MUPID C2A2


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: 120
Has thanked: 13 times
Been thanked: 49 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: 2204
Has thanked: 121 times
Been thanked: 418 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]
195 krát

_________________
Kalendář Intelu na rok 2021:
Leden: Náhodný den zakroužkovaný a u něj napsáno: Uvedení 9nm procesoru.
Únor: Náhodný den zakroužkovaný a u něj napsáno: Uvedení 9nm procesoru, kdyby nevyšel lednový termín.
Březen: Náhodný den zakroužkovaný a u něj napsáno: Uvedení 9nm procesoru, kdyby nevyšel ani únorový termín.
Duben: Náhodný den ...
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: 1503
Bydliště: BA-Petržalka :(
Has thanked: 11 times
Been thanked: 207 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]
172 krát
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: 1503
Bydliště: BA-Petržalka :(
Has thanked: 11 times
Been thanked: 207 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]
181 krát
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: 1517
Bydliště: Kósek vod Brna
Has thanked: 84 times
Been thanked: 107 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: 1503
Bydliště: BA-Petržalka :(
Has thanked: 11 times
Been thanked: 207 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]
187 krát
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: 120
Has thanked: 13 times
Been thanked: 49 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]
191 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: 1517
Bydliště: Kósek vod Brna
Has thanked: 84 times
Been thanked: 107 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: 1517
Bydliště: Kósek vod Brna
Has thanked: 84 times
Been thanked: 107 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 2 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