Autor Wątek: ULA internals  (Przeczytany 2202 razy)

steev

  • *****
  • Wiadomości: 1366
  • Miejsce pobytu:
    inode 42
ULA internals
« dnia: 2022.02.05, 10:39:19 »
Gdyby ktoś chciał zerknąć lub potrzebował skorzystać :
podstawowe sygnały wewnątrz ULA, emulowane ze źródła z OpenCores.
Cały stuff związany z contended memoty został z rozmysłem zignorowany :)
Przy 'odczycie' danych z VRAM, na szynę danych podawane jest {va[8],va[6:0]}^8'h0f
Machines should work. People should think.

KWF

  • *****
  • Wiadomości: 6838
  • Miejsce pobytu:
    trzecia planeta od Słońca
  • "I co ja robię tu, u-u, co Ty tutaj robisz ..."
    • PCBway
Odp: ULA internals
« Odpowiedź #1 dnia: 2022.02.05, 16:57:08 »
Fajne :) i dzięki.

W tych źródłach są dwa drobne błędy przy generowaniu /INT:
// INT generation
reg INT_n = 1;
assign msk_int_n = INT_n;
always @(negedge clk7) begin
if (`cyclestart(vc,248) && `cyclestart(hc,0))
INT_n <= 0;
else if (`cyclestart(vc,248) && `cycleend(hc,31))
INT_n <= 1;
end

Poprawnie ustawione liczniki:
// INT generation
reg INT_n = 1;
assign msk_int_n = INT_n;
always @(negedge clk7) begin
if (`cyclestart(vc,248) && `cyclestart(hc,2))
INT_n <= 0;
else if (`cyclestart(vc,248) && `cycleend(hc,65))
INT_n <= 1;
end
« Ostatnia zmiana: 2022.02.05, 17:05:05 wysłana przez KWF »
KWF
-----
R Tape loading error 0:1
Moje zabawki: https://github.com/McKlaud76

steev

  • *****
  • Wiadomości: 1366
  • Miejsce pobytu:
    inode 42
Odp: ULA internals
« Odpowiedź #2 dnia: 2022.02.05, 20:39:31 »
I weź tu zaufaj źródłom, do których wszyscy się odnoszą ;)
Dzięki.
Przebiegi z 32T przerwaniem w załączniku.
Machines should work. People should think.