Plan Morawieckiego

Popraw mnie jeśli źle rozumiem bo nie znam się, ale to znaczy że w środku jest 2 MHz. Jak to porównasz z 3.25-MHzowym ZX81 (też video generowane programowo), to nie jest źle.

Ale AVR to nie te czasy. Porównujesz nieporównywalne.

Po to był 8257. Weź to zamiast ULA, video zrób softwareowo i masz lepszy ZX Spectrum. Tańszy, w sensie.

Ważne żeby klient dał się nabrać.

No że zabytek.

Cofnij się w czasie do 1980 i kup gdzieś te AVRy.

Reply to
Konrad Anikiel
Loading thread data ...

Na *podrasowanym* cpu masz 24MHz. Standardowy 8051 ma tylko 12MHz.

Ciężko porównać bo oba mają zmienne cykle dla różnych instrukcji.

Nie. Ale zrobienie lepszego core było mozliwe wtedy. Nie zrobiono. Podejście standardowe intela nr 34: specjalizowane rejestry, skomplikowana magistrala, chaotyczne optcody, milion cykli zegarowych na instrukcję, 74.5 trybów adresowania, zmienna długość rozkazu. Ciekawostką jest fakt, że ich piersza zabawka, 4004, miał znacznie rozsądniejsze podejście do tematu. Potem przyszło kilku miszczuf i zaczeli wciskać CISCa gdzie się dało. Skutecznie, z podobnym dziadostwem x86 męczymy się do dzisiaj.

Zaś obecnie masa ludzi próbuje reanimowac trupa pisząc na grupach że "ma nawet C++". Nie, nie ma. Ma C z klasami, czyli nic.

Nie da rady. To cos nie generuje sygnałów video. Brakuje całej masy elementów do tego.

To kosztuje cykle, przerwania, busy wait. Z80/81 tak działał. Bardzo syprytnie to było zrobione, ale też prawde mówiąc Z80 miał specjalny bajer do tego.

Nie, to nie takie proste. Dalej nie załatwiłeś tematu slave magistrali

8051. Podpowiem: można zatrzymać zegar i odpiąc ręcznie magistralę. Hacking + koszty. Sinclair zrobił to na rezystorach...

A propos - gdzie kolory?

PS. Spectrum był ekstremalnie tani, a układy ULA kosztowaly grosze, w produkcji kilka razy tańsze (podobno) od VIC, GTIA/Antic. W zasadzie patrzac dzisiaj na ten komputer tam juz nie było co optymalizować.

Cofnołem się do 2014 i kupiłem 8051 i AVRa. Tylko że 8051 nie wiem po co jeszcze produkują poza utrzymaniem dzwonków szkolnych i stoperów naściennych w salach gimnastycznych. Za to pełno tego w mediach, co chwile słyszę że '51 pokonał nastepną barierę prędkości, 20, 30, 60,

100MHz!!! Za chwile odpadną koła od tej furmanki.

To nie jest ważne że AVRa wtedy nie bylo. Dziadowskość 8051 była widoczna od 1980 roku i niewiele w tej kwestii się poprawiło, może poza pojawianiem się ruchów religijnych z gatunku "lepsze jest wrogiem dziadowskiego", "co, ja tego nie zrobie na '51?" oraz "C jest lepszy od C++ i tak się akurat szczęśliwie składa że ...".

Reply to
Sebastian Biały

Z korzyścią przeważnie dla 8051. Tam interpreter Basica był, dużo skoków warunkowych.

A po co slave magistrali, jak z ULI pozostał tylko 8257?

No tu:

formatting link

No dobra, ale gdzie ULI do Antica, nawet do VICa. ULA to była bieda big time.

No dobra, realnie był Z80 i 6502. Nie będę wymądrzał się w sprzęcie, bo nie mam o tym wielkiego pojęcia, ale porównując kod maszynowy to mi się 8051 podobał bardziej. Kompilatorów na ośmiobity nie tykałem. Może jakieś tam Hisofty, ale za mało żeby coś mądrego powiedzieć. Nie wiem, może Intel powinien wymyślić specjalny język pod ten procesor. Nie wyczuli rynku domowych komputerków, a wtedy to był duży pieniądz. Troche wysiłku i cały ten domowy komputerek by włożyli do jednego scalaka. Cały pomysł na 8051 daleko od tego nie był.

Reply to
Konrad Anikiel

Zaraz zaraz - to mikrokontroler. W zasadzie mial sie obywac bez magistrali.

Nie az tak chaotyczne - wszak i oni musieli oszczedzac tranzystory :-)

No, ale to nie jest standard Intela - w 51 bylo wyjatkowo duzo.

No nie, tu chyba 4.

To zarzut ?

Widac ten ich pierwszy byl za bardzo RISC :-)

czemu, x386 nie jest juz taki zly. A potem przestano nawet w kod zagladac :-)

J.

Reply to
J.F.

