8bit-Computing mit FPGA

Gast #6277281
Lesenswert?

Josef G. schrieb:
> (8+2)+(8+5) = (8+8)+(2+5) = 17

Den Test hast Du leider nicht bestanden, denn erstens:

MWS schrieb:
> Du darst dabei nicht in Dezimal denken, bzw. temporär umwandeln und
> damit rechnen, denn Dezimal gäbe es ja nicht.

und zweitens:

Schau' Dir doch mal, was für einen Aufwand Dir diese simple Rechnung 
bereits macht und vergleiche mit einer dezimalen Addition, dann erkennst 
Du den Vorteil des Dezimalsystems.

Das wird bei größeren Zahlen noch schlimmer in Hexadezimal, versuch mal 
händisch eine Multiplikation zwei oder dreistelliger Hex-Werte.

Dem Rechner macht das nichts, der rechnet auch nicht in Hexadezimal, 
sondern in Binär.
Hexadezimal wurde nur zur übersichtlichen Darstellung von Binärdaten 
verwendet, die nebeneinander geschrieben völlig unleserlich wären.

Hexadezimal ist eine Notlösung zur Datendarstellung, aber nichts was man 
intuitiv verwenden würde.
OP Persönliche Seite #6277332
Lesenswert?

MWS schrieb:
> Den Test hast Du leider nicht bestanden, denn erstens:
> MWS schrieb:
>> Du darst dabei nicht in Dezimal denken, bzw. temporär umwandeln
>> und damit rechnen, denn Dezimal gäbe es ja nicht.

A=8+2 und D=8+5 kann man in der Vorstellung unmittelbar aus den
Binärmustern von A und D ablesen, da braucht man dezimal nicht.

> Schau' Dir doch mal, was für einen Aufwand Dir diese simple
> Rechnung bereits macht

Hätte ich als Kind die hexadezimale Additionstabelle und
Multiplikationstabelle (das Einmaleins) auswendig gelernt
anstelle der dezimalen, gäbe es diesen Aufwand nicht.

Diese Tabellen sind im Hexadezimalsystem größer als
im Dezimalsystem, das ist ein Nachteil, zugegeben.
Beitrag #6277341 wurde von einem Moderator gelöscht.
Beitrag #6277356 wurde von einem Moderator gelöscht.
Beitrag #6277528 wurde von einem Moderator gelöscht.
Gast #6277538
Lesenswert?

Josef G. schrieb:
> Man könnte Kindern zum Zählenlernen ein
> kleines Täfelchen mit 4*4 Kreisen geben.

Man könnte Kinder genetisch verändern, so dass sie 8 Finger an jeder 
Hand haben.

Ich bringe Dir Argumente wie:
Beitrag "Re: 8bit-Computing mit FPGA"
oder:

MWS schrieb:
> Hexadezimal ist eine Notlösung zur Datendarstellung, aber nichts was man
> intuitiv verwenden würde.

und Du weichst jeglicher Antwort dazu aus, schwurbelst hier nur rum mit: 
könnte, hätte, würde. Kennst Du den Grund für Dein Verhalten?

Du hast keine Antwort, denn Du bist ein Verlierer, all Deine Logik sagt 
Dir dass Du mit Deiner Sache verloren hast, aber Dein Unterbewusstsein 
will das nicht wahrhaben und ersinnt immer neue Ausflüchte um der 
Wahrheit auszuweichen.

Und so kommt statt einer begründeten Antwort auf ein Argument eben 
solcher Unsinn wie "kleine Täfelchen".

Eine Diskussion mit Eliza hat mehr Inhalt.
Beitrag #6277544 wurde von einem Moderator gelöscht.
Beitrag #6277561 wurde von einem Moderator gelöscht.
(Firma: Schweigstill IT) Persönliche Seite #6277624
Lesenswert?

MWS schrieb:
> Man könnte Kinder genetisch verändern, so dass sie 8 Finger an jeder
> Hand haben.

Wir könnten damit beginnen, alle Menschen von der FortPflanzung 
auszuschließen, die nicht unter einer Polydaktylie leiden. Damit ließe 
sich recht zügig zumindest das Zwölfersystem einführen. Nach nur wenigen 
hundert Generationen solcher hexadaktyler Menschen wird das ganze 
wiederholt, d.h. nur die heptodaktylen dürfen sich fortpflanzen. Dann 
ist der Weg nicht mehr weit bis zur Herrschaft der Oktodaktylen!
Beitrag #6277694 wurde von einem Moderator gelöscht.
OP Persönliche Seite #6277793
Lesenswert?

MWS schrieb:
> Josef G. schrieb:
>> Man könnte Kindern zum Zählenlernen ein
>> kleines Täfelchen mit 4*4 Kreisen geben.
>
> Man könnte Kinder genetisch verändern, so
> dass sie 8 Finger an jeder  Hand haben.

Nein.

> Ich bringe Dir Argumente wie:
> Beitrag "Re: 8bit-Computing mit FPGA"
>> Es ist völliger Schwachsinn der Maschine ein wenig Arbeit bei
>> der Konvertierung des dem Menschen gewohnten Zahlensystems
>> abzunehmen, indem man den Menschen der Maschine anpasst.

Es geht nicht darum der Maschine Arbeit abzunehmen.
Es geht darum, der breiten Mehrheit der Menschen zu ermöglichen,
die Arbeitsweise von Computern zu verstehen, ohne dass sie erst
ein neues Zahlensystem lernen müssen. Und ihnen zu ermöglichen,
die mathematische Schönheit des Hexadezimalsystems zu genießen.

> oder:
>
> MWS schrieb:
>> Hexadezimal ist eine Notlösung zur Datendarstellung,
>> aber nichts was man intuitiv verwenden würde.
>
> und Du weichst jeglicher Antwort dazu aus,

Hexadezimal ist historisch entstanden als
"Notlösung zur Datendarstellung". Aber warum
sollte man es nicht trotzdem "intuitiv verwenden"?
Beitrag #6277875 wurde von einem Moderator gelöscht.
Beitrag #6277891 wurde von einem Moderator gelöscht.
Beitrag #6277896 wurde von einem Moderator gelöscht.
Beitrag #6277906 wurde von einem Moderator gelöscht.
Gast #6277937
Lesenswert?

Josef G. schrieb:
> Es geht darum, der breiten Mehrheit der Menschen zu ermöglichen,
> die Arbeitsweise von Computern zu verstehen, ohne dass sie erst
> ein neues Zahlensystem lernen müssen.

Nun, was die breite Mehrheit der Menschen an Computern bereit ist zu 
verstehen, siehst Du auf der Straße oder im Bus, das ist ein 
Wischi-Phone oder -Tablet. Das entspricht auch Deiner Vorstellung, es 
lässt sich ohne Erlernen eines neuen Zahlensystems verstehen.

Ein Verstehen der Arbeitsweise ist auch nur soweit nötig, bzw. vom 
Benutzer erwünscht, als dass die gewünschten Apps installiert und 
bedient werden können.

>> MWS schrieb:
>>> Hexadezimal ist eine Notlösung zur Datendarstellung,
>>> aber nichts was man intuitiv verwenden würde.
>>
>> und Du weichst jeglicher Antwort dazu aus,
>
> Hexadezimal ist historisch entstanden als
> "Notlösung zur Datendarstellung". Aber warum
> sollte man es nicht trotzdem "intuitiv verwenden"?

Einfach deshalb, weil ein gut funktionierendes System bereits etabliert 
ist und man aus praktischen Gründen nicht sein Leben verkomplizieren 
möchte.

Wie ein Computer ist ein Zahlensystem ein Werkzeug und dient in aller 
Regel nicht dem Selbstzweck, sondern einem Nutzen, z.B. um mathematische 
Zusammenhänge zu erforschen, oder einfach nur die Preise der 
Einkaufsliste zu addieren.

Natürlich ist aus Liebhaberei alles möglich, klar kann man Gesang und 
Lyrik der blauen afrikanischen Riesenmotte studieren und erlernen.
Nur warum?
Beitrag #6277955 wurde von einem Moderator gelöscht.
Beitrag #6278001 wurde von einem Moderator gelöscht.
#6278163
Lesenswert?

MWS schrieb:
> Du darst dabei nicht in Dezimal denken, bzw. temporär umwandeln und
> damit rechnen, denn Dezimal gäbe es ja nicht.

Das mache ich übrigens auch im Dezimalsystem nicht. Kopfrechnen tue ich, 
indem ich im Geiste Strecken aneinander füge,deren Länge ich immer 
wieder durch Vergleich mit der Basis^n reduziere – da ist die Basis des 
Zahlensystems, in das ich hinterher meine virtuellen Holzklötzchen 
übersetze, gleichgültig.

Das Dezimalsystem ist nur deswegen besonders einfach, weil ich es kann. 
Das Können habe ich mit Hilfe des Fingerrechnen in jungen Jahren 
eingeübt – da trifft sich die Sache wieder mit der Fünfstrahligkeit der 
Hand, mit der man eben schlecht im Hex-System rechnen kann. Damit ist 
das Hex-System erst mal vom Tisch und das Umstellen von dezimal auf hex 
würde für alle einen Riesenaufwand bedeuten, dem auf der anderen Seite 
absolut kein Nutzen gegenübersteht.

Man müßte also ein ökonomischer Vollidiot sein, wenn man sowas ernsthaft 
in Erwägung zöge.
Beitrag #6278388 wurde von einem Moderator gelöscht.
Beitrag #6278427 wurde von einem Moderator gelöscht.
OP Persönliche Seite #6329325
Lesenswert?

Hier ein Zitat aus einem Strang im FPGA-Forum.
Damit könnten auch die Realisierungen des Projekts
auf den alten Xilinx-Boards wieder interessant sein.

Andreas S. schrieb:
> Wie ich gerade gesehen habe, bietet Xilinx seit Februar 2020 eine neue
> W10-taugliche Version von ISE 14.7 an, und zwar als integrierte VM
> mit/für Virtual Box. Interessanterweise werden jetzt wieder alle
> Bausteinfamilien und -generationen (bis Generation 6 sowie die ersten
> Zynq-7000) unterstützt. Offenbar gab es zu viele Proteste von Kunden,
> die ihre Altprojekte mit Spartan-3(xyz) und Virtex-2/4/5 noch pflegen
> müssen.
(Firma: Schweigstill IT) Persönliche Seite #6337328
Lesenswert?

Josef G. schrieb:
> Hier ein Zitat aus einem Strang im FPGA-Forum.
> Damit könnten auch die Realisierungen des Projekts
> auf den alten Xilinx-Boards wieder interessant sein.

Du lieferst für Deinen bo8 ja nicht einmal Projektdateien oder Skripte 
mit. Damit handelt es sich eh um Codefragmente, bei denen ein Anfänger 
raten muss, wie er sie auf der Plattform seiner Wahl integriert. Und 
Deine komischen Lizenzbedingungen verhindern sehr effektiv, dass Dritte 
auf Deinem Code aufsetzen und irgendetwas publizieren. Du hast einfach 
selbst einen riesigen Haufen an Hindernissen aufgebaut. Ob nun ISE 
wieder auf aktuellen Rechnern funktioniert oder nicht, ist da das mit 
Abstand kleinste Problem.
(Firma: Schweigstill IT) Persönliche Seite #6352042
Lesenswert?

S. R. schrieb:
> Dann löse es.

