Strona 1 z 1

Dlaczego black boxy nie działają na wszystkich C64

: 07 gru 2020, 14:20
autor: wegi
Problemem są stare płyty.
Otóż dlatego że stare PLA jest nieco wolniejsze od nowego i nieco później wystawia daną.

Niekiedy projektanci carta robią sztuczkę że dane do zatrzasku pobierają w trakcie wysokiej fazy fi2, a nie na jej opadającym zboczu. Jest to jak najbardziej poprawne o ile dobrane opóźnienie mieści się w czasie którym PLA zdąży już wystawić daną.

Do opóźniania strobu używano w nich często kondendatora 560 pF, który z nowymi C64C działał bezproblemowo - tak to wygląda na schemacie i na PCB, strzałką zaznaczyłem delikwenta:

Schematic_Black Box V8 C64 cartridge_2020-12-07_13-34-35.png
Schematic_Black Box V8 C64 cartridge_2020-12-07_13-34-35.png (91.41 KiB) Przejrzano 3359 razy
BB8 and 4.jpg
BB8 and 4.jpg (781.07 KiB) Przejrzano 3359 razy
Aby rozjaśnić temat załączam zrzut z analizatora logicznego, w którym pozaznaczałem obszary i możliwości czasów kiedy dane są strobowane dobrze i źle.

IO1 write.png
IO1 write.png (29.5 KiB) Przejrzano 3359 razy


Jak widać kondensator 560 pF może nie wystarczyć dla niektórych płyt i może zatrzaskiwać daną, kiedy jeszcze nie jest ustabilizowana. Tym samym zatrzaskując śmieci.

Re: Dlaczego black boxy nie działają na wszystkich C64

: 15 gru 2020, 12:24
autor: hobocti77x_
Witam. Jesli dobrze rozumiem schemat to banki w black box przelaczane sa przez linie adresowe A2 i A3. W takim razie czym jest DATA na obrazku z przebiegu sygnalow ?
Pozdrawiam

Re: Dlaczego black boxy nie działają na wszystkich C64

: 15 gru 2020, 17:29
autor: wegi
Dobrze zrozumiałeś. BB ma latch po adresie, ale ustabilizowanie się szyny adresowej jest czasowo zbieżne z szyną danych. Zasada jest ta sama. Trzeba "odczekać chwilkę" po narastającym zboczu fi2 i przejąć "daną", która w tym wypadku jest adresem.

Re: Dlaczego black boxy nie działają na wszystkich C64

: 15 gru 2020, 19:12
autor: hobocti77x_
No dobrze a co to sa za okresy na lini DATA oznaczone 00 ,04, 24 :?:
Sorry za dociekliwosc ale temat mnie zaciekawil i moze sie czegos dowiem.

Re: Dlaczego black boxy nie działają na wszystkich C64

: 15 gru 2020, 23:17
autor: wegi
Wartość spróbkowanej szyny danych przez analizator logiczny. U góry jest przebieg czasu, widać kiedy i na jak długo się stabilizuje.

Re: Dlaczego black boxy nie działają na wszystkich C64

: 16 gru 2020, 09:13
autor: hobocti77x_
Tylko co tam sie ma stabilizowac ? Przeciez magistrala danych w tym momecie "wisi w powietrzu" a to co pokazuje Analizator to przypadkowe zaklucenia powstale np. od zasilania podczas przelaczania bramek.O ile pamietam to c64 nie ma zadnej polaryzacji lini data..zreszta dla nas istotne sa linie adresowe a0-a3

Re: Dlaczego black boxy nie działają na wszystkich C64

: 16 gru 2020, 09:31
autor: wegi
No i wisi w powietrzu dopóki PLA nie wystawi danej - jak widać i nie może być inaczej szyna danych czy adresowa nie stabilizuje się dokładnie w trakcie opadającego zbocza fi2 tylko W TRAKCIE WYSOKIEGO STANU FI2. Narastające zbocze fi2 daje sygnał do wystawiania danych i pojawią się wtedy, kiedy wyrobi się PLA i sama pamięć, a w wypadku szyny adresowej 6502.

Ta dana #$24 nie jest jakimś stanem przypadkowym tylko daną wystawioną na szynie danych JUŻ w trakcie trwania wysokiej fazy fi2 i jest obecna także w trakcie opadającego zbocza fi2, oraz jeszcze trochę po opadającym zboczu fi2. Więc wisi w powietrzu dopóki dana nie zostanie wystawiona - co dokładnie pokazuje analizator.

