OldComp.cz http://oldcomp.cz/ |
|
CLAUDIA Lite - výukový 4-biťák http://oldcomp.cz/viewtopic.php?f=138&t=7239 |
Stránka 10 z 12 |
Autor: | microlan [ 13.03.2020, 09:22 ] | ||
Předmět příspěvku: | Re: CLAUDIA Lite - výukový 4-biťák | ||
Díky všem nápovědám to nějak dopadlo, akorát mám asi obráceně +ADDR tlačítko. //A kameru vzhůru nohama http://elektrotest.cz/files/videa/claudia1.mp4
|
Autor: | microlan [ 13.03.2020, 12:19 ] |
Předmět příspěvku: | Re: CLAUDIA Lite - výukový 4-biťák |
Tak už to chodí! Symbolická závada na pátek 13. IO 13, jsem osadil 74LS00 místo 74LS08, ty škrtnuté nuly v popisu si zahrály s mým zrakem |
Autor: | danhard [ 15.03.2020, 09:56 ] |
Předmět příspěvku: | Re: CLAUDIA Lite - výukový 4-biťák |
Dotaz : jaké jsou úrovně na třístavové datové sběrnici při mikroinstrukci /PLONK, když použiji HC obvody ? Návrh na zjednodušení: Pokud by se zápisem IR registru signálem LIR2 udělal i inkrement PC, tak by se dal vyhodit signál /INCA a zjednodušit mikroprogramy. Další možnost, ještě účinnější, je inkrement PC odvodit od konce /MEMRD, protože se podle PC čte vždy jen jednou. Pokud by se obsah IR při čtení další části instrukce použil jako atribut pro JMP, nebo pro ALOP, taky by se ušetřily dva registry u těchto operací. Zjednodušila by se instrukce skoku na 2 řádky, takže by se do mikroprogramu daly přidat další instrukce. Odpadla by částěčně logika PC_INC, protože inkrement PC by se u skoku dělal vždy a až pak skok. Mikroinstrukce NOP by se dělala synchronním nulováním mikrořadiče. |
Autor: | microlan [ 15.03.2020, 15:22 ] |
Předmět příspěvku: | Re: CLAUDIA Lite - výukový 4-biťák |
Chtěl jsem to odměřit ale nemůžu najít signál /PLONK |
Autor: | danhard [ 15.03.2020, 15:41 ] |
Předmět příspěvku: | Re: CLAUDIA Lite - výukový 4-biťák |
No to je ten, co tam není Když je D sběrnice v luftě, pokud na úrovni nezáleží (ale měly by tam být aspoň pulupy), tak je ten signál zbytečný a mohl bych ho použít. |
Autor: | microlan [ 15.03.2020, 15:47 ] |
Předmět příspěvku: | Re: CLAUDIA Lite - výukový 4-biťák |
Aha, už jsem to našel v kódu pro 188, ale mám to osazený LSkama, takže taky nic nenaměřím |
Autor: | microlan [ 15.03.2020, 15:52 ] |
Předmět příspěvku: | Re: CLAUDIA Lite - výukový 4-biťák |
Pull-upy tam přece jsou |
Autor: | danhard [ 15.03.2020, 15:57 ] |
Předmět příspěvku: | Re: CLAUDIA Lite - výukový 4-biťák |
Aha, už jsem je našel, ono je to schema strašně rozkouskovaný na přeskáčku. Ale jestli na datech nezáleží, tak tam může být připojen jakýkoliv jiný vysílač. |
Autor: | danhard [ 15.03.2020, 18:42 ] |
Předmět příspěvku: | Re: CLAUDIA Lite - výukový 4-biťák |
Zkusil jsem přepsat program pro navrhované zmněny. Hlavně jsem chtěl vytvořit prostor na další instrukce, chtěl bych tam rozšíření o 16 nible operační RAM, aby to mělo na čem počítat Kód: ;Claudia Lite microcode for 74188 PROM ver.4 pokusná po zmenách hw :
;- hodiny mikroprogramu od /F1 ;- ukončení instrukce synchronním resetem mikročítače /NOP ;- NOP vykonává jen fázi FETCH, načtení a dekódování instrukce, automaticky inkrement PC. ;- hodiny PC odvozené přímo od /MEMRD a F2 ;- adresa skoku v IR .org 00000h ;org 00h NOP .db 01Ah ;/MEMRD + LIR2 + /LIR .db 000h ;nenaprogramovano (nevyuzito) ;org 02h MOV BA .db 0D1h ;/ARD + LB + /NOP .db 000h ;nenaprogramovano (nevyuzito) ;org 04h LDA .db 090h ;/MEMRD + LA + /NOP .db 000h ;nenaprogramovano (nevyuzito) ;org 06h LDB .db 091h ;/MEMRD + LB + /NOP .db 000h ;nenaprogramovano (nevyuzito) ;org 08h ALOP AB .db 09Bh ;/MEMRD + LOUT .db 0C0h ;/ADDRD + LA + /NOP .db 000h ;nenaprogramovano (nevyuzito) .db 000h ;nenaprogramovano (nevyuzito) ;org 0Ch IN A .db 0A0h ;/INA + LA + /NOP .db 000h ;nenaprogramovano (nevyuzito) ;org 0Eh OUT A .db 0D3h ;/ARD + LOUT + /NOP .db 000h ;nenaprogramovano (nevyuzito) ;org 10h JMP .db 092h ;/MEMRD + LIR2 .db 086h ;/PLONK + /JP + /NOP (adresa skoku z IR) .db 000h ;nenaprogramovano (nevyuzito) .db 000h ;nenaprogramovano (nevyuzito) ;org 14h JC .db 092h ;/MEMRD + LIR2 .db 085h ;/PLONK + /JC + /NOP (adresa skoku z IR) .db 000h ;nenaprogramovano (nevyuzito) .db 000h ;nenaprogramovano (nevyuzito) ;org 18h JZ .db 092h ;/MEMRD + LIR2 .db 084h ;/PLONK + /JZ + /NOP (adresa skoku z IR) .db 000h ;nenaprogramovano (nevyuzito) .db 000h ;nenaprogramovano (nevyuzito) ;org 1Ch CLF .db 0E7h ;/CLF + /INCA + /NOP (/INCA nefunkcní) .db 000h ;nenaprogramovano (nevyuzito) ;org 1Eh SEF .db 0F7h ;/SEF + /INCA + /NOP (/INCA nefunkcní) .db 000h ;nenaprogramovano (nevyuzito) .END |
Autor: | microlan [ 15.03.2020, 20:25 ] |
Předmět příspěvku: | Re: CLAUDIA Lite - výukový 4-biťák |
Ale ten program vyžaduje nějaké HW změny, nebo ne? |
Autor: | danhard [ 15.03.2020, 20:54 ] |
Předmět příspěvku: | Re: CLAUDIA Lite - výukový 4-biťák |
To je popsaný v začátku, nějaký dráty by se přetahat musely. Dávám to sem nostalcompovi,ať se nad tím zamyslí. Je to takový líp učesaný, použití IR pro atribut je logický, atributy se dají řetězit a ušetří se pár brouků. Momentálně je mikroprogram takto: Kód: ;Claudia Lite microcode for 74188 PROM ver.2 .org 00000h ;org 00h NOP .db 08Fh ;/PLONK + /INCA .db 01Ah ;/MEMRD + LIR2 + /LIR ;org 02h MOV BA .db 051h ;/ARD + LB + /NOP + /LIR .db 000h ;nenaprogramovano (nevyuzito) ;org 04h LDA .db 08Fh ;/PLONK + /INCA .db 010h ;/MEMRD + LA + /NOP + /LIR ;org 06h LDB .db 08Fh ;/PLONK + /INCA .db 011h ;/MEMRD + LB + /NOP + /LIR ;org 08h ALOP AB .db 08Fh ;/PLONK + /INCA .db 09Bh ;/MEMRD + LOUT .db 040h ;/ADDRD + LA + /NOP + /LIR .db 000h ;nenaprogramovano (nevyuzito) ;org 0Ch IN A .db 020h ;/INA + LA + /NOP + /LIR .db 000h ;nenaprogramovano (nevyuzito) ;org 0Eh OUT A .db 053h ;/ARD + LOUT + /NOP + /LIR .db 000h ;nenaprogramovano (nevyuzito) ;org 10h JMP .db 08Fh ;/PLONK + /INCA .db 09Eh ;/MEMRD + /JP .db 01Ah ;/MEMRD + LIR2 + /LIR .db 000h ;nenaprogramovano (nevyuzito) ;org 14h JC .db 08Fh ;/PLONK + /INCA .db 09Dh ;/MEMRD + /JC .db 01Ah ;/MEMRD + LIR2 + /LIR .db 000h ;nenaprogramovano (nevyuzito) ;org 18h JZ .db 08Fh ;/PLONK + /INCA .db 09Ch ;/MEMRD + /JZ .db 01Ah ;/MEMRD + LIR2 + /LIR .db 000h ;nenaprogramovano (nevyuzito) ;org 1Ch CLF .db 0EFh ;/CLF + /INCA; .db 01Ah ;/MEMRD + LIR2 + /LIR ;org 1Eh SEF .db 0FFh ;/SEF + /INCA .db 01Ah ;/MEMRD + LIR2 + /LIR .END Nikdy jsem nebyl na vyšší jazyky, rád převezmu operační systém a programové vybavení od Claudie Lite |
Autor: | microlan [ 14.10.2020, 09:48 ] |
Předmět příspěvku: | Re: CLAUDIA Lite - výukový 4-biťák |
V instrukčním souboru jsou 3 nepoužité instrukční kódy 1001 1011 1101 Vlastně funkční jsou, fungují jako HALT Šlo by modifikací jen SW ve 74188, aby fungovalo JNC a JNZ? Případně jiné funkce? |
Autor: | danhard [ 14.10.2020, 11:12 ] |
Předmět příspěvku: | Re: CLAUDIA Lite - výukový 4-biťák |
Vyjeď sem listing mikroprogramu, nepřekrývají je mikroprogramově delší instrukce ? O to jsem se snažil, udělat ten mikrokód efektivnější, ale především, ušetřené místo by se dalo použít na delší adresování |
Autor: | microlan [ 14.10.2020, 14:22 ] |
Předmět příspěvku: | Re: CLAUDIA Lite - výukový 4-biťák |
Aha, už to vidím. Ty skokové instrukce zabírají 3 byte. |
Stránka 10 z 12 | Všechny časy jsou v UTC + 1 hodina [ Letní čas ] |
Powered by phpBB® Forum Software © phpBB Group http://www.phpbb.com/ |