Ich befürchte, dass Josef tatsächlich eine Lösung finden und umsetzen 
wird. Jedoch wird es sich dabei um einen Workaround handeln, der so 
dermaßen vorbei an jeglicher guten Praxis und Funktionalität 
implementiert ist. Ich könnte mir vorstellen, dass einfach der obere 
Fensterrand aus dem sichtbaren Bereich herausgeschoben wird, so dass 
niemand mehr auf das Schließen-Symbol klicken kann. Oder es wird ein 
weiteres Fensterchen so über das Symbol gelegt, dass man nicht mehr 
herankommt. Oder beim Programmstart wird kontrolliert, ob überhaupt ein 
Zeigergerät verfügbar ist, um dann ggf. gleich abzubrechen. Oder der 
ganze Bildschirm wird dunkel geschaltet, sobald sich der Mauszeiger in 
die Nähe des Schließen-Symbols bewegt. Das Programm könnte auch in einer 
Schleife mit einer so hohen Rate Zeiger-Ereignisse erzeugen, dass es 
unmöglich wird, auf Schließen zu klicken. Oder, oder, oder... Wir dürfen 
gespannt sein!
(Firma: Schweigstill IT) Persönliche Seite #6352048
Lesenswert?

Josef G. schrieb:
> Ein ungelöstes Problem des Emulationsprogramms:
> Beitrag "Re: Grafik unter Linux"

Wenn Du den ganzen Quellcode auf einem öffentlichen 
Versionskontrollsystem unter einer hierfür brauchbaren Lizenz 
veröffentlicht hättest, dann hätte womöglich schon jemand dieses Problem 
behoben und die Änderungen völlig transparent eingecheckt.
OP Persönliche Seite #6518508
Lesenswert?

Weiter oben hatte ich sedimal als Abkürzung für sedezimal
vorgeschlagen: 
Beitrag "Re: 8bit-Computing mit FPGA"

Leider wurde mein Thread "hexadezimal, sedezimal, sedimal"
von offtopic nach dev/null verschoben und ist inzwischen gesperrt.
Beitrag "hexadezimal, sedezimal, sedimal [Endet am 15.12.2020]"

Der folgende Link hätte da noch hineingehört:
http://dark.fiftysix.scot/Base-16/

Habe ich gerade gefunden. Das ist die noch im Aufbau befindliche
Seite eines Studenten, der sich auch für das Hex-System einsetzt
und über die Bezeichnung 'sedimal' nachdenkt.
Beitrag #6518526 wurde von einem Moderator gelöscht.
Beitrag #6518781 wurde von einem Moderator gelöscht.
Beitrag #6518814 wurde von einem Moderator gelöscht.
Beitrag #6518864 wurde von einem Moderator gelöscht.
Beitrag #6518879 wurde von einem Moderator gelöscht.
Beitrag #6518943 wurde von einem Moderator gelöscht.
Beitrag #6518983 wurde von einem Moderator gelöscht.
Beitrag #6518993 wurde von einem Moderator gelöscht.
Gast #6626592
Lesenswert?

Josef G. schrieb:
> Habe ich gerade gefunden. Das ist die noch im Aufbau befindliche
> Seite eines Studenten, der sich auch für das Hex-System einsetzt
> und über die Bezeichnung 'sedimal' nachdenkt.

Die Gedanken dieses Studenten sind aber nicht unbedingt sonderlich 
ausgereift und gehen auch von Misverständnissen aus. Z.B. schreibt er

"Hexadecimal is made up of six (hex) and ten (decimal), which doesn’t 
make much sense when not using base-10."

Er scheint das 6+10 nicht verstanden zu haben, was sich genau auf die 6 
neuen Zeichen bezieht und nicht etwa auf die Basis.

Grundsätzlich hat das eine System grundsätzlich keine Vorteil gegenüber 
einem anderen. Man kann auch in einem 7er-System denken und rechnen. 
Wurde ja gezeigt. Das ist eine reine Frage der Gewöhnung. Die Ägypter 
hatten angeblich ein 5er-System. Der Vorteil eines solchen System mit 
mehr Zeichen ist einfach, dass große Zahlen weniger Zeichen brauchen. 
Dafür wird die Rechnung schwieriger. Kleine Ziffernmengen führen 
allerdings wieder zu mehr komplexen Kommaverschiebungen, wenn Zahlen 
multipliziert werden müssen. Das Zehnersystem ist ein Alltagskompromiss, 
den man mit einem System, dass nur 60% mehr Zeichen hat, nicht 
wesentlich verschiebt.
#6634437
Lesenswert?

Josef G. schrieb:
> Bitte hier nicht mehr antworten. Da geht's weiter:

Geht es leider nicht, und ehe mein - tatsächlich konstruktiv gemeinter - 
Beitrag (Beitrag "Re: Ein 8bit-Computer mit Hex-Ziffernsatz") 
verschwindet, zitiere ich ihn hier nochmals in Gänze. Wenn das nicht 
erwünscht ist, bitte ich die Moderation um Löschung dieses Beitrags.

Josef G. schrieb:
>> Einerseits braucht es die aufwendige Lücke zwischen 9 und A
> Bei meinem Zeichensatz gibt es keine Lücke zwischen 9 und xA.

Dafür ist dein Zeichensatz für die skandinavischen Sprachen ungeeignet;
weder ein æ oder ein ø (für dänisch und norwegisch) noch ein å (für die
genannten sowie schwedisch oder finnisch) lassen sich finden. Obwohl
sowohl die Dollar- und Eurozeichen $ und € vorhanden sind, fehlt das
Pfundzeichen £, welches in Europa auch nach dem Brexit noch eine
gelegentliche Rolle spielt.

Zudem fehlt ein der Symmetrie wegen notwendiges großes ß (stattdessen
hast du dort ein Sigma, allerdings keine anderen griechischen
Buchstaben). Stattdessen hast du spezielle Zeichen mit Oberstrich, die
man allerdings auch anderweitig herstellen kann (z.B. durch Präfixe,
Suffixe oder Attributbits).

Für einen universalen Zeichensatz empfehle ich mindestens die
vollständige Unterstützung der westlichen Sprachen; süd- und
osteuropäische Sprachen auf Basis der kyrillischen oder griechischen
Zeichen sind mit geringem Zusatzaufwand ebenfalls machbar. Die
Unterstützung für ostasiatische oder afrikanische Zeichen könnte auf
ein zukünftiges Update verschoben werden.
OP Persönliche Seite #6636938
Lesenswert?

New-User schrieb:
> Josef G. schrieb:
>> Habe ich gerade gefunden. Das ist die noch im Aufbau befindliche
>> Seite eines Studenten, der sich auch für das Hex-System einsetzt
>> und über die Bezeichnung 'sedimal' nachdenkt.
>
> Die Gedanken dieses Studenten sind aber nicht unbedingt
> sonderlich ausgereift und gehen auch von Misverständnissen
> aus. Z.B. schreibt er ...

Die Aussage ist wohl, dass der Name des Zahlensystems nicht auf
das Dezimalsystem verweisen sollte. Das ist auch meine Meinung.
(Firma: Schweigstill IT) Persönliche Seite #6637554
Lesenswert?

Du müsstest doch gar nicht auf alle (abtretbaren) Rechte verzichten, 
sondern das ganze nur in einer Form anbieten, mit der auch jemand etwas 
anfangen kann. Und dafür verwendet man heutzutage solche öffentlich 
zugänglichen Versionskontrollsysteme wie z.B. Github. Ich hatte ja vor 
einigen Jahren schon so etwas für Dich bzw. bo8h aufgesetzt, was damals 
jedoch an dem Beharren auf der CC-Lizenz scheiterte. Vielleicht mache 
ich mir ja jetzt irgendwann die Mühe...
#6643759
Lesenswert?

Bitte verzeiht mir, dass ich mich auf einen Beitrag im gesperrten Thread 
beziehe, aber ich war nicht zuhause und konnte nicht mehr rechtzeitig 
darauf antworten.

Josef G. schrieb:
>> Urheberrecht ist klar, aber den Rest finde ich spannend, weil:
> Ich wäre bereit, alles komplett freizugeben,
> wenn mir jemand sagt, wie das geht.

Am einfachsten stellst du den Code unter eine BSD-Lizenz (oder eine 
andere freie Lizenz). Da du meines Wissens der einzige Contributor 
(Zuarbeiter) des Projektes bist und daher die vollständigen Rechte 
besitzt, kannst du das jederzeit tun; du selbst bist deswegen nichtmal 
an die Lizenz gebunden, da du als Rechteinhaber jederzeit die 
Bedingungen festlegen kannst[*].

Als nächstes fügst du der ZIP-Datei (oder dem Git-Repository) eine Datei 
mit dem Namen LICENSE (oder LICENSE.TXT) hinzu, in die du den Lizenztext 
der von dir verwendeten Lizenz kopierst. Wenn in den Dateien sowas wie 
"Urheberrecht blabla Josef" oder "Alle Rechte reserviert" steht, dann 
kannst du das entfernen (es wäre durch die Lizenz ungültig, aber ich 
habe in den Dateien auch nichts dergleichen gefunden).

Was du auf die Webseite schreibst ist zwar schön, aber die 
Lizenzbedingungen sollten zum Code gehören, nicht zum Downloadlink. Ich 
kann den Code auch von anderer Quelle erhalten - er ist ja frei - und 
dort sehe ich deine Bedingungen möglicherweise nicht.

Mit einer bekannten Lizenz ist rechtssicher festgelegt, dass du das 
Urheberrecht weiterhin besitzt (das kannst du nach deutschem Recht 
ohnehin nicht abtreten), der Code aber unter eindeutig definierten 
Randbedingungen frei genutzt werden darf. Die CC-Lizenzen sind dafür 
ungeeignet, das schreiben auch die Verantwortlichen dieser Lizenzen.

Die Dokumentation kannst du unter eine CC-Lizenz stellen (bzw. so 
lassen). Sinnvollerweise steht die verwendete Lizenz ebenfalls in der 
Dokumentation. Einfacher wäre es, wenn du die in der ZIP-Datei 
vorhandene Dokumentation unter die gleiche Lizenz stellst wie den Code, 
dann verkürzt du die LICENSE-Datei. (Andernfalls müsstest du beide 
Lizenzen da reinschreiben und eine Erklärung, welche Teile unter welcher 
Lizenz stehen oder in jede Datei die korrekte Lizenz reinschreiben.)

Diese Schritte - Zustimmung einholen, passende Lizenz aussuchen, 
Lizenztext in LICENSE-Datei kopieren und zum Code tun - sind zumindest 
bei meinem Arbeitgeber ausreichend, um ein Projekt unter eine freie 
Lizenz zu stellen. Besser wird's nicht.

[*] Unter BSD-Lizenz gesteller Code kann aber jederzeit von anderen nach 
den Regeln der BSD-Lizenz genutzt werden. Einschränken kannst du das 
nachträglich nur für Folgeversionen. Aber das ist hier eher unwichtig.
(Firma: Schweigstill IT) Persönliche Seite #6643957
Lesenswert?

S. R. schrieb:
> Am einfachsten stellst du den Code unter eine BSD-Lizenz (oder eine
> andere freie Lizenz).

Da halte ich auch für das sinnvollste, aber Josef benötigt diesbezüglich 
ja eine Sonderlocke. Bei Github kann man beim Anlegen eines Projektes 
einfach einer der etablierten Lizenzen auswählen, und schon steht das 
entsprechende Grundgerüst mit allen relevanten Einstellungen. "Damals" 
hatte ich ja sogar schon einen entsprechenden Account für Josef bei 
Github eingerichtet.

Die jetzige "völlige Freigabe" macht die Sache nicht einfacher, sondern 
eher schwieriger, denn Josef bleibt ja nach wie vor der Hautautor, mit 
dessen Namen ja auch der Lizenztext versehen wird. Also darf auch kein 
Dritter einfach einen beliebigen Lizenztext aussuchen und Josef als 
Autor darin eintragen. Und sich selbst als Autor einzutragen, geht noch 
weniger, denn die Urheberschaft besteht ja nach deutschem Recht weiter. 
Und die Erfahrung zeigt ja, dass Josef die geeigneten(!) etablierten 
Lizenzen bzw. -texte ablehnen und lieber etwas ungeeignetes wie CC 
aussuchen und Beratungsresistenz demonstrieren wird.
#6644122
Lesenswert?

