DE19947892A1 - Verfahren zur Umsetzung von Schnittstellendefinitionen und Zwischenformattabelle dafür - Google Patents
Verfahren zur Umsetzung von Schnittstellendefinitionen und Zwischenformattabelle dafürInfo
- Publication number
- DE19947892A1 DE19947892A1 DE19947892A DE19947892A DE19947892A1 DE 19947892 A1 DE19947892 A1 DE 19947892A1 DE 19947892 A DE19947892 A DE 19947892A DE 19947892 A DE19947892 A DE 19947892A DE 19947892 A1 DE19947892 A1 DE 19947892A1
- Authority
- DE
- Germany
- Prior art keywords
- dimension
- interface
- rows
- link
- constant
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/448—Execution paradigms, e.g. implementations of programming paradigms
- G06F9/4488—Object-oriented
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99941—Database schema or data structure
- Y10S707/99943—Generating database or data structure, e.g. via user interface
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
Die Erfindung ist gerichtet auf Verfahren zur Umsetzung von Schnittstellendefinitionen innerhalb von Quellprogrammcode in ein Zwischenformat, die Rückumsetzung in einen Zielprogrammcode aus einer Tabelle und auf die Tabelle selbst. Das Verfahren zur Umsetzung erfolgt mittels einer das Verfahren ausführenden Rechenanlage und hat folgende Schritte: DOLLAR A Identifizieren von zumindest einem Objekt im Quellprogrammcode; DOLLAR A Identifizieren von zumindest einer Schnittstelle bei dem zumindest einen identifizierten Objekt; C: Identifizieren von zumindest einer Verknüpfung (intern oder extern) zwischen Schnittstellen; DOLLAR A Erstellen einer zumindest zweidimensionalen Zwischenformattabelle.
Description
Die vorliegende Erfindung betrifft ein Verfahren zur Umset
zung von Schnittstellendefinitionen innerhalb von Quellpro
grammcode in ein Zwischenformat und aus einer Zwischenfor
mattabelle in Zielprogrammcode sowie eine dafür geeignete
Zwischenformattabelle.
In Programmen werden sogenannte Schnittstellen zum Austausch
von Daten zwischen einzelnen Programmmodulen beziehungsweise
Programmobjekten verwendet. Besonders intensiven Gebrauch von
Schnittstellendefinitionen machen naturgemäß Modellie
rer/Programmierer von Hardware-Beschreibungen. Hierzu werden
spezielle Hardware-Beschreibungssprachen verwendet, die das
Verhalten der einzelnen simulierten Komponenten sowie die
elektrische Verknüpfung der Komponenten miteinander beschrei
ben. Im Bereich der Hardware-Beschreibungssprachen ist es üb
lich, den Programmcode in einen Bereich zu teilen, der der
Definition der Architekturen der Bauteile dient und in einen
zweiten Bereich, der ausschließlich die Schnittstellen zwi
schen den Bauteilen definiert.
Um einen Datenaustausch zwischen verschiedenen Hardware-
Entwicklungsprojekten zu ermöglichen, ist es notwendig, Pro
grammcode von einer Ausgangshardware-Beschreibungssprache in
eine Zielbeschreibungssprache zu übersetzen, so daß diese von
bei einem anderen Projekt verwendeten Hardware-Simulatoren
beziehungsweise Hardware-Syntheseprogrammen bearbeitet werden
kann. Auch bei reinen Softwareprojekten kann eine Übersetzung
zwischen einer Programmiersprache und einer anderen notwendig
sein, beispielsweise um sie auf anderen Hardware-Plattformen
lauffähig zu machen. Typische Beispiele für Hardware-
Beschreibungssprachen, zwischen denen eine Konvertierung er
folgen kann, sind VHDL und VERILOG. Es gibt jedoch auch wei
tere Programmiersprachen im Hardware-Beschreibungsbereich,
zwischen denen eine Konvertierung notwendig sein kann.
Die unmittelbare Umsetzung zwischen Programmiersprachen ist
komplex und fehleranfällig. Es ist daher möglich, daß eine
Zielschnittstellendefinition nicht mehr mit der Ausgangs
schnittstellendefinition übereinstimmt, so daß es zu Fehlern
bei der Hardwaresimulation kommt. Auf Grund der Komplexität
sowohl des Ausgangsprogrammcodes als auch des Zielpro
grammcodes ist eine Verifizierung der Korrektheit der Umset
zung durch einen Fachmann eine ebenfalls schwierige und feh
lerbehaftete Aufgabe. Zudem wird für jedes mögliche Sprachen
paar von Programmiersprachen, zwischen denen eine Umsetzung
erfolgen soll, ein Übersetzungsprogramm benötigt. Bei der
Vielzahl von Programmiersprachen, bei denen Schnittstellende
finitionen eine Rolle spielen, resultiert daraus eine große
Zahl notwendiger Umsetzer hohen Komplexitätsgrads.
Der vorliegenden Erfindung liegt daher die Aufgabe zugrunde,
ein Übersetzungssystem bereitzustellen, das universeller ein
setzbar ist, von seinem Aufbau her weniger komplex, und das
verifizierbare Ergebnisse produziert. Erfindungsgemäß wird
diese Aufgabe gelöst durch das Verfahren zur Umsetzung von
Schnittstellendefinitionen innerhalb von Quellprogrammcode in
ein Zwischenformat gemäß dem unabhängigen Patentanspruch 1,
ein Verfahren zur Umsetzung von Schnittstellendefinitionen
aus einer Zwischenformattabelle in Zielprogrammcode gemäß dem
unabhängigen Patentanspruch 17, sowie eine dafür geeignete
Zwischenformattabelle gemäß dem unabhängigen Patentanspruch
25.
Weitere vorteilhafte Ausgestaltungen, Aspekte und Details der
Erfindung ergeben sich aus den abhängigen Patentansprüchen,
der Beschreibung und den beigefügten Zeichnungen.
In einem Aspekt ist die Erfindung gerichtet auf die Umsetzung
zu und von einem Zwischenformat in einer tabellarischen Form.
Die Umsetzung erfolgt dabei durch ein Programm in einer Da
tenverarbeitungsanlage.
In einem weiteren Aspekt ist die Erfindung gerichtet auf ein
Zwischenformat, das als Bindeglied zwischen verschiedenen Um
setzungssystemen fungiert.
In noch einem Aspekt ist die Erfindung gerichtet auf Umset
zungssysteme, deren Zwischenergebnisse trotz einer Überset
zungsautomatik manuell inspizierbar und änderbar sind.
Die erfindungsgemäßen Verfahren werden in einer Rechenanlage
durchgeführt und die Zwischenformattabelle in einer Rechenan
lage gespeichert, auch wenn diese ausgedruckt bzw. auf einem
Datensichtgerät dargestellt werden kann. Unter einer Rechen
anlage im Sinne der vorliegenden Erfindung ist dabei jede
Einrichtung zu verstehen, die die erfindungsgemäßen Verfahren
ohne menschliche Eingriffe durchführen können (außer zum
Starten der Verfahren) und die Zwischenformattabelle selb
ständig generieren können. Geeignete Rechenanlagen sind zum
Beispiel Personal-Computer, Workstations, Großrechner, Ta
schenrechner etc.
Unter einem Programmcode ist im Sinne der vorliegenden Erfin
dung eine Abfolge von Anweisungen in einer bestimmten Pro
grammiersprache zu verstehen, die in einem funktionellen Zu
sammenhang stehen. Ein Quellprogrammcode im Sinne der vorlie
genden Erfindung ist ein solcher, von dem für eine Umsetzung
in einen anderen Programmcode ausgegangen wird, der dann als
Zielprogrammcode bezeichnet wird.
Ein Objekt des Quellprogrammcodes ist im Sinne der vorliegen
den Erfindung eine im Programmcode enthaltene zusammengehöri
ge Abfolge von Anweisungen in einer Programmiersprache. Bezo
gen auf Hardware-Programmiersprachen kann ein Objekt gleich
gesetzt werden mit der Definition einer Hardwarekomponente.
Bezogen auf solche Programmiersprachen, bei denen Schnitt
stellendefinitionen in einem eigenständigen Teil des Pro
grammcodes erscheinen, kann ein Objekt auch verstanden werden
als die Summe der Schnittstellendefinitionen einer Komponente
der zu simulierenden Hardware.
Unter einer Schnittstelle im Sinne der vorliegenden Erfindung
ist ein Ein- oder Ausgang zu verstehen, über den Daten zwi
schen Objekten hin- und/oder hergeleitet werden, beispiels
weise über globale Variablen oder in einer anderen Weise.
Eine interne Schnittstelle im Sinne der vorliegenden Erfin
dung ist eine solche, die eine Verbindung zwischen zwei Ob
jekten innerhalb eines Programmcodes vornimmt.
Eine externe Schnittstelle im Sinne der vorliegenden Erfin
dung dient der Herstellung einer Verbindung von einem Objekt
innerhalb des Programmcodes mit außerhalb des Programmcodes
liegenden Schnittstellen anderer Objekte, beispielsweise wenn
auf Grund des modularen Aufbaus einer Hardwaresimulation ver
schiedene Teile von Programmcode verwendet werden, die mit
einander über solche externen Schnittstellen verbunden sind.
Schnittstellen können Eingangsschnittstellen oder Ausgangs
schnittstellen sein, je nachdem in welche Richtung die Daten
fließen, wobei es ebenfalls möglich ist, daß eine Schnitt
stelle gleichzeitig beide Funktionen einer Eingangsschnitte
und einer Ausgangsschnittstelle übernimmt. In bestimmten Be
schreibungssprachen ist es auch möglich, Schnittstellen zu
definieren, deren Informationsflußrichtung nicht festgelegt,
das heißt unbestimmt ist.
Eine interne Verknüpfung im Sinne der vorliegenden Erfindung
ist demgemäß die zwischen zwei internen Schnittstellen er
folgte Verbindung. Diese kann bei Hardware-Simulationen auch
als Signal bezeichnet werden und simuliert in der Tat dann
eine elektrische Leitung zwischen zwei Hardwarekomponenten.
Eine externe Verknüpfung ist entsprechend einer Verknüpfung
einer externen Schnittstelle mit einer Schnittstelle, die au
ßerhalb des betrachteten Programmcodes liegt.
Von einer Verknüpfung wird hier in Zusammenhängen gesprochen,
in denen eine interne Verknüpfung und/oder eine externe Ver
knüpfung vorkommen kann.
Die Erfindung ist zunächst gerichtet auf ein Verfahren zur
Umsetzung von Schnittstellendefinitionen innerhalb von Quell
programmcode in ein Zwischenformat mittels einer das Verfah
ren ausführenden Rechenanlage mit folgenden Schritten:
- 1. A Identifizieren von zumindest einem Objekt im Quellpro grammcode;
- 2. B Identifizieren von zumindest einer Schnittstelle bei dem
zumindest einen identifiziertem Objekt;
wobei zumindest eine der identifizierten Schnittstellen eine interne Schnittstelle zur Herstellung einer Verknüpfung von Objekten innerhalb des Quellprogrammcodes und/oder zumindest eine der identifizierten Schnittstellen eine externe Schnitt stelle zur Herstellung einer Verknüpfung von einem Objekt mit außerhalb des Quellprogrammcodes liegenden Schnittstellen sein kann; und
wobei die zumindest eine Schnittstelle eine Eingangs- und/oder eine Ausgangsschnittstelle sein kann; - 3. C Identifizieren von zumindest einer internen Verknüpfung
zwischen zumindest einer Ausgangsschnittstelle und zumindest
einer Eingangsschnittstelle zwischen zumindest zwei Objekten
und/oder
Identifizieren von zumindest einer externen Verknüpfung der zumindest einen externen Schnittstelle; - 4. D Erstellen einer zumindest zweidimensionalen Zwischenfor
mattabelle mit in einer ersten Dimension angeordneten Reihen,
in einer zweiten Dimension angeordneten Reihen und Zellen an
den Kreuzungspunkten der ersten und zweiten Reihen,
wobei Reihen der ersten Dimension Bezeichnungen für jedes des zumindest einen identifizierten Objekts zugewiesen werden;
wobei Reihen der zweiten Dimension Bezeichnungen für jede der zumindest einen identifizierten Verknüpfungen zugewiesen wer den; und
wobei jeweils in diejenigen Zellen, die am Kreuzungspunkt ei ner der Reihen der ersten Dimension mit der Bezeichnung eines identifizierten Objekts und einer der Reihen der zweiten Di mension mit der Bezeichnung einer identifizierten internen Verknüpfung liegen, Bezeichnungen für die zu sowohl dem je weiligen identifizierten Objekt als auch der identifizierten internen Verknüpfung gehörigen Ausgangsschnittstelle und/oder Eingangsschnittstelle eingesetzt werden; und/oder
wobei jeweils in diejenigen Zellen, die am Kreuzungspunkt ei ner der Reihen der ersten Dimension mit der Bezeichnung eines identifizierten Objekts und einer der Reihen der zweiten Di mension mit der Bezeichnung einer identifizierten externen Verknüpfung liegen, Bezeichnungen für die zu sowohl dem je weiligen identifizierten Objekt als auch der identifizierten externen Verknüpfung gehörigen Ausgangsschnittstelle und/oder Eingangsschnittstelle eingesetzt werden.
Unter einer Zuweisung im Sinne der vorliegenden Erfindung ist
hierbei zu verstehen, daß eine Reihe dafür vorgesehen ist,
Informationen über die ihr zugewiesenen Eigenschaften, bei
spielsweise eines Objekts oder einer Verknüpfung, zu enthal
ten, ohne daß notwendigerweise eine der Zellen der Reihe eine
entsprechende Bezeichnung oder Kennzeichnung trägt.
Unter Einsetzen im Sinne der vorliegenden Erfindung wird ver
standen, daß in der Tat eine Angabe, welcher Art auch immer,
in die Zelle einer Reihe oder in die Kreuzungszelle von zwei
Reihen hineingeschrieben werden, so daß die entsprechende
Zelle einen Inhalt hat.
Eine Schnittstelle kann hierbei auch gleichzeitig die Funkti
on einer Eingangs- und Ausgangsschnittstelle haben, oder eine
Schnittstelle unbestimmter Datenflußrichtung sein.
Jede Verknüpfung erhält hierbei eine Reihe der zweiten Dimen
sion zugewiesen, während jedes der identifizierten Objekte im
Quellprogrammcode eine Reihe der ersten Dimension zugewiesen
bekommt, die durch die Zuweisung der Bezeichnung der Verknüp
fung bzw. des Objekts zu der Reihe vorgenommen werden.
Das erfindungsgemäße Verfahren erzeugt also eine Zwischenfor
mattabelle, ähnlich der marktüblicher Tabellenverarbeitungs
programme, bei der einer ersten Dimension, beispielsweise in
Querrichtung, Bezeichnungen für identifizierte Objekte zuge
wiesen werden. Solche Reihen können in diesem Fall als Spal
ten bezeichnet werden. Jede Spalte dient also zur Aufnahme
von Schnittstellendefinitionen eines Objekts. In der zweiten
Dimension, beispielsweise den Zeilen einer Tabelle, werden
die identifizierten Verknüpfungen zwischen den Objekten auf
getragen. Es ergibt sich hierdurch ein im konkreten Fall
zweidimensionales Raster mit Zellen. Unter "Bezeichnungen"
sind hierbei eindeutige Namensgebungen zu verstehen, die der
späteren Wiederauffindung eines Objekts, einer Schnittstelle
oder anderer Elemente dienen. Die Bezeichnungen können in
willkürlich vom Umsetzungsprogramm gewählten Namen bestehen
oder in Numerierungen von 1 bis n für jedes der aufgefundenen
identifizierten Objekte (wenn n die Zahl der insgesamt iden
tifizierten Objekte); oder in einer anderen geeigneten Weise
erfolgen.
Die Tabelle wird in der Rechenanlage in einer elektronischen,
magnetischen, optischen oder sonstigen geeigneten Form in ei
nem geeigneten Format gespeichert. Sie kann auch zur Dokumen
tation auf einem Drucker ausgegeben werden.
Im einfachsten Fall handelt es sich um eine zweidimensionale
Tabelle, die als Zwischenformat gewählt wird. Hiermit kann
man die oben angegebenen Informationen über die Schnittstel
lendefinitionen darstellen und speichern. Es ist jedoch auch
vorstellbar, weitere Informationen über die Schnittstellen zu
gewinnen, beispielsweise über den zu einem Objekt gehörigen
Typ der durch das Objekt simulierten Komponente, wenn es sich
um eine Hardwarebeschreibungssprache handelt. Solche weiteren
Eigenschaften von einzelnen Schnittstellen lassen sich in ei
ner dritten oder weiteren Dimension darstellen.
Die einfachsten Fälle von umsetzbarem Programmcode sind sol
che, bei denen lediglich ein Objekt im Programmcode identifi
ziert werden kann, das über eine oder mehrere externe
Schnittstellen verfügt, sowie Programmcode, der zwei Objekte
aufweist, die miteinander über eine interne Verknüpfung ver
bunden sind. Um diese beiden einfachsten Möglichkeiten umset
zen zu können, ist es notwendig, Alternativen im Verfahren
vorzusehen, die entweder externe oder interne oder beide Ar
ten von Schnittstellen identifizieren können. Auch bei der
Besetzung der Zellen der Tabelle unter Zuweisung der Reihen
müssen beide einfachste Möglichkeiten alternativ und kumula
tiv berücksichtigt werden.
Das erfindungsgemäße Verfahren führt zu einer Zwischenfor
mattabelle, die alle Schnittstellendefinitionen, welche in
einem Programmcode enthalten sind, in einer klar gegliederten
und in einem, weiteren Umsetzungsprogrammen in einheitlicher
Weise zugänglichen, Datenformat enthalten. Durch die zweidi
mensionale Darstellung ist auch die visuelle Inspektion des
erzeugten Zwischenformats und damit die Eingriffmöglichkeit
eines Operators oder Programmierers in einfacherer Weise ge
geben, als dies ohne Zwischenformat oder bei herkömmlicher
Darstellung mit Blockdiagrammen möglich sein würde.
Das Verfahren kann weiter verfeinert werden, wenn zumindest
eine externe Verknüpfung identifiziert worden ist. Vorzugs
weise wird eine erste spezielle Reihe der ersten Dimension
zur Angabe des Modus der externen Schnittstelle bei der zu
mindest einen identifizierten externen Verknüpfung verwendet,
wobei jeweils in diejenigen Zellen, die am Kreuzungspunkt der
ersten speziellen Reihe der ersten Dimension und der Reihen
der zweiten Dimension mit den Bezeichnungen der zumindest ei
nen identifizierten externen Verknüpfung liegen, Angaben über
den Modus der externen Schnittstelle bei der zumindest einen
identifizierten externen Verknüpfung eingesetzt werden.
Das Verfahren kann bezüglich des Modus dadurch gekennzeichnet
sein, daß die externen Schnittstelle eine Eingangsschnitt
stelle, eine Ausgangsschnittstelle, eine bidirektionale
Schnittstelle oder eine Schnittstelle unbestimmter Flußrich
tung sein kann.
Eine solche Angabe kann beispielsweise durch einen Zahlencode
geschehen, wobei 0 eine Eingangsschnittstelle, 1 eine Aus
gangsschnittstelle oder umgekehrt bedeuten kann, oder durch
die Verwendung geeigneter Ausdrücke wie Ein, Aus, Ein/Aus,
"In", "Out" oder "Inout".
Zusätzlich können die Datentypen der zumindest einen identi
fizierten Schnittstelle festgestellt werden, wobei zumindest
einer zweiten speziellen Reihe der ersten Dimension eine An
gabe der Datentypen der zumindest einen identifizierten
Schnittstelle zugewiesen wird und jeweils in diejenigen Zel
len, die am Kreuzungspunkt der zweiten speziellen Reihe und
der Reihen der zweiten Dimension mit den Bezeichnungen der
zumindest einen identifizierten Verknüpfung liegen, Bezeich
nungen für die zu der zumindest einen identifizierten Ver
knüpfung gehörigen Datentypen eingesetzt werden.
Von Datentypen wird in der Datenverarbeitung allgemein ge
sprochen, um zu kennzeichnen, daß Werte von Variablen vom
Compiler oder Interpreter in einer bestimmten Art und Weise
interpretiert werden, um unterschiedliche Arten von Daten be
rücksichtigen zu können. Typische Datentypen sind binäre Da
ten, die nur die Werte 0 und 1 haben können, Integerzahlen,
also ganze Zahlen, Floating-Point-Zahlen, bei denen zumindest
eine Dezimalstelle vorhanden ist, "Character", bei denen
Buchstaben oder Buchstabenfolgen bearbeitet werden etc. Diese
Definition von Datentypen soll auch in der vorliegenden Er
findung verwendet werden. Im allgemeinen muß davon ausgegan
gen werden, daß eine identifizierte Schnittstelle nur einen
Datentyp hat. Bei obiger Formulierung wurde jedoch der Plural
gewählt, da zumeist mehrere identifizierte Schnittstellen
vorhanden sein dürften. Genau wie oben ist auch hier die Be
zeichnung als eine Namensgebung zu verstehen, wobei eine oder
mehrere Namen für die Datentypen eingesetzt werden können.
Auch hier kann die Bezeichnung als Zahlencode angegeben sein,
wobei jede Zahl einen bestimmten Datentyp angeben soll, oder
im Klartext, beispielsweise durch Angabe von "bit", "boole
an", "character", "integer", etc., die unmittelbar in die
Zellen hineingeschrieben werden können.
Ein weiterer, von der Erfindung berücksichtigter Ansatz be
steht darin, die Angabe des Datentyps einer Verknüpfung auch
(oder ausschließlich) als Bestandteil der Bezeichnung einer
Schnittstelle (extern oder intern) zu formulieren. Auf diese
Möglichkeit wird weiter unten eingegangen werden.
Schnittstellendefinitionen, insbesondere in Hardware-
Beschreibungssprachen, können nicht nur die eigentlichen
Schnittstellen, also die Verknüpfungen zwischen Objekten ei
nes Programmcodes und/oder externen Objekten umfassen, son
dern beschreiben auch die Angabe von innerhalb des Pro
grammcodes verwendeten Konstanten, da diese für das Verhalten
von Komponenten maßgeblich sein können, ohne innerhalb der
Komponenten definiert werden zu müssen. Ihr natürlicher Ort
ist daher in der Schnittstellendefinition. Im Sinne der vor
liegenden Erfindung soll also auch die Konvertierung von Kon
stanten als eine Umsetzung von Schnittstellendefinitionen
verstanden werden.
Im Sinne der vorliegenden Erfindung soll unter einer externen
Konstanten eine solche verstanden werden, welche innerhalb
eines Programmcodes zwar deklariert, jedoch nicht notwendi
gerweise definiert, also mit einem Zahlenwert versehen, wird.
Die Einprägung der externen Konstanten mit einem Zahlenwert
erfolgt i.A. von außerhalb des betrachteten Programmcodes
liegenden Programmteilen. Eine solche externe Konstante wird
zum Beispiel in VHDL als eine "generic" bezeichnet. Eine sol
che generic wird innerhalb einer sogenannten "entity" dekla
riert, das heißt jenem Bereich von Programmcode bei VHDL, in
dem Schnittstellen einer Komponente deklariert werden (entity
oder component). Unter einer internen Konstanten wird hinge
gen eine solche verstanden, die innerhalb des Programmcodes
sowohl deklariert als auch definiert werden muß. Von Konstan
ten wird in der vorliegenden Erfindung allgemein gesprochen,
wenn interne und/oder externe Konstanten in Frage kommen.
Daher beinhaltet das erfindungsgemäße Verfahren vorzugsweise,
daß zusätzlich zumindest eine interne Konstante in dem zumin
dest einen identifizierten Objekt und/oder zumindest eine ex
terne Konstante, die von allen Objekten des Quellpro
grammcodes verwendbar ist, identifiziert wird, der Datentyp
der zumindest einen identifizierten internen Konstanten
und/oder externen Konstanten festgestellt wird, zumindest ei
ner dritten speziellen Reihe der ersten Dimension eine Angabe
des Datentyps der zumindest einen Konstanten zugewiesen wird,
zumindest einer ersten speziellen Reihe der zweiten Dimension
Bezeichnungen der zumindest einen identifizierten internen
Konstanten und/oder externen Konstanten zugewiesen werden und
jeweils in diejenigen Zellen, die am Kreuzungspunkt der zu
mindest einen dritten speziellen Reihe und der zumindest ei
nen ersten speziellen Reihe der zweiten Dimension mit Be
zeichnungen der zumindest einen identifizierten Konstanten
liegen, Bezeichnungen für den zu der zumindest einen identi
fizierten Konstanten gehörigen Datentyp eingesetzt werden.
Auch hier wird jeder der identifizierten Konstanten eine der
ersten speziellen Reihen der zweiten Dimension zugewiesen, um
eine eindeutige Zuordnung der in der Tabelle erfassten Größen
zu den Konstanten (wie im übrigen auch den Verknüpfungen)
herstellen zu können.
Auf diese Weise ist es möglich, bei späterer Umsetzung der
Konstanten in einem Zielprogrammcode eine korrekte Konstan
tendefinition und damit korrekte Interpretation eines zur
Konstanten gehörigen Werts zu ermöglichen.
Zur exakten Angabe von Konstanten gehört, sofern das anhand
des vorliegenden Programmcodes möglich ist, sinnvollerweise
auch deren Wert bzw., sofern vorhanden, eine Berechnungsweise
der Konstanten.
Unter einer Berechnungsweise einer Konstanten wird dabei ein
Programmcode verstanden, durch dessen Abarbeitung während des
Programmlaufs der einer Konstanten zuzuweisende Wert ermit
telt wird. Die Berechnung einer Konstanten ist lediglich eine
komplexere Weise, der Konstanten einen Wert zuzuweisen.
Daher ist das Verfahren vorzugsweise auch darauf gerichtet,
daß zusätzlich einen Wert oder eine Berechnungsweise der zu
mindest einen identifizierten Konstanten und/oder externen
Konstanten festgestellt wird; zumindest einer vierten spezi
ellen Reihe der ersten Dimension die Angabe des Werts oder
der Berechnungsweise der zumindest einen Konstanten zugewie
sen wird, und jeweils in diejenigen Zellen, die am Kreuzungs
punkt der zumindest einen vierten speziellen Reihe und den
ersten speziellen Reihen der zweiten Dimension mit Bezeich
nungen der zumindest einen identifizierten Konstanten liegen,
der Wert oder die Berechnungsweise der zumindest einen iden
tifizierten Konstanten eingesetzt wird. Auch hier kann der
Umfang der Zwischenformattabelle vorteilhafterweise dadurch
begrenzt werden, daß die zumindest eine vierte spezielle Rei
he zugleich die zumindest eine erste spezielle Reihe (der er
sten Dimension) ist.
Alternativ können die Angaben über Wert oder Berechnungsweise
einer Konstanten auch am Kreuzungspunkt der, der Konstanten
zugewiesenen, ersten speziellen Reihe mit einer der Reihen
der ersten Dimension mit Bezeichnungen für die identifizier
ten Objekte eingesetzt werden. Auf diese Weise kann eine bes
sere Zuordnung von Konstanten erzielt werden, die nicht in
einem allgemeinen Teil des Quellprogrammcodes definiert wor
den sind, sondern die in einem bestimmten Programmcodeobjekt
definiert werden. Auf diese Weise bleibt die Zuordnung einer
Konstanten zu einem Programmcodeobjekt, in dem sie definiert
worden ist, erhalten.
Neben den Konstanten können auch die identifizierten Verknüp
fungen einen Wert oder eine Berechnungsweise aufweisen, die
diesen am Anfang eines Programmlaufs zugewiesen wird. Daher
ist das erfindungsgemäße Verfahren vorzugsweise dadurch ge
kennzeichnet, daß zusätzlich ein Wert oder eine Berechnungs
weise der zumindest einen identifizierten Verknüpfung festge
stellt wird;
zumindest einer fünften speziellen Reihe der ersten Dimension die Angabe des Werts oder der Berechnungsweise der zumindest einen identifizierten Verknüpfung zugewiesen wird; und
wobei jeweils in diejenigen Zellen, die am Kreuzungspunkt der zumindest einen fünften speziellen Reihe und einer der Reihen der zweiten Dimension mit der Bezeichnung einer identifizier ten internen Verknüpfung und/oder der Reihen der zweiten Di mension mit der Bezeichnung einer identifizierten externen Verknüpfung liegen, der Wert oder die Berechnungsweise der zumindest einen identifizierten Verknüpfung eingesetzt wird.
zumindest einer fünften speziellen Reihe der ersten Dimension die Angabe des Werts oder der Berechnungsweise der zumindest einen identifizierten Verknüpfung zugewiesen wird; und
wobei jeweils in diejenigen Zellen, die am Kreuzungspunkt der zumindest einen fünften speziellen Reihe und einer der Reihen der zweiten Dimension mit der Bezeichnung einer identifizier ten internen Verknüpfung und/oder der Reihen der zweiten Di mension mit der Bezeichnung einer identifizierten externen Verknüpfung liegen, der Wert oder die Berechnungsweise der zumindest einen identifizierten Verknüpfung eingesetzt wird.
Im erfindungsgemäßen Verfahren, wie es bislang definiert und
skizziert worden ist, sind Objekten, Verknüpfungen, Konstan
ten und Schnittstellen Bezeichnungen zugewiesen worden und
diese sind teilweise auch in Zellen eingesetzt worden, ohne
daß angegeben worden ist, wie die Bezeichnungen generiert
werden.
Es ist möglich, daß die Bezeichnungen vom eine Umsetzung vor
nehmenden Programm automatisch nach internen Kriterien zuge
wiesen werden.
Bevorzugt ist allerdings ein Verfahren, das den weiteren
Schritt aufweist:
Identifizieren der Originalbezeichnungen, welche das zumin dest eine Objekt, die zumindest eine Verknüpfung und/oder die zumindest eine Konstante im Quellprogrammcode aufweisen, wo bei speziellen Titelreihen Angaben über die identifizierten Originalbezeichnungen zugewiesen werden, und die Originalbe zeichnungen in Zellen der Titelreihen eingesetzt werden.
Identifizieren der Originalbezeichnungen, welche das zumin dest eine Objekt, die zumindest eine Verknüpfung und/oder die zumindest eine Konstante im Quellprogrammcode aufweisen, wo bei speziellen Titelreihen Angaben über die identifizierten Originalbezeichnungen zugewiesen werden, und die Originalbe zeichnungen in Zellen der Titelreihen eingesetzt werden.
Dieses Einsetzen erfolgt sinnvollerweise natürlich so, daß es
jeweils in die Zellen erfolgt, die am Kreuzungspunkt der Ti
telreihen mit den Objekt-, Verknüpfungs- oder Konstantenrei
hen, die zu dem jeweils bezeichnenden Objekt gehören, er
folgt.
Die Zellen mit den Bezeichnungen der internen Schnittstellen
bzw. der externen Schnittstellen können über eine einfache,
namentliche Identifizierung der Schnittstelle hinaus auch
weitere Informationen über die Schnittstelle enthalten.
Die Bezeichnungen der zumindest einen Schnittstelle können
dementsprechend zusammengesetzt sein aus einem Identifizierer
für die jeweilige Schnittstelle und aus zumindest einer Anga
be, die ausgewählt ist aus einer Kennzeichnung des Modus der
Schnittstelle, des Datentyps der Schnittstelle, eines Vorga
bewerts und der Angabe einer auf die Schnittstelle anzuwen
denden Datentypkonvertierungsfunktion. Auf diese Weise lassen
sich zusätzlich zur namentlichen Identifizierung auch gleich
weitere Informationen über die Schnittstelle der Zwischenfor
mattabelle entnehmen.
Unter einem Identifizierer ist hier eine namentliche Kenn
zeichnung der Schnittstelle, beispielsweise ein willkürlich
zugewiesener Name, eine Nummer oder eine andere, zur Unter
scheidung von anderen Schnittstellen geeignete Namensgebung
zu verstehen.
Der Modus einer Schnittstelle ist, wie oben definiert, eine
Kennzeichnung des Verhaltens der Schnittstelle bezüglich Ein-
und Ausgang von Signalen bzw. Daten. Eine Schnittstelle kann
hierbei einen Modus aufweisen, der sie zur Ausgangs-, zur
Eingangsschnittstelle, zu einer bidirektionalen Schnittstelle
oder zu einer Schnittstelle unbestimmter Flußrichtung macht.
Der Datentyp der Schnittstelle kann mit Bezug auf das oben
Gesagte beispielsweise ein Binärwert, eine Integerzahl o. ä.
sein.
Ein Vorgabewert ist ein Wert, den eine Schnittstelle annehmen
soll, wenn kein anderer Wert definiert worden ist und das
Programm sich im Ausgangszustand befindet.
Eine Datentypkonvertierungsfunktion wird benötigt, wenn zwei
Schnittstellen miteinander verknüpft werden sollen, deren Da
tentypen voneinander abweichen. In einem solchen Fall verwan
delt die Datentypkonvertierungsfunktion das Datum der Aus
gangsschnittstelle in ein Datum, das dem vom Datentyp der
Eingangsschnittstelle entspricht.
Die zusätzlich in der Bezeichnung der Schnittstellen angebba
ren Informationen können einzeln oder zu mehreren angegeben
werden, wobei die einzelnen Angaben voneinander durch bei
spielsweise Kommata oder andere Trennzeichen voneinander ge
trennt werden können oder indem die Repräsentation der Anga
ben in einer anderen, für die automatische Verarbeitung ge
eigneter Form erfolgt.
Entsprechend wie für Objekte, Verknüpfungen oder Konstanten
kann das erfindungsgemäße Verfahren auch den weiteren Schritt
aufweisen:
Identifizieren der Originalbezeichnungen, welche die zumin dest eine Schnittstelle im Quellprogrammcode aufweist;
Verwenden der Originalbezeichnungen als Identifizierer.
Identifizieren der Originalbezeichnungen, welche die zumin dest eine Schnittstelle im Quellprogrammcode aufweist;
Verwenden der Originalbezeichnungen als Identifizierer.
Das erfindungsgemäße Verfahren eignet sich grundsätzlich zur
Umsetzung eines beliebigen Quellprogrammcodes in eine Zwi
schenformattabelle. Besonders bevorzugt ist jedoch der Quell
programmcode einer Hardware-Beschreibungssprache, insbesonde
re bei solchen Hardware-Beschreibungssprachen, bei denen die
Schnittstellendefinitionen als ein eigenständiger Pro
grammcode ausgeführt sind. Bei herkömmlichen Programmierspra
chen oder bei Hardware-Beschreibungssprachen, bei denen eine
solche Trennung nicht erfolgt, ist die Anwendung des erfin
dungsgemäßen Verfahrens grundsätzlich möglich. Es wächst je
doch der Komplexitätsgrad bei der Analyse des Quellpro
grammcodes. Demgemäß ist ein Objekt vorzugsweise eine
Schnittstelleninstanz eines elektronischen Bauteils, das die
ses repräsentiert. Weiterhin repräsentiert die zumindest eine
interne Verknüpfung ein Signal, das zwischen zwei elektroni
schen Bauteilen gegeben wird. Die zumindest eine externe Ver
knüpfung kann vorzugsweise einen sogenannten Port repräsen
tieren.
Das bislang beschriebene Verfahren zur Umsetzung von Schnitt
stellendefinitionen führt zu einer Zwischenformattabelle,
welche in der Regel lediglich Informationen über eine Ebene
eines Quellprogrammcodes enthalten kann, das heißt über ein
ander nebengeordnete Objekte, die beispielsweise als neben
läufige Prozesse in einer Hardwaresimulation virtuell gleich
zeitig ausgeführt werden. Ein Quellprogrammcode kann jedoch
auch einen höheren Komplexitätsgrad erreichen, indem mittels
Verzweigungen oder anderer Referenzen der Code verschachtelt,
beziehungsweise in verschiedene Ebenen gegliedert worden ist.
Ein bereits genanntes Beispiel ist die Referenz auf Daten
typkonvertierungsfunktionen als Teil der Bezeichnung von
Schnittstellen, die bereits auf Programmcode außerhalb der
eigentlichen Schnittstellendefinition verweisen kann. Des
weiteren ist es möglich, daß Objekte im Quellprogrammcode
wiederum durch Quellprogrammcode definiert worden sind, der
separat von diesem gehalten wird.
Um das erfindungsgemäße Verfahren und die resultierenden Zwi
schenformattabellen auch für solche Verweise zugänglich zu
machen, kann das erfindungsgemäße Verfahren vorzugsweise da
durch gekennzeichnet sein, daß zumindest eines der identifi
zierten Objekte in sich einen Subquellprogrammcode enthält,
der ebenfalls in ein Zwischenformat umgesetzt werden kann,
und daß nach erfolgter Umsetzung eines Subquellprogrammcodes
in eine Subformattabelle ein Verweis auf die Subformattabelle
in eine Zelle der zum umgesetzten Objekt gehörigen Reihe der
ersten Dimension eingesetzt wird. Hierfür kann eine beliebige
Zelle verwendet werden, der noch keine andere Funktion zuge
wiesen ist, oder es werden entsprechend in der anderen Dimen
sion Reihen angehängt, so daß sich weitere Zellen ergeben,
die für diesen Zweck genutzt werden können.
Auch kann das erfindungsgemäße Verfahren so modifiziert wer
den, daß ein Verweis auf zumindest ein als Quellprogrammcode
als separate Einheit gespeichertes, identifiziertes Objekt in
eine Zelle der zum gespeicherten Objekt gehörenden Reihe der
ersten Dimension eingesetzt wird. Hier wird also der Bereich
der reinen Schnittstellendefinitionen verlassen, indem ein
unmittelbarer Bezug zum Quellprogrammcode hergestellt wird.
Dieser Verweis kann nützlich sein, wenn bei der Weiterver
wandlung in den Zielprogrammcode nicht nur die Schnittstel
lendefinitionen vom Umformatierungsprogramm umgesetzt werden,
sondern auch der die Objekte realisierende Programmcode. In
diesem Fall kann das Programm durch die oben angegebenen Ver
weise einen unmittelbaren Zusammenhang zwischen den Schnitt
stellendefinitionen eines Objekts und seiner Funktionalität
herstellen.
Um die Dimension der Zwischenformattabelle kompakt zu halten,
kann es bevorzugt sein, bestimmte Reihen miteinander zu kom
binieren, so daß anstelle von zwei Reihen nur noch eine ver
wendet werden muß. Diese Bündelung ist dort möglich, wo je
weils eine Reihe einer Dimension nur an solchen Zellen Ein
träge aufweisen, bei denen bei der anderen zu bündelnden Rei
he keine Zellen mit Werten erscheinen. So bietet es sich bei
spielsweise an, daß die zumindest eine dritte spezielle Reihe
zugleich die zumindest eine zweite spezielle Reihe ist. Es
wird in diesem Fall also eine Reihe der ersten Dimension ver
wendet, um darin unterschiedliche Größen unterzubringen. Dies
kann geschehen, indem die Reihe unterteilt wird, so daß bei
spielsweise zwei verschiedene untereinander stehende Bereiche
der Reihe die unterschiedlichen Funktionen erfüllen, bezie
hungsweise im Falle einer Nebeneinanderreihung der einzelnen
Zellen nebeneinanderliegende Bereiche der Reihe. Weitere Bei
spiele für eine Bündelung sind die Kombination der vierten
speziellen Reihe mit der ersten speziellen Reihe oder der
vierten speziellen Reihe mit der fünften speziellen Reihe.
Nach erfindungsgemäßer Umsetzung der Schnittstellendefinitio
nen eines Quellprogrammcodes in eine Zwischenformattabelle
liegt eine solche Tabelle in der Rechenanlage vor, die nach
Ausdruck oder durch Anzeige an einem Datensichtgerät einfach
zu lesen, visuell zu inspizieren, gegebenenfalls durch Ein
griff eines Programmierers händisch korrigier- oder abänder
bar ist und die erfindungsgemäß als Ausgangsbasis für eine
Schnittstellendefinition eines Zielprogrammcodes dienen kann.
Bezüglich der Vorteile, Effekte und Aspekte des Verfahrens
zur Umsetzung einer Zwischenformattabelle in einen Zielpro
grammcode wird auf das oben Gesagte verwiesen und vollinhalt
lich Bezug genommen.
Demgemäß ist die Erfindung ebenfalls gerichtet auf ein Ver
fahren zur Umsetzung von Schnittstellendefinitionen aus einer
solchen zumindest zweidimensionalen Zwischenformattabelle mit
in einer ersten Dimension angeordneten ersten Reihen, in ei
ner zweiten Dimension angeordneten zweiten Reihen und Zellen
an den Kreuzungspunkten der ersten und zweiten Reihen, bei
der Reihen der ersten Dimension Bezeichnungen für zumindest
ein Objekt zugewiesen sind, bei der Reihen der zweiten Dimen
sion Bezeichnungen für zumindest eine interne Verknüpfung
zwischen den Objekten und/oder zumindest eine externe Ver
knüpfung eines Objekts zugewiesen sind, und bei der jeweils
in diejenigen Zellen, die am Kreuzungspunkt einer der Reihen
der ersten Dimension mit der Bezeichnung eines Objekt und ei
ner der Reihen der zweiten Dimension mit der Bezeichnung ei
ner internen Verknüpfung liegen, Bezeichnungen für eine zu
sowohl dem jeweiligen Objekt als auch der Verknüpfung gehöri
gen internen Ausgangsschnittstelle und/oder internen Ein
gangsschnittstelle eingesetzt sind und/oder bei der jeweils
in diejenigen Zellen, die am Kreuzungspunkt einer der Reihen
der ersten Dimension mit der Bezeichnung eines Objekts und
einer der Reihen der zweiten Dimension mit der Bezeichnung
einer externen Verknüpfung liegen, Bezeichnungen für die zu
sowohl dem jeweiligen Objekt als auch der externen Verknüp
fung gehörigen externen Ausgangsschnittstelle und/oder exter
nen Eingangsschnittstelle eingesetzt sind, mittels einer das
Verfahren ausführenden Rechenanlage in einen Zielprogrammcode
mit den nachfolgend beschriebenen Schritten.
Durch die obige Definition wird eine elementare Zwischenfor
mattabelle spezifiziert. Dieses erfindungsgemäße Verfahren
weist folgende Schritte auf:
Erstellen von zumindest einem Programmcode-Objekt anhand der in der Zwischenformattabelle enthaltenen Informationen über das zumindest eine Objekt;
Zuweisen von zugehörigen internen Ausgangsschnittstellen und/oder internen Eingangsschnittstellen zu ihren Pro grammcode-Objekten;
Erstellen zumindest einer Verknüpfung zwischen Programmcode- Objekten anhand der in der Zwischenformattabelle enthaltenen Informationen über die internen Verknüpfungen der internen Eingangsschnittstellen und internen Ausgangsschnittstellen; und/oder
Zuweisen von zugehörigen externen Ausgangsschnittstellen und/oder externen Eingangsschnittstellen zu ihren Pro grammcode-Objekten.
Erstellen von zumindest einem Programmcode-Objekt anhand der in der Zwischenformattabelle enthaltenen Informationen über das zumindest eine Objekt;
Zuweisen von zugehörigen internen Ausgangsschnittstellen und/oder internen Eingangsschnittstellen zu ihren Pro grammcode-Objekten;
Erstellen zumindest einer Verknüpfung zwischen Programmcode- Objekten anhand der in der Zwischenformattabelle enthaltenen Informationen über die internen Verknüpfungen der internen Eingangsschnittstellen und internen Ausgangsschnittstellen; und/oder
Zuweisen von zugehörigen externen Ausgangsschnittstellen und/oder externen Eingangsschnittstellen zu ihren Pro grammcode-Objekten.
Unter einem Programmcode-Objekt im Sinne der vorliegenden Er
findung ist ein Objekt, geschrieben in einem Programmcode, zu
verstehen, das als Teil des Zielprogrammcodes durch das er
findungsgemäße Verfahren generiert wird.
Wie schon beim erfindungsgemäßen Verfahren zur Umsetzung von
Schnittstellendefinitionen im Rahmen von Quellprogrammcodes
in ein Zwischenformat ist auch bei diesem erfindungsgemäßen
Verfahren dem Fachmann geläufig, wie er die in der Zwischen
formattabelle enthaltenen Informationen so exzerpieren kann,
daß ein Umsetzen in einen Zielprogrammcode möglich ist.
Beispielsweise kann das dafür geeignete automatische Programm
zunächst in den Reihen der ersten Dimension anhand der vorge
gebenen Bezeichnungen die einzelnen definierten Objekte er
mitteln und dann innerhalb der Reihen Konstanten sowie inter
ne und externe Verknüpfungen ermitteln und diesen die an den
Kreuzungspunkten genannten Schnittstellen zuweisen.
Vorzugsweise ist zumindest einer zweiten speziellen Reihe der
ersten Dimension der Zwischenformattabelle eine Angabe der
Datentypen der zumindest einen Schnittstelle zugewiesen und
sind jeweils in diejenigen Zellen, die am Kreuzungspunkt der
zweiten speziellen Reihe und Reihen der zweiten Dimension mit
den Bezeichnungen der zumindest einen Verknüpfung liegen, Be
zeichnungen für die zur zumindest einen Verknüpfung gehörigen
Datentypen eingesetzt sind, wobei diese Weiterentwicklung den
weiteren Schritt aufweist: Definieren der Datentypen der dem
zumindest einen Programmcode-Objekt zugewiesenen zu der zu
mindest einen Verknüpfung gehörigen zumindest einen Schnitt
stelle.
Wie oben erläutert, ist unter einer Schnittstellendefinition
im Sinne der vorliegenden Erfindung auch die Definition von
Konstanten, die von verschiedenen Objekten verwendet werden,
zu verstehen. Daher kann das erfindungsgemäße Verfahren vor
zugsweise dadurch gekennzeichnet sein, daß zumindest einer
dritten speziellen Reihe der ersten Dimension der Zwischen
formattabelle eine Angabe der Datentypen von zumindest einer
Konstanten in zumindest einem Objekt und/oder zumindest einer
externen Konstanten, die von allen Objekten verwendbar ist,
zugewiesen ist, zumindest einer ersten speziellen Reihe der
zweiten Dimension Bezeichnungen der zumindest einen Konstan
ten und/oder zumindest einen externen Konstanten zugewiesen
sind und jeweils in diejenigen Zellen, die am Kreuzungspunkt
der zumindest einen dritten speziellen Reihe und der zumin
dest einen ersten speziellen Reihe der zweiten Dimension mit
Bezeichnungen der zumindest einen Konstanten liegen, Bezeich
nungen für die zu der zumindest einen Konstanten gehörigen
Datentypen eingesetzt werden; mit dem weiteren Schritt: Defi
nieren von zumindest einer internen Konstante und/oder von
zumindest einer externen Konstante in dem zumindest einen
Programmcode-Objekt und/oder in einem allgemeinen Teil des
Zielprogrammcodes.
Weiterhin können zumindest einer vierten speziellen Reihe der
ersten Dimension der Zwischenformattabelle Angaben über einen
Wert oder eine Berechnungsweise der zumindest einen internen
Konstanten und/oder der zumindest einen externen Konstanten
zugewiesen sein und jeweils in diejenigen Zellen, die am
Kreuzungspunkt der vierten speziellen Reihe mit den ersten
speziellen Reihen der zweiten Dimension mit Bezeichnungen der
zumindest einen Konstanten liegen, der Wert oder die Berech
nungsweise der zumindest einen Konstanten eingesetzt sein,
wobei diese Weiterentwicklung den weiteren Schritt aufweist:
Zuweisen des Werts oder der Berechnungsweise der zumindest
einen Konstanten zu der zumindest einen im Programmcode defi
nierten Konstanten.
Das erfindungsgemäße Verfahren kann weiterhin dadurch gekenn
zeichnet sein, daß zumindest einer fünften speziellen Reihe
der ersten Dimension der Zwischenformattabelle eine Angabe
über den Wert oder die Berechnungsweise der zumindest einen
Verknüpfung zugewiesen ist; und jeweils in diejenigen Zellen,
die am Kreuzungspunkt der zumindest einen fünften speziellen
Reihe und einer der Reihen der zweiten Dimension mit der Be
zeichnung einer internen Verknüpfung und/oder der Reihen der
zweiten Dimension mit der Bezeichnung einer externen Verknüp
fung liegen, der Wert oder die Berechnungsweise der zumindest
einen Verknüpfung eingesetzt ist;
mit dem weiteren Schritt:
mit dem weiteren Schritt:
- - Zuweisen des Werts oder der Berechnungsweise der zumindest einen Verknüpfung zu der im Zielprogrammcode erstellten Ver knüpfung.
Weiterhin können vorzugsweise speziellen Titelreihen der Zwi
schenformattabelle Angaben über die Bezeichnungen des zumin
dest einen Objekts der zumindest einen Verknüpfung und/oder
der zumindest einen Konstanten zugewiesen sein, wobei die Be
zeichnungen in Zellen der Titelreihen eingesetzt sind und das
Verfahren den weiteren Schritt aufweist: Benennen des zumin
dest einen Programmcode-Objekts, der zumindest einen Verknüp
fung und/oder der zumindest einen Konstanten anhand der Be
zeichnungen in den Zellen der Titelreihen der Zwischenfor
mattabelle.
Somit erhalten die entsprechenden Objekte, Verknüpfungen
und/oder Konstanten im Zielprogrammcode die gleichen Bezeich
nungen, die sie bereits im Quellprogrammcode vor Umsetzung in
eine Zwischenformattabelle hatten.
Das erfindungsgemäße Verfahren kann weiterhin dadurch gekenn
zeichnet sein, daß zumindest in eine Zelle einer zu einem Ob
jekt gehörenden Reihe der ersten Dimension ein Verweis auf
eine Subformattabelle eingesetzt ist, mit dem weiteren
Schritt: Verbinden des aus dem Objekt erzeugten Programmcode-
Objekts mit aus der Subformattabelle erzeugten Subpro
grammcode.
Das Verfahren kann auch dadurch gekennzeichnet sein, daß zu
mindest in eine Zelle der zu einem Objekt gehörenden Reihe
der ersten Dimension ein Verweis auf als separate Einheit ge
speicherten Quellprogrammcode eingesetzt ist, mit dem weite
ren Schritt: Verbinden des aus dem zumindest einen Objekt er
zeugten Programmcodeobjekts mit dem als separate Einheit ge
speicherten Quellprogrammcode.
Wie bereits in Bezug auf das Verfahren zur Umsetzung von Pro
grammcode in eine Zwischenformattabelle ausgeführt, kann es
sinnvoll sein, um die Dimension der Zwischenformattabelle
kompakt zu halten, bestimmte Reihen miteinander zu kombinie
ren, so daß anstelle von zwei Reihen nur noch eine verwendet
werden muß. Auch diese Bündelung kann bei der Umsetzung in
einen Zielprogrammcode berücksichtigt werden.
Zur vorliegenden Erfindung gehören nicht nur die Verfahren
zur Umsetzung von Programmcode, sondern auch die spezifische
Ausgestaltung der Zwischenformattabelle. Beispielsweise ent
halten die Reihen der Tabelle alle Signale und Konstanten der
Architektur und alle Ports und Generics der Entity, sofern es
sich um Repräsentationen in einer Hardware-
Beschreibungssprache handelt. In den Reihen der verbleibenden
Dimension sind die nebenläufigen Statements, wie beispiels
weise Komponenten-Instantiation, Prozeß, konkurrierende Si
gnalzuweisung etc. aufgelistet. Die Zwischenformattabelle
zeigt übersichtlich, welche Komponenten mit welchen Signalen
von welchem Typ verbunden sind und wie die Signalflußrichtung
ist. Andererseits kann mit einem Blick festgestellt werden,
welche Komponente mit einem bestimmten Signal verbunden ist,
das heißt wer das Signal generiert und wer es einliest. Be
züglich der Vorteile, Effekte und Aspekte der Zwischenfor
mattabelle der vorliegenden Erfindung wird auf das oben ge
sagte verwiesen und vollinhaltlich Bezug genommen.
Demzufolge ist die Erfindung auch gerichtet auf eine Zwi
schenformattabelle zur Speicherung von in einem Programmcode
enthaltenen Schnittstelleninformationen in einer Rechenanlage
mit zumindest zwei Dimensionen; mit in einer ersten Dimension
angeordneten Reihen, in einem zweiten Dimension angeordneten
Reihen und Zellen an den Kreuzungspunkten; wobei Reihen der
ersten Dimension Bezeichnungen für zumindest ein Objekt in
dem Programmcode zugewiesen sind, wobei Reihen der zweiten
Dimension Bezeichnungen für zumindest eine interne Verknüp
fung zwischen Objekten und/oder Bezeichnungen für zumindest
eine externe Verknüpfung des Programmcodes zugewiesen sind
und wobei jeweils in diejenigen Zellen, die am Kreuzungspunkt
einer der Reihen der ersten Dimension mit der Bezeichnung ei
nes Objekts und einer der Reihen der zweiten Dimension mit
der Bezeichnung einer internen Verknüpfung liegen, Bezeich
nungen für eine zu sowohl dem jeweiligen Objekt als auch der
internen Verknüpfung gehörigen Ausgangsschnittstelle und/oder
Eingangsschnittstelle eingesetzt sind und/oder jeweils in
diejenigen Zellen, die am Kreuzungspunkt einer der Reihen der
ersten Dimension mit der Bezeichnung eines Objekts und einer
der Reihen der zweiten Dimension mit der Bezeichnung einer
externen Verknüpfung liegen, Bezeichnungen für die zu sowohl
dem jeweiligen Objekt als auch der externen Verknüpfung gehö
rigen Ausgangsschnittstelle und/oder Eingangsschnittstelle
eingesetzt sind.
Vorzugsweise ist eine erste spezielle Reihe der ersten Dimen
sion zur Angabe des Modus einer externen Schnittstelle bei
der zumindest einen externen Verknüpfung verwendet. Dabei
sind jeweils in diejenigen Zellen, die am Kreuzungspunkt der
ersten speziellen Reihe der ersten Dimension und der Reihen
der zweiten Dimension mit den Bezeichnungen der zumindest ei
nen externen Verknüpfung liegen, Angaben über den Modus der
externen Schnittstelle bei der zumindest einen externen Ver
knüpfung eingesetzt. Wie bereits oben gilt auch hier, daß ei
ne Schnittstelle eine Eingangs-, eine Ausgangsschnittstelle,
eine bidirektionale Schnittstelle oder eine Schnittstelle un
bestimmter Flußrichtung sein kann.
Weiterhin kann in der Zwischenformattabelle zumindest einer
zweiten speziellen Reihe der ersten Dimension eine Angabe der
Datentypen der zumindest einen Schnittstelle zugewiesen sein
und jeweils in diejenigen Zellen, die am Kreuzungspunkt der
zweiten speziellen Reihe und der Reihen der zweiten Dimension
mit den Bezeichnungen der zumindest einen Verknüpfung liegen,
Bezeichnungen für die zu der zumindest einen Verknüpfung ge
hörigen Datentypen eingesetzt sein. Unter einer Verknüpfung
sind hier sowohl interne als auch externe Verknüpfungen sub
sumiert.
Weiterhin enthält die Zwischenformattabelle vorzugsweise zu
mindest eine dritte spezielle Reihe der ersten Dimension, der
eine Angabe der Datentypen zumindest einer internen Konstan
ten und/oder zumindest einer externen Konstanten aus dem Pro
grammcode zugewiesen ist, erste spezielle Reihen der zweiten
Dimension, der Bezeichnungen der zumindest einen internen
Konstanten und/oder der zumindest einen externen Konstanten
zugewiesen sind, wobei jeweils in diejenigen Zellen, die am
Kreuzungspunkt der dritten speziellen Reihe und der ersten
speziellen Reihen der zweiten Dimension mit Bezeichnungen der
zumindest einen Konstanten liegen, Bezeichnungen für die zu
der zumindest einen Konstanten gehörigen Datentypen einge
setzt sind. Auch hier gilt vorzugsweise, daß die zumindest
eine dritte spezielle Reihe zugleich die zumindest eine spe
zielle zweite Reihe ist.
In der Zwischenformattabelle kann weiterhin zumindest einer
vierten speziellen Reihe der ersten Dimension die Angabe ei
nes Werts oder einer Berechnungsweise der zumindest einen
Konstanten zugewiesen sein und können jeweils in die diejeni
gen Zellen, die am Kreuzungspunkt der zumindest einen vierten
speziellen Reihe und der ersten speziellen Reihe der zweiten
Dimension mit Bezeichnungen der zumindest einen Konstanten
liegen, der Wert oder die Berechnungsweise der zumindest ei
nen Konstanten eingesetzt sein.
Die erfindungsgemäße Zwischenformattabelle kann dadurch ge
kennzeichnet sein, daß zumindest einer fünften speziellen
Reihe der ersten Dimension die Angabe eines Werts oder einer
Berechnungsweise der zumindest einen Verknüpfung zugewiesen
ist; und
jeweils in diejenigen Zellen, die am Kreuzungspunkt der zu mindest einen fünften speziellen Reihe und einer der Reihen der zweiten Dimension mit der Bezeichnung einer internen Ver knüpfung und/oder der Reihen der zweiten Dimension mit der Bezeichnung einer externen Verknüpfung liegen, der Wert oder die Berechnungsweise der zumindest einen Verknüpfung einge setzt ist.
jeweils in diejenigen Zellen, die am Kreuzungspunkt der zu mindest einen fünften speziellen Reihe und einer der Reihen der zweiten Dimension mit der Bezeichnung einer internen Ver knüpfung und/oder der Reihen der zweiten Dimension mit der Bezeichnung einer externen Verknüpfung liegen, der Wert oder die Berechnungsweise der zumindest einen Verknüpfung einge setzt ist.
Auch für die erfindungsgemäße Zwischenformattabelle gilt, daß
speziellen Titelreihen Angaben über die Originalbezeichnungen
zugewiesen sein können, welche das zumindest eine Objekt, die
zumindest eine Verknüpfung und/oder die zumindest eine Kon
stante im Programmcode aufweisen, und die Originalbezeichnun
gen in Zellen der Titelreihen eingesetzt sind.
Unter Programmcode ist hier ein Quellprogrammcode zu verste
hen, der mit der Zwischenformattabelle dadurch korreliert
ist, daß sie aus ihm generiert worden ist. Auch können die
Bezeichnungen der zumindest einen Eingangsschnittstelle
und/oder der zumindest einen Ausgangsschnittstelle zusammen
gesetzt sein aus einem Identifizierer für die jeweilige
Schnittstelle und aus zumindest einer Angabe, die ausgewählt
ist aus einer Kennzeichnung des Modus der Schnittstelle, des
Datentyps der Schnittstelle, eines Vorgabewerts und der Anga
be einer auf die Schnittstelle anzuwendenden Datentypkonver
tierungsfunktion.
Die erfindungsgemäße Zwischenformattabelle kann weitere In
formationen enthalten. So ist es üblich, bei Hardwarebe
schreibungssprachen Kommentare zu verwenden, um Sachverhalte
zu erläutern, aber auch, um Analysewerkzeugen oder Synthese
programmen Anweisungen zu übermitteln die außerhalb des ei
gentlichen Programmcodes liegen (sog. Pragmas) und für die in
der verwendeten Programmiersprache keine Konstrukte vorgese
hen sind. Auch Informationen über das Zeitverhalten eines
Programmes, das ebenfalls nur in Kommentarform im Pro
grammcode vorkommen kann, kann auf diese Weise mit umgesetzt
oder von entsprechenden Werkzeugen verwendet werden. Das die
Zwischenformattabelle erzeugende Umsetzungsprogramm kann zu
dem weitere Informationen hinzufügen, die sich durch die Ana
lyse des Ausgangsprogrammcodes ergeben haben und die helfen
können, Ambiguitäten in der Zwischenformattabelle aufzulösen.
Solche und andere Informationen können auch vom Umsetzungs
programm, welches die Zwischenformattabelle in Programmcode
rückverwandelt, als Anweisungen zur Steuerung der Umsetzungs
abläufe verwendet werden. Auch die Verwendung solcher Infor
mationen duch einen Anwender ist denkbar. Im folgenden werden
alle oben dargestellten Informationen als Annotationen be
zeichnet.
Die erfindungsgemäße Zwischenformattabelle kann daher dadurch
gekennzeichnet sein, daß beliebige Zellen der Zwischenfor
mattabelle Annotationen enthalten können, welche der Steue
rung von Programmen zu Analyse der in der Zwischenformatta
belle enthaltenen Informationen und/oder zur Information ei
nes Anwenders dienen können.
Die praktische Umsetzung von Annotationen kann dadurch er
reicht werden, daß zumindest eine weitere Dimension der Zwi
schenformattabelle den Annotationen zugeordnet ist, wobei
Reihen der weiteren Dimension bestimmte Typen von Annotatio
nen zugewiesen sind und eine einzusetzende Annotation an den
Kreuzungspunkten der Reihen der ersten und der zweiten Dimen
sionen, die für die Annotation maßgeblich sind, mit der Reihe
der weiteren Dimension, die dem einzusetzenden Typ von Anno
tation zugewiesen ist, die Annotation eingesetzt wird.
Die erfindungsgemäße Zwischenformattabelle kann entweder bei
ihrer Erzeugung oder im späteren Verlauf der Bearbeitung in
vielfältiger Weise modifiziert werden. Zur Steigerung der
Übersichtlichkeit können Signale beziehungsweise Verknüpfun
gen zu Gruppen zusammengefaßt werden, die immer in der glei
chen Weise an den Schnittstellen der Objekte (z. B. nebenläu
figen Blöcke) verwendet werden. Für diese Signalgruppen, so
genannte "bundles" gibt es beispielsweise in einer Hardware-
Programmiersprache, wie VHDL, keine Entsprechung, so daß von
einer VHDL-Beschreibung entsprechend abstrahiert werden könn
te. Auch sogenannte Concurrent Statements (die alternativ zum
Einsatz kommen) könnten in eine gemeinsame Spalte gruppiert
werden. Bei Verwendung von VHDL entspricht dies einem soge
nannten Block.
Durch interaktives Umsortieren von Reihen der ersten Dimensi
on und Reihen der zweiten Dimension kann die Nutzbarkeit der
Tabelle weiter erhöht werden, beispielsweise können nach der
Selektion einer Reihe der zweiten Dimension die zugehörigen
Spalten direkt benachbart angeordnet werden, um die Verbin
dungen des selektierten Objekts besser analysieren zu können.
Auch weitere Sortierkriterien sind auf eine erfindungsgemäße
Zwischenformattabelle anwendbar, beispielsweise eine alphabe
tische Anordnung, eine Anordnung, die nach einem Präfix oder
einem Postfix sortiert ist, eine Anordnung nach der Betriebs
art der externen Verknüpfungen, eine Anordnung nach dem ver
wendeten Datentyp der Verknüpfung oder einer Reihenfolge wie
sie im Originalquellprogrammcode vorgekommen ist. Daher ist
es möglich, bei der erfindungsgemäßen Tabelle Reihen interak
tiv ausblenden zu lassen, um die Übersichtlichkeit zu erhö
hen.
In der Zwischenformattabelle können auch Manipulationen vor
genommen werden, die zu einer Codetransformation bei der spä
teren Umsetzung in einen Zielprogrammcode führen würden. Bei
spiele für solche Transformationen können sein:
Gruppieren, das heißt Erzeugen einer neuen Tabelle mit grup pierten Objekten und Zusammenfassung der damit assoziierten Originalreihen zu einer neuen Reihe,
Umgruppieren, das heißt Ersetzen einer Originalreihe durch die Reihen einer weiteren Zwischenformattabelle einer niedrigeren Hierachiestufe, auf die ursprünglich die Originalreihe ver wiesen hat.
Gruppieren, das heißt Erzeugen einer neuen Tabelle mit grup pierten Objekten und Zusammenfassung der damit assoziierten Originalreihen zu einer neuen Reihe,
Umgruppieren, das heißt Ersetzen einer Originalreihe durch die Reihen einer weiteren Zwischenformattabelle einer niedrigeren Hierachiestufe, auf die ursprünglich die Originalreihe ver wiesen hat.
Im folgenden soll an zwei Beispielen dargelegt werden, wie
die Umsetzung von Programmcode in eine Zwischenformattabelle
erfolgen kann. Hierbei wird Bezug auf die Zeichnungen genom
men, in denen folgendes dargestellt ist:
Fig. 1 zeigt eine Ausführungsform der Zwischenformattabelle
der vorliegenden Erfindung, die aus einen ersten Bei
spielprogramm erzeugt worden ist; und
Fig. 2 zeigt eine weitere Ausführungsform der Zwischenfor
mattabelle der vorliegenden Erfindung, die aus einem
zweiten Beispielprogramm erzeugt worden ist.
Das folgende erste, einfache Beispielprogramm:
zeigt zwei Programmobjekte inst_1 und inst_2 vom Typ comp_1
und comp_2 mit je vier Schnittstellen. Die beiden Objekte
sind miteinander durch die zwei Verknüpfungen (Signale) si
und sb über die Schnittstellen h und i beziehungsweise g und
k miteinander verbunden.
Darüber hinaus weist inst_1 noch zwei externe Schnittstellen
f und e auf, die von den externen Verknüpfungen b und a be
dient werden; inst_2 die externe Schnittstelle j der Verknüp
fung c und l der Verknüpfung d.
Im Beispielprogrammcode werden diese Schnittstellen defi
niert, zusammen mit ihrer Funktion als Eingangs- oder Aus
gangsschnittstelle und den bei ihnen verwendeten Datentypen.
Fig. 1 zeigt eine nach Anwendung des erfindungsgemäßen Ver
fahrens zur Umsetzung von Schnittstellen-Definitionen in ein
Zwischenformat sich ergebende Zwischenformattabelle 1. Die
beispielhafte Zwischenformattabelle 1 weist eine erste Dimen
sion in Richtung des Pfeils 2 und eine zweite Dimension in
Richtung des Pfeils 3 auf. Zunächst werden zwei Reihen erster
Dimension 4 definiert, denen die Bezeichnungen der Objekte
inst_1 und inst_2 zugewiesen werden. In der zweiten Dimension
3 werden Reihen zweiter Dimension 5 für interne Verknüpfungen
zugewiesen. Nunmehr werden in die sich ergebenden Kreuzungs
zellen 7 Bezeichnungen 8 für die verschiedenen internen
Schnittstellen eingetragen. Zur Verbesserung der Übersicht
lichkeit können den Reihen der ersten und zweiten Dimension
außerdem Bezeichnungen explizit beigeordnet werden. Dies ge
schieht mit Hilfe von Titelreihen 24 beziehungsweise 25. In
Titelreihe 24 werden in dafür vorgesehene Zellen für die Be
zeichnung eines Objekts 29 Bezeichnungen für die Objekte 26
eingetragen. In der Titelreihe 25 werden in dafür vorgesehen
Zellen für Bezeichnungen einer internen Verknüpfung 31 diese
Bezeichnungen für interne Verknüpfungen 28 eingetragen. Wie
ersichtlich ist, sind in die Zellen 7 Bezeichnungen 8 einge
tragen, die einen Identifizierer 32 einer internen Schnitt
stelle enthalten, nämlich deren Originalbezeichnung im Bei
spielprogrammcode sowie eine Kennzeichnung, ob es sich um ei
ne Ausgangsschnittstelle (out) oder eine Eingangsschnittstel
le (in) handelt. Weiter sind in der Tabelle Reihen zweiter
Dimension 6 für externe Verknüpfungen vorgesehen. An den
Kreuzungspunkten dieser Reihen 6 mit den Reihen der ersten
Dimension 4 werden die für externe Verknüpfungen verwendeten
Schnittstellen mit ihren Bezeichnungen 10 in Zellen 9 einge
tragen. Auch hier besteht die Bezeichnung aus einem Identifi
zierer 33 sowie einer Angabe über den Character der Schnitt
stellen als Ein- oder Ausgabeschnittstellen. In die Titelrei
hen 25 werden die Originalbezeichnungen 27 der externen Ver
knüpfungen in Zellen 30 eingetragen. Zusätzlich sind in einer
ersten speziellen Reihe 11 an den Kreuzungspunkten mit den
Reihen der zweiten Dimension für externe Verknüpfungen 12 An
gaben für das Vorliegen einer Eingangsschnittstelle oder ei
ner Ausgangsschnittstelle bei den externen Verknüpfungen ein
getragen.
In der Beispielzwischenformattabelle 1 sind auch die Datenty
pen der Verknüpfungen angegeben. Hierzu wird eine zweite spe
zielle Reihe 14 verwendet, in deren Zellen 15 an den Kreu
zungspunkten zu den Reihen zweiter Dimension für externe Ver
knüpfungen 6, aber auch zu den Reihen zweiter Dimension für
interne Verknüpfungen 5 jeweils eine Angabe 16 darüber ge
macht ist, von welchem Datentyp die jeweilige Verknüpfung
ist. Hierfür werden die in der Datenverarbeitung üblichen Be
griffe, wie bit, integer, boolean, etc. verwendet.
Der obere Bereich dieser zweidimensionalen Zwischenformatta
belle 1 ist der Angabe von Konstanten des Beispielspro
grammcodes vorbehalten. Da im angegebenen Beispielpro
grammcode keine Konstanten definiert sind, werden hier ledig
lich zur Verdeutlichung die Buchstaben x und y eingesetzt.
Zur Angabe der Konstanten werden erste spezielle Reihen der
zweiten Dimension 18 sowie für die Angabe des Datentype eine
dritte spezielle Reihe 17 in der ersten Dimension und für die
Angabe des Werts der Konstanten eine vierte spezielle Reihe
21 der ersten Dimension verwendet. In die Kreuzungspunktzel
len 19 der dritten speziellen Reihen 17 und der speziellen
Reihen der zweiten Dimension 18 werden die Werte für externe
(oben) und interne (unten) Konstanten x eingetragen, wie mit
dem Bezugszeichen 20 kenntlich gemacht. Die Werte der vorhan
dene Konstanten werden in Zellen 22 als y (23) an den Kreu
zungspunkten zwischen der vierten speziellen Reihe und den
ersten speziellen Reihen der zweiten Dimension 18 eingetra
gen.
Das folgende zweite Beispielprogramm ist eine erweiterte Fas
sung des ersten Beispielprogramms.
Hier werden verschiedene Konstanten im allgemeinen Teil des
Programms und bei den einzelnen Programmobjekten definiert.
Außerdem wird neben den beiden Objekten inst_1 und inst_2 als
Komponentenrepräsentanten auch ein weiteres Objekt p0 ange
legt. Schließlich ist ebenfalls eine Datenkonvertierungsfunk
tion boolean2bit vorgesehen, welche die Eingangsdaten auf der
externen Schnittstelle "j" umwandelt.
Fig. 2 zeigt eine Zwischenformattabelle gemäß einer weiteren
Ausführungsform der vorliegenden Erfindung, bei der ein ge
genüber der Tabelle der Fig. 1 abweichendes Darstellungsfor
mat verwendet wurde. Die für Fig. 1 verwendeten Bezugszei
chen werden auch bezüglich Fig. 2 mit gleichen Bedeutungen
verwendet.
Insbesondere die Bündelung von speziellen Reihen der ersten
Dimension ist hier anders durchgeführt worden. Die Tabelle
ist weniger kompakt als die in Fig. 1 dargestellte.
In Fig. 2 sind nicht nur Werte 23 der Konstanten und Berech
nungsweise 35 der Konstante ci in einer vierten speziellen
Reihe 21 eingesetzt worden, sondern auch die Werte 36 von
Schnittstellen in einer fünften speziellen Reihe 34. Die
vierte spezielle Reihe 21 ist hierbei zugleich die fünfte
spezielle Reihe 34.
Die in diesem Beispiel vorhandenen Konstanten werden mit ih
ren Bezeichnungen 38 in dafür vorgesehene Zellen 37 der spe
ziellen Reihen 18 der zweiten Dimension 3, welche an der
Kreuzung zur Titelreihe 25 liegen, eingesetzt. Eine externe
Konstante x, welche erst innerhalb einer Komponentendeklara
tion deklariert (und sofort mit dem Wert "4" definiert) wird,
wird mit ihrer Bezeichnung 40 in die Zelle am Kreuzungspunkt
der Reihe 4 der ersten Dimension, welche dem Objekt zugewie
sen ist, innerhalb dessen die Konstante x deklariert worden
ist, mit einer der speziellen Reihen der zweiten Dimension,
eingesetzt. Da in diesem Fall keine namentlich bezeichnete
externe Konstante für den gesamten Programmcode angegeben
ist, verbleibt der Eintrag in der zuständigen Zelle 37 leer.
Eine weitere externe Konstante z wird ebenfalls mit ihrer Be
zeichnung 40 in eine Zelle 39 eingesetzt. Im Unterschied zur
Konstanten x wird hier jedoch im Programmcode ein "Mapping"
vorgenommen, das der Konstanten z die Konstante y zuweist.
Daher wird die Konstante z in die gleiche spezielle Reihe 18
der zweiten Dimension eingesetzt, die auch der Konstanten y
zugewiesen ist.
Weiterhin ist in diesem Beipiel ein Objekt p0 definiert wor
den, welches eine Manipulation an der Verknüpfung si_2 vor
nimmt, die sich aus si_1 ableitet (siehe obigen 2. Pro
grammcode). Auch für dieses Objekt ist eine Reihe 4 vorgese
hen, in der die Verwendung der Konstanten ci als Bezeichnung
40 sowie die Verbindung des Objekts p0 mit den Signalen si_1
als eine Schnittstellenangabe mit der Bezeichnung 41 und si_2
als eine Berechnungsvorschrift mit der Bezeichnung 43.
Eine der Bezeichnungen der Schnittstellen, gekennzeichnet mit
dem Bezugszeichen 42, zeigt eine komplexere Struktur als die
anderen Bezeichnungen 8, 41, da in dieser zusätzlich zum
Identifizierer der Schnittstelle und der Datenflußrichtung
auch eine Angabe zum Datentyp (hier "bit") und zur anzuwen
denden Datentypkonvertierungsfunktion gemacht ist.
Insgesamt ergibt sich in beiden Beispielen eine sehr über
sichtlich gestaltete Zwischenformattabelle 1, die von einem
automatischen Umsetzungsprogramm in leichter Art und Weise in
Schnittstellendefinitionen eines Zielprogrammcodes umgewan
delt werden und auch der manuellen Nachbearbeitung durch ei
nen Programmierer/Modellierer oder Hardware-, beziehungsweise
Software-Ingenieur zugänglich gemacht werden kann.
Beispielsweise kann durch Entfernen und Hinzufügen von Tabel
leneinträgen die gewünschte Verbindungsstruktur hergestellt
werden. Die Schnittstellen der aktuellen Hierarchiestufe kön
nen durch Deklaration von Reihen zu Port-Signalen spezifi
ziert werden. Eine Erstellung oder Modifikation konkurrieren
der Objekte kann nach Selektion der entsprechenden Reihe in
einem separaten Texteditor erfolgen.
Die erfindungsgemäße Zwischenformattabelle kann auch als sol
che verwendet werden, um eine Schaltungsplanung durchzufüh
ren, die später zu einem Programmcode führen kann (sogenann
ter Top-Down-Entwurf). Hierbei können zunächst leere Kompo
nenten durch Einfügen von Reihen, beispielsweise von Spalten
generiert werden. Anschließend werden die Verknüpfungen de
klariert. Durch Einfügen von Tabelleneinträgen können nun
einfache Verknüpfungen zwischen den nebenläufigen Objekten
hergestellt werden, wobei die Schnittstellen der Objekte au
tomatisch generiert werden können. Nachdem das Top-Level ei
nes Designs, beispielsweise eines Hardware-Designs, fertigge
stellt ist, können die Teilkomponenten weiter verfeinert wer
den. Dazu kann eine Tabelle, die bereits alle Schnittstellen
signale enthält, automatisch bereit gestellt werden.
Die Einführung einer Zwischenformattabelle und die erfin
dungsgemäßen Verfahren zur Umsetzung ermöglichen in deutlich
vereinfachter Weise die Umwandlung eines Quellprogrammcodes
in einem Zielprogrammcode, verringern die Zahlen notwendiger
Umsetzungsprogramme und geben in Form der Zwischenformatta
belle eine übersichtliche Kontrollmöglichkeit über den Umset
zungsvorgang. Es ist sogar möglich, nach Umsetzung eines
Quellprogrammcodes einer bestimmten Programmiersprache, bei
spielsweise VHDL, unmittelbar an der Zwischenformattabelle
Modifikationen des gewünschten Designs vorzunehmen, um diese
wieder in die ursprüngliche Programmiersprache, beispielswei
se VHDL, zurück zu übersetzen und dadurch ohne Manipulationen
am Ausgangsprogrammcode ein verändertes Design zu erhalten.
Hierdurch kann also ein Editieren des Programms erreicht wer
den, ohne notwendigerweise Detailkenntnisse der jeweils ver
wendeten Programmiersprache zu haben. Gegenüber einer Notati
on in einer Hardware-Beschreibungssprache sind die einzelnen
Informationen zu einem Design nicht über weite Teile des Code
verstreut, sondern liegen in der Zwischenformattabelle in ei
ner übersichtlichen und kompakten Form vor.
Als Erweiterung der vorgeschlagenen Zwischenformattabelle
könnten auch VHDL Generate Statements unterstützt werden, in
dem diese als spezielle Attributfelder den entsprechenden
Reihen erster Dimension zugeordnet werden. Bei Nicht-
Hardware-Beschreibungssprachen ergibt sich ebenfalls ein wei
tes Benutzungsfeld, bei dem variable Konstanten und Unterpro
gramme umgesetzt werden können. Damit wird eine Partizipie
rung einer sequentiellen Beschreibung in nebenläufige Prozes
se erleichtert, wie in Echtzeitumgebungen, Multitasking-
Betriebssystemen und bei "multithreaded" graphischen Benut
zeroberflächen vorkommen. Zudem können Daten, die nur ge
schrieben und niemals gelesen werden, leicht identifiziert
und gegebenenfalls aus der Datenstruktur entfernt werden.
Insgesamt erleichtern die vorgeschlagenen Verfahren und die
Zwischenformattabelle entscheidend die Umsetzung von Pro
grammcodes zwischen verschiedenen Programmiersprachen sowie
die Kontrolle und Nachbearbeitung des Umsetzvorgangs sowie
weitere Modifikationsmöglichkeiten während des Umsetzvor
gangs.
Claims (34)
1. Verfahren zur Umsetzung von Schnittstellendefinitionen in
nerhalb von Quellprogrammcode in ein Zwischenformat mittels
einer das Verfahren ausführenden Rechenanlage mit folgenden
Schritten:
- 1. A Identifizieren von zumindest einem Objekt im Quellpro grammcode;
- 2. B Identifizieren von zumindest einer Schnittstelle bei dem
zumindest einen identifizierten Objekt;
wobei zumindest eine der identifizierten Schnittstellen eine interne Schnittstelle zur Herstellung einer Verknüpfung von Objekten innerhalb des Quellprogrammcodes und/oder zumindest eine der identifizierten Schnittstellen eine externe Schnitt stelle zur Herstellung einer Verknüpfung von einem Objekt mit ausserhalb des Quellprogrammcodes liegenden Schnittstellen sein kann;
und wobei die zumindest eine Schnittstelle eine Eingangs- und/oder eine Ausgangsschnittstelle sein kann; - 3. C Identifizieren von zumindest einer internen Verknüpfung
zwischen zumindest einer Ausgangsschnittstelle und zumindest
einer Eingangsschnittstelle zwischen zumindest zwei Objekten
und/oder
Identifizieren von zumindest einer externen Verknüpfung der zumindest einen externen Schnittstelle; - 4. D Erstellen einer zumindest zweidimensionalen Zwischenfor
mattabelle (1) mit in einer ersten Dimension (2) angeordneten
Reihen (4, 11, 14, 17, 21, 25, 34), in einer zweiten Dimen
sion (3) angeordneten Reihen (5, 6, 18, 24) und Zellen an
den Kreuzungspunkten der ersten und zweiten Reihen,
wobei Reihen (4) der ersten Dimension (2) Bezeichnungen für jedes des zumindest einen identifizierten Objekts zugewiesen werden;
wobei Reihen (5, 6) der zweiten Dimension (3) Bezeichnungen für jede der zumindest einen identifizierten Verknüpfung zu gewiesen werden; und
wobei jeweils in diejenigen Zellen (7), die am Kreuzungspunkt einer der Reihen (4) der ersten Dimension mit der Bezeich nung eines identifizierten Objekts und einer der Reihen (5) der zweiten Dimension (3) mit der Bezeichnung einer identifi zierten internen Verknüpfung liegen, Bezeichnungen (8) für die zu sowohl dem jeweiligen identifizierten Objekt als auch der identifizierten internen Verknüpfung gehörigen Augangs schnittstelle und/oder Eingangsschnittstelle eingesetzt wer den und/oder
wobei jeweils in diejenigen Zellen (9), die am Kreuzungspunkt einer der Reihen (4) der ersten Dimension mit der Bezeichnung eines identifizierten Objekts und einer der Reihen (6) der zweiten Dimension (3) mit der Bezeichnung einer identifi zierten externen Verknüpfung liegen, Bezeichnungen (10) für die zu sowohl dem jeweiligen identifizierten Objekt als auch der identifizierten externen Verknüpfung gehörigen Augangs schnittstelle und/oder Eingangsschnittstelle eingesetzt wer den.
2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß
eine erste spezielle Reihe (11) der ersten Dimension (2)
zur Angabe des Modus der externen Schnittstelle der zumindest
einen identifizierten externen Verknüpfung verwendet wird,
und
jeweils in diejenigen Zellen (12), die am Kreuzungspunkt der ersten speziellen Reihe (11) der ersten Dimension und den Reihen (6) der zweiten Dimension (3) mit den Bezeichnungen der zumindest einen identifizierten externen Verknüpfung lie gen, Angaben (13) über den Modus der externen Schnittstelle bei der zumindest einen identifizierten externen Verknüpfung eingesetzt werden.
jeweils in diejenigen Zellen (12), die am Kreuzungspunkt der ersten speziellen Reihe (11) der ersten Dimension und den Reihen (6) der zweiten Dimension (3) mit den Bezeichnungen der zumindest einen identifizierten externen Verknüpfung lie gen, Angaben (13) über den Modus der externen Schnittstelle bei der zumindest einen identifizierten externen Verknüpfung eingesetzt werden.
3. Verfahren nach Anspruch 2, dadurch gekennzeichnet, daß die
externen Schnittstelle eine Eingangsschnittstelle, eine Aus
gangsschnittstelle, eine bidirektionale Schnittstelle oder
eine Schnittstelle unbestimmter Flußrichtung sein kann.
4. Verfahren nach einem der Ansprüche 1 bis 3, dadurch ge
kennzeichnet, daß
zusätzlich die Datentypen der zumindest einen identifizierten Schnittstelle festgestellt werden,
zumindest einer zweiten speziellen Reihe (14) der ersten Di mension (2) eine Angabe der Datentypen der zumindest einen identifizierten Schnittstelle zugewiesen wird und
jeweils in diejenigen Zellen (15), die am Kreuzungspunkt der zweiten speziellen Reihe (14) und der Reihen (5, 6) der zweiten Dimension (3) mit den Bezeichnungen der zumindest ei nen identifizierten Verknüpfung liegen, Bezeichnungen (16) für die zu der zumindest einen identifizierten Verknüpfung gehörigen Datentypen eingesetzt werden.
zusätzlich die Datentypen der zumindest einen identifizierten Schnittstelle festgestellt werden,
zumindest einer zweiten speziellen Reihe (14) der ersten Di mension (2) eine Angabe der Datentypen der zumindest einen identifizierten Schnittstelle zugewiesen wird und
jeweils in diejenigen Zellen (15), die am Kreuzungspunkt der zweiten speziellen Reihe (14) und der Reihen (5, 6) der zweiten Dimension (3) mit den Bezeichnungen der zumindest ei nen identifizierten Verknüpfung liegen, Bezeichnungen (16) für die zu der zumindest einen identifizierten Verknüpfung gehörigen Datentypen eingesetzt werden.
5. Verfahren nach einem der Ansprüche 1 bis 4, dadurch ge
kennzeichnet, daß
zusätzlich zumindest eine Konstante in dem zumindest einen identifizierten Objekt und/oder zumindest eine externe Kon stante, die von allen Objekten des Quellprogrammcodes ver wendbar ist, identifiziert wird;
der Datentyp der zumindest einen identifizierten Konstanten und/oder externen Konstanten festgestellt wird;
zumindest einer dritten speziellen Reihe (17) der ersten Di mension (2) eine Angabe des Datentyps der zumindest einen Konstanten zugewiesen wird;
zumindest einer ersten speziellen Reihe (18) der zweiten Di mension (3) Bezeichnungen der zumindest einen identifizierten Konstanten und/oder externen Konstanten zugewiesen werden; und
jeweils in diejenigen Zellen (19), die am Kreuzungspunkt der zumindest einen dritten speziellen Reihe (17) und der zumin dest einen ersten speziellen Reihe (18) der zweiten Dimension (3) mit Bezeichnungen der zumindest einen identifizierten Konstanten liegen, Bezeichnungen (20) für den zu der zumin dest einen identifizierten Konstanten gehörigen Datentyp ein gesetzt werden.
zusätzlich zumindest eine Konstante in dem zumindest einen identifizierten Objekt und/oder zumindest eine externe Kon stante, die von allen Objekten des Quellprogrammcodes ver wendbar ist, identifiziert wird;
der Datentyp der zumindest einen identifizierten Konstanten und/oder externen Konstanten festgestellt wird;
zumindest einer dritten speziellen Reihe (17) der ersten Di mension (2) eine Angabe des Datentyps der zumindest einen Konstanten zugewiesen wird;
zumindest einer ersten speziellen Reihe (18) der zweiten Di mension (3) Bezeichnungen der zumindest einen identifizierten Konstanten und/oder externen Konstanten zugewiesen werden; und
jeweils in diejenigen Zellen (19), die am Kreuzungspunkt der zumindest einen dritten speziellen Reihe (17) und der zumin dest einen ersten speziellen Reihe (18) der zweiten Dimension (3) mit Bezeichnungen der zumindest einen identifizierten Konstanten liegen, Bezeichnungen (20) für den zu der zumin dest einen identifizierten Konstanten gehörigen Datentyp ein gesetzt werden.
6. Verfahren nach Anspruch 5, dadurch gekennzeichnet, daß
zusätzlich ein Wert oder eine Berechnungsweise der zumindest einen identifizierten internen Konstanten und/oder externen Konstanten festgestellt wird;
zumindest einer vierten speziellen Reihe (21) der ersten Di mension (2) die Angabe des Werts (23) oder der Berechnungs weise (35) der zumindest einen Konstanten zugewiesen wird; und
jeweils in diejenigen Zellen (22), die am Kreuzungspunkt der zumindest einen vierten speziellen Reihe (21) und den ersten speziellen Reihen (18) der zweiten Dimension (3) mit Be zeichnungen der zumindest einen identifizierten Konstanten liegen, der Wert (23) oder die Berechnungsweise (35) der zu mindest einen identifizierten Konstanten eingesetzt wird.
zusätzlich ein Wert oder eine Berechnungsweise der zumindest einen identifizierten internen Konstanten und/oder externen Konstanten festgestellt wird;
zumindest einer vierten speziellen Reihe (21) der ersten Di mension (2) die Angabe des Werts (23) oder der Berechnungs weise (35) der zumindest einen Konstanten zugewiesen wird; und
jeweils in diejenigen Zellen (22), die am Kreuzungspunkt der zumindest einen vierten speziellen Reihe (21) und den ersten speziellen Reihen (18) der zweiten Dimension (3) mit Be zeichnungen der zumindest einen identifizierten Konstanten liegen, der Wert (23) oder die Berechnungsweise (35) der zu mindest einen identifizierten Konstanten eingesetzt wird.
7. Verfahren nach einem der Ansprüche 1 bis 6, dadurch ge
kennzeichnet, daß
zusätzlich ein Wert oder eine Berechnungsweise der zumindest einen identifizierten Verknüpfung festgestellt wird;
zumindest einer fünften speziellen Reihe (34) der ersten Di mension (2) die Angabe des Werts (36) oder der Berechnungs weise der zumindest einen identifizierten Verknüpfung zuge wiesen wird; und
wobei jeweils in diejenigen Zellen, die am Kreuzungspunkt der zumindest einen fünften speziellen Reihe (34) und einer der Reihen (5) der zweiten Dimension (3) mit der Bezeichnung ei ner identifizierten internen Verknüpfung und/oder der Reihen (6) der zweiten Dimension (3) mit der Bezeichnung einer identifizierten externen Verknüpfung liegen, der Wert (36) oder die Berechnungsweise der zumindest einen identifizierten Verknüpfung eingesetzt wird.
zusätzlich ein Wert oder eine Berechnungsweise der zumindest einen identifizierten Verknüpfung festgestellt wird;
zumindest einer fünften speziellen Reihe (34) der ersten Di mension (2) die Angabe des Werts (36) oder der Berechnungs weise der zumindest einen identifizierten Verknüpfung zuge wiesen wird; und
wobei jeweils in diejenigen Zellen, die am Kreuzungspunkt der zumindest einen fünften speziellen Reihe (34) und einer der Reihen (5) der zweiten Dimension (3) mit der Bezeichnung ei ner identifizierten internen Verknüpfung und/oder der Reihen (6) der zweiten Dimension (3) mit der Bezeichnung einer identifizierten externen Verknüpfung liegen, der Wert (36) oder die Berechnungsweise der zumindest einen identifizierten Verknüpfung eingesetzt wird.
8. Verfahren nach einem der Ansprüche 1 bis 7, dadurch ge
kennzeichnet, daß es den weiteren Schritt aufweist:
- - Identifizieren der Originalbezeichnungen (26, 27, 28, 38),
welche das zumindest eine Objekt, die zumindest eine Verknüp
fung und/oder die zumindest eine Konstante im Quellpro
grammcode aufweisen,
wobei speziellen Titelreihen (24, 25) Angaben über die identifizierten Originalbezeichnungen (26, 27, 28, 38) zuge wiesen werden; und
die Originalbezeichnungen (26, 27, 28, 38) in Zellen (29, 30, 31, 37) der Titelreihen (24, 25) eingesetzt werden.
9. Verfahren nach einem der Ansprüche 1 bis 8, dadurch ge
kennzeichnet, daß die Bezeichnungen (8) der zumindest einen
Schnittstelle zusammengesetzt sind aus einem Identifzierer
für die jeweilige Schnittstelle und zumindest einer Angabe,
die ausgewählt ist aus einer Kennzeichnung des Modus der
Schnittstelle, des Datentyps der Schnittstelle, eines Vorga
bewerts und der Angabe einer auf die Schnittstelle anzuwen
denden Datentypkonvertierungsfunktion.
10. Verfahren nach einem der Ansprüche 1 bis 9, dadurch ge
kennzeichnet, daß es die weiteren Schritte aufweist:
- - Identifizieren der Originalbezeichnungen (32, 33), welche die zumindest eine Schnittstelle im Quellprogrammcode auf weisen; und
- - Verwenden der Originalbezeichnungen (32, 33) als Identifi zierer.
11. Verfahren nach einem der Ansprüche 1 bis 10, dadurch ge
kennzeichnet, daß der Quellprogrammcode Code einer Hardware
beschreibungssprache ist.
12. Verfahren nach Anspruch 11, dadurch gekennzeichnet, daß
das zumindest eine Objekt eine Schnittstelleninstanz eines
elektronischen Bauteils repräsentiert.
13. Verfahren nach Anspruch 11 oder 12, dadurch gekennzeich
net, daß die zumindest eine interne Verknüpfung ein Signal
repräsentiert.
14. Verfahren nach einem der Ansprüche 11 bis 13, dadurch ge
kennzeichnet, daß die zumindest eine externe Verknüpfung ei
nen Port repräsentiert.
15. Verfahren nach einem der Ansprüche 1 bis 14, dadurch ge
kennzeichnet, daß zumindest eines der identifizierten Objekte
in sich einen Sub-Quellprogrammcode enthält, der ebenfalls in
ein Zwischenformat umgesetzt werden kann; und daß nach er
folgter Umsetzung eines Subquellprogrammcodes in eine Subfor
mattabelle ein Verweis auf die Subformattabelle in eine Zelle
der zum umgesetzten Objekt gehörenden Reihe der ersten Dimen
sion eingesetzt wird.
16. Verfahren nach einem der Ansprüche 1 bis 15, dadurch ge
kennzeichnet, daß ein Verweis auf zumindest ein als Quellpro
grammcode als separate Einheit gespeichertes identifiziertes
Objekt in eine Zelle der zum gespeicherten Objekt gehörenden
Reihe der ersten Dimension eingesetzt wird.
17. Verfahren zur Umsetzung von Schnittstellendefinitionen
aus einer
zumindest zweidimensionalen Zwischenformattabelle mit in ei ner ersten Dimension (2) angeordneten ersten Reihen (4, 11, 14, 17, 21, 25, 34), in einer zweiten Dimension (3) angeord neten zweiten Reihen (5, 6, 18, 24) und Zellen an den Kreu zungspunkten der ersten und zweiten Reihen,
bei der Reihen (4) der ersten Dimension (2) Bezeichnungen für zumindest ein Objekt zugewiesen sind;
bei der Reihen (5, 6) der zweiten Dimension (3) Bezeichnungen für zumindest eine interne Verknüpfung zwischen den Objekten und/oder zumindest eine externe Verknüpfung eines Objekts zu gewiesen sind; und
bei der jeweils in diejenigen Zellen (7), die am Kreuzungs punkt einer der Reihen (4) der ersten Dimension (2) mit der Bezeichnung eines Objekts und einer der Reihen (5) der zwei ten Dimension (3) mit der Bezeichnung einer internen Verknüp fung liegen, Bezeichnungen (8) für eine zu sowohl dem jewei ligen Objekt als auch der Verknüpfung gehörigen internen Augangschnittstelle und/oder internen Eingangsschnittstelle eingesetzt sind und/oder
bei der jeweils in diejenigen Zellen (9), die am Kreuzungs punkt einer der Reihen (4) der ersten Dimension (2) mit der Bezeichnung eines Objekts und einer der Reihen (6) der zwei ten Dimension (3) mit der Bezeichnung einer externen Verknüp fung liegen, Bezeichnungen (10) für die zu sowohl dem jewei ligen Objekt als auch der externen Verknüpfung gehörigen ex ternen Augangsschnittstelle und/oder externen Eingangs schnittstelle eingesetzt sind;
mittels einer das Verfahren ausführenden Rechenanlage in Zielprogrammcode mit folgenden Schritten:
zumindest zweidimensionalen Zwischenformattabelle mit in ei ner ersten Dimension (2) angeordneten ersten Reihen (4, 11, 14, 17, 21, 25, 34), in einer zweiten Dimension (3) angeord neten zweiten Reihen (5, 6, 18, 24) und Zellen an den Kreu zungspunkten der ersten und zweiten Reihen,
bei der Reihen (4) der ersten Dimension (2) Bezeichnungen für zumindest ein Objekt zugewiesen sind;
bei der Reihen (5, 6) der zweiten Dimension (3) Bezeichnungen für zumindest eine interne Verknüpfung zwischen den Objekten und/oder zumindest eine externe Verknüpfung eines Objekts zu gewiesen sind; und
bei der jeweils in diejenigen Zellen (7), die am Kreuzungs punkt einer der Reihen (4) der ersten Dimension (2) mit der Bezeichnung eines Objekts und einer der Reihen (5) der zwei ten Dimension (3) mit der Bezeichnung einer internen Verknüp fung liegen, Bezeichnungen (8) für eine zu sowohl dem jewei ligen Objekt als auch der Verknüpfung gehörigen internen Augangschnittstelle und/oder internen Eingangsschnittstelle eingesetzt sind und/oder
bei der jeweils in diejenigen Zellen (9), die am Kreuzungs punkt einer der Reihen (4) der ersten Dimension (2) mit der Bezeichnung eines Objekts und einer der Reihen (6) der zwei ten Dimension (3) mit der Bezeichnung einer externen Verknüp fung liegen, Bezeichnungen (10) für die zu sowohl dem jewei ligen Objekt als auch der externen Verknüpfung gehörigen ex ternen Augangsschnittstelle und/oder externen Eingangs schnittstelle eingesetzt sind;
mittels einer das Verfahren ausführenden Rechenanlage in Zielprogrammcode mit folgenden Schritten:
- - Erstellen von zumindest einem Programmcode-Objekt anhand der in der Zwischenformattabelle (1) enthaltenen Informationen über das zumindest eine Objekt,
- - Zuweisen von zugehörigen internen Ausgangsschnittstellen und/oder internen Eingangsschnittstellen zu ihren Pro grammcode-Objekten;
- - Erstellen zumindest einer Verknüpfung zwischen Programmcode- Objekten anhand der in der Zwischenformattabelle enthaltenen Informationen über die internen Verknüpfungen der internen Eingangsschnittstellen und internen Ausgangsschnittstellen und/oder
- - Zuweisen von zugehörigen externen Ausgangsschnittstellen und/oder externen Eingangsschnittstellen zu ihren Pro grammcode-Objekten.
18. Verfahren nach Anspruch 17, dadurch gekennzeichnet, daß
zumindest einer zweiten speziellen Reihe (14) der ersten Di mension (2) der Zwischenformattabelle (1) eine Angabe der Da tentypen der zumindest einen Schnittstelle zugewiesen ist und
jeweils in diejenigen Zellen (15), die am Kreuzungspunkt der zweiten speziellen Reihe (14) und der Reihen (5, 6) der zweiten Dimension (3) mit den Bezeichnungen zumindest einen Verknüpfung liegen, Bezeichnungen (16) für die zu der zu mindest einen Verknüpfung gehörigen Datentypen eingesetzt sind;
mit dem weiteren Schritt:
zumindest einer zweiten speziellen Reihe (14) der ersten Di mension (2) der Zwischenformattabelle (1) eine Angabe der Da tentypen der zumindest einen Schnittstelle zugewiesen ist und
jeweils in diejenigen Zellen (15), die am Kreuzungspunkt der zweiten speziellen Reihe (14) und der Reihen (5, 6) der zweiten Dimension (3) mit den Bezeichnungen zumindest einen Verknüpfung liegen, Bezeichnungen (16) für die zu der zu mindest einen Verknüpfung gehörigen Datentypen eingesetzt sind;
mit dem weiteren Schritt:
- - Definieren der Datentypen der dem zumindest einen Pro grammcode-Objekt zugewiesenen, zu der zumindest einen Ver knüpfung gehörigen, zumindest einen Schnittstelle.
19. Verfahren nach Anspruch 17 oder 18, dadurch gekennzeich
net, daß
zumindest einer dritten speziellen Reihe (17) der ersten Di mension (2) der Zwischenformattabelle (1) eine Angabe der Da tentypen von zumindest einer Konstanten im zumindest einen Objekt und/oder zumindest einer externen Konstanten, die von allen Objekten verwendbar ist, zugewiesen ist;
zumindest einer ersten speziellen Reihe (18) der zweiten Di mension (3) Bezeichnungen der zumindest einen Konstanten und/oder zumindest einen externen Konstanten zugewiesen sind; und
jeweils in diejenigen Zellen (19), die am Kreuzungspunkt der zumindest einen dritten speziellen Reihe (17) und der zumin dest einen ersten speziellen Reihe (18) der zweiten Dimension (3) mit Bezeichnungen der zumindest einen Konstanten liegen, Bezeichnungen (20) für den zu der zumindest einen Konstanten gehörigen Datentyp eingesetzt werden;
mit dem weiteren Schritt:
zumindest einer dritten speziellen Reihe (17) der ersten Di mension (2) der Zwischenformattabelle (1) eine Angabe der Da tentypen von zumindest einer Konstanten im zumindest einen Objekt und/oder zumindest einer externen Konstanten, die von allen Objekten verwendbar ist, zugewiesen ist;
zumindest einer ersten speziellen Reihe (18) der zweiten Di mension (3) Bezeichnungen der zumindest einen Konstanten und/oder zumindest einen externen Konstanten zugewiesen sind; und
jeweils in diejenigen Zellen (19), die am Kreuzungspunkt der zumindest einen dritten speziellen Reihe (17) und der zumin dest einen ersten speziellen Reihe (18) der zweiten Dimension (3) mit Bezeichnungen der zumindest einen Konstanten liegen, Bezeichnungen (20) für den zu der zumindest einen Konstanten gehörigen Datentyp eingesetzt werden;
mit dem weiteren Schritt:
- - Definieren von zumindest einer internen Konstante und/oder von zumindest einer externen Konstante in dem zumindest einen Programmcode-Objekt und/oder in einem allgemeinen Teil des Zielprogrammcodes.
20. Verfahren nach Anspruch 19, dadurch gekennzeichnet, daß
zumindest einer vierten speziellen Reihe (21) der ersten Di mension (2) der Zwischenformattabelle (1) Angaben über einen Wert (23) oder eine Berechnungsweise (35) der zumindest einen internen Konstanten und/oder der zumindest einen externen Konstanten zugewiesen sind; und
jeweils in diejenigen Zellen (22), die am Kreuzungspunkt der vierten speziellen Reihe (21) und den ersten speziellen Rei hen (18) der zweiten Dimension (3) mit Bezeichnungen der zu mindest einen Konstanten liegen, der Wert (23) oder die Be rechnungsweise (35) der zumindest einen Konstanten eingesetzt sind;
mit dem weiteren Schritt:
zumindest einer vierten speziellen Reihe (21) der ersten Di mension (2) der Zwischenformattabelle (1) Angaben über einen Wert (23) oder eine Berechnungsweise (35) der zumindest einen internen Konstanten und/oder der zumindest einen externen Konstanten zugewiesen sind; und
jeweils in diejenigen Zellen (22), die am Kreuzungspunkt der vierten speziellen Reihe (21) und den ersten speziellen Rei hen (18) der zweiten Dimension (3) mit Bezeichnungen der zu mindest einen Konstanten liegen, der Wert (23) oder die Be rechnungsweise (35) der zumindest einen Konstanten eingesetzt sind;
mit dem weiteren Schritt:
- - Zuweisen des Werts (23) oder der Berechnungsweise (35) der zumindest einen Konstanten zu der zumindest einen im Pro grammcode definierten Konstanten.
21. Verfahren nach einem der Ansprüche 17 bis 20, dadurch ge
kennzeichnet, daß
zumindest einer fünften speziellen Reihe (34) der ersten Di mension (2) der Zwischenformattabelle (1) eine Angabe über den Wert oder die Berechnungsweise der zumindest einen Ver knüpfung zugewiesen ist; und
jeweils in diejenigen Zellen, die am Kreuzungspunkt der zu mindest einen fünften speziellen Reihe und einer der Reihen der zweiten Dimension (3) mit der Bezeichnung einer internen Verknüpfung und/oder der Reihen (6) der zweiten Dimension (3) mit der Bezeichnung einer externen Verknüpfung liegen, der Wert (36) oder die Berechnungsweise der zumindest einen Ver knüpfung eingesetzt ist;
mit dem weiteren Schritt:
zumindest einer fünften speziellen Reihe (34) der ersten Di mension (2) der Zwischenformattabelle (1) eine Angabe über den Wert oder die Berechnungsweise der zumindest einen Ver knüpfung zugewiesen ist; und
jeweils in diejenigen Zellen, die am Kreuzungspunkt der zu mindest einen fünften speziellen Reihe und einer der Reihen der zweiten Dimension (3) mit der Bezeichnung einer internen Verknüpfung und/oder der Reihen (6) der zweiten Dimension (3) mit der Bezeichnung einer externen Verknüpfung liegen, der Wert (36) oder die Berechnungsweise der zumindest einen Ver knüpfung eingesetzt ist;
mit dem weiteren Schritt:
- - Zuweisen des Werts oder der Berechnungsweise der zumindest einen Verknüpfung zu der im Zielprogrammcode erstellten Ver knüpfung.
22. Verfahren nach einem der Ansprüche 17 bis 21, dadurch ge
kennzeichnet, daß
speziellen Titelreihen (24, 25) der Zwischenformattabelle (1) Angaben über die Bezeichnungen des zumindest einen Ob jekts, der zumindest einen Verknüpfung und/oder der zumindest einen Konstanten zugewiesen sind; und
wobei die Bezeichnungen in Zellen (29, 30, 31, 37) der Titel reihen (24, 25) eingesetzt sind;
mit dem weiteren Schritt:
speziellen Titelreihen (24, 25) der Zwischenformattabelle (1) Angaben über die Bezeichnungen des zumindest einen Ob jekts, der zumindest einen Verknüpfung und/oder der zumindest einen Konstanten zugewiesen sind; und
wobei die Bezeichnungen in Zellen (29, 30, 31, 37) der Titel reihen (24, 25) eingesetzt sind;
mit dem weiteren Schritt:
- - Benennen des zumindest einen Programmcode-Objekts, der zu mindest einen Verknüpfung und/oder der zumindest einen Kon stanten anhand der Bezeichnungen in den Zellen (29, 30, 31, 37) der Titelreihen (24, 25) der Zwischenformattabelle (1).
23. Verfahren nach einem der Ansprüche 17 bis 22, dadurch ge
kennzeichnet, daß
zumindest in eine Zelle einer zu einem Objekt gehörenden Rei he der ersten Dimension ein Verweis auf eine Subformattabelle eingesetzt ist;
mit dem weiteren Schritt:
zumindest in eine Zelle einer zu einem Objekt gehörenden Rei he der ersten Dimension ein Verweis auf eine Subformattabelle eingesetzt ist;
mit dem weiteren Schritt:
- - Verbinden des aus dem Objekt erzeugten Programmcode-Objekts mit aus der Subformattabelle erzeugten Subprogrammcode.
24. Verfahren nach einem der Ansprüche 17 bis 23, dadurch ge
kennzeichnet, daß
zumindest in eine Zelle der zu einem Objekt gehörenden Reihe der ersten Dimension ein Verweis auf als separate Einheit gespeicherten Quellprogrammcode eingesetzt ist;
mit dem weiteren Schritt:
zumindest in eine Zelle der zu einem Objekt gehörenden Reihe der ersten Dimension ein Verweis auf als separate Einheit gespeicherten Quellprogrammcode eingesetzt ist;
mit dem weiteren Schritt:
- - Verbinden des aus dem zumindest einen Objekt erzeugten Pro grammcode-Objekts mit dem als separate Einheit gespeicherten Quellprogrammcode.
25. Zwischenformattabelle (1) zur Speicherung von in einem
Programmcode enthaltenen Schnittstelleninformationen in einer
Rechenanlage
mit zumindest zwei Dimensionen;
mit in einer ersten Dimension (2) angeordneten Reihen, in einer zweiten Dimension (3) angeordneten Reihen und Zellen an den Kreuzungspunkten der ersten und zweiten Reihen,
wobei Reihen (4) der ersten Dimension (2) Bezeichnungen für zumindest ein Objekt in dem Programmcode zugewiesen sind;
wobei Reihen (5, 6) der zweiten Dimension (3) Bezeichnungen für zumindest eine interne Verknüpfung zwischen Objekten und/oder Bezeichnungen für zumindest eine externe Verknüp fung des Programmcodes zugewiesen sind; und
wobei jeweils in diejenigen Zellen (7), die am Kreuzungspunkt einer der Reihen (4) der ersten Dimension (2) mit der Be zeichnung eines Objekts und einer der Reihen (5) der zweiten Dimension (3) mit der Bezeichnung einer internen Verknüpfung liegen, Bezeichnungen für eine zu sowohl dem jeweiligen Ob jekt als auch der internen Verknüpfung gehörigen Ausgangs schnittstelle und/oder Eingangsschnittstelle eingesetzt sind und/oder
jeweils in diejenigen Zellen, die am Kreuzungspunkt einer der Reihen (4) der ersten Dimension (2) mit der Bezeichnung eines Objekts und einer der Reihen (6) der zweiten Dimension (3) mit der Bezeichnung einer externen Verknüpfung liegen, Be zeichnungen für die zu sowohl dem jeweiligen Objekt als auch der externen Verknüpfung gehörigen Ausgangsschnittstelle und/oder Eingangsschnittstelle eingesetzt sind.
mit zumindest zwei Dimensionen;
mit in einer ersten Dimension (2) angeordneten Reihen, in einer zweiten Dimension (3) angeordneten Reihen und Zellen an den Kreuzungspunkten der ersten und zweiten Reihen,
wobei Reihen (4) der ersten Dimension (2) Bezeichnungen für zumindest ein Objekt in dem Programmcode zugewiesen sind;
wobei Reihen (5, 6) der zweiten Dimension (3) Bezeichnungen für zumindest eine interne Verknüpfung zwischen Objekten und/oder Bezeichnungen für zumindest eine externe Verknüp fung des Programmcodes zugewiesen sind; und
wobei jeweils in diejenigen Zellen (7), die am Kreuzungspunkt einer der Reihen (4) der ersten Dimension (2) mit der Be zeichnung eines Objekts und einer der Reihen (5) der zweiten Dimension (3) mit der Bezeichnung einer internen Verknüpfung liegen, Bezeichnungen für eine zu sowohl dem jeweiligen Ob jekt als auch der internen Verknüpfung gehörigen Ausgangs schnittstelle und/oder Eingangsschnittstelle eingesetzt sind und/oder
jeweils in diejenigen Zellen, die am Kreuzungspunkt einer der Reihen (4) der ersten Dimension (2) mit der Bezeichnung eines Objekts und einer der Reihen (6) der zweiten Dimension (3) mit der Bezeichnung einer externen Verknüpfung liegen, Be zeichnungen für die zu sowohl dem jeweiligen Objekt als auch der externen Verknüpfung gehörigen Ausgangsschnittstelle und/oder Eingangsschnittstelle eingesetzt sind.
26. Zwischenformattabelle nach Anspruch 25, dadurch gekenn
zeichnet, daß eine erste spezielle Reihe (11) der ersten Di
mension (2) zur Angabe des Modus einer externen Schnittstelle
bei der zumindest einen externen Verknüpfung verwendet ist,
und
jeweils in diejenigen Zellen (12), die am Kreuzungspunkt der ersten speziellen Reihe (11) der ersten Dimension (2) und der Reihen (6) der zweiten Dimension (3) mit den Bezeichnun gen der zumindest einen externen Verknüpfung liegen, Angaben (13) über den Modus der externen Schnittstelle bei der zumin dest einen externen Verknüpfung eingesetzt sind.
jeweils in diejenigen Zellen (12), die am Kreuzungspunkt der ersten speziellen Reihe (11) der ersten Dimension (2) und der Reihen (6) der zweiten Dimension (3) mit den Bezeichnun gen der zumindest einen externen Verknüpfung liegen, Angaben (13) über den Modus der externen Schnittstelle bei der zumin dest einen externen Verknüpfung eingesetzt sind.
27. Zwischenformattabelle (1) nach einem der Ansprüche 25
oder 26, dadurch gekennzeichnet, daß
zumindest einer zweiten speziellen Reihe (14) der ersten Di mension (2) eine Angabe der Datentypen der zumindest einen Schnittstelle zugewiesen ist und
jeweils in diejenigen Zellen (15), die am Kreuzungspunkt der zweiten speziellen Reihe (14) und den Reihen (5, 6) der zweiten Dimension (3) mit den Bezeichnungen der zumindest ei nen Verknüpfung liegen, Bezeichungen für die zu der zumin dest einen Verknüpfung gehörigen Datentypen eingesetzt sind.
zumindest einer zweiten speziellen Reihe (14) der ersten Di mension (2) eine Angabe der Datentypen der zumindest einen Schnittstelle zugewiesen ist und
jeweils in diejenigen Zellen (15), die am Kreuzungspunkt der zweiten speziellen Reihe (14) und den Reihen (5, 6) der zweiten Dimension (3) mit den Bezeichnungen der zumindest ei nen Verknüpfung liegen, Bezeichungen für die zu der zumin dest einen Verknüpfung gehörigen Datentypen eingesetzt sind.
28. Zwischenformattabelle (1) nach einem der Ansprüche 25 bis
27, dadurch gekennzeichnet, daß
zumindest einer dritten speziellen Reihe (17) der ersten Di mension (2) eine Angabe der Datentypen zumindest einer in ternen Konstanten und/oder zumindest einer externen Konstan ten aus dem Programmcode zugewiesen ist;
ersten speziellen Reihen (18) der zweiten Dimension (3) Be zeichnungen der zumindest einen internen Konstanten und/oder der zumindest einen externen Konstanten zugewiesen sind; und
jeweils in diejenigen Zellen, die am Kreuzungspunkt der drit ten speziellen Reihe (17) und der ersten speziellen Reihen (18) der zweiten Dimension (3) mit Bezeichnungen der zumin dest einen Konstanten liegen, Bezeichnungen (20) für die zu der zumindest einen Konstanten gehörigen Datentypen einge setzt sind.
zumindest einer dritten speziellen Reihe (17) der ersten Di mension (2) eine Angabe der Datentypen zumindest einer in ternen Konstanten und/oder zumindest einer externen Konstan ten aus dem Programmcode zugewiesen ist;
ersten speziellen Reihen (18) der zweiten Dimension (3) Be zeichnungen der zumindest einen internen Konstanten und/oder der zumindest einen externen Konstanten zugewiesen sind; und
jeweils in diejenigen Zellen, die am Kreuzungspunkt der drit ten speziellen Reihe (17) und der ersten speziellen Reihen (18) der zweiten Dimension (3) mit Bezeichnungen der zumin dest einen Konstanten liegen, Bezeichnungen (20) für die zu der zumindest einen Konstanten gehörigen Datentypen einge setzt sind.
29. Zwischenformattabelle (1) nach Anspruch 28, dadurch ge
kennzeichnet, daß
zumindest einer vierten speziellen Reihe (21) der ersten Di mension (2) die Angabe eines Werts oder einer Berechnungswei se der zumindest einen Konstanten zugewiesen ist; und
jeweils in diejenigen Zellen (22), die am Kreuzungspunkt der zumindest einen vierten speziellen Reihe (21) und den ersten speziellen Reihen (18) der zweiten Dimension (3) mit Be zeichnungen der zumindest einen Konstanten liegen, der Wert (23) oder die Berechnungsweise (35) der zumindest einen Kon stanten eingesetzt ist.
zumindest einer vierten speziellen Reihe (21) der ersten Di mension (2) die Angabe eines Werts oder einer Berechnungswei se der zumindest einen Konstanten zugewiesen ist; und
jeweils in diejenigen Zellen (22), die am Kreuzungspunkt der zumindest einen vierten speziellen Reihe (21) und den ersten speziellen Reihen (18) der zweiten Dimension (3) mit Be zeichnungen der zumindest einen Konstanten liegen, der Wert (23) oder die Berechnungsweise (35) der zumindest einen Kon stanten eingesetzt ist.
30. Zwischenformattabelle (1) nach einem der Ansprüche 25 bis
29, dadurch gekennzeichnet, daß
zumindest einer fünften speziellen Reihe (34) der ersten Di mension (2) die Angabe eines Werts (36) oder einer Berech nungsweise der zumindest einen Verknüpfung zugewiesen ist; und
jeweils in diejenigen Zellen, die am Kreuzungspunkt der zu mindest einen fünften speziellen Reihe (34) und einer der Reihen (5) der zweiten Dimension (3) mit der Bezeichnung ei ner internen Verknüpfung und/oder der Reihen (6) der zweiten Dimension (3) mit der Bezeichnung einer externen Verknüpfung liegen, der Wert oder die Berechnungsweise der zumindest ei nen Verknüpfung eingesetzt ist.
zumindest einer fünften speziellen Reihe (34) der ersten Di mension (2) die Angabe eines Werts (36) oder einer Berech nungsweise der zumindest einen Verknüpfung zugewiesen ist; und
jeweils in diejenigen Zellen, die am Kreuzungspunkt der zu mindest einen fünften speziellen Reihe (34) und einer der Reihen (5) der zweiten Dimension (3) mit der Bezeichnung ei ner internen Verknüpfung und/oder der Reihen (6) der zweiten Dimension (3) mit der Bezeichnung einer externen Verknüpfung liegen, der Wert oder die Berechnungsweise der zumindest ei nen Verknüpfung eingesetzt ist.
31. Zwischenformattabelle (1) nach einem der Ansprüche 25 bis
30, dadurch gekennzeichnet, daß
speziellen Titelreihen (24, 25) Angaben über die Original bezeichnungen (26, 27, 28, 38) zugewiesen sind, welche das zumindest eine Objekt, die zumindest eine Verknüpfung und/oder die zumindest eine Konstante im Programmcode aufwei sen; und
die Originalbezeichnungen (26, 27, 28, 38) in Zellen (29, 30, 31, 37) der Titelreihen (24, 25) eingesetzt sind.
speziellen Titelreihen (24, 25) Angaben über die Original bezeichnungen (26, 27, 28, 38) zugewiesen sind, welche das zumindest eine Objekt, die zumindest eine Verknüpfung und/oder die zumindest eine Konstante im Programmcode aufwei sen; und
die Originalbezeichnungen (26, 27, 28, 38) in Zellen (29, 30, 31, 37) der Titelreihen (24, 25) eingesetzt sind.
32. Zwischenformattabelle (1) nach einem der Ansprüche 25 bis
31, dadurch gekennzeichnet, daß die Bezeichnungen (8) der zu
mindest einen Schnittstelle zusammengesetzt sind aus einem
Identifzierer für die jeweilige Schnittstelle und zumindest
einer Angabe, die ausgewählt ist aus einer Kennzeichnung des
Modus der Schnittstelle, des Datentyps der Schnittstelle, ei
nes Vorgabewerts und der Angabe einer auf die Schnittstelle
anzuwendenden Datentypkonvertierungsfunktion.
33. Zwischenformattabelle (1) nach einem der Ansprüche 25 bis
32, dadurch gekennzeichnet, daß beliebige Zellen der Zwi
schenformattabelle Annotationen enthalten können, welche der
Steuerung von Programmen zu Analyse der in der Zwischenfor
mattabelle enthaltenen Informationen und/oder zur Information
eines Anwenders dienen können.
34. Zwischenformattabelle nach Anspruch 33, dadurch gekenn
zeichnet, daß zumindest eine weitere Dimension der Zwischen
formattabelle den Annotationen zugeordnet ist, wobei Reihen
der weiteren Dimension bestimmte Typen von Annotationen zuge
wiesen sind und eine einzusetzende Annotation an den Kreu
zungspunkten der Reihen der ersten und der zweiten Dimensio
nen (2, 3), die für die Annotation maßgeblich sind, mit der
Reihe der weiteren Dimension, die dem einzusetzenden Typ von
Annotation zugewiesen ist, die Annotation eingesetzt wird.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE19947892A DE19947892C2 (de) | 1999-10-05 | 1999-10-05 | Verfahren zur Umsetzung von Schnittstellendefinitionen und Zwischenformattabelle dafür |
US09/680,370 US6968544B1 (en) | 1999-10-05 | 2000-10-05 | Method for transformation of interface definitions and intermediate format tables thereof |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE19947892A DE19947892C2 (de) | 1999-10-05 | 1999-10-05 | Verfahren zur Umsetzung von Schnittstellendefinitionen und Zwischenformattabelle dafür |
Publications (2)
Publication Number | Publication Date |
---|---|
DE19947892A1 true DE19947892A1 (de) | 2001-04-19 |
DE19947892C2 DE19947892C2 (de) | 2003-11-13 |
Family
ID=7924526
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE19947892A Expired - Fee Related DE19947892C2 (de) | 1999-10-05 | 1999-10-05 | Verfahren zur Umsetzung von Schnittstellendefinitionen und Zwischenformattabelle dafür |
Country Status (2)
Country | Link |
---|---|
US (1) | US6968544B1 (de) |
DE (1) | DE19947892C2 (de) |
Families Citing this family (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6326988B1 (en) * | 1999-06-08 | 2001-12-04 | Monkey Media, Inc. | Method, apparatus and article of manufacture for displaying content in a multi-dimensional topic space |
US8521708B2 (en) * | 2003-01-22 | 2013-08-27 | Siemens Industry, Inc. | System and method for developing and processing building system control solutions |
US7581081B2 (en) | 2003-03-31 | 2009-08-25 | Stretch, Inc. | Systems and methods for software extensible multi-processing |
US7613900B2 (en) | 2003-03-31 | 2009-11-03 | Stretch, Inc. | Systems and methods for selecting input/output configuration in an integrated circuit |
US8001266B1 (en) | 2003-03-31 | 2011-08-16 | Stretch, Inc. | Configuring a multi-processor system |
US7590829B2 (en) * | 2003-03-31 | 2009-09-15 | Stretch, Inc. | Extension adapter |
US7373642B2 (en) * | 2003-07-29 | 2008-05-13 | Stretch, Inc. | Defining instruction extensions in a standard programming language |
US7418575B2 (en) * | 2003-07-29 | 2008-08-26 | Stretch, Inc. | Long instruction word processing with instruction extensions |
US8984496B2 (en) * | 2004-09-20 | 2015-03-17 | The Mathworks, Inc. | Extensible internal representation of systems with parallel and sequential implementations |
US9774699B2 (en) * | 2005-09-20 | 2017-09-26 | The Mathworks, Inc. | System and method for transforming graphical models |
US20080046861A1 (en) * | 2006-08-15 | 2008-02-21 | Grieser Maria A | Method and interface for creating a workbook to implement a business process |
US8677316B2 (en) * | 2010-05-12 | 2014-03-18 | Microsoft Corporation | Enforcement of architectural design during software development |
CN103475552B (zh) * | 2012-06-05 | 2017-05-31 | 帝斯贝思数字信号处理和控制工程有限公司 | 用于干扰控制装置的总线通信的方法 |
US10089089B2 (en) * | 2015-06-03 | 2018-10-02 | The Mathworks, Inc. | Data type reassignment |
US11237802B1 (en) | 2020-07-20 | 2022-02-01 | Bank Of America Corporation | Architecture diagram analysis tool for software development |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE4408106A1 (de) * | 1993-06-08 | 1994-12-15 | Siemens Ag | Verfahren zur Simulation einer in EDIF beschriebenen Schaltung mit einem VHDL-Simulator auf einem Rechner |
WO1998053413A1 (en) * | 1997-05-23 | 1998-11-26 | Symbios, Inc. | Method for generating format-independent electronic circuit representations |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5513119A (en) * | 1993-08-10 | 1996-04-30 | Mitsubishi Semiconductor America, Inc. | Hierarchical floorplanner for gate array design layout |
US5671416A (en) * | 1995-02-24 | 1997-09-23 | Elson; David | Apparatus and a method for searching and modifying source code of a computer program |
US5943674A (en) * | 1996-07-11 | 1999-08-24 | Tandem Computers Incorporated | Data structure representing an interface definition language source file |
US6519755B1 (en) * | 1999-08-16 | 2003-02-11 | Sequence Design, Inc. | Method and apparatus for logic synthesis with elaboration |
US6581191B1 (en) * | 1999-11-30 | 2003-06-17 | Synplicity, Inc. | Hardware debugging in a hardware description language |
-
1999
- 1999-10-05 DE DE19947892A patent/DE19947892C2/de not_active Expired - Fee Related
-
2000
- 2000-10-05 US US09/680,370 patent/US6968544B1/en not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE4408106A1 (de) * | 1993-06-08 | 1994-12-15 | Siemens Ag | Verfahren zur Simulation einer in EDIF beschriebenen Schaltung mit einem VHDL-Simulator auf einem Rechner |
WO1998053413A1 (en) * | 1997-05-23 | 1998-11-26 | Symbios, Inc. | Method for generating format-independent electronic circuit representations |
Also Published As
Publication number | Publication date |
---|---|
US6968544B1 (en) | 2005-11-22 |
DE19947892C2 (de) | 2003-11-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE19947892C2 (de) | Verfahren zur Umsetzung von Schnittstellendefinitionen und Zwischenformattabelle dafür | |
DE69233037T2 (de) | Automatisiertes neues Layout mit dimensionaler Verknüpfung | |
DE602005005924T2 (de) | Einheitliches Datenformat für Messgeräte | |
DE69931004T2 (de) | Verfahren und Vorrichtung zur Datenverarbeitung | |
DE60310431T2 (de) | Verfahren zum erzeugen eines computerlesbaren modelles | |
DE10308725A1 (de) | System und Verfahren zum Verwalten und zum Austausch von Daten eines technischen Projektes, einer technischen Anlage sowie einzelner Anlagenkomponenten | |
DE60209631T2 (de) | Verfahren zur Programmierung einer Automatisierungsapplikation | |
DE2839736A1 (de) | Programmierungsgeraet fuer numerische steuerungssysteme | |
DE10025583A1 (de) | Verfahren zur Optimierung integrierter Schaltungen, Vorrichtung zum Entwurf von Halbleitern und Programmobjekt zum Entwerfen integrierter Schaltungen | |
DE69532307T2 (de) | Ausdrucks-Propagierung für hierarchisches Netzlisten | |
WO2000011581A1 (de) | Verfahren zur fortschrittlichen mengenorientierten kostenzuweisung unter verwendung verschiedener informationsquellen | |
DE112009004306T5 (de) | Programmanalysenunterstützungsvorrichtung | |
DE4303071A1 (de) | Verfahren und Vorrichtung zur Randbewertung in einer Nicht-Mannigfaltigkeits-Umgebung | |
DE10149693A1 (de) | Objekte in einem Computersystem | |
DE10150387A1 (de) | CAD-Datenmodell mit Entwurfsnotizen | |
WO2010124853A2 (de) | Verfahren zur erzeugung mindestens einer anwendungsbeschreibung | |
EP2439691A1 (de) | Vorrichtung und Verfahren zum maschinellen Erstellen eines Prozessdiagramms | |
DE60224271T2 (de) | Datenverarbeitungsverfahren, datenverarbeitungsprogramm und datenverarbeitungsvorrichtung | |
EP1036352B1 (de) | Verfahren zur bildschirmgestützten definition und parametrierung von schnittstellen | |
EP1920357A1 (de) | Migration und transformation von datenstrukturen | |
DE4417393A1 (de) | Eine Methode zur Herstellung spezifischer Programm-Systeme und Sammlungen von Unterstützungsprogrammen (Tools) zur Erleichterung von Programmsystem-Herstellungsarbeiten | |
EP1750209A1 (de) | Verfahren und Vorrichtung zur automatischen Darstellung von in Datenbereichen geordneten Daten | |
DE19962787A1 (de) | Verfahren zur Behandlung von Datenobjekten | |
EP0206214B1 (de) | Verfahren zur einheitlichen symbolischen Beschreibung von Dokumentenmustern in Form von Datenstrukturen in einem Automaten | |
DE102018217114A1 (de) | Verfahren und Anordnung zur Speicherbedarfsermittlung, um mittels einer Grafikprozessoreinheit auf FEM-Knotennetzen basierte Simulationen durchzuführen |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OP8 | Request for examination as to paragraph 44 patent law | ||
8304 | Grant after examination procedure | ||
8364 | No opposition during term of opposition | ||
8339 | Ceased/non-payment of the annual fee |