Forum: Mikrocontroller und Digitale Elektronik Können "Assembler-Befehlsformate" frei verwendet werden?


von Helfender (Gast)


Lesenswert?

Ich hätte folgende Frage:
Jede Familie von uC hat seine eigenen Befehle/Register.
Die eine Ansammlung von Bits (egal wie lange jetzt genau) bewirken
bei dem einen uC z.B. dass ein Register mit einem Wert geladen wird,
bei einem anderen z.B. einen Sprung.

So gibt es z.B. den 8051 Befehlssatz, x86, amd64, ARM Cortex-Mx,
ARM 64 Bit, Atmel AVR, PIC und wie sie noch alle heissen...

Darf man diese Befehlsformate eigentlich frei verwenden,
sei es jetzt für einen Emulator/Simulator auf einen PC
(oder Linux-/Apple-Derivat), einem selbstgeschriebenen FPGA-Core,
oder was auch immer?

Wenn ich jetzt z.B. QEMU ansehe,
dann sind dort einige Befehlsätze implementiert.
Ist das ein Problem? Wäre es z.B. kommerziell ein Problem?

Oder gibt es Patente auf solche Befehlsformate
und manche sind schon ausgelaufen und können daher frei verwendet 
werden?

Weiß da jemand Bescheid?

von Detlef _. (detlef_a)


Lesenswert?

>>Ist das ein Problem?

Aber ja, auf keinen Fall einen Befehlssatz anschauen. Sonst kommt sofort 
die Befehlssatzpolizei.

SCNR
Cheers
Detlef

von Kein Name (Gast)


Lesenswert?

In grauer Vorzeit gab es mal SSE und 3DNow Befehlssätze.

Soweit ich mit erinnern kann, hat Intel keine Lizenzen für die SSE 
Erweiterungen vergeben. Darauf hin erfand AMD so etwas ähnliches 
inkompatibles.

von Axel S. (a-za-z0-9)


Lesenswert?

Helfender schrieb:

> Darf man diese Befehlsformate eigentlich frei verwenden,
> sei es jetzt für einen Emulator/Simulator auf einen PC
> (oder Linux-/Apple-Derivat), einem selbstgeschriebenen FPGA-Core,
> oder was auch immer?
>
> Wenn ich jetzt z.B. QEMU ansehe,
> dann sind dort einige Befehlsätze implementiert.
> Ist das ein Problem? Wäre es z.B. kommerziell ein Problem?
>
> Oder gibt es Patente auf solche Befehlsformate
> und manche sind schon ausgelaufen und können daher frei verwendet
> werden?
>
> Weiß da jemand Bescheid?

Eine verbindliche oder gar rechtssichere Antwort kann dir hier sicher 
niemand geben. Sogar unter Rechtsanwälten würdest du einen Experten 
brauchen.

Ganz sicher wird es davon abhängen, welchen Befehlssatz genau du für 
welche Anwendung und in welchem Teil der Welt verwenden willst. Ich gehe 
davon aus, daß alles was aus dem US-amerikanischen Raum stammt, ein 
Minenfeld ist. Zum einen weil man da jeden Scheiß schützen kann, zum 
anderen weil es notorisch berüchtigte Gerichte gibt, vor die man dann 
gezerrt würde.

Prinzipiell sollte nichtkommerzieller Einsatz (im deutschen 
Sprachgebrauch ist der korrekte Terminus wohl "nichtgewerblich") 
unproblematisch sein, weil einschlägige Schutzrechte nur für die 
gewerbliche Nuztung gelten. Andererseits sind Gericht manchmal komischer 
Ansicht, was gewerblich ist und was nicht.

In Europa wäre ich recht zuversichtlich, daß Gerichte den bloßen 
Befehlssatz (also den Vorrat von Befehlen und deren binäre Codierung) 
als nicht schutzwürdig ansehen würden. Aber IANAL.


XL

von Reinhard Kern (Gast)


Lesenswert?

Helfender schrieb:
> Oder gibt es Patente auf solche Befehlsformate

So gut wie alle Befehlserweiterungen der X86-Prozessoren sind von Intel 
oder Amd patentiert - deswegen gibt es sie i.A. auch zweimal.

Gruss Reinhard

von Udo S. (urschmitt)


Lesenswert?