Andreas S. schrieb:
> Da halte ich auch für das sinnvollste, aber Josef
> benötigt diesbezüglich ja eine Sonderlocke.

Naja, das finde ich persönlich nicht so schlimm. Die gewählte "völlige 
Freigabe" entspricht so ungefähr dem Versuch einer BSD0 oder Public 
Domain-Freigabe, nur in weniger klug. Kann man mit leben.

Mir ging es in meinem Beitrag eher darum, dass er die Bedingungen 
sinnvoll zum Code in die ZIP-Datei packt, statt irgendwo einen 
Dreizeiler auf eine Webseite zu kippen und zu hoffen, dass das reicht 
(tut es nämlich nicht).
Gast #6644206
Lesenswert?

Michael schrieb:
> gesagt: weil wir 10 "Knubbel" an den Händen haben. Er ist übrigens
> Kulturforscher.

Wahrscheinlich hatten deshalb die Ägypter ein 5er-System.

Route_66 H. schrieb:
> Den Erguss von Josef G. will doch auf der ganzen Welt nicht ein einziger
> Mensch irgendwie nachnutzen!
Die Welt dreht sich weiter. Erst gab es ein 4-Bit-System, dann nutzte 
man das 8-Bit-System. Später gab es 16-Bit. Damit kann man schon sehr 
viel machen, während man das Meiste im 8-Bit System durch Algebra 
aufteilen musste.

Unter 16 Bit wird keiner einen Prozessor einsetzen es sei denn er hat 
Code für den alten 8-Bitter. Und da gibt es 6502- und Z80/ 8085 
EMulatoren für das was in den Heimcomputern verbaut war.

Einen neuen 8-Bitter braucht keiner mehr.

Einen 64er könnte man gebrauchen.
OP Persönliche Seite #6650866
Lesenswert?

Es gibt eine Änderung des Gesamtsystems:

Die Übertragung der Software vom Block-RAM des FPGA ins externe RAM
bei der Initialisierung erfolgt jetzt durch die CPU und nicht mehr
durch eine spezielle Hardware. Damit entfällt die spezielle Hardware.
Und jetzt hat nur noch die CPU Zugriff auf das externe SDRAM. Dadurch
ist die Ansteuerung des SDRAMs jetzt sehr viel übersichtlicher.
Gast #6651595
Lesenswert?

Ich würde mir das Projekt tatsächlich gerne mal etwas näher ansehen. 
Scheinbar basiert der Prozessor ja auf keiner bekannten Architektur und 
vielleicht gibt es ja das ein oder andere Novum. :)

Aber ich finde die Dokumentation wirklich "kompliziert". Da es sich ja 
eh um ein open-source-Projekt handelt, sehe ich nicht wirklich ein 
Problem, warum man das ganze nicht auf GitHub/Gitlab/ und Konsorten 
veröffentlichen sollte.
Als kleines Extra-Bonbon hätte man dann auch eine zentrale Plattform, wo 
Iteressierte die Entwicklung genauer verfolgen und sich ggf. über 
Diskussionen und Issues beteiligen könnten. Neuerungen in einem 
Forumsbeitrag, der über mehrere Seiten geht und auch ziemlich viele 
"off-topic "Kommentare hat, zu finden und nachzuverfolgen finde ich 
persönlich sehr schwierig (vorsichtig gesagt).

Was mir aber absolut fehlt, ist ein Block-Diagramm des Prozessors. Ich 
finde sowas immer extrem hilfreich, da so ein Bild den Aufbau dann doch 
besser vermittelt als eine Seite Text. Von mir aus kann das auch mit 
Paint gefummelt sein. Sogar ein einfacher Screenshot vom RTL-Viewer wäre 
schon hilfreich, um einen groben Überblick zu bekommen.

Grüße,
Lexi
OP Persönliche Seite #6651720
Lesenswert?

lexi schrieb:
> Was mir aber absolut fehlt, ist ein Block-Diagramm des Prozessors.

Ein solches Blockdiagramm habe ich nicht, nicht mal im Kopf.

Ich verstehe auch nicht, was ein solches Diagramm bringen sollte.
Entscheidend ist doch der Befehlssatz einschließlich Timing
und das Verhalten der aussen sichtbaren Steuersignale.

Falls dich der innere Aufbau interessiert, sieh dir die Seite
CPU-arch.txt im Verzeichnis info des Downloadfiles an. Besser
kann ich es nicht erklären. Ist allerdings zum Teil veraltet,
weil ich zwischenzeitlich den Einlesezeitpunkt der Daten
vom Datenbus ein wenig nach hinten verschoben habe.

> Aber ich finde die Dokumentation wirklich "kompliziert".

Es kann gerne jemand eine bessere Dokumentation erstellen.
Beitrag #6651961 wurde von einem Moderator gelöscht.
Gast #6653109
Lesenswert?

Sinus T. schrieb:
> Erwin schrieb:
>> Was Bome hier an Diebstahl der Lebenszeit anderer betreibt ist ja
>> langsam grenzwertig.
>
> Was soll denn dieser blödsinnige Satz? Hat dich irgedwer gezwungen, dir
> das anzuschauen?

Darin steckt mehr Wahrheit als Du zunächst glaubst.
Kann aber gut sein daß die Lebenszeit des einen wertvoller ist als die 
des anderen.
#6653160
Lesenswert?

:->

Ich schau hier eigentlich nur rein, weil ich offenbar gehässig bin und 
mich daran amüsiere, dass sich Leute ernsthaft an Josef aufreiben.
Ich kann mit dem Projekt auch nichts anfangen, aber was um alles in der 
Welt bringt es an Nährwert, sich darüber auf zu regen, was Josef macht 
und ihn davon abbringen zu wollen?

Vielleicht ist der Thread in Wirklichkeit von einem Psychologen 
betrieben, der ausprobiert "Wie kleinkariert kann man sein?".
OP Persönliche Seite #6665439
Lesenswert?

Habe nun auch eine Realisierung auf dem DE0-CV-Board mit CycloneV.

Der SD-Card-Slot des Boards ist nur für micro-SD-Karten. Es gibt
aber Adapter zu kaufen für Standard-SD-Karten. Selber anschließen
muss man ausserdem ein RS232-Modul, etwa Pmod-RS232 von Digilent.

Damit gibt es nach längerer Zeit nun wieder eine Realisierung
auf einem aktuellen Board, das keine große Bastelei erfordert
und mit aktueller Software programmierbar ist.

-----------
Habe bisher Quartus 13.0 SP1 verwendet. Die Synthese meldete stets
automatically promoted bei den Takten vclk, cl1, cl2. Nun habe ich
Quartus-Prime-Lite 20.1 getestet, da fehlte diese Meldung. Deshalb
habe ich jetzt bei den Altera-Boards für vclk, cl1, cl2 explizit
Clock-Buffer instanziert. Der von aussen kommende Takt clk wird
auch bei Quartus-Prime-Lite automatisch als Clock geroutet.
Angehängte Dateien:
OP Persönliche Seite #6669682
Lesenswert?

Andreas S. schrieb:
> S. R. schrieb:
>> Am einfachsten stellst du den Code unter eine BSD-Lizenz
>> (oder eine andere freie Lizenz).
>
> Da halte ich auch für das sinnvollste,
> aber Josef benötigt diesbezüglich ja eine Sonderlocke.

Nach meiner Kenntnis sind die Bereitsteller von Open-Source-Lizenzen
selber Vertagspartner im Verhältnis zwischen Nutzer und Inhaber des
Urheberrechts. Das kann dazu führen, dass der Urheber nicht mehr
die Möglichkeit hat, einem Anwender die Weiterentwicklung ohne
Offenlegung des Quellcodes zu gestatten. Das möchte ich nicht.

S. R. schrieb:
> Mir ging es in meinem Beitrag eher darum, dass er die Bedingungen
> sinnvoll zum Code in die ZIP-Datei packt, statt irgendwo einen
> Dreizeiler auf eine Webseite zu kippen und zu hoffen, dass das
> reicht (tut es nämlich nicht).

Warum nicht? Der Anwender muss dann halt einen Screenshot sichern.
Wenn die Bedingungen in der ZIP-Datei stehen, gibt es auch keine
Gewähr, dass nicht ein anderer sie nachträglich dazugepackt hat,
sofern die Datei weitergegeben wird.
Gast #6669816
Lesenswert?

Josef G. schrieb:
> Nach meiner Kenntnis sind die Bereitsteller von Open-Source-Lizenzen
> selber Vertagspartner im Verhältnis zwischen Nutzer und Inhaber des
> Urheberrechts. Das kann dazu führen, dass der Urheber nicht mehr
> die Möglichkeit hat, einem Anwender die Weiterentwicklung ohne
> Offenlegung des Quellcodes zu gestatten. Das möchte ich nicht.

Deine Kenntnis hat leider überhaupt nichts mit der Realität zu tun.
Die "Bereitsteller" der Lizenzen haben maximal (manchmal) das 
Urheberrecht am Lizenz-TEXT selbst. Aber keinerlei Rechte am dem 
geschützten Werk. Das geschützte Werk ist allein unter deiner Kontrolle.
Gast #6674784
Lesenswert?

Josef G. schrieb:
> Habe nun auch eine Realisierung auf dem DE0-CV-Board mit CycloneV.

Gibt es eigentlich aktuelle Eckzahlen der Implementierung?

Also sowas wie Anzahl der LUTs, FFs, BRAMSs, DSPs, ... für CPU bzw. das 
ganze SoC? Interessant wären auch maximale Taktrate und sowas wie CPI 
(cycles per instruction) oder Benchmark-Ergebnisse (z.B. Coremark).
OP Persönliche Seite #6675394
Lesenswert?

lexi schrieb:
> Also sowas wie Anzahl der LUTs, FFs, ...

Fitter-Meldungen beim DE0-CV mit CycloneV:

Gesamtsystem: 1538 LUTs, 909 FFs. CPU: 840 LUTs, 462 FFs.

DSPs: keine

BRAMs werden 32 KByte gebraucht für das Video-RAM,
gleichzeitig für die Initialisierung der Software.

Zur maximalen Taktrate kann ich nichts sagen, ich habe bisher
um Timing-Constraints einen großen Bogen gemacht, das ist mir
zu kompliziert. Bei den Altera-Boards habe ich bisher nicht
einmal die Frequenz des eingespeisten Taktes angegeben.

In der derzeitigen Implementierung mit nur einem CPU-Takt
hat dieser die Periode 320 ns und Tastgrad 25 Prozent.

Tastgrad 50 Prozent sollte auch funktionieren. Dann hätte die
Peripherie weniger Zeit, um nach Ausgabe einer Adresse durch
die CPU zu entscheiden, ob ein REP-Signal erforderlich ist.

Ein Taktzyklus von 320 ns entspricht in meiner Terminologie
einem Halbzyklus der CPU. Ein Vollzyklus besteht aus den
Halbzyklen tA und tB. Speicherzugriffe erfolgen während tA.
Das inaktive tB steht für SDRAM-Refresh zur Verfügung.

Befehle dauern vorhersagbar 1 oder 2 oder 3 Vollzyklen. Letzteres
gilt für Verzweigungen, falls der Sprung ausgeführt wird. Es gibt
auch noch einen langen NOP-Befehl mit 3 bis 257 Vollzyklen.

Siehe auch 8bit-CPU: bo8
Gast #6675505
Lesenswert?

