CA8088
CA8088
Cytując Pawlaka ze znanego
cyklu filmowego: „Nadejszła wiekopomna chwila”...
to muszę właśnie powiedzieć, że nadeszła właśnie
ta chwila i czas zabrać się do roboty.
Już od dawna chodziła mi po głowie koncepcja
zbudowania czegoś o walorach poznawczych
i edukacyjnych – komputerek z prockiem Intela 8088.
Dlaczego taki? Ano z softem jest w miarę, są kompilery
na tego proca i nawet można stosować język C.
Dodatkowo umiem przerobić EXE na postać do
pamięci EPROM/FLASH (program w formacie
EXE to nie jest to, co się wykonuje i wymaga drobnej
interwencji). Dodatkowo w obrębie tego samego środowiska
można poćwiczyć sobie z prockiem V20, to też interesujące
wyzwanie. No więc do dzieła
CA8088
komputer edukacyjny
z procesorem i8088
Z jednej strony (w szufladzie wala mi się kilka takich procków
a serce boli, by to wyrzucić) a z drugiej strony chęć badawcza skłania do zbudowania nowej zabawki. Tak całkiem przy okazji to może również stanowić platformę do badań i eksperymentów dla procków V20, które stanowią wersję rozwojową i ulepszoną dla wspomnianego 8088 (których tak trochę również wala mi się w szufladzie).
W necie można znaleźć jakieś przykłady konstrukcji takich sprzętów, ale postanowiłem pójść własną ścieżką. Idąc na maxa (ten procek można użyć w wersji minimalnej lub maksymalnej – decyduje o tym stan na odpowiednim pinie proca, który zmienia znaczenie i funkcje niektórych pinów), konieczne jest zastosowanie kontrolera systemu 8288
Tak do kompletu (i trochę z lenistwa) zastosowałem również generator sygnału taktującego 8284. To w sumie rozwiązuje kilka problemów.
Schemat do powyższego „dzieła” to:
gdzie poszczególne kawałeczki są następujące:
zawiera elementy najważniejsze: generator sygnału zegarowego, procek, wydzielenie szyny danych i adresowej (bo jak wiadomo, 8088 ma multipleksowaną szynę danych/adresową), kontroler systemu, kontroler przerwań, układy generacji sygnałów chip select do portów i pamięci. Zastanawiałem się nad kanałem DMA, ale może to za wiele jak na początek.
Pamiątki:
i porty (kanał szeregowy):
porty do mrugania ledami (by jakoś w prosty sposób pokazać, że układ żyje) plus jakiś drobny kawałek na klawiaturkę:
port równoległy:
i przerywadło od upływu czasu:
Konstrukcja z pewnością nie jest wolna od wad i błędów. Jak mówi znane porzekadło: „jeszcze się taki nie urodził, co by wszystko wiedział” (no ale starać się trzeba). Pojawiające się problemy będą na bieżąco korygowane na schemacie i finalna wersja zostanie „uwolniona” od różnych licencji i stanie się dobrem ogólnym.
Na razie jest w takiej formie, jaka jest. Finalnie można pofragmentować na drobniejsze i dostosować przykładowo do wariantu RC80. Sprawa jest otwarta.
cyklu filmowego: „Nadejszła wiekopomna chwila”...
to muszę właśnie powiedzieć, że nadeszła właśnie
ta chwila i czas zabrać się do roboty.
Już od dawna chodziła mi po głowie koncepcja
zbudowania czegoś o walorach poznawczych
i edukacyjnych – komputerek z prockiem Intela 8088.
Dlaczego taki? Ano z softem jest w miarę, są kompilery
na tego proca i nawet można stosować język C.
Dodatkowo umiem przerobić EXE na postać do
pamięci EPROM/FLASH (program w formacie
EXE to nie jest to, co się wykonuje i wymaga drobnej
interwencji). Dodatkowo w obrębie tego samego środowiska
można poćwiczyć sobie z prockiem V20, to też interesujące
wyzwanie. No więc do dzieła
CA8088
komputer edukacyjny
z procesorem i8088
Z jednej strony (w szufladzie wala mi się kilka takich procków
a serce boli, by to wyrzucić) a z drugiej strony chęć badawcza skłania do zbudowania nowej zabawki. Tak całkiem przy okazji to może również stanowić platformę do badań i eksperymentów dla procków V20, które stanowią wersję rozwojową i ulepszoną dla wspomnianego 8088 (których tak trochę również wala mi się w szufladzie).
W necie można znaleźć jakieś przykłady konstrukcji takich sprzętów, ale postanowiłem pójść własną ścieżką. Idąc na maxa (ten procek można użyć w wersji minimalnej lub maksymalnej – decyduje o tym stan na odpowiednim pinie proca, który zmienia znaczenie i funkcje niektórych pinów), konieczne jest zastosowanie kontrolera systemu 8288
Tak do kompletu (i trochę z lenistwa) zastosowałem również generator sygnału taktującego 8284. To w sumie rozwiązuje kilka problemów.
Schemat do powyższego „dzieła” to:
gdzie poszczególne kawałeczki są następujące:
zawiera elementy najważniejsze: generator sygnału zegarowego, procek, wydzielenie szyny danych i adresowej (bo jak wiadomo, 8088 ma multipleksowaną szynę danych/adresową), kontroler systemu, kontroler przerwań, układy generacji sygnałów chip select do portów i pamięci. Zastanawiałem się nad kanałem DMA, ale może to za wiele jak na początek.
Pamiątki:
i porty (kanał szeregowy):
porty do mrugania ledami (by jakoś w prosty sposób pokazać, że układ żyje) plus jakiś drobny kawałek na klawiaturkę:
port równoległy:
i przerywadło od upływu czasu:
Konstrukcja z pewnością nie jest wolna od wad i błędów. Jak mówi znane porzekadło: „jeszcze się taki nie urodził, co by wszystko wiedział” (no ale starać się trzeba). Pojawiające się problemy będą na bieżąco korygowane na schemacie i finalna wersja zostanie „uwolniona” od różnych licencji i stanie się dobrem ogólnym.
Na razie jest w takiej formie, jaka jest. Finalnie można pofragmentować na drobniejsze i dostosować przykładowo do wariantu RC80. Sprawa jest otwarta.
Nie masz wymaganych uprawnień, aby zobaczyć pliki załączone do tego posta.
Ostatnio zmieniony piątek 17 lut 2023, 16:02 przez gaweł, łącznie zmieniany 2 razy.
Prawdziwe słowa nie są przyjemne. Przyjemne słowa nie są prawdziwe.
Lao Tse
Re: CA88
Gratuluję inicjatywy i świetnego pomysłu Kolego Gawle! Kibicuję idei i będę -w miarę moich skromnych sił- starał się pomóc.
Mam pytanie (proszę nie odebrać tego jako czegoś demotywującego - w żadnym wypadku):
Czy myślałeś Kolego Gawle nad dostępnością głównego CPU dla tego komputerka? -bo pomysł jest świetny jak już napisałem. Mnie zawsze jednak sen z oczu spędzał takie coś: no tak, ale co by było gdyby tego głównego cpu zabrakło? -tzn.żebym był dobrze zrozumiany.. Nie chodzi mi tyle o sam KONKRETNY procesor, ale raczej o to, czy system przekazywania danych i/o mógłby być tak pomyślany, aby te cpu były w jakiś sposób wymienne (jak w komputerach PC, ale w mniejszej skali), coś jakby pewien wspólny protokół wymiany danych. W sumie gdyby bliżej przyjrzeć się magistrali i/o to wychodzi jakiś tam wspólny mianownik.. Jakiś punkt zaczepienia. Tylko jeszcze taka uwaga z mojej strony, no bo nie chciałbym, żeby ta informacja w jakiś sposób przeszkodziła w realizacji projektu (typu, że tylko zawracam niepotrzebnie głowę). Chciałem tylko napisać, że sukces popularności czegoś często idzie wraz z dostępnością tego czegoś na rynku (ew.możliwością zastąpienia tego czegoś, tutaj mam na myśli cpu, albo innej części co do której istnieje ryzyko braku dostępności.. chociaż... hmm... takie ryzyko chyba zawsze istnieje). W każdym razie popularność czy to C64, czy Atari, a wcześniej innych konsol nie wynikała z niczego, tylko właśnie z dostępności, możliwości prowizorki (podmiany części), oraz -co bardzo istotne- z licznej społeczności (a ta z kolei wynikała z popytu/podaży na dane dobro - ogólniedostępne ).
No, ale póki co trzymam kciuki, żeby ten projekt ujrzał światło dzienne.
Mam pytanie (proszę nie odebrać tego jako czegoś demotywującego - w żadnym wypadku):
Czy myślałeś Kolego Gawle nad dostępnością głównego CPU dla tego komputerka? -bo pomysł jest świetny jak już napisałem. Mnie zawsze jednak sen z oczu spędzał takie coś: no tak, ale co by było gdyby tego głównego cpu zabrakło? -tzn.żebym był dobrze zrozumiany.. Nie chodzi mi tyle o sam KONKRETNY procesor, ale raczej o to, czy system przekazywania danych i/o mógłby być tak pomyślany, aby te cpu były w jakiś sposób wymienne (jak w komputerach PC, ale w mniejszej skali), coś jakby pewien wspólny protokół wymiany danych. W sumie gdyby bliżej przyjrzeć się magistrali i/o to wychodzi jakiś tam wspólny mianownik.. Jakiś punkt zaczepienia. Tylko jeszcze taka uwaga z mojej strony, no bo nie chciałbym, żeby ta informacja w jakiś sposób przeszkodziła w realizacji projektu (typu, że tylko zawracam niepotrzebnie głowę). Chciałem tylko napisać, że sukces popularności czegoś często idzie wraz z dostępnością tego czegoś na rynku (ew.możliwością zastąpienia tego czegoś, tutaj mam na myśli cpu, albo innej części co do której istnieje ryzyko braku dostępności.. chociaż... hmm... takie ryzyko chyba zawsze istnieje). W każdym razie popularność czy to C64, czy Atari, a wcześniej innych konsol nie wynikała z niczego, tylko właśnie z dostępności, możliwości prowizorki (podmiany części), oraz -co bardzo istotne- z licznej społeczności (a ta z kolei wynikała z popytu/podaży na dane dobro - ogólniedostępne ).
No, ale póki co trzymam kciuki, żeby ten projekt ujrzał światło dzienne.
Internet łączy ludzi, którzy dzielą się swoimi zainteresowaniami, pomysłami i potrzebami, bez względu na geograficzne (przeciwności).
BOB TAYLOR, PARC
BOB TAYLOR, PARC
Re: CA8088
Muszę Cię uspokoić, damy radę.
Jak na razie to tych procków z odzysku jest całkiem sporo (oczywista, nowych już nie produkują). Poza tym, jak pisałem wyżej, da się tam wetknąć procka V20, te również są dostępne. Tylko czasami trzeba poszukać.
Jak na razie to tych procków z odzysku jest całkiem sporo (oczywista, nowych już nie produkują). Poza tym, jak pisałem wyżej, da się tam wetknąć procka V20, te również są dostępne. Tylko czasami trzeba poszukać.
Ostatnio zmieniony piątek 17 lut 2023, 16:04 przez gaweł, łącznie zmieniany 1 raz.
Prawdziwe słowa nie są przyjemne. Przyjemne słowa nie są prawdziwe.
Lao Tse
Re: CA88
Fajny projekt wykorzystujący układy z epoki. Na mojej liście todo też coś takiego jest, więc będę kibicował w postępach prac.
Re: CA88
Fajny pomysł, jednak nazwa niestety od ponad trzydziestu lat jest zajęta... Przynajmniej w głowach miłośników CA80. Pan Gardynik napisał kolejną część oprogramowania CA80 i nadał jej właśnie taką nazwę, bo do jej uruchomienia należało wcisnąć [88]. Niestety nie mam żadnej sugestii, co można zrobić w tej sprawie.
"If A = success, then the formula is A = X + Y + Z.
X is work. Y is play. Z is keep your mouth shut."A. Einstein
X is work. Y is play. Z is keep your mouth shut."A. Einstein
Re: CA8088
Nie wiedziałem. Trudno, nie naruszam cudzych praw, to zostaje zmieniona nazwa na CA8088. Poproszę admina, by zmienił tytuł.
Prawdziwe słowa nie są przyjemne. Przyjemne słowa nie są prawdziwe.
Lao Tse
Re: CA8088
Ostatnio znalazłem mój zeszyt z '94 roku, gdzie przepisywałem listę rozkazów 8080, oraz rozpiskę i funkcje układów mu towarzyszących. Potem sobie przypomniałem, że zbierałem układy do mikrokomputera opisanego w Radioelektroniku.
Z tego co pamiętam udało mi się uruchomić jakiś podstawowy zestaw procesor, pamięć, kontroler DMA, uart. Ale to tyle. Nie miałem niestety innego komputera wtedy, a pisanie programów metodą wpisywania pojedynczych bitów nie było zbyt optymalne :mrgreen: . I tak się skończyła moja przygoda z tym procesorem.
PS. Chylę czoła, nad waszymi projektami. Przyznam się, że mnie się już nie chce aż tak rzeźbić. Nawet swojego kalkulatora HP Prime używam do podstawowych działań, bo pisanie programów pod niego, mnie przerosło.
Z tego co pamiętam udało mi się uruchomić jakiś podstawowy zestaw procesor, pamięć, kontroler DMA, uart. Ale to tyle. Nie miałem niestety innego komputera wtedy, a pisanie programów metodą wpisywania pojedynczych bitów nie było zbyt optymalne :mrgreen: . I tak się skończyła moja przygoda z tym procesorem.
PS. Chylę czoła, nad waszymi projektami. Przyznam się, że mnie się już nie chce aż tak rzeźbić. Nawet swojego kalkulatora HP Prime używam do podstawowych działań, bo pisanie programów pod niego, mnie przerosło.
Re: CA8088
Problem z generatorem
sygnału zegarowego
Prace powoli toczą się do przodu, jednak pewne otrzymywane sugestie są jakoś ciągle obecne w głowie. Tu przypomnę zdanie @J23 „Czy myślałeś … nad dostępnością głównego CPU dla tego komputerka?”.
Okazuje się, że nie problem w samych prockach, ale w jego otoczeniu. Procesory typu 8088 włącznie z znacząco ulepszoną wersją V20 (70108) są bez problemu dostępne. Znacząco gorzej jest z układami stowarzyszonymi. Tu mam na myśli przede wszystkim układ 8288 (kontroler systemu) oraz 8284 (generator sygnału zegarowego). O ile bez 8288 da się przeżyć, gdyż można skonfigurować samego proca do pracy w trybie minimalnym (podając odpowiedni stan na właściwą nogę procka). Wtedy sam procek zajmuje się obsługą pamięci i portów. Jak to zwykle bywa, każdy kij ma dwa końce: staje się nieosiągalna praca w bardziej złożonych konfiguracjach, ale uważam, że nie jest to wielki problem.
Trochę gorzej przedstawia się sytuacja z generatorem zegarowym. Tego układu nie da się pominąć, ale da się go zastąpić czymś innym. Z jego opisu, a posiłkowałem się najlepszym z możliwych źródeł wiedzy,
wynika, że jest to całkiem realne. Głównym zadaniem 8284 jest wygenerowanie zegara dla 8088 i układów peryferyjnych oraz sygnału reset. Z sygnałem reset to żaden problem: bierzemy „klasyczne” połączenie RC i przepuszczamy sygnał przez bramkę Schmitta.
Natomiast sygnał zegarowy musi mieć odpowiednie wypełnienie: dokładniej to 1/3. Jest generator, z którego sygnał jest odpowiednio ukształtowany: znaczy dzieli przez 3 i 1 część to stan wysoki oraz 2 części to stan niski. Sam 8284 generuje jeszcze zegar dla układów peryferyjnych. Tu zachodzi bardzo prosta zależność między tymi sygnałami. Częstotliwość sygnału taktującego układy peryferyjne jest podzielona przez dwa w stosunku do sygnału taktującego sam proces. Tak całkiem przy okazji wychodzi jego wypełnienie na 50%.
Postanowiłem zbudować środowisko badawcze dla 8284 wg wcześniej załączonego schematu.
Odpał i … niespodzianka – nie działa. Wkładam układ do płyty i … działa. W płycie stykowej nie chce.
Teraz trochę historii. Zmontowany układ badawczy został popełniony tak trochę czasu temu i przeleżał w szufladzie. Teraz postanowiłem wrócić do przerwanych działań i wyjąłem z szuflady. Tak się dziwnie zbiegło, że oryginalny schemat mi zaginął, więc wyżej zaprezentowany schemat jest odtworzony z natury. Jednak odtwarzając wspierałem się moją skarbnicą wiedzy:
gdzie ewidentnie widać dwa kondki.
Trochę wysiłku intelektualnego i dostrzegłem różnicę:
Tu nie ma kondków, tylko dwa oporniki po 510Ω. Jakaś rozbieżność poglądów…
Kilka kartek wcześniej w intelowej biblii znalazłem:
dwa rezystory do masy. No coś takiego… kiedyś, jak tworzyłem tą konstrukcję, to miałem większą wiedzę niż obecnie? Z jakiego powodu zostało to tak zaprojektowane. Dlaczego? Nie pamiętam. Dałem rezystory po 510Ω, odpał i … działa. Jak to zwykle bywa, należy zważać na szczegóły i wszystko sprawdzać.
Finalnie układ próbny do generatora to:
Nie chciało mi się szukać docelowego kwarcu, więc użyłem w miarę podobny – 12MHz, przy okazji rachunki są prostsze.
Układ ten wystartował. Na wyjściu OSC jest 12MHz, tak jak być powinno:
Na wyjściu CLK
jest przebieg o częstotliwości trzy razy mniejszej i słusznym wypełnieniu:
Na wyjściu PCLK
również książkowo:
Tak nieoczekiwanie zamiast napisać jak na TTL’ach zrobić generator, zeszło na walce o „zapomnianą” wiedzę, książki książkami, ale najlepiej sprawdzić samemu.
sygnału zegarowego
Prace powoli toczą się do przodu, jednak pewne otrzymywane sugestie są jakoś ciągle obecne w głowie. Tu przypomnę zdanie @J23 „Czy myślałeś … nad dostępnością głównego CPU dla tego komputerka?”.
Okazuje się, że nie problem w samych prockach, ale w jego otoczeniu. Procesory typu 8088 włącznie z znacząco ulepszoną wersją V20 (70108) są bez problemu dostępne. Znacząco gorzej jest z układami stowarzyszonymi. Tu mam na myśli przede wszystkim układ 8288 (kontroler systemu) oraz 8284 (generator sygnału zegarowego). O ile bez 8288 da się przeżyć, gdyż można skonfigurować samego proca do pracy w trybie minimalnym (podając odpowiedni stan na właściwą nogę procka). Wtedy sam procek zajmuje się obsługą pamięci i portów. Jak to zwykle bywa, każdy kij ma dwa końce: staje się nieosiągalna praca w bardziej złożonych konfiguracjach, ale uważam, że nie jest to wielki problem.
Trochę gorzej przedstawia się sytuacja z generatorem zegarowym. Tego układu nie da się pominąć, ale da się go zastąpić czymś innym. Z jego opisu, a posiłkowałem się najlepszym z możliwych źródeł wiedzy,
wynika, że jest to całkiem realne. Głównym zadaniem 8284 jest wygenerowanie zegara dla 8088 i układów peryferyjnych oraz sygnału reset. Z sygnałem reset to żaden problem: bierzemy „klasyczne” połączenie RC i przepuszczamy sygnał przez bramkę Schmitta.
Natomiast sygnał zegarowy musi mieć odpowiednie wypełnienie: dokładniej to 1/3. Jest generator, z którego sygnał jest odpowiednio ukształtowany: znaczy dzieli przez 3 i 1 część to stan wysoki oraz 2 części to stan niski. Sam 8284 generuje jeszcze zegar dla układów peryferyjnych. Tu zachodzi bardzo prosta zależność między tymi sygnałami. Częstotliwość sygnału taktującego układy peryferyjne jest podzielona przez dwa w stosunku do sygnału taktującego sam proces. Tak całkiem przy okazji wychodzi jego wypełnienie na 50%.
Postanowiłem zbudować środowisko badawcze dla 8284 wg wcześniej załączonego schematu.
Odpał i … niespodzianka – nie działa. Wkładam układ do płyty i … działa. W płycie stykowej nie chce.
Teraz trochę historii. Zmontowany układ badawczy został popełniony tak trochę czasu temu i przeleżał w szufladzie. Teraz postanowiłem wrócić do przerwanych działań i wyjąłem z szuflady. Tak się dziwnie zbiegło, że oryginalny schemat mi zaginął, więc wyżej zaprezentowany schemat jest odtworzony z natury. Jednak odtwarzając wspierałem się moją skarbnicą wiedzy:
gdzie ewidentnie widać dwa kondki.
Trochę wysiłku intelektualnego i dostrzegłem różnicę:
Tu nie ma kondków, tylko dwa oporniki po 510Ω. Jakaś rozbieżność poglądów…
Kilka kartek wcześniej w intelowej biblii znalazłem:
dwa rezystory do masy. No coś takiego… kiedyś, jak tworzyłem tą konstrukcję, to miałem większą wiedzę niż obecnie? Z jakiego powodu zostało to tak zaprojektowane. Dlaczego? Nie pamiętam. Dałem rezystory po 510Ω, odpał i … działa. Jak to zwykle bywa, należy zważać na szczegóły i wszystko sprawdzać.
Finalnie układ próbny do generatora to:
Nie chciało mi się szukać docelowego kwarcu, więc użyłem w miarę podobny – 12MHz, przy okazji rachunki są prostsze.
Układ ten wystartował. Na wyjściu OSC jest 12MHz, tak jak być powinno:
Na wyjściu CLK
jest przebieg o częstotliwości trzy razy mniejszej i słusznym wypełnieniu:
Na wyjściu PCLK
również książkowo:
Tak nieoczekiwanie zamiast napisać jak na TTL’ach zrobić generator, zeszło na walce o „zapomnianą” wiedzę, książki książkami, ale najlepiej sprawdzić samemu.
Nie masz wymaganych uprawnień, aby zobaczyć pliki załączone do tego posta.
Prawdziwe słowa nie są przyjemne. Przyjemne słowa nie są prawdziwe.
Lao Tse
Re: CA8088
Ekwiwalent układu I8284
Obiecanki czas spełnić. Napisałem, że można zastąpić układ 8284 kilkoma TTL’kami, więc nadszedł ten czas. Jak wiadomo, ten generator dzieli częstotliwość wejściową przez trzy i produkuje odpowiednie wypełnienie. Nie chciało mi się projektować odpowiedniego automatu synchronicznego, więc zatrudniłem do tego program Webpack do generowania wsadów do układów PLD (przy okazji można tym wsadem się posiłkować jeżeli będzie budowany generator bazujący przykładowo na układzie GAL).
W wyniku symulacji mamy taki oto przebieg:
czyli jest tak jak być powinno. Zapis w VHDL’u odpowiada następującemu układowi:
Symulacja, symulacją, ale dopiero rzeczywistość daje prawdziwą weryfikację. Zbudowałem układ próbny:
i oscylek pokazał taki przebieg:
Zmierzona częstotliwość 5,33MHz nawet jest zgodna z prawdą, bo 16MHz podzielone przez trzy właśnie tyle daje.
Wyprodukowanie PCLK (zegara dla układów peryferyjnych) to już prościca, więc nie będę się tym zabawiał.
Obiecanki czas spełnić. Napisałem, że można zastąpić układ 8284 kilkoma TTL’kami, więc nadszedł ten czas. Jak wiadomo, ten generator dzieli częstotliwość wejściową przez trzy i produkuje odpowiednie wypełnienie. Nie chciało mi się projektować odpowiedniego automatu synchronicznego, więc zatrudniłem do tego program Webpack do generowania wsadów do układów PLD (przy okazji można tym wsadem się posiłkować jeżeli będzie budowany generator bazujący przykładowo na układzie GAL).
Kod: Zaznacz cały
-- ****************************************************************************
-- ****************************************************************************
-- ** **
-- ** BIAŁYSTOK 2023 **
-- ** **
-- ** Synteza układu 8284 (INTEL) **
-- ** **
-- ** Napisal : Andrzej Pawluczuk **
-- ** Licencja: CC BY 3.0 **
-- ** **
-- ****************************************************************************
-- ****************************************************************************
library IEEE ;
use IEEE.STD_LOGIC_1164.all ;
use IEEE.STD_LOGIC_ARITH.all ;
use IEEE.STD_LOGIC_UNSIGNED.all ;
entity G8284 is port ( XTal : in std_logic ;
Reset : in std_logic ;
Clk : out std_logic ;
PClk : out std_logic ) ;
end G8284 ;
architecture Behavioral of G8284 is
signal Cnt : std_logic_vector ( 1 downto 0 ) ;
signal DividerBy2 : std_logic ;
signal IntrnalClk : std_logic ;
begin
process ( IntrnalClk , Reset )
begin
if Reset = '0' then
DividerBy2 <= '0' ;
else
if IntrnalClk'event and ( IntrnalClk = '0' ) then
DividerBy2 <= not DividerBy2 ;
end if ;
end if ;
end process ;
process ( XTal , Reset )
begin
if Reset = '0' then
Cnt ( 0 ) <= '0' ;
Cnt ( 1 ) <= '0' ;
else
if XTal' event and XTal = '1' then
Cnt ( 0 ) <= ( not Cnt ( 0 ) ) and ( not Cnt ( 1 ) ) ;
Cnt ( 1 ) <= ( not Cnt ( 1 ) ) and Cnt ( 0 ) ;
end if ;
end if ;
end process ;
IntrnalClk <= Cnt ( 0 ) ;
PClk <= DividerBy2 ;
Clk <= Cnt ( 0 ) ;
-- Clk <= Cnt ( 1 ) ;
end Behavioral ;
W wyniku symulacji mamy taki oto przebieg:
czyli jest tak jak być powinno. Zapis w VHDL’u odpowiada następującemu układowi:
Symulacja, symulacją, ale dopiero rzeczywistość daje prawdziwą weryfikację. Zbudowałem układ próbny:
i oscylek pokazał taki przebieg:
Zmierzona częstotliwość 5,33MHz nawet jest zgodna z prawdą, bo 16MHz podzielone przez trzy właśnie tyle daje.
Wyprodukowanie PCLK (zegara dla układów peryferyjnych) to już prościca, więc nie będę się tym zabawiał.
Nie masz wymaganych uprawnień, aby zobaczyć pliki załączone do tego posta.
Prawdziwe słowa nie są przyjemne. Przyjemne słowa nie są prawdziwe.
Lao Tse
- photin
- Posty: 7
- Rejestracja: niedziela 08 paź 2023, 12:43
- Lokalizacja: Klaudyn-Pruszkow
- Kontaktowanie:
Re: CA8088
W sieci jest fajny schemat elektryczny wykrywacza helowego z Intel 8088, na ktorym mozna przyjrzec sie, a moze i zainspirowac, jak zostalo zaprojektowane.
Strona 160 to plyta glowna z 8088.
https://www.idealvac.com/files/manuals/Varian956InstructionManual.pdf
Mam kilka plyt glownych tego wykrywacza helowego, z procesorem 8088. Glownym problemem byl NVRAM Dallas 1225, w ktorym padla bateria, na szczescie udalo sie znalezc jedna plyte, w ktorej NVRAM dalo sie zgrac.
Jesli mialbys ochote, to z checia wypozycze taka plyte komus, kto pracuje nad konstrukcja/rozgryzaniem urzadzen z 8088.
W tym urzadzeniu zaczalem pracowac nad wstawieniem zamiast klawiatury jakiegos Arduino, zeby byc w stanie odblokowac wyzsze poziomy dostepu: Engineering i Factory, zeby lepiej widziec jak dziala urzadzenie. (4 cyfrowy kod wpisywany).
Takze z jakis powodow nie dziala pilot, ktory za pomoca przewodu z interfejsem RS232, powinien umozliwiac sterowanie wykrywaczem.
Kiedys mam nadzieje uda sie znalezc czas, na hackowanie tego urzadzenia.
Strona 160 to plyta glowna z 8088.
https://www.idealvac.com/files/manuals/Varian956InstructionManual.pdf
Mam kilka plyt glownych tego wykrywacza helowego, z procesorem 8088. Glownym problemem byl NVRAM Dallas 1225, w ktorym padla bateria, na szczescie udalo sie znalezc jedna plyte, w ktorej NVRAM dalo sie zgrac.
Jesli mialbys ochote, to z checia wypozycze taka plyte komus, kto pracuje nad konstrukcja/rozgryzaniem urzadzen z 8088.
W tym urzadzeniu zaczalem pracowac nad wstawieniem zamiast klawiatury jakiegos Arduino, zeby byc w stanie odblokowac wyzsze poziomy dostepu: Engineering i Factory, zeby lepiej widziec jak dziala urzadzenie. (4 cyfrowy kod wpisywany).
Takze z jakis powodow nie dziala pilot, ktory za pomoca przewodu z interfejsem RS232, powinien umozliwiac sterowanie wykrywaczem.
Kiedys mam nadzieje uda sie znalezc czas, na hackowanie tego urzadzenia.
Nie masz wymaganych uprawnień, aby zobaczyć pliki załączone do tego posta.
Re: CA8088
Budujesz jakąś obrabiarkę?
Prawdziwe słowa nie są przyjemne. Przyjemne słowa nie są prawdziwe.
Lao Tse
- photin
- Posty: 7
- Rejestracja: niedziela 08 paź 2023, 12:43
- Lokalizacja: Klaudyn-Pruszkow
- Kontaktowanie:
Re: CA8088
Nie obrabiarke, cos nieco bardziej ambitnego .
Kilka lat temu, za zarobki z kilku lat pracy za granica, kupilem kilka uzywanych maszyn do epitaksji MOCVD polprzewodnikow III-V, z lat 90-tych(https://www.photin.eu/reactors-Aix200RF/). Jako technolog specjalista od epitaksji polprzewodnikow chce przeniesc doswiadczenie z zagranicy do Polski.
Potrzebowalem do tych maszyn wykrywacza helowego (wykrywanie nieszczelnosci) i padlo na Varian 956 PortaTest II, poniewaz w sieci byly schematy elektryczne, co daje szanse naprawy i utrzymania w ruchu starego wykrywacza.
Kupilem pierwszy wykrywacz (jak sie okazalo pozniej, z martwym NVRAM). Po kilku miesiacach prob uruchomienia i diagnozy, szczesliwie kupilem 2 plyty glowne (w ktorych byl jeszcze zywy NVRAM). Potem drugi wykrywacz na czesci.. wymienilem zrodlo jonow, przeczyscilem troche zaworow, skalibrowalem wykrywacz wzorcem helowym i mam dzialajacy wykrywacz, za ulamek wartosci nowego.. ale wciaz chcialbym lepiej rozumiec jego konstrukcje .
Na poczatku, nie mialem pojecia, ze w chipie Dallas NVRAM jest bateria litowa, ktora po ~10 latach od produkcji, pada i urzadzenie przestaje pracowac, nie dajac zadnej wskazowki co do powodu.
Autoryzowany serwis Varian nawet wyslal dodatkowe schematy elektryczne, ale powiedzieli, ze nie zajmuja sie sewisem tak starych sprzetow, i nawet nie zajakneli sie o NVRAM-ach.
Czysty przypadek, ze jedna z kupionych plyt glownych miala wciaz dziajacy NVRAM, i wstawiona zadzialala.
Oj ilez to czasu zuzylem na analizowanie schematow, sprawdzanie zasilacza, i inne proby dojscia co nie gra z wykrywaczem...
ale wymiana plyty rozwiazala problem elektroniki... potem udalo sie skontaktowac ze specjalista "prozniowcem" z ITE i 15min z nim rozmowy przez telefon naprowadzilo mnie na rozwiazanie innych problemow.
Pol roku pozniej, pracujac nad innym zagadnieniem z elektroniki lat 90-tych, napotkalem info o NVRAM-ach i jakos kliknelo, ze widzialem taki chip na plycie od wykrywacza. Wtedy juz mialem TL866II Plus i sprawdzilem NVRAM z dzialajacej i nie dzialajacej plyty glownej i wyszlo, ze to byla pierwotna przyczyna problemow z plyta glowna.
Troche wiecej info o wykrywaczach helowych od AlekZ, ktory zlozyl sam swoj wykrywacz: https://www.elektroda.pl/rtvforum/topic3555745.html
Kilka lat temu, za zarobki z kilku lat pracy za granica, kupilem kilka uzywanych maszyn do epitaksji MOCVD polprzewodnikow III-V, z lat 90-tych(https://www.photin.eu/reactors-Aix200RF/). Jako technolog specjalista od epitaksji polprzewodnikow chce przeniesc doswiadczenie z zagranicy do Polski.
Potrzebowalem do tych maszyn wykrywacza helowego (wykrywanie nieszczelnosci) i padlo na Varian 956 PortaTest II, poniewaz w sieci byly schematy elektryczne, co daje szanse naprawy i utrzymania w ruchu starego wykrywacza.
Kupilem pierwszy wykrywacz (jak sie okazalo pozniej, z martwym NVRAM). Po kilku miesiacach prob uruchomienia i diagnozy, szczesliwie kupilem 2 plyty glowne (w ktorych byl jeszcze zywy NVRAM). Potem drugi wykrywacz na czesci.. wymienilem zrodlo jonow, przeczyscilem troche zaworow, skalibrowalem wykrywacz wzorcem helowym i mam dzialajacy wykrywacz, za ulamek wartosci nowego.. ale wciaz chcialbym lepiej rozumiec jego konstrukcje .
Na poczatku, nie mialem pojecia, ze w chipie Dallas NVRAM jest bateria litowa, ktora po ~10 latach od produkcji, pada i urzadzenie przestaje pracowac, nie dajac zadnej wskazowki co do powodu.
Autoryzowany serwis Varian nawet wyslal dodatkowe schematy elektryczne, ale powiedzieli, ze nie zajmuja sie sewisem tak starych sprzetow, i nawet nie zajakneli sie o NVRAM-ach.
Czysty przypadek, ze jedna z kupionych plyt glownych miala wciaz dziajacy NVRAM, i wstawiona zadzialala.
Oj ilez to czasu zuzylem na analizowanie schematow, sprawdzanie zasilacza, i inne proby dojscia co nie gra z wykrywaczem...
ale wymiana plyty rozwiazala problem elektroniki... potem udalo sie skontaktowac ze specjalista "prozniowcem" z ITE i 15min z nim rozmowy przez telefon naprowadzilo mnie na rozwiazanie innych problemow.
Pol roku pozniej, pracujac nad innym zagadnieniem z elektroniki lat 90-tych, napotkalem info o NVRAM-ach i jakos kliknelo, ze widzialem taki chip na plycie od wykrywacza. Wtedy juz mialem TL866II Plus i sprawdzilem NVRAM z dzialajacej i nie dzialajacej plyty glownej i wyszlo, ze to byla pierwotna przyczyna problemow z plyta glowna.
Troche wiecej info o wykrywaczach helowych od AlekZ, ktory zlozyl sam swoj wykrywacz: https://www.elektroda.pl/rtvforum/topic3555745.html
Nie masz wymaganych uprawnień, aby zobaczyć pliki załączone do tego posta.
Re: CA8088
photin pisze:Jako technolog specjalista od epitaksji polprzewodnikow chce przeniesc doswiadczenie z zagranicy do Polski.
No jestem pod wrażeniem, nowoczesność zawita pod nasze strzechy
Prawdziwe słowa nie są przyjemne. Przyjemne słowa nie są prawdziwe.
Lao Tse
- photin
- Posty: 7
- Rejestracja: niedziela 08 paź 2023, 12:43
- Lokalizacja: Klaudyn-Pruszkow
- Kontaktowanie:
Re: CA8088
To nie jest taka piekna i latwa historia z happy endem...
Moje urzadzenia sa wyprodukowane ~30 lat temu i jest z nimi wiele problemow... z elektronika i czystoscia (ktorej uzyskanie wymaga generalnie duzych inwestycji), z materialami do eksperymentow (jedno podloze kosztuje $200-400), z maszynami do charakteryzacji (ktore sa kosztowniejsze niz maszyny do epitaksji), z funduszami na start - wodor, azot, energia elektr., wynajem hali...
wszystko kosztuje, a jednoczesnie trudno znalezc klientow, chciacych kupic polprzewodniki od startupu..
Fizyka generalnie dziala tak samo jak 30 lat temu , ale przemysl juz odszedl od 2" podlozy, ktore moje mniejsze maszyny moga wyprodukowac, a te wieksze maszyny ktore mam nie sa jeszcze uruchomione, bo sa z nimi problemy, bo sa drozsze w utrzymaniu, bo brak funduszy i itp itd..
Kto jest online
Użytkownicy przeglądający to forum: Obecnie na forum nie ma żadnego zarejestrowanego użytkownika i 3 gości