takiego ?

To, że nie ma na kości jawnie opisu 8051 nie oznacza, że to nie on lub klon. Oni mają swoją numerację, to że jest to 8051 najczęściej okazuje się jak Chińczyka poprosi o update softu. Przysyła wtedy toolsy do flashowania, które zdradzają, że są do 8xx51xx or compatible.

Reply to
Marek

Użytkownik "Marek" napisał w wiadomości grup dyskusyjnych: snipped-for-privacy@news.neostrada.pl... On Tue, 23 Feb 2016 13:27:10 +0100, "J.F."

To ja wiem.

No, to tez moze byc zludne wrazenie. Do jakiego urzadzenia dostales taki plik ?

80251 jest niby 32-bit, to moze i do czegos sie obecnie nadaje ... ale z 8051 bym tego nie utozsamial :-)

J.

Reply to
J.F.

Ostatnio do lokalizatorów gsm, Wcześniej miałem też do sterownika wentylatora klimatyzacji.

Reply to
Marek

Sterownik klimatyzacji bez bajerow to oczywiscie dobre miejsce na

8051. Ale ze im sie chcialo flashowac ... no i jak flashowac ? To chyba z bajerami :-)

Lokalizator GSM w miare tez da sie zrobic, tylko tak troche glupio - w GPS ARM, w modemie GSM ARM, a caloscia zarzadza 8051. A niech sobie i zarzadza, skoro potrafi to robic, tylko ... pewnie przesyla lokalizacje przez internet ... i nagle sprawa sie komplikuje, jak trzeba TCP/IP na 8051 sadzac.

No i czy to 51, czy 251 ?

J.

Reply to
J.F.

W dniu 2016-02-23 o 22:36, Konrad Anikiel pisze:

Ale technicznie to masówka.

Reply to
PeJot

W dniu środa, 24 lutego 2016 17:18:55 UTC+1 użytkownik PeJot napisał:

W sensie materiałów, podzespołów, technologii, zasady działania? Bo nie kumam.

Reply to
Konrad Anikiel

W dniu 2016-02-24 o 17:54, Konrad Anikiel pisze:

Wszystkiego w/w.

Reply to
PeJot

BASIC do helloworldów, ale te komputery sterowały procesami przemysłowymi. Jeszcze w latach 90tych bedąc w hucie Katowice widziałem jednego (ZX Spectrum) który czymś sterował.

Mają wspólna pamięć. Owszem, są konstrukcje (MSX) gdzie magistrala video nie jest połaczona z pamięcią, ale tam były znowu problemy z wydajnościa. Wszystkie komputery domowe popularne na świecie w latahc

80tych miały jednak pamięć wspólną i problem kto rządzi magistralą rozwiązywano na rózne sposoby - niestety zazwyczaj jako workaroundy. 8051 nie jest tutaj lepszy - też musiałby mieć workarounda.

Ja pytam gdzie kolory skoro chcesz uzywać prostego DMA. Bo potrzebna byla logika czytania z *innego* miejsca atrybutów a z innego pixeli żeby zrobić to samo co w ULI. I jakies układy prawidłowo startujące DMA i przejmujace magistralę, razem z buforami na kilka cykli, bo procka nie zatrzymasz natychmiast. Eeee...

Miała wysoką rozdzielczość, ograniczenia kolorystyczne czasem wcale nie ograniczały a wręcz odwrotnie, relatywnie szybki CPU łatał wiele tematów. Owszem, prawie zerowa inteligencja. Ale "inteligntniejsze" procesory graficzne miały inne smieszne problemy (jeden kolor HiRes Antica, spowolnienie 2x 6510 w C64). Epoka kompromisów.

Było kilka innych, ale te dwa zdominowały rynek troche przez przypadek. De facto skutki dominacji Z80 powoduja efekty do dzisiaj. CP/M->MSDOS->MS Windows.

Jest tak samo dziadowski jak 8080 i x86 :)

Intel klepał w kółko te same procesory, tylko im numery zmieniał. Tak mu dobrze szło, że x86 był zgodny na poziomie kodu źrodłowego w asm z 8080. Innymi slowy: z powodu braku realnej konkurencji "wymyślali" w kółko to samo, zmieniając technologie i szerokości magistrali. 8051 też należy do tego konceptu, asm 8051 nie leży za daleko od 8080.

Cały pomysł na 8051 to timery i GPIO. Troche mało nawet jak na mikrokontoler w tamtych czasach ...

A taki 6510 z C64 miał małe GPIO :D Czy to już uC :) ?

Reply to
Sebastian Biały

Ale Konrad chciał go wciskać zamiast Z80.

No właśnie. A musieli oszczędzać bo trzeba było wzorem CISCa wcisnąć jak najwięcej instrukcji itd.

Internet bez przesadzania byłby bardzo nudny.