Josef G. schrieb:
> Zur maximalen Taktrate kann ich nichts sagen, ich habe bisher
> um Timing-Constraints einen großen Bogen gemacht, das ist mir
> zu kompliziert. Bei den Altera-Boards habe ich bisher nicht
> einmal die Frequenz des eingespeisten Taktes angegeben.
Das ist nicht kompliziert!

Für Altera geht das so:

1. eine sdc-Datei (=normale Textdatei) anlegen, mit folgendem Inhalt:
1
create_clock -name {clk}   -period 320.000  [get_ports { clk }]
Nur der Portname und die Periodendauer müssen ggf. angepasst werden.



2. diese Datei zum Projekt hinzufügen; in der qsf-Datei gibt es dann 
eine Zeile die so aussieht:
1
set_global_assignment -name SDC_FILE timing.sdc
Hier muß der richtige Dateiname von 1. drinstehen.


Der Timinganalyzer kann dann feststellen, ob die Logik übertaktet wird, 
oder wieviel 'Luft' bei der gegebenen Taktfrequenz noch bleibt.
Gast #6675729
Lesenswert?

Frank schrieb:
> "Warum einfach,
> wenns auch kompliziert geht"
Bei der Variante für den S3E wird der 50 MHz Eingangstakt mit einem DCM 
auf 100 MHz verdoppelt.
Diese 100 MHz werden für den DDR-Speichercontroller verwendet und 
nebenbei per FF wieder auf 50 MHz runtergeteilt.
Aus diesen 50 MHz werden dann 3,125 MHz für die CPU (und andere 
Komponenten gemacht). Die CPU braucht zwei phasenverschobene Takte, 
warum auch immer. WIMRE habe ich sowas beim Intel 8080 zum letzten Mal 
gesehen.
Also alles ganz einfach.

Hier noch ein Auszug aus dem CPU-Code:
1
writeq : process(cl1) begin
2

3
  if cl1'event and cl1 = '1' then
4

5
  q1kaw  <= f1kaw ;  q1kaa  <= f1kaa ;  q2kaa  <= f2kaa ;  q1kbb  <= f1kbb ;
6
  q1kac  <= f1kac ;  q1kbd  <= f1kbd ;  q1kad  <= f1kad ;  q1kbc  <= f1kbc ;
7
  q1kasu <= f1kasu;  q2kasu <= f2kasu;  q1kbsu <= f1kbsu;  q2kbsu <= f2kbsu;
8
  q1kant <= f1kant;  q2kant <= f2kant;  q1kaxr <= f1kaxr;  q2kaxr <= f2kaxr;
9
  q1qcd  <= f1qcd ;  q1vw   <= f1vw  ;  q1vcy  <= f1vcy ;  q2vcy  <= f2vcy ;
10
  q1vcn  <= f1vcn ;  q2vcn  <= f2vcn ;  q1vnz  <= f1vnz ;  q1xzsu <= f1xzsu;
11
  q2xzsu <= f2xzsu;  q1xzab <= f1xzab;  q1xzdc <= f1xzdc;  q1xzic <= f1xzic;
12
  q1wx   <= f1wx  ;  q2wx   <= f2wx  ;  q1wy   <= f1wy  ;  q2wy   <= f2wy  ;
13
  q1wz   <= f1wz  ;  q2wz   <= f2wz  ;  q1ssab <= f1ssab;  q1ssda <= f1ssda;
14
  q3ssda <= f3ssda;  q1ssia <= f1ssia;  q1sscd <= f1sscd;  q1pin  <= f1pin ;
15
  q1psu  <= f1psu ;  q2psu  <= f2psu ;  q1rn   <= f1rn  ;  q2rn   <= f2rn  ;
16
  q1opa  <= f1opa ;  q1opz  <= f1opz ;  q1sef  <= f1sef ;  q2sef  <= f2sef ;
17
  q3sef  <= f3sef ;  q1sn2  <= f1sn2 ;  q1sn1  <= f1sn1 ;  q1sn0  <= f1sn0 ;
18

19
end if; end process writeq;
Schön formatiert, aber um bei dem Namensschema durchzusteigen reicht 
mein IQ leider nicht...
Angehängte Dateien:
OP Persönliche Seite #6675739
Lesenswert?

Bernd schrieb:
> Die CPU braucht zwei phasenverschobene Takte,

Nein. Die Entity hat zwei Takteingänge für zwei phasenverschobene
Takte. Von dem einem wird nur die steigende Flanke gebraucht, vom
anderen nur die fallende Flanke. Es ist deshalb möglich, beide
Eingänge mit demselben Takt zu versorgen. Und so wird das in
der derzeitigen Implementierung auch gemacht.
(Firma: Schweigstill IT) Persönliche Seite #6677693
Lesenswert?

Josef G. schrieb:
> Nein. Die Entity hat zwei Takteingänge für zwei phasenverschobene
> Takte. Von dem einem wird nur die steigende Flanke gebraucht, vom
> anderen nur die fallende Flanke. Es ist deshalb möglich, beide
> Eingänge mit demselben Takt zu versorgen. Und so wird das in
> der derzeitigen Implementierung auch gemacht.

Wenn Du keine Constraints für die Takte angegeben hast und diese über 
separate externe Taktsignale versorgt werden können, muss das 
Synthesewerkzeug davon ausgehen, dass die Takte in keinem festen Bezug 
zueinander stehen. Damit verhindert man natürlich jegliche 
Optimierungen.

Wenn jedoch beide Taktsignale aus demselben FPGA-internen Taktgenerator 
stammen, werden meist automatisch die daraus resultierenden 
Takt-Constraints erzeugt.

Es ist übrigens eine Katastrophe, solche Takte selbst durch 
Herunterteilen zu erzeugen. Stattdessen sollte man in solchen Fällen nur 
ein einziges Taktsignal verwenden und ggf. mehrphasige Clock Enables 
verwenden. Dann können nämlich viel besser die FPGA-internen 
Verteilnetze für Takte eingesetzt werden.

Frank schrieb:
> Das kann ich kaum glauben. Du bist doch Experte für "Warum einfach,
> wenns auch kompliziert geht".

Das hat Josef doch auch mal wieder exzellent zur Schau gestellt... Und 
zwar in der Variante "kompliziert und scheiße" statt "kompliziert, aber 
ausgezeichnet".
OP Persönliche Seite #6678272
Lesenswert?

Andreas S. schrieb:
> Es ist übrigens eine Katastrophe, solche Takte
> selbst durch Herunterteilen zu erzeugen.

Bei den mir bekannten FPGAs ist das Aufschalten
solcher Takte auf Clock-Buffer problemlos möglich.

Man muss dann halt berücksichtigen, dass der erzeugte Takt
eine kleine Verzögerung gegenüber der erzeugenden Flanke
des Master-Clocks aufweist.
#6678379
Lesenswert?

Josef G. schrieb:
> Dieser Thread soll folgende älteren Threads ersetzen und fortführen
> Beitrag "EPJ14 S. 19: Ein 8bit-Rechner auf dem Spartan-3A-Starterkit "
> Beitrag "Ein 8bit-Rechner auf dem Spartan-3A-Starterkit"
> Zu dem Projekt gibt es den Artikel
> http://www.mikrocontroller.net/articles/8bit-Rechner
> Projekt-Website: http://www.bomerenzprojekt.de

Was kann man mit dem Board alles machen?
(Firma: Schweigstill IT) Persönliche Seite #6678729
Lesenswert?

Josef G. schrieb:
> Bei den mir bekannten FPGAs ist das Aufschalten
> solcher Takte auf Clock-Buffer problemlos möglich.

Ja, natürlich bekommt man fast beliebige Signale irgendwie an den 
Eingang eines Clock Buffers und damit in die Taktverteilung.

> Man muss dann halt berücksichtigen, dass der erzeugte Takt
> eine kleine Verzögerung gegenüber der erzeugenden Flanke
> des Master-Clocks aufweist.

Genau DAS ist ja das große Problem. Bei diskret aufgebauten 
Schaltungen kann man sich natürlich bei kaskadierten Registern oft nicht 
sicher sein, ob die Daten oder der Takt zuerst ankommen und ob die 
Setup-Zeiten korrekt eingehalten werden. In solchen Fällen arbeitet man 
natürlich mit mehrphasigen Takten bzw. mit beiden Flanken eines Taktes. 
Dort ist so etwas ein gutes Design.

Bei FPGA ist das aber nicht erforderlich, da durch die physikalische 
Struktur sichergestellt ist, dass die Setup-Bedingungen eingehalten 
werden. Natürlich nur unter der Voraussetzung, dass es sich um dasselbe 
Taktsignal handelt und nicht um mehrere "manuell" gegeneinander 
versetzten Takte. Moderne Synthesewerkzeuge werden einem so etwas aber 
um die Ohren hauen. Nein, es ist keine gute Idee, irgendeine 
Steinzeitversion zu verwenden, die solch einen Taktpfusch nicht erkennt. 
Nein, es ist keine gute Idee, die entsprechenden Fehlermeldungen zu 
unterdrücken.
OP Persönliche Seite #6680525
Lesenswert?

Die Block-RAM-Entity für die Xilinx-Boards hatte bisher einen
Schreib-Lese-Port und einen unabhängigen zweiten Leseport. Der
Versuch, die Entity auch beim Altera-DE0 zu verwenden, führte
vor langer Zeit zu einer Fehlermeldung. Ich habe dann für die
Altera-Boards eine andere Entity erstellt mit nur einem
Schreibport und nur einem davon unabhängigen Leseport.

Nun habe ich auch die Xilinx-Boards auf diese zweite Version
umgestellt. Damit entfällt im Download-File die ursprüngliche
Xilinx-Version mit ihrer Kopie der System-Software. Jetzt ist
es einfacher, alle Projekt-Realisierungen zu vergleichen.

Ausserdem habe ich nun auch bei den Xilinx-Boards explizit
Clock-Buffer für die Takte vclk und cl1 instanziert für den
Fall, dass eine neue ISE-Version das nicht automatisch macht.
Beitrag "Re: 8bit-Computing mit FPGA"

cl2 wird lokal geroutet. Das schadet nicht, weil die mit cl2
getakteten FFs nie gleichzeitig gelesen und geschrieben werden
und deshalb nicht genau gleichzeitig schalten müssen. Routing
mittels Clock-Buffer würde ausserdem zu Warnungen führen, weil
cl2 an vielen Stellen als Enable und nicht als Takt dient.
Moderator Persönliche Seite #6680552
Lesenswert?

Josef G. schrieb:
> Bei den 7-Segment-Ziffern habe ich mich nun für diese Version
> entschieden.

Das B wie "Bube" erkenne ich als P wie "Puppe", das D sieht eher wie 
Lambda aus.

Warum akzeptierst Du nicht die Standards A b C d E F für 
Siebensegmentanzeigen? Diese sind allesamt lesbarer und eindeutiger 
als Deine "Erfindung", die mit unseren lateinischen Buchstaben nicht 
vereinbar sind.

Ich kann sogar hier
1
A b C d E F
in ASCII hinschreiben und man erkennt sofort die Anordnung der Segmente 
- die Zuordnung ist "eineindeutig". Ich brauche noch nichtmals Bilder 
von den Segmenten anzuhängen!

Bei Dir ist das anders. Sowohl Dein "P" als auch Dein "Lambda" sind 
nicht als die Hexziffern B und D zu erkennen. Also unbrauchbar.
#6681183
Lesenswert?

Josef G. schrieb:
> Eigentliches Ziel des Projekts ist die Etablierung
> eines Zeichensatzes mit sechzehn Ziffern.

Eigentlich denke ich auch, dass man als Hobby machen kann, was man will 
- egal wie sinnvoll oder zeitintensiv -
aber wenn das ernsthaft das Ziel ist, das globale Standard-Zahlensystem 
von dec nach hex zu ändern, dann ist das Zeitverschwendung.
#6681221
Lesenswert?

