Sari la conținut
ELFORUM - Forumul electronistilor

Reconstruirea minicomputerului Cobra cu circuite moderne ?


cristi7521

Postări Recomandate

daaaa , bine ca ai pornit pe drumul asta , nu am pus degeaba toate alea dincolo , la cobra 1 :reytre

daca inteleg bine , vrei sa faci un Turbo Spectrum aka Cobra 2

aici vei gasi tot ce trebuie despre el ( daca nu le ai deja )

https://cobrasov.org/download/

pe la pagina 11 din fisierul https://cobrasov.org/Download/TS_Spec.pdf gasesti ce vrei ( si multe altele )

spor la treaba  :dsgfds

 

 

 

Editat de aureli67
corectare text
Link spre comentariu
  • Răspunsuri 145
  • Creat
  • Ultimul Răspuns

Top autori în acest subiect

  • roadrunner

    73

  • cloudy

    24

  • Ovidanie

    12

  • BIZONUL66

    9

Top autori în acest subiect

Imagini postate

Acum 5 minute, cloudy a spus:

Totuși, serios acum, eu aș lăsa Z80 fizic in proiect, nu emulat in PLD.

pai nu e emulat e scris pe bune e la fel la nivel de ciclu masina. (si are niste generice - parmaetrii ca sa functioneze si ca I8080 si ca variantele mai noi vare au niste instructiuni in plus)

RR

Link spre comentariu
6 minutes ago, roadrunner said:

probabil ca o sa ma plicitisesc undeva pe drum..

Drumul este interesant. Finalitațile sunt aceleași pentru toți.

1 minute ago, roadrunner said:

e scris pe bune e la fel la nivel de ciclu masina.

Am să descarc și eu T80 și am să pun in simulator.
Aștept să-mi dea accept la înregistrare.

Link spre comentariu
Acum 17 minute, cloudy a spus:

Aștept să-mi dea accept la înregistrare.

nu trebuie, e un github unde sunt sursele (aia de la opencores dorm in papuci)

https://github.com/mist-devel/T80/tree/master

are niste chestii usor enervante codul ala ca sunt mai multe variante (100 de magazine intr-unul singur - Bucurest Obor)

eu folosesc fisierul top level T80A.vhd care cred ca e cel mai recent si complet.

atasez testbench-ul scris de chat GPT ca pe mine ma lovise lenea.

 

PS - am facut split la busul de date ca era bidirectional (inout) se numea "D" la mine acum e "D_in" si "D_out" atases si fisierul modificat

 

 

tb_comp_z80.vhd

T80a.vhd

Editat de roadrunner
Link spre comentariu

vezi ca am adaugat si fisierul modificat cu busul de date desfacut ca altfel nu se "pupa" cu test bench-ul.

sunt foarte ofticat ca mi s-a terminat berea din frigiderul de la firma...

 

ma uitam pe harta memoriei de la Turbo spectrum - sunt 64K de ram si gata. Ce se schimba e de unde citeste partea de video (adica un pointer) ba e la 4000h ba e la C000h de fapt e un bit diferenta intre adrese (MSB-ul e cand 1 cand 0) speram sa scriu si eu vro 5 lini de cod hdl nah...

RR

Editat de roadrunner
Link spre comentariu

Iar eu pentru că am șters Quartus. Acum văd că este Intel. Am zis că nu-mi mai trebuie curând ...
Instalez acum. Văd că au păstrat sigla ALTERA pentru soft.

Link spre comentariu

eu l-am adus in vivado (Xilinx/AMD ca-s ca pestele in apa cu astea) codul VHD merge cam pe orice din cate stiu l-au pus si pe Lattice (adica e agnostic)

RR

 

PS - lntel a redenumit partea de FPGA Altera din nou. (lipsa de imaginatie)

 

ma uitam in documentatia de la Turubo Spectrum  / Turbo Cobra care are o schema tare interesanta si simpla pentru accesul la memorie (un dual port access facut cu porti) si mi-am dat semana ca nu am nevoie de nimic de acolo (probabil de doua porti pentru MREQ is RD/RW) nu am RAS nu am CAS nu am Refresh  nu trebuie sa arbitrez cu partea de citire video ca o pun pe al doilea port la RAM, trag niste sarme in VHDL (deja m-am plicitisit)

RR

 

image.thumb.png.3808371c5fa45b69156c7c440bef0f2c.png

 

 

Editat de roadrunner
Link spre comentariu

S-a compilat.
Dar nu incape in Cyclone iV ales de mine :)
Error (119027): Design requires 490 I/O resources -- too many to fit in 456 available in the selected device or any device in the device family


Oricum, am ce face în weekend !
Multumesc :)

Link spre comentariu

n-ar fi tebuie sa cante asa, ca la top level are 40 de pini.(probail ca nu ai marcat corect cine e top level file) 

la nivelul inferior sub top level intredevar sunt io-uri pentru toti registrii interni si flaguri (pentru debug cred) 

eu nu am facut map/place/route ca nu ma doare acum, dau numai sinteza sa stiu ca-l poate sintetiza si tot simulez (behavioral) pana nu sunt multumit nu-l pun in hardware. (adica pe placa de dezvoltare) 

 