To zarzut z czającym się w tle RISC. Ogólnie procesory z (bardzo) zmiennym slowem mają w środku jakąś maszynę stanów (6502 ma to ciekawie zrobione). Taka maszyna nie jest za friko, wymaga zasilania cyklami maszynowymi. Na potok nie ma miejsca.

Dalej wszelkie debilizmy x86 są aktulane. Jak choćby przerażająco złozony proces stawiania procesora w jakimkolwiek uzytecznym trybie 32 bity (bo przecież wstaje z trybu "prawie ZX Spectrum").

Reply to
Sebastian Biały

Mozna się kłucić, ale z powodu faktu że normalna praca procesora była wstrzymywana, produkcja video w ten sposób jest absurdalnie droga wydajnościowo i de facto oznacza generacje programową. Procesor był przerywany co linie, musiał dbać o popychanie synchronizacji, generację znaków itd. Programowa generacja jak w mordę strzelił.

Do dzisiaj uważa się TIA za jadną z najbardziej wymagających zabawek do programowania *ever*. Racing the Beam ...

48K albo 16K RAM.

VIC-II zatrzymywał CPU jak musiał, ale tam dostęp był głównie przemienny (2x wolniej cpu).

Atari manipulowalo zegarem wydlużając cykle (wczesne 400/800), potem zrobili własny procesor SALLY z takim bajerem.

Manipulowali zegarem i zrobili "priorytety" na magistrali w ten sposób że ULA miała wpięcie wprost w RAM a CPU przez rezystory. Całość była kłopotliwa, np. video z ZX wykazuje artefakty kiedy masz dostęp do pamięci video podczas czytania przez ULA.

formatting link

6502 mozna było zahaltować tylko podczas operacji odczytu. Operacja zapisu nie dawała rady. Jedyny znany mi komputer który z tego korzystał to C64. W Atari z racji faktu że cpu zaiwaniał na pelnej prędkości, manipulowali clockiem.

Nie wiem jak pozostale komputery na 6502 (BBC Micro?) miały to zrobione.

W całym tym towarzystwie 8051 nie wygląda ani trochę lepiej, bo były by identyczne problemy z magistralą.

Reply to
Sebastian Biały

Swoją drogą Sinclair miał talen do takich optymalizacji. Polecam poczytać bo tekst znakomity:

formatting link

Reply to
Sebastian Biały

W Olsztyńskim obserwatorium astronomicznym ZX Spectrum był użyty do jakiegoś tam strasznie mądrego wynalazku odmierzającego super dokładny czas przy pomocy sprzężonych zegarów wahadłowych. Nie wiem czy do dzisiaj tam nie pracuje.

No ale to jest właśnie przykład trendu który Intel przeoczył: ludzie do mikrokontrolerów potrzebują interfejsu użytkownika. Musi być grafika i łatwy język programowania.

Jeden z nich to stronicowanie. Cóż, dwa razy więcej pamięci trzeba, ale jaki zysk! Buforowana grafika w demach na komputerkach które potrafiły wyświetlać obraz z różnych obszarów pamięci wymiatała.

Czytanie oddzielnie atrybutów i pikseli to prywatna perwersja Sinclaira, wszyscy inni kolor generowali dwu- albo czterobitowym indeksem do większej lub mniejszej palety. Wiem, ULA daje zaskakujący efekt jak na tak tanią sztuczkę, ale to wciąż tania sztuczka.

Lepszy niż Z80 i 6502. Operacje na pojedynczych bitach, dużo lepsza arytmetyka, nie pamiętam co tam jeszcze, ale do domowego ośmiobitowca który miał interpretować Basic, nadawałby się lepiej.

6510 z C64 nie miał strony zerowej wewnątrz kości (8051 miał IRAM), nie miał XRAMu wewnątrz, wielu rzeczy nie miał. A 8051 miał różne rzeczy w zależności od wersji. Nie wiem czy to by był wielki wysiłek dołożyć tam generator video na miarę ULA, łatwo dzisiaj z perspektywy APU się wymadrzać, ale myślę że skoro Sinclair powkładal do ULA dużo różnych rzeczy to Intel mógł spokojnie włożyć grafikę do 8051. Ale nie włożył, i tu się z Tobą zgadzam że mógłby się trochę bardziej wysilić i osiągnąć znacznie więcej.
Reply to
Konrad Anikiel

W dniu środa, 24 lutego 2016 18:50:23 UTC+1 użytkownik PeJot napisał:

Chyba nie rozumiem. Garnitur od krawca to też masówka? Materiał ten sam co w garniturze z Tesco, nici i guziki te same, oba szyte maszyną do szycia, według takiej samej mody, co roku innej. Główna cecha która je różni, to taka że jak pójdziesz w garniturze od krawca na imprezę to masz większą szansę że ktoś inny nie będzie miał takiego samego.

W rowerach taka logika nie działa?

Reply to
Konrad Anikiel

PolyTech Forum website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.