Jasson J. schrieb:
> Eigentlich denke ich auch, dass man als Hobby machen kann, was man will
> - egal wie sinnvoll oder zeitintensiv -
> aber wenn das ernsthaft das Ziel ist, das globale Standard-Zahlensystem
> von dec nach hex zu ändern, dann ist das Zeitverschwendung.

Oder Zen . . . ;-)

https://de.wikipedia.org/wiki/Zen

"Im Zen wird oft gesagt, dass Zen „nichts“ biete: keine Lehre, kein 
Geheimnis, keine Antworten."

ZEN-IT, der nächste, große Trend!

ZEN-tral processing unit ;-)
Gast #6681583
Lesenswert?

Falk B. schrieb:
> "Im Zen wird oft gesagt, dass Zen „nichts“ biete: keine Lehre, kein
> Geheimnis, keine Antworten."

Dieser Thread scheint denen, die seit Jahren davon reden das das hier 
alles keinen Sinn macht, aber wenigstens ganz gut die Zeit zu 
vertreiben.

Es ist doch egal was Josef postet, es erzeugt jede Menge Reaktionen.
Auch wenn sich seit Anbeginn dieses Threads das Ding um sich selber 
dreht, eigentlich nix neues dazukommt und nur der immer gleiche Mist in 
immer neuen Variationen durchgekaut wird. Neuer Zeichensatz, CPU wurde 
umdesignet, die korrekte Benennung des Hex Systems das die Welt erobert 
wird gesucht und die BO8 läuft jetzt auf dem nächsten FPGA Board.
Neue Leute kommen dazu und führen die Diskussion die schon 100 andere 
vor ihnen geführt haben, regen sich mehr und mehr auf, verlassen den 
Thread und neue kommen dazu.
Der Einzige der dauerhaft ernsthaft dabei ist, ist Josef.

Schon irgendwie geil, das man sich in FPGAs, unglaublich bescheidene 
Doku und gruseligen Code einarbeiten soll, weil man dann ganz einfach 
Computersysteme verstehen kann, laut Josef.
Dabei hat eigentlich keiner ein Problem Computer zu verstehen, nur eben 
mit Josefs gemurkse tut man sich schwer und sieht auch den Sinn nicht.
Es macht nix besser, nichts schneller oder billiger, ist in jedem 
einzelnen Punkt schlechter als etwas beliebig anderes und scheint nur 
dazu zu taugen den Erschaffer dieses Moloch runterzuputzen und sonst 
nichts.

Die Logig dabei ist irgendwie traurig, aber auch lustig, auf eine eher 
schmerzvolle fremdschäm Weise. Knuddeln, zuschlagen oder kopfschüttelnd 
das Weite suchen. Man weiß es oft nicht.

Wäre es ein Trollthread, wäre es der erfolgreichste aller Zeiten.
OP Persönliche Seite #6682328
Lesenswert?

lexi schrieb:
> https://github.com/stnolting/neo430#FPGA-Implementation-Results

Aus deinem Link (Zitat):

Each single instruction is executed in a series of micro instructions 
requiring several clock cycles to complete. The main benefit of this 
execution style is the highly reduced logic overhead as no complex 
pipeline hazard detection and resolving logic is required. This makes 
the NEO430 even smaller - at the cost of a reduced IPC (instructions per 
cycle).
#6682433
Lesenswert?

Josef G. schrieb:
> Nach meiner Kenntnis sind die Bereitsteller von
> Open-Source-Lizenzen selber Vertagspartner im
> Verhältnis zwischen Nutzer und Inhaber des Urheberrechts.

Das ist schlicht falsch.

Wenn du deinen Code der Allgemeinheit unter einer BSD-Lizenz 
bereitstellst, dann hat die Universität Berkeley damit nichts zu tun.

> Das kann dazu führen, dass der Urheber nicht mehr
> die Möglichkeit hat, einem Anwender die Weiterentwicklung ohne
> Offenlegung des Quellcodes zu gestatten. Das möchte ich nicht.

In der Lizenz steht drin, was der Urheber darf und was der Anwender 
darf. Diese Bedingungen gelten.

Darüber hinaus darf die Urheberschaft auch weitere Lizenzbedingungen mit 
der Nutzerschaft vereinbaren, auf die diese Lizenz keinen Einfluss hat 
(z.B. Sonderlocken für kommerzielle Nutzung), aber es obliegt der 
Nutzerschaft, diese Optionen auch zu wählen.

>> Mir ging es in meinem Beitrag eher darum, dass er die Bedingungen
>> sinnvoll zum Code in die ZIP-Datei packt, statt irgendwo einen
>> Dreizeiler auf eine Webseite zu kippen und zu hoffen, dass das
>> reicht (tut es nämlich nicht).
>
> Warum nicht? Der Anwender muss dann halt einen Screenshot sichern.

Weil man üblicherweise nur das Quelltextpaket benutzt, aber nicht die 
Herstellerwebseite runterlädt und abspeichert. Das hat was mit 
Praktikabilität zu tun.

Nutzt man Open-Source-Software in kommerziellen Produkten, muss man 
üblicherweise deren Lizenztexte veröffentlichen und manchmal auch die 
exakt verwendeten Quelltexte. Dafür gibt es automatisierte Systeme, wo 
man vorne die ZIP-Datei oder den Tarball reinkippt, dazu noch die 
eigenen Patches, und die extrahieren daraus genau das, was nach den 
Lizenzbedingungen extrahiert und veröffentlicht werden muss.

Dein Ansatz ist schlicht unpraktisch.

> Wenn die Bedingungen in der ZIP-Datei stehen, gibt es auch keine
> Gewähr, dass nicht ein anderer sie nachträglich dazugepackt hat,
> sofern die Datei weitergegeben wird.

Ich unterstelle keine Bösartigkeit. Normalerweise möchte ich aber mit 
der Originalquelle arbeiten und nicht mit einem irgendwie verändertem 
Stand. Da weiß ich nämlich nicht, ob noch irgendwelche anderen Dinge 
gemacht wurden.

Wie gesagt, es gibt ein paar Dinge, mit denen du das Projekt 
verbessern kannst, unabhängig von der Technik. Mit einer Standardlizenz 
und einer Standardstruktur erlaubst du nämlich Standardarbeitsabläufe in 
der Nutzung.
#6682476
Lesenswert?

Josef G. schrieb:
> Each single instruction is executed in a series of micro instructions
> requiring several clock cycles to complete. The main benefit of this
> execution style is the highly reduced logic overhead as no complex
> pipeline hazard detection and resolving logic is required. This makes
> the NEO430 even smaller - at the cost of a reduced IPC (instructions per
> cycle).

Ohje, und trotzdem erreicht das Ding "nur" 100-121 MHz! Wie hoch ist 
nochmal dein Werk getaket? Wieviele Takbuffer und sonstigen Schmarn 
benötigt es?
#6682673
Lesenswert?

Der Thread hier ist gut zur Unterhaltung, hab viele (aber sicher nicht 
alle) Beiträge gelesen. Dieser Post ist hier meinen erster und soll auch 
der einzige bleiben.

Personen wie Josef haben Ansichten die der Mehrheit der Community 
widersprechen. Wer wie er keine Macht hat redet drüber aber kann 
faktisch nichts ändern. Manche andere dagegen haben die Macht und 
schaffen es ihre von der Mehrheit abweichende Einstellung durchzusetzen 
oder zumindest am Leben zu halten, egal ob sinnvoll oder nicht. Mir 
fallen hier drei Beispiele ein die doch wieder technisch relevant sind 
und mal zum überdenken dienen sollen (auch dir, Josef):

- Bitorder beim PowerPC: Die ganze Welt hat von Anfang an das 
niederwertigste Bit als 'b0' bezeichnet, das höchstwertige entsprechend 
als b7,b15,b31,b63,.. Dann kam in den 80ern IBM mit dem PowerPC, genau 
andersrum b31/b63 ist das LSB (bei 32/64bit Architektur). Wer jetzt 
PowerPC und andere Architekturen parallel bedienen muss, treibt viel 
Gehirnjogging... (War das nötig?)

- Gelöschte Flash/Eprom Zellen haben Bitwert '1' : Die ganze Welt macht 
das so, nein es gibt einen Widerständler: Infineon-Chips (z.B. TriCore) 
lesen eine '0' nach dem löschen. Hier gibt es sogar eine sinnvolle 
Erklärung: In C ist frischer Speicher mit '0' initialisiert, warum also 
das nicht auch beim Flash? Diese aus meiner Sicht sogar sinnvolle 
Änderung sehe ich hier nur bei denen, andere haben es bisher nicht 
übernommen. Schreibt man generischen Code für verschiedene 
Prozessorarchitekturen, muss man das mit Fallunterscheidung 
berücksichtigen. Macht Aufwand, aber leider nicht zu ändern...

- Little Endian / Big Endian: das ist ja so richtig alt. Eine 8bit 
Maschine kommt einfach nicht aus ohne mindestens 16bit Werte für 
Adressen. Die damals konkurrierenden Hersteller Motorola und Intel haben 
sich hier verschieden entschieden und das ist bis heute noch so, man 
muss beides unterstützen in gemischten Welten (vor 35 Jahren als 
Student, und heute immer noch im Job kurz vor der Rente). Beide haben 
logisch nachvollziehbare Gründe: BigEndian liest sich für den Menschen 
besser (HighByte zuerst, so wie man Zahlen eben schreibt), littleEndian 
ist im Zugriff besser wenn man verschiedene Sizes mischen will: Der 
Pointer zeigt immer auf das LowByte, egal ob 8,16,32,64bit
Durchgesetzt hat sich keine, verschiedene Architekturen können 
inzwischen einfach umschaltbar beide (Der Pragmatismus hat hier über den 
Dogmatismus gesiegt)

So Josef, ich wünsche dir viel Spaß mit deinen Ideen und den Mitlesern 
gute Unterhaltung. Nach 30 Jahren im Job habe ich die Hoffnung 
aufgegeben dass die beste Lösung gewinnt, es hängt immer an der 
Machtposition der Protagonisten. Also bleibt pragmatisch, weshalb ich 
mir keinen neuen 8bitter antue. 6502,Z80,AVR reichen mir. Die 16bitter 
sind für mich out, hab mich zu oft über die Segmentbedingten Fehler im 
HC16 geärgert. 32bit rulez in Embedded, nach meinem Abtritt dann 
natürlich mal die 64bitter (PS: Das 32bit Linux/Unix Datum läuft bei 
Interpretation als uint32 erst im Jahr 2104 ab, da bin ich schon tot und 
es kann mir egal sein... Manche Kollegen wollen ja jetzt schon unbedingt 
auf 64bit, auch auf 32bit Architekturen. Kosten/Nutzen egal, Der Begriff 
'atomic read size' vielen nicht bekannt)
Es bleibt mein einziger Comment hier, viel Spass beim weiterlesen dieses 
Record-Threads aus dem Jahr 2013....

Der Reinhold
#6683105
Lesenswert?

Reinhold E. schrieb:
> (PS: Das 32bit Linux/Unix Datum läuft bei Interpretation
> als uint32 erst im Jahr 2104 ab,

Ich glaube, du meinst das Jahr 2038. Das ist nicht mehr so weit weg, 
allerdings haben die meisten Unixoide ihr time_t schon länger auf 64 Bit 
erweitert.

Betrachtet man die Timestamps als unsigned, reichen sie noch bis 2106.

> Manche Kollegen wollen ja jetzt schon unbedingt auf 64bit,
> auch auf 32bit Architekturen. Kosten/Nutzen egal, Der Begriff
> 'atomic read size' vielen nicht bekannt)