Wobei einfache Namen wie "MOVE" "BNE" oder auch normale 
Adressiermethoden nicht patentierbar sein dürften, weil es die alle 
schon lange vorher gegeben hat.
Wenn, dann ist gerade im Fall "Intel Kompatibel"  der Befehlssatz in 
Kombination mit der Hardware (registerdesign) patentiert.
Nimm eine Architektur die über 20 Jahre alt ist dann sind die Patente 
abgelaufen.

Nachtrag: Kann die 68000er empfehlen. Tolles Design und leistungsfähige 
Befehle und Adressierungsarten und einfacher Assembler, hat sich damals 
fast wie eine Hochsprache geschrieben. :-)

von amateur (Gast)


Lesenswert?

Ich kann mir nicht vorstellen, dass jemand für einen ganz normalen 
Begriff wie z.B. move oder Banane einen Schutz beantragen kann. Das 
dahinter stehende Bitmuster ja ist sowieso unterschiedlich. Anders sähe 
das wahrscheinlich aus, wenn jemand "jump-and-feel-good" implementieren 
würde. Das wiederum würde Phantasie erfordern und die ist aus Amerika 
wohl nicht zu erwarten. Wie viele, eher kindliche Begriffe, insbesondere 
im technischen Englisch, beweisen.

von Stilz (Gast)


Lesenswert?

> Wie viele, eher kindliche Begriffe, insbesondere im technischen Englisch, 
beweisen.


Was ich als spezielles Plus dieser Sprache bewerte. Die Begriffe sollten 
leicht assoziierbar sein.

Stack ist nun mal einfacher wie Kellerspeicher.

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

amateur schrieb:
> Ich kann mir nicht vorstellen, dass jemand für einen ganz normalen
> Begriff wie z.B. move oder Banane einen Schutz beantragen kann.

Ach, wenn man sogar "Weltuntergang" als Marke anmelden kann ...

von Detlev T. (detlevt)


Lesenswert?

amateur schrieb:
> Ich kann mir nicht vorstellen, dass jemand für einen ganz normalen
> Begriff wie z.B. move oder Banane einen Schutz beantragen kann.

Das sicher nicht. Ein "move" oder "lda" ist allgemeiner Stand der 
Technik wie ein Auto mit vier Rädern.

Aber was ist z.B. wenn jemand ein Verfahren erfindet mit dem er mit 
wenig Investition in Transistoren sehr effizient Grafikfunktionen in 
Hardware umsetzen kann, die bisher langsam in Software realisiert sind? 
Und diese Maschinenbefehle dessen Bausteine sind?

von Udo S. (urschmitt)


Lesenswert?

Stilz schrieb:
> Stack ist nun mal einfacher wie Kellerspeicher.

Ein alter Hostie?

von Udo S. (urschmitt)


Lesenswert?

Jörg Wunsch schrieb:
> Ach, wenn man sogar "Weltuntergang" als Marke anmelden kann ...

Reden wir jetzt von Patent oder Gebrauchsmusterschutz?
Und Assemblerkommandos kannst du bestimmt nicht als Gebrauchsmuster 
anmelden.
Die Kommandonamen existieren schon deutlich länger als 20 Jahre.

von (prx) A. K. (prx)


Lesenswert?

Pauschal lässt sich das wohl nicht beantworten. Jedenfalls haben sich 
die Chinesen in Unkosten gestürzt und für den in ihren selbst 
konstruierten Godson/Loongson-Prozessoren verwendeten Befehlssatz eigens 
bei MIPS eine Lizenz gekauft. Es gab wohl Probleme mit ein paar 
Befehlen, die sie davor weglassen mussten: 
http://en.wikipedia.org/wiki/Loongson#MIPS_patent_issues

von (prx) A. K. (prx)


Lesenswert?

Udo Schmitt schrieb:
> Die Kommandonamen existieren schon deutlich länger als 20 Jahre.

Kommt drauf an welche. Ausserdem sind nicht nur die Namen relevant, 
sondern auch die Inhalte. Ich wäre kein Bisschen überrascht, wenn im 
SSE-Befehlssatz von x86 diverse Patente vergraben sind.

Es bringt dich ja nicht weiter, wenn du zwar alle Befehle per Namen und 
Bitformat implementieren darfst, aber einige Befehle nicht das tun 
dürfen, was man gemeinhin darunter versteht, weil patentiert.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.