Proponuję przejrzeć Zrzuty z analizatora logicznego Franka Buss, który także miał oprócz danych podpiętą szynę adresową.

Kolejny ciekawy przypadek - BB4 i opóźnianie przeładowania bramki rezystorem szeregowo wpiętym na liniach IO 475 om, po zwiększeniu do 2k2 kart zaczął działać ze starą płytą.

https://www.c64scene.pl/viewtopic.php?f ... 6&start=20

Re: Dlaczego black boxy nie działają na wszystkich C64

: 16 gru 2020, 11:25
autor: hobocti77x_
Proponuje zajrzec do datasheet jakiegos 6502. Na wykres czasowy cyklu zapisu. Wyraznie widać że dane do zapisu pojawiają się w fazie wysokiej PH2 z duzym opóźnieniem. Więc wszystko jest normalne. Chwilowo reszty nie skomentuje żeby nie narobić kisielu. :wink:

Re: Dlaczego black boxy nie działają na wszystkich C64

: 16 gru 2020, 12:10
autor: wegi
Czyli mówimy o tym samym. Dane nieistotne czy z szyny adresowej, czy z szyny danych można odebrać jeszcze przed opadającym zboczem fi2 w trakcie jej wysokiego stanu. Ważne by opóźnienie po narastającym zboczu (a szczerze mówiąc jak widać na zrzutach analizotora i oscyloskopu PO OPADAJĄCYM ZBOCZU LINII IO) było wystarczające i nie odbierać jej za szybko by nie zatrzaskiwać śmieci.

Re: Dlaczego black boxy nie działają na wszystkich C64

: 16 gru 2020, 13:39
autor: hobocti77x_
Nie tak nie mozemy robic. Bo po pierwsze jest to niezgodne z normami. A po drugie bedzie generowac problemy w przypadku rozbudowy systemu. Juz pisze co sie stanie z tym "misternym" planem jesli zostanie np. Zwiekszona czestotliwosc magistrali albo ktos wpadnie na "szatanski" plan wstawienia w ten obszar I/o ukladu wymagajacego skozystac z linni RDY? Wszystko poleci w pizdu. No chyba ze zamiastk kondensatora damy trymer i srubokret do kompletu.;)

Re: Dlaczego black boxy nie działają na wszystkich C64

: 16 gru 2020, 15:15
autor: hobocti77x_
Juz wiem dlaczeg to roznie dziala ze starym i nowym PLA. Nie ma to nic wspolnego z ich szybkoscia.Trzeba to sprawdzic dla pewnosci. No i opisac.;)

Re: Dlaczego black boxy nie działają na wszystkich C64

: 17 gru 2020, 23:24
autor: hobocti77x_
Mam pytanie. Czy masz uklady w wersji 74ls175 i 74ls02. Jesli tak to podmien na nie i usun te kondensatory czy reystory.

Re: Dlaczego black boxy nie działają na wszystkich C64

: 19 gru 2020, 01:23
autor: wegi
Nie mam żadne 175ki LS niestety. Od siebie mogę dodać że obserwowałem na oscyloskopie jakie opóźnienia daje ten kondensator dla linii IO i wszystko działało popranie do wartości bodaj 3.3 nF

Re: Dlaczego black boxy nie działają na wszystkich C64

: 19 gru 2020, 13:16
autor: hobocti77x_
1.PLA dekoduje adresy dla i/o wiec aby to zrobic musi miec podane stabilne adresy jest to logiczne.
2. Stare PLA bylo za male aby zmiescic cala logike adresowania totez dla i/o dodano uklad 74ls139. I to on jest zrodlem problemow.
3.moga byc 2 zrodla problemow
3 a. Zaklucenia na lunii adresowej powstale w wyniku przelaczenia 74ls139
3.b problem ze wspolpraca ttl z CMIS
4. Zobacz na schemacie c64 jak multplekser adresow TTL jest dolaczony do RAM (to tez CMOS). Poprzez rezystory o ile pamietam 33ohm.Dodaj taki rezystor (o wartosci dowolnej do np.120 ohm) na lini I/01 a wejscie 74hc02 i sprawdz na oscyloskopie.jesli masZ mozliwosc to pokaz co pokazuje oscyloskop.
POWODZENIA