Wie willst du auf einer 32-Bit-Architektur ein 64-Bit-Betriebssystem 
fahren?
(Firma: Schweigstill IT) Persönliche Seite #6683135
Lesenswert?

S. R. schrieb:
> Reinhold E. schrieb:
>> Manche Kollegen wollen ja jetzt schon unbedingt auf 64bit,
>> auch auf 32bit Architekturen. Kosten/Nutzen egal, Der Begriff
>> 'atomic read size' vielen nicht bekannt)
>
> Wie willst du auf einer 32-Bit-Architektur ein 64-Bit-Betriebssystem
> fahren?

Warum sollten auf einer 32-Bit-Architektur keine 64-Bit-Datentypen 
genutzt werden können? Selbst für Betriebssystemfunktionen wären sie 
kein Tabu.
Beitrag #6683150 wurde von einem Moderator gelöscht.
OP Persönliche Seite #6683416
Lesenswert?

Content B. schrieb:
> Was kann ich mit dem Bo8 machen?

Vermutlich meinst du das Gesamtsystem bo8h, nicht die CPU bo8.

Die Funktionen testen und dich freuen, dass er funktioniert.
Eigene Hardware-Erweiterungen und zugehörige Software entwickeln
und veröffentlichen. Ein marktfähiges Fertiggerät daraus entwickeln.
Eine Anwendung ausser als technisches Spielzeug weiss ich nicht.
(Firma: Schweigstill IT) Persönliche Seite #6683459
Lesenswert?

Josef G. schrieb:
> Ein marktfähiges Fertiggerät daraus entwickeln.

Genau das lässt schon die unklare rechtliche Lizenzsituation nicht zu.

Und wie sich neulich gezeigt hat, verwendest Du ja offenbar auch ein und 
dasselbe Signal als Takt und als Clock Enable. Darauf ein kommerzielles 
Produkt aufzubauen ist viel zu riskant, da es jeglichen guten 
Entwurfsmuster widerspricht.
OP Persönliche Seite #6683514
Lesenswert?

Andreas S. schrieb:
> die unklare rechtliche Lizenzsituation

Bei meiner Freigabe-Erklärung muss ein Vermarkter
nicht mal eigene Quelltexte offenlegen.

Im Übrigen: Ich habe bisher nicht mal von meiner eigenen Software
einen Quelltext in maschinell lesbarer Form. Den müsste ich erst
noch erstellen, falls Interesse besteht. Schon allein das
spricht gegen die Verwendung einer Open-Source-Lizenz.
(Firma: Schweigstill IT) Persönliche Seite #6683534
Lesenswert?

Josef G. schrieb:
> Andreas S. schrieb:
>> die unklare rechtliche Lizenzsituation
>
> Bei meiner Freigabe-Erklärung muss ein Vermarkter
> nicht mal eigene Quelltexte offenlegen.

Niemand wird auf dem aktuellen Stand ein reales Produkt entwickeln.

Bei solchen Sachen muss man sich immer die folgende Frage stellen: "Wie 
würde ein Richter, der von der Vorgeschichte keine Ahnung hat und die 
ihn auch nicht im geringsten interessiert, entscheiden?".

Der Richter würde in den Formulierungen Deiner Freigabe-Erklärung 
etliche rechtliche Mängel sehen. Und damit würde er sie vermutlich für 
völlig unwirksam erklären. Somit griffen dann die normalen gesetzlichen 
Bestimmungen, d.h. Du hättest das (nach deutschem Recht ohnehin niemals 
abtretbare!) Urheberrecht und die Dritte höchstens ein einfaches 
Nutzungsrecht.

Würde ein Dritter Dein Projekt nehmen und unter einer gebräuchlichen 
Open-Source-Lizenz veröffentlichen, würde er damit ggf. auch die von Dir 
gegenüber Dritten eingeräumten Rechte einschränken. Das ist rechtlich 
ein viel zu heißes Eisen.

Und wie schon gesagt: ich habe bereits vor Monaten bei Github einen 
entsprechenden Bereich eingerichtet, aber dort natürlich keine Deiner 
Quellen abgelegt.

> Im Übrigen: Ich habe bisher nicht mal von meiner eigenen Software
> einen Quelltext in maschinell lesbarer Form. Den müsste ich erst
> noch erstellen, falls Interesse besteht. Schon allein das
> spricht gegen die Verwendung einer Open-Source-Lizenz.

Hä? Nö.
#6683633
Lesenswert?

Andreas S. schrieb:
>> Bei meiner Freigabe-Erklärung muss ein Vermarkter
>> nicht mal eigene Quelltexte offenlegen.
>
> Niemand wird auf dem aktuellen Stand ein reales Produkt entwickeln.
>
> Bei solchen Sachen muss man sich immer die folgende Frage stellen: "Wie
> würde ein Richter, der von der Vorgeschichte keine Ahnung hat und die
> ihn auch nicht im geringsten interessiert, entscheiden?".

Ist dir langweilig? Bist du auch autistisch veranlagt? Mensch Meier, die 
juristischen Detail sind die ALLERKLEINSTEN Probleme, welche einer 
Nachnutzung oder gar VERBREITUNG des Bo8 im Wege stehen!
Gast #6683672
Lesenswert?

Falk B. schrieb:
> die
> juristischen Detail sind die ALLERKLEINSTEN Probleme, welche einer
> Nachnutzung oder gar VERBREITUNG des Bo8 im Wege stehen!
Hmm, was wären für mich Gründe eine VHDL-CPU einzusetzen?!?

- open source
- gute Dokumentation
- herstellerunabhängiger Code
- leichte Integration
- leichte Erweiterbarkeit
- C-Compiler

Integration und Erweiterbarkeit setzten eine gute bis sehr gute 
Dokumentation und ggf. leicht lesbaren Quellcode voraus.

Mit meinen Kriterien habe ich die Wahl der Qual:
https://www.mikrocontroller.net/articles/FPGA_Soft_Core
Gast #6683676
Lesenswert?

Reinhold E.
>32bit rulez in Embedded, nach meinem Abtritt dann
>natürlich mal die 64bitter (PS: Das 32bit Linux/Unix Datum läuft bei
>Interpretation als uint32 erst im Jahr 2104 ab, da bin ich schon tot und
>es kann mir egal sein... Manche Kollegen wollen ja jetzt schon unbedingt
>auf 64bit, auch auf 32bit Architekturen. Kosten/Nutzen egal, Der Begriff
>'atomic read size' vielen nicht bekannt)

Dazu noch einen Gedanken: Ich habe mich immer gefragt, ob 64Bit wirklich 
für etwas zu gebrauchen sind. Aber da z.B. die RISC-V Maix 
Mikrocontroller schon 64 Bit sind, ist das gerade im kommen. Und 
tatsächlich: Double Precission bringt bei Simulationen oder auch schon 
bei einfachen Filtern wirkliche Vorteile. Und es ist wirklich schön, 
dass man sich nicht mehr um Überläufe und Rundungsungenauigkeiten 
kümmern muss (im Rahmen der meisten Applikationen).
#6683698
Lesenswert?

Bernd schrieb:
> Falk B. schrieb:
>> die
>> juristischen Detail sind die ALLERKLEINSTEN Probleme, welche einer
>> Nachnutzung oder gar VERBREITUNG des Bo8 im Wege stehen!
> Hmm, was wären für mich Gründe eine VHDL-CPU einzusetzen?!?
>
> - open source
> - gute Dokumentation
> - herstellerunabhängiger Code
> - leichte Integration
> - leichte Erweiterbarkeit
> - C-Compiler

Alles nur Selbstverarschung. All diese Kriterien, bis auf open source, 
erfüllt jede normale CPU auch. Soft-Cores oder auch Hard Cores in FPGAs 
mögen ihre Nische haben, viele Umsetzungen sind aber eher Spielerei und 
Ego-Trip. Vergleiche mal die Kosten und den Aufwand, vor allem was 
Programmspeicher etc. angeht.

> Integration und Erweiterbarkeit setzten eine gute bis sehr gute
> Dokumentation und ggf. leicht lesbaren Quellcode voraus.

Nö. Selbst mit verschlüsseltzen IP-Cores ist das möglich, lediglich die 
Schnittstellen müssen gescheit dokumentiert sein.

> Mit meinen Kriterien habe ich die Wahl der Qual:
> https://www.mikrocontroller.net/articles/FPGA_Soft_Core

Ich hab vor 20 Jahren (ohje!) mal ein paar Sachen mit dem Picoblaze von 
Xilinx gemacht, incl. RAM-Bänke für mehr Programmspeicher ;-)
War nett. Und auch lehrreich. Im Gegensatz zum Bo8 8-0
#6685770
Lesenswert?

Josef G. schrieb:
>> die unklare rechtliche Lizenzsituation
>
> Bei meiner Freigabe-Erklärung muss ein Vermarkter
> nicht mal eigene Quelltexte offenlegen.

Was hindert dich daran, einfach eine entsprechende - bekannte - Lizenz 
zu nehmen und die in die ZIP-Datei zu tun? Wenn es dir tatsächlich egal 
ist, dann nimm die BSD0 (die kommt deiner Vorstellung extrem nahe) und 
die Sache ist in fünf Minuten erledigt.

Der vollständige Lizenztext der BSD0 lautet wie folgt:
1
Permission to use, copy, modify, and/or distribute this software for any purpose with or without fee is hereby granted.
2

3
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.

Oben drüber darfst du gerne noch "Copyright (C) 2000-2021 Josef Gnadl" 
schreiben, wenn du möchtest.

> Im Übrigen: Ich habe bisher nicht mal von meiner eigenen Software
> einen Quelltext in maschinell lesbarer Form. Den müsste ich erst
> noch erstellen, falls Interesse besteht. Schon allein das
> spricht gegen die Verwendung einer Open-Source-Lizenz.

Open Source heißt nicht, dass das auch maschinenlesbar sein muss. Das 
sind die - inzwischen gemeinfreien - Dokumente von Einstein oder Gauß 
auch nicht, und auch einige Open Source Hardware hat nur handgezeichnete 
Schaltpläne oder Layouts.
#6687376
Lesenswert?

Mampf F. schrieb:
> Josef G. schrieb:
>> Marc schrieb:
>>> Geb die Codes komplett frei.
>>
>> Das hab ich doch schon getan, dachte ich.
>> Aber einige Leute sind damit nicht zufrieden.
>
> Im Zweifel MIT oder Apache V2 Lizenz^^

Es gibt auch noch die CC0, in der der Rechteinhaber auf seine Rechte so 
weitgehend verzichtet, wie möglich.

Es wird also versucht, einer Situation, in der es kein Urheberrecht 
gäbe, möglichst nahe zu kommen.
(Firma: Schweigstill IT) Persönliche Seite #6687402
Lesenswert?

Philipp Klaus K. schrieb:
> Es gibt auch noch die CC0, in der der Rechteinhaber auf seine Rechte so
> weitgehend verzichtet, wie möglich.

Diesen Versuch hatte Josef doch schon unternommen... Eine wichtige Frage 
ist dabei, ob jemand, der ein daraus abgeleitetes Werk erstellt, ebenso 
an diese Lizenz gebunden ist oder eine etwas geeignetere Lizenz nach 
BSD-Art verwenden kann.

Ich habe einfach mal für das schon vor ewiger Zeit angelegt 
Github-Repository eine MIT-Lizenz ausgewählt und Josef als Lizenzgeber 
eingetragen:

https://github.com/bo8-team/bo8h

Was hältst Du davon, Josef?

Ansonsten hat sich Github sehr, sehr ausführlich über die Wahl einer 
geeigneten Lizenz ausgelassen:

https://docs.github.com/en/github/creating-cloning-and-archiving-repositories/licensing-a-repository