uite cum arata ierarhia la mine - T80A.vhd are 40 de pini dar sub el T80.vhd are o gramada, probabil ai selectat T80.vhd ca top level file altfel nu-mi explic.

 

image.png.c8315a9ac0c6d6da318e64cc0cf0a302.png

RR

Editat de roadrunner
Link spre comentariu

Este ok acum ! Gresem eu files cu t80.vhdl
Incape in Cyclone 3:

Quartus II 64-Bit Version    13.1.0 Build 162 10/23/2013 SJ Web Edition
Revision Name    T80a
Top-level Entity Name    T80a
Family    Cyclone III
Total logic elements    2,837 / 5,136 ( 55 % )
Total combinational functions    2,767 / 5,136 ( 54 % )
Dedicated logic registers    416 / 5,136 ( 8 % )
Total registers    416
Total pins    39 / 183 ( 21 % )
Total virtual pins    0
Total memory bits    0 / 423,936 ( 0 % )
Embedded Multiplier 9-bit elements    0 / 46 ( 0 % )
Total PLLs    0 / 2 ( 0 % )
Device    EP3C5F256C6
Timing Models    Final
================

Problema este ca numai Verilog am scris pana acum. (si asta acum ceva ani).
Mi-a parut mai simplu de citit.
Ne mai auzim.
Seara buna.

Editat de cloudy
Link spre comentariu

Felicitari pentru aceasta reusita .... asteptam sa  primim tot ce trebuie pt a realiza proiectuil, eu am decodat complect portul #fe pentru ai adauga cf card , sunet si altele . Deci daca se poate si in verilog sa il decodati complect. Eu  am folosit un gal in TS normal si dupa asta am putut face orice cu extensia - cfcard cu cp/m , z80 sio , ay pt sunet si altele.

Inca o data multumiri .

Mai mult de o ecuatie gal nu pot face ..... asta e 

Acum 1 oră, cloudy a spus:

Cum spuneai undeva mai sus, partea de timing VGA este ceva simplu cu un FPGA.
La ce memorie video necesita Cobra, ajunge cea interna din FPGA.
Dacă n-ai ce face, poți scoate Cobra cu HDMI, cu sound si CEC :)

Exista acum cobra cu hdmi - cu  pico atashat intern sau exten - 

Editat de BIZONUL66
Link spre comentariu
7 minutes ago, BIZONUL66 said:

Exista acum cobra cu hdmi - cu  pico atashat intern sau exten - 

Este așa de elegant să faci cu un FPGA ... încât un pico atașat la un Z80 pare (pentru mine) o cacofonie.
Eventual pico și python. 😀
 

Editat de cloudy
Link spre comentariu

e si pico asta un building block pentru unii dar nu cazul sa ma complic cand oricum am mult peste 64K in FPGA cu dual port (d-ala pe bune in hardware) - tocmai i-am adaugat si memorie la chestia aia cu T80. Ma uitam la diagramele de timing la simulator la Z80 cat timp irosit aiurea cu refresh-ul, ma rog asa erau timpurile.(pe vremea aiai era un feature, un selling point)

Citat

Felicitari pentru aceasta reusita .... asteptam sa  primim tot ce trebuie pt a realiza proiectuil, eu am decodat complect portul #fe pentru ai adauga cf card , sunet si altele . Deci daca se poate si in verilog sa il decodati complect.

stai ca inca nu am reusit nimic sa-l vad ca ruleaza cod din memorie si ca arunca ceva pe eran si mai vorbim dupap aia de porturi si ce mai e pe acolo. Pentru test leg un port de 8 biti la niste led-uri sa vad daca pot scrie la ele din software. (un pio crosetat la repezeala)

 

mi-e sila de partea cand va treubui sa scriu ceva cod de test ca nu mai tin minte mnemonicle de la Z80, sper sa gasesc un asembler pe undeva pe net (eventual un simulator)

 

RR

Editat de roadrunner
Link spre comentariu

Am conectat RAM-ul (64KB) citesc si execut cod din RAM si scriu la un port de 8 biti pe care l-am mapat o adresa aiurea un PIO improvizat, merge struna. Mai trebuie sa scriu in RAM si sa citesc de la porturi si cam asta e.

Mai adaug partea video si incerc sa rulez niste  software de test care scrie in memoria video. (nu mai lucrez pana saptamana viitoare ca sunt plecat cateva zile)

RR

Link spre comentariu

Creează un cont sau autentifică-te pentru a adăuga comentariu

Trebuie să fi un membru pentru a putea lăsa un comentariu.

Creează un cont

Înregistrează-te pentru un nou cont în comunitatea nostră. Este simplu!

Înregistrează un nou cont

Autentificare

Ai deja un cont? Autentifică-te aici.

Autentifică-te acum



×
×
  • Creează nouă...

Informații Importante

Am plasat cookie-uri pe dispozitivul tău pentru a îmbunătății navigarea pe acest site. Poți modifica setările cookie, altfel considerăm că ești de acord să continui.Termeni de Utilizare si Ghidări