[D66] [JD: 685] Boziogarman: Binair / von Neumann vs de Oudeweg architectuur
René Oudeweg
roudeweg at gmail.com
Fri Jul 7 08:54:20 CEST 2023
BINAIR
------
Vanaf de bassisschool krijg je met de paplepel ingegoten dat de
Natuurlijke getallen (ℕ) reëel en valide zijn.
Hypothese 1: het binair getalstelsel moet uitgedrukt worden in tekens
van het binair getalstelsel zelf om betekenisvol te zijn.
Hypothese 2: dit geldt voor de set van tekens in elk talstelsel
Wiskundigen gaan er klakkeloos van uit dan het volgende juist is:
2⁰ = 1 = 0001
2¹ = 2 = 0010
2² = 4 = 0100
2³ = 8 = 1000
enz.
Wat is nu het geval? Het teken '2' heeft in het tientallig talstelsel,
de betekenis van twee (bijv. twee discrete dingen), maar komt in het
binair talstelsel niet voor.
De vraag is nu, kun je een definitie geven van het binair talstelsel
zonder gebruikmaking van tekens uit andere stelsels?
Ik doe een poging, strip de voorloopnullen weg:
1 = 0001
10 = 0010
100 = 0100
1000 = 1000
insgelijks:
000 = 0001
00 = 0010
0 = 0100
1 = 1000
We hebben nu twee mogelijke alternatieve en tegenstrijdige definities.De
reden dat dit niet standaard is omdat we dit te danken aan de
architectuur van de computer en de breedte van de parallele addresbus in
machten van twee (8,16,32,64). Dat hebben we te danken aan von Neumann:
https://en.wikipedia.org/wiki/John_von_Neumann
Het uitlezen van de parallele adressbus gaat mbv extra synchronisatie
signalen (READY, CLK, etc) het moment waarop het adres valide is (read
cycles).
http://www.edwardbosworth.com/CPSC2105/MyTextbook2105_HTM/MyText2105_Ch11_V06.htm
In het meest simpele voorbeeld heb je dus 1 extra buslijn (CLOCK) nodig
om een 4 bits adressbus te kunnen lezen tijdens een read cycle. (4+1 =5)
De clock is dus extratemporele informatie wil het binair getalsel geldig
zijn en zinvol zijn.
Een mens kan wel zien dat "0001" een 1 voorstelt in een oogopslag, maar
de CPU van een von Neumann computer kan dat niet.
Een mens kan nog veel meer... hij kan "0001" hermeneutisch duiden en er
zelf betekenis inleggen:
0001 ~ 31
31 ~ 13 ~ vrijdag de 13e.
Het vertalen van het ene talstelsel in het andere is dus 'numerieke
mojibake'.
Conclusie 1: de von Neumann architectuur is ontworpen middels de
handmatige methode van numerieke mojibake. Om het verlies van
symbolische betekenis te compenseren zijn er extra synchronisatie
signalen nodig om read cycles mogelijk te maken.
Conclusie 2: Het binair getalstelsel in de computer is temporele mojibake
Nu kom ik terug op mijn voorbeeld en introduceer één extra teken
(~ = Clock)
~~~1 = 0001
~~1~ = 0010
~1~~ = 0100
1~~~ = 1000
insgelijks:
000~ = 0001
00~0 = 0010
0~00 = 0100
~000 = 1000
U ziet al waar ik naar toe wil, ik zet de clock zelf op een adresslijn.
Maar omdat de 1 en de 0 gerepresenteerd worden door de voltage (bijv.
3.3 Volt) of op het signaalpunt van de MOSFET transistor moet men, wil
men een clocksignaal hebben, een tweede voltagehoogte introduceren,
bijv. 5 Volt. Dan zegt het signaal in wezen: ik ben een clock signal en
geen data signal.
Hoe defineer ik dan een read cycle? Eenvoudig: als op een van de
adreslijnen een 5 Volt signaal staat, dan kan er gelezen worden.
Is dit een praktische architectuur die geimplementeerd kan worden? Het
zal vast praktische moeilijkheden introduceren hebben maar het is
mogelijk. Het is zelfs mogelijk dat dit al geprobeerd is.
0 = hoge impedantie
1 = 3.3 V
~ = 5 V
Het idee erachter is dat de busbreedte dus precies een representatie is
van de macht van twee (zonder extra synchronisatie buslijnen).
Zodra de busbreedte een afspiegeling van een macht van twee is er sprake
van zuivere computerarchitectuur. De von Neumann architectuur is onzuiver.
Ik noem deze parallele bus architectuur maar de "Oudeweg" architectuur.
Voor de seriële bus gelden natuurlijk weer andere conventies. De voor-
en nadelen van beiden bussen zijn bekend:
https://www.geekboots.com/story/parallel-bus-vs-serial-bus
Het sleutelbegrip in dit artikel is "signal integrity".
Vandaag is het blijkbaar 7/7/2023
Mijn jd programma zegt:
UTC : Fri Jul 7 06:36:10 2023
Day : 7
Month : 7
Year : 2023
Julian day (JDN) (Vogelaar): 2460132.500000
---
Gregorian calendar: Chronological Julian day number since [JC/GC] March
1 200 (Fluks): 665966
Julian calendar : Chronological Julian day number since [JC/GC] March
1 200 (Fluks): 665979
Delta : 13
---
Chronological Janssen day number (JD) since February 23 2021: 865
Member of D66 from 18/3/2021 till 25/4/2021
Chronological Proyect day number: 844
Days till DD-day (6-6-2025): 700 Julian calendar: 687
Dus computerwetenschappers hebben nog 700 dagen om een Oudeweg prototype
te implementeren!
-> Vrijdag de 7e is vast een veel ongelukkigere dag dan vrijdag de 13e!
In het kabinetsberaad zitten ze momenteel op hete kolen om deze nieuwe
inzichten weer te duiden en de Gordiaanse knoop door te hakken...
Ter afronding nog een hermeneutische analyse van het woord binair:
1. Binair
2. Bin-air
3. B-in-air
4. 66-in-air
5. Twee vogels in de lucht
R.O./
Venlo
Ref:
https://nl.wikipedia.org/wiki/Transistor-transistorlogica
Ref:
--p. 97 "The Technological System", Jacques Ellul
More information about the D66
mailing list