https://choosealicense.com/
OP Persönliche Seite #6687613
Lesenswert?

Andreas S. schrieb:
> Was hältst Du davon, Josef?

Ich hab nichts dagegen, mach nur.

Wundern tut es mich ja schon, dass du dich so für das Projekt
engagierst, nachdem du es hier vielfach kritisiert hast.

Zur Bezeichnung: Nach meiner Vorstellung sollte bo8 die CPU sein
und bo8h das Gesamtsystem. So hatte ich auch die Wiki-Artikel
genannt: 8bit-CPU: bo8 und 8bit-Computer: bo8h.
Auch im Forum habe ich versucht die Bezeichnungen durchzusetzen:
Beitrag "Re: 8bit-Computing mit FPGA"

Aus dem, was du auf Github gepostet hast, wird nach meiner Ansicht
nicht klar, ob es um die CPU gehen soll oder um das Gesamtsystem.
Vielleicht magst du da an den Bezeichnungen noch etwas ändern.
Aber es ist deine Entscheidung, ich misch mich da nicht ein.
#6688020
Lesenswert?

Josef G. schrieb:
> Muss der Lizenzname BSD-0 beim Lizenztext dabeistehen?

Nein, der Lizenztext gilt auch ohne, dass der Name der Lizenz darüber 
steht.

> Was ist mit der Dokumentation, die Teil des Downloadfiles ist?

Was in der ZIP-Datei drin ist, würde ich unter "the software" mit 
einschließen, gehört schließlich zum Paket. Du kannst das auf der 
Webseite aber auch eindeutig dazuschreiben, wenn du möchtest.

Die Dokumentation auf der Webseite ist davon nicht betroffen, für die 
gelten andere Regeln, die du frei wählen kannst. Ist aus meiner Sicht 
eher nebensächlich.

> Kann ich auf meiner Website den bisherigen Lizenztext stehenlassen?

Ja, wobei du dann erklärend hinzufügen solltest, dass du die Inhalte der 
ZIP-Datei unter BSD0 freigibst.

Josef G. schrieb:
> Die von Andreas Schweigstill gewählte MIT-Lizenz scheint gegenüber
> der von S.R. vorgeschlagenen BSD0-Lizenz den Vorteil zu haben,
> dass sie die Dokumentation mit einschließt.

Wie wir bereits alle schrieben, die genaue Wahl der Lizenz ist 
scheißegal - es ist nur wichtig, dass du dir für das Projekt eine 
aussuchst und dies auch rechtssicher dokumentierst (d.h. am besten in 
die ZIP-Datei). Sowohl MIT als auch BSD0 sind angemessen.

Die BSD0 ist vergleichsweise jung, daher ist die MIT-Lizenz 
verbreiteter. Beide sind aber offiziell.
OP Persönliche Seite #6688245
Lesenswert?

Habe jetzt die BSD0-Lizenz ins Download-File gepackt.
Den Text auf der Seite Downloads hab ich erst mal so gelassen.

Grund für BSD0 und gegen MIT: Bei MIT wird verlangt, die Software
nur zusammen mit dem ursprünglichen Lizenztext weiterzugeben, wobei
unklar bleibt, wie weit das auch für Bearbeitungen oder Erweiterungen
der Software gilt. Das könnte mögliche Weiterentwickler abschrecken.
(Firma: Schweigstill IT) Persönliche Seite #6688265
Lesenswert?

Josef G. schrieb:
> Grund für BSD0 und gegen MIT: Bei MIT wird verlangt, die Software
> nur zusammen mit dem ursprünglichen Lizenztext weiterzugeben, wobei
> unklar bleibt, wie weit das auch für Bearbeitungen oder Erweiterungen
> der Software gilt. Das könnte mögliche Weiterentwickler abschrecken.

Es ist eher das Gegenteil der Fall, d.h. als Weiterentwickler möchte man 
ja meist auch, dass Lizenzhinweise eben nicht entfernt werden dürfen. 
Nun ja, wenigstens haben wir jetzt nach jahrelanger Diskussion endlich 
eine geeignete Lizenz.
Gast #6693370
Lesenswert?

Jetzt neu im Internet -   https://www.3gapps.de/ironiedetektor -
also muss es wahr sein  ;)

Route_66 H. schrieb:
> Falk B. schrieb:
>> Route_66 H. schrieb:
>>> NIEMAND auf der Welt will Josefs Ideen verwenden, nachnutzen,
>>> weiterentwickeln oder gar vermarkten und zu Geld machen!
>>> Die Frage der Lizenzrechte erübrigt sich von selbst.
>>
>> Na du stellst aber gewagte Thesen auf! ;-)
>
> Gibt es hier irgend einen Anwender dieses absurden Systems?
> Bitte melden!
OP Persönliche Seite #6726018
Lesenswert?

Josef G. schrieb:
> Das Assembler-Mnemonic NON wird ... in Kürze durch NOL ersetzt.

Habe das jetzt so gemacht.

Die Seite Emul.txt im Verzeichnis info des Download-Files
habe ich umbenannt in Soft.txt und stark überarbeitet.

Jetzt findet sich dort auch die Aufteilung der Datei coka.txt,
welche die Software der Hauptplatine des bo8h-Computers enthält,
in Bereiche mit disassemblierbarem Code und Bereiche mit Daten.

Den Assembler für PC und den Disassembler habe ich überarbeitet.
Und es gibt jetzt neu ein Programm mlab, welche die Output-Datei
des Disassemblers bearbeitet und dort alle relativen Adressen
durch Labels ersetzt. Um einen assemblierbaren Text zu erhalten,
sind dann nur noch marginale händische Anpassungen erforderlich.

Für eine effiziente Disassemblierung von coka.txt fehlen
aber noch Informationen zu einer sinnvollen Stückelung.

Als nächstes möchte ich mit Hilfe dieser Programme die Datei
coka.txt in Assembler-Quelltexte und damit in eine leichter
wartbare Form überführen, nachdem es in der Vergangenheit
etliche Änderungen mit Papier und Bleistift gegeben hat.

https://www.bo8h.de/Downloads/
Gast #6727477
Lesenswert?

>hey, soll ich hier zu meiner belustigung auch ein tagebuch meiner ...
Wie sind halt in 2021. Da macht man das.
Andere posten den ganzen Tag Fotos wie sie aussehen, wenn sie gerade 
aufstehen. Wie sie in Unterwäsche im Bad die Zähne putzen.
So ist das eben in der neuen Zeit.


Ich bin eigentlich froh, das Josef hier nur was von FPGAs und komischen 
Zahlensystemen postet.
OP Persönliche Seite #6727753
Lesenswert?

S. R. schrieb:
> Mich interessiert an der Stelle eher die Begründung - wofür stehen die
> Kürzel, warum änderst du es, und warum kann der Assembler nicht beide?

NON : No Operation, N Zyklen. // NOL : No Operation, Lange Dauer.

Das ist ein 2-Byte-Befehl, die Dauer steht im zweiten Byte.

Das neue Mnemonic sticht besser ins Auge, wenn man in
einem Assembler-Listing danach sucht. Und es passt besser
zu den Mnemonics IKL, DKL, IXL, DXL, IYL, DYL, IZL, DZL,
(Inkrementieren/Dekrementieren, Lange Distanz).

Und da nach meiner Kenntnis ohnehin bisher niemand die CPU
verwendet, sehe ich keinen Grund, auf Kompatibilität mit
der bisherigen Festlegung Rücksicht zu nehmen.
Gast #6728028
Lesenswert?

Josef G. schrieb:
> Und da nach meiner Kenntnis ohnehin bisher niemand die CPU
> verwendet, sehe ich keinen Grund, auf Kompatibilität mit
> der bisherigen Festlegung Rücksicht zu nehmen.

Wo du recht hast, hast du recht.
So verhinderst du auch zuverlässig, dass es jemand jemals nutzen könnte.
Gast #6728323
Lesenswert?

MaWin schrieb:
> Josef G. schrieb:
>> Und da nach meiner Kenntnis ohnehin bisher niemand die CPU
>> verwendet, sehe ich keinen Grund, auf Kompatibilität mit
>> der bisherigen Festlegung Rücksicht zu nehmen.
>
> Wo du recht hast, hast du recht.
> So verhinderst du auch zuverlässig, dass es jemand jemals nutzen könnte.

Jein...

Wer sich etwas mit CPU-Geschichte auskennt, weiß, dass es da schon viel 
schlimmere Übergänge gab, z.B. vom 8080 zum Z80. Aufeinmal hatten viele 
alte (und weiterhin auf dem Z80 existierende!) Op-codes "neue" 
Mnemonics:

8080: MOV A,A
Z80:  LD  A,A


Die (gegenüber dem 8080) geänderten Mnemonics haben dem Erfolg des Z80 
keinen Abbruch getan - insofern wird sich diese Änderung bzgl. BO8- 
Popularität wohl auch stark in Grenzen halten ;-)
Gast #6728417
Lesenswert?

Content B. schrieb:
> Cooles Projekt!
Das nunmehr seit fast seit 9J hier rumgeistert.

> Erzähl mal welche Hardware ich da brauche!
Hat Josef alles dokumentiert. Wenn Du Farbenblind bist und auf Schmerzen 
stehst, kannst Du Dir das ja mal alles reinziehen.
Les einfach den ganzen Thread und wenn Du dann noch Lust hast Dich damit 
zu beschäftigen, steigt die Zahl der Anwender spunghaft um 100%, was 
Josef sicher sehr freuen wird.

Aber eigentlich dient dieser Thread seit Jahren nur noch dazu, Häme und 
Spott über Josef auszukübeln oder dem Versuch einzelner Diskussionen mit 
Ihm zu führen, die immer verbissener geführt werden, bis der 
Frustriertere entnervt aufgibt und Josef unbeirrt und stoisch weiter 
sinnlose kleine Änderungen an seinem sinnlosen großen Lebensprojekt 
postet.

Josef sorgt mit regelmäßigen Beiträgen dafür das der Thread oben bleibt, 
was zwar die Aufmerksamkeit derer weckt, die das bisher verschlafen 
haben, ansonsten aber rein garnichts dazu beiträgt das dieses Monstrum 
sich einer irgendwie sinnvoll benutzbaren Form annähert.

Faszinierend finde ich an dem Projekt eigentlich nur noch Josefs 
Frustrationstoleranz und sein zähes festhalten an seinem Weg, gegen 
jeden Rat, gegen jeden gesunden Menschenverstand und obwohl niemand, 
wirklich niemand außer ihm das benutzen will.

Gäbe es die Rubrik 'Psychologie und Verhaltensforschung' auf MC.net, 
wäre dieser Thread dort sicher besser aufgehoben.
Nicht nur Josef betreffend ;-)
(Firma: Schweigstill IT) Persönliche Seite #6728441
Lesenswert?

Michael W. schrieb:
> Wer sich etwas mit CPU-Geschichte auskennt, weiß, dass es da schon viel
> schlimmere Übergänge gab, z.B. vom 8080 zum Z80.

Der 8080/8085 und der Z80 stammen aber von verschiedenen Herstellern. 
Vermutlich musste Zilog auch ein paar Intel-Patente und -Gebrauchsmuster 
(bzw. deren Äquivalente in den anderen Rechtssystemen) umschiffen.
#6728828
Lesenswert?

Andreas S. schrieb:
> Vermutlich musste Zilog auch ein paar Intel-Patente und -Gebrauchsmuster
> (bzw. deren Äquivalente in den anderen Rechtssystemen) umschiffen.

"Because Intel claimed a copyright on their assembly mnemonics, a new 
assembly syntax had to be developed for the Z80." (Wikipedia)

Und so kam die Welt eben zu Ladebefehlen, die speichern. "Move" und 
"Bringe" gab es bereits in dieser Rolle.
Gast #6729170
Lesenswert?

mkn schrieb:
> Faszinierend finde ich an dem Projekt eigentlich nur noch Josefs
> Frustrationstoleranz und sein zähes festhalten an seinem Weg, gegen
> jeden Rat,

Was nicht unbedingt ein schlechter Charakterzug ist. Im Vergleich zu 
vielen anderen (eher langweiligen und wenig kreativen) Hobby-Projekten 
hier (will jetzt keine Beispiele bringen...), ist Josefs Projekt 
wenigstens interessant und originell.

Die Anzahl der "Likes" hier im Forum ist letztlich auch egal, da diese 
"Währung" in erster Linie nur eines dokumentiert: die Anzahl der Freunde 
und Kumpels, die hier ebenfalls einen anonymen Account haben :-) Auch 
die Anzahl der Wortmeldungen sagt nichts über die "Interessantheit" oder 
Originalität des Projektes aus.

<conspiracy_theory status=on>
Einige Leute haben halt einfach "mehr Einfluss, Macht und Freunde" als 
andere - and Control the Narrative.
</conspiracy_theory status=off>

Siehe auch hier:

https://hackaday.com/2021/06/16/the-other-first-computer-konrad-zuse-and-the-z3/#more-480960

Also, Josef, lass Dich nicht entmutigen, und wenn es nur für Dich selbst 
ist - weiter so :-)
OP Persönliche Seite #6729195
Lesenswert?

Michael W. schrieb:
> ...

Was hältst du denn von der Idee eines kleinen Computers für
Hobbyisten mit einem Zeichensatz, welcher neben Buchstaben und
Sonderzeichen einen Satz von sechzehn Ziffern enthält, der aus
den Ziffern 0 bis 9 und sechs weiteren "echten" Ziffern besteht,
welche durch modifizierte Buchstaben A bis F dargestellt werden?

Wäre das nichts für dich, sowas zu bauen?
Gast #6729388
Lesenswert?

Josef G. schrieb:
> Michael W. schrieb:
>> ...
>
> Was hältst du denn von der Idee eines kleinen Computers für
> Hobbyisten mit einem Zeichensatz, welcher neben Buchstaben und
> Sonderzeichen einen Satz von sechzehn Ziffern enthält, der aus
> den Ziffern 0 bis 9 und sechs weiteren "echten" Ziffern besteht,
> welche durch modifizierte Buchstaben A bis F dargestellt werden?
>
> Wäre das nichts für dich, sowas zu bauen?

Also HEX ist ja eigentlich schon mein Ding, allerdings ist mir nicht 
klar warum ich a) nicht die Buchstaben A-F in ihrem normalen Font 
benutzen darf, und b) wenn schon HEX, warum dann überhaupt mehr als 0 
bis F? Ich bin mit dem Zeichensatz glücklich den ich habe ;-) Bild 
anbei.

Ich würde sogar so weit gehen zu behaupten, dass der ECHTE HEXenmeister 
NUR mit 7segment HEX unterwegs sein darf.
Angehängte Dateien:
#6732161
Lesenswert?

Josef G. schrieb:
>> Mich interessiert an der Stelle eher die Begründung - wofür stehen die
>> Kürzel, warum änderst du es, und warum kann der Assembler nicht beide?
>
> NON : No Operation, N Zyklen. // NOL : No Operation, Lange Dauer.
> Das ist ein 2-Byte-Befehl, die Dauer steht im zweiten Byte.
>
> Das neue Mnemonic sticht besser ins Auge, wenn man in
> einem Assembler-Listing danach sucht.

Danke für die Erklärung.
OP Persönliche Seite #6732195
Lesenswert?

Josef G. schrieb:
>
> http://dark.fiftysix.scot/Base-16/
>
> Habe ich gerade gefunden. Das ist die noch im Aufbau befindliche
> Seite eines Studenten, der sich auch für das Hex-System einsetzt
> und über die Bezeichnung 'sedimal' nachdenkt.

Und wieder einen Befürworter des Hex-Systems gefunden:

https://www.heise.de/forum/heise-online/News-Kommentare/Weltraumrecht-Muell-Waffen-Bodenschaetze-im-All-als-weites-Feld-fuer-Juristen/Ich-bin-fuer-ein-Zwang-zum-Metrischen-System/posting-32550386/show/

Solche Leute findet man gelgentlich. Leider sind das Einzelpersonen,
es fehlt eine zentrale Anlaufstelle. Meine Gruppe "Sweet Sixteen"
auf vz.net wäre ein Versuch, eine solche Stelle zu schaffen.
(Firma: Schweigstill IT) Persönliche Seite #6732516
Lesenswert?

Der Begriff "Sweet Sixteen" geht mutmaßlich auf den lettischen 
Steinbildhauer Edvards Liedskalnins zurück, dessen zeitweilige Freundin 
damals sechzehn Jahre als war. Später verwendete er den Begriff zum 
einen für die von ihm erbaute Burg Coral Castle in Florida und zum 
anderen im Zusammenhang mit sehr wirren Theorien zum Thema Magnetismus. 
Er führte sogar die Fertilität von Frauen auf magnetische Effekte 
zurück.

Liedskalnins und Kurt Bindl wären vermutlich beste Freunde geworden und 
auch Mitglieder des "Club 16".
Gast #6744733
Lesenswert?

Josef G. schrieb:
> Und wieder einen Befürworter des Hex-Systems gefunden:

Wow, jetzt seid Ihr schon drei weltweit?
Also könnte man sagen die Zahl der Hex Befürworter hat sich 2021 
weltweit um 50% erhöht?

Noch ein paar Milliarden Jahre, dann seid Ihr die Mehrheit und könnt das 
einführen.
Also nicht aufgeben. Du bist auf einem guten Weg.
OP Persönliche Seite #6744970
Lesenswert?

Die Wichtigkeit der Zahl der Finger für die Auswahl des Zahlensystems
wird überbewertet. Sie hat historisch zweifellos eine Rolle gespielt.
Aber warum muss das auch in Zukunft so sein, wo es heute mathematische
Gesichtspunkte gibt, von denen man in der Vergangenheit nichts wusste?
Und die Tatsache, dass das Thema ohne mein Zutun wieder aufgegriffen
wurde, zeigt ja, dass im Grunde alle hier an das Hexsystem glauben.
(Firma: Schweigstill IT) Persönliche Seite #6744990
Lesenswert?

Josef G. schrieb:
> Die Wichtigkeit der Zahl der Finger für die Auswahl des Zahlensystems
> wird überbewertet.

Nein, die Anzahl der Finger spielt für Menschen eine äußerst wichtige 
Rolle bei der Auswahl des Zahlensystems.

> Sie hat historisch zweifellos eine Rolle gespielt.

Da sich die Anzahl der Finger nicht geändert hat, ist sie immer noch 
relevant.

> Aber warum muss das auch in Zukunft so sein, wo es heute mathematische
> Gesichtspunkte gibt, von denen man in der Vergangenheit nichts wusste?
> Und die Tatsache, dass das Thema ohne mein Zutun wieder aufgegriffen
> wurde, zeigt ja, dass im Grunde alle hier an das Hexsystem glauben.

Nein, hier glaubt hier keiner bzw. kaum einer an die Einführbarkeit des 
Hexadezimalsystems. Natürlich rechne ich insbesondere bei Bitoperationen 
auch in hex, aber trotzdem ist es für den "Normalbürger" nicht 
sonderlich relevant. Heutige Computer (auch Smartphones, usw.) sind 
locker in der Lage, die erforderlichen Darstellungen in beliebigen 
Zahlensystemen vorzunehmen, sogar in dem kruden 12/60er-System für 
Uhrzeiten und Winkel.

Die Einführung des Neugrades mit 100° bzw. 400° für einen Vollkreis ist 
übrigens auch schon mehrmals gescheitert.
OP Persönliche Seite #6745107
Lesenswert?

MaWin schrieb:
> Ich glaube an das Oktalsystem!

Auf meiner Website habe ich dazu geschrieben:
Im Hexadezimalsystem hat man weniger Stellen hinzuschreiben.
Die Quadratwurzel jeder Sechzehner-Potenz ist eine ganze Zahl.
Im Hexadezimalsystem gilt für die Teilbarkeit durch drei die
einfache Quersummenregel, im Oktalsystem die alternierende.
Und hexadezimal gilt  1/3 = 0.555555...,  2/3 = 0.AAAAAA...
Oktal dagegen gilt  1/3 = 0.252525...,  2/3 = 0.525252...

Vorteil von Oktal ist das nicht so umfangreiche Einmaleins.
Ich könnte mich notfalls auch mit Oktal anfreunden. An meinem
8bit-Computer würde das nichts ändern, der Hex-Ziffernsatz
bliebe auch dann sinnvoll. In der derzeitigen Implementierung
hat die Tastatur ohnehin nur acht Zifferntasten für 76543210
mit FEDCBA98 als Shift-Ebene darüber.

Andreas S. schrieb:
> Die Einführung des Neugrades mit 100° bzw. 400° für einen
> Vollkreis ist übrigens auch schon mehrmals gescheitert.

Ich plädiere keineswegs dafür, den Kreis in zB. 256 Hexgrad
zu teilen. Die Maßzahl für den ganzen Kreis sollte wenigstens
einen Faktor drei enthalten. Siehe auch meine Website.
OP Persönliche Seite #6745203
Lesenswert?

Gast #6745311
Lesenswert?

Also im 10er-System kann ich mir mit einem Block-basierten internen, 
visualisierenden Denkschema alle Zahlen und Teilmengen vorstellen - auch 
bei den einfachen Berechnungen.

Geht das auch im 16er-System oder muss man da Quersummen addieren und 
ähnliche Tricks anwenden ? Youtube ist übrigens voll mit Rechentricks 
zur Multiplikation usw.
(Firma: Schweigstill IT) Persönliche Seite #6745422
Lesenswert?

Genau schrieb:
> Also im 10er-System kann ich mir mit einem Block-basierten internen,
> visualisierenden Denkschema alle Zahlen und Teilmengen vorstellen - auch
> bei den einfachen Berechnungen.

Das ist nur eine Frage der frühkindlichen Prägung und Gewöhnung. Wären 
wir an das Oktal- oder Hexadezimalsystem gewöhnt, hätten wir davon eine 
ähnliche Vorstellung.

> Geht das auch im 16er-System oder muss man da Quersummen addieren und
> ähnliche Tricks anwenden ? Youtube ist übrigens voll mit Rechentricks
> zur Multiplikation usw.

Ähnliche Rechentricks usw. gibt es natürlich auch in anderen 
Zahlensystemen. Da sie für die "Alltagsmathematik", d.h. Rechnen, der 
meisten Leute irrelevant sind, wird natürlich weniger daran gearbeitet. 
Außerdem dürfte es auch eine verzerrte Wahrnehmung geben. Bei einem 
Rechentrick im Dezimalsystem denkt man sich eher: "Oh, das ist 
interessant. Diesen Trick sollte ich mir unbedingt merken.". Bei einem 
Rechentrick im z.B. Siebeber- oder Neunundzwanzigersystem denke ich mir 
eher: "Hmm, derjenige hat wohl wirklich nichts Besseres zu tun. Aber 
schön, dass wir seine Professur finanzieren dürfen."
Gast #6745632
Lesenswert?

Josef G. schrieb:
> Man stelle
> sich vor, welche Aufbruchstimmung ein solches Vorhaben erzeugen
> würde.

Mann stelle sich vor, welche Panik ein solches Vorhaben in der 
Bevölkerung erzeugen würde. Schon allein weil 99% der Bevölkerung gar 
nicht verstehen würden, wozu sie da gezwungen werden sollen.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren