Rechtsprechung / BPatG / 2008
BPatG Beschluss vom 09.12.2008 – 17 W (pat) 101/05
17. Senat
BUNDESPATENTGERICHT
17 W (pat) 101/05 _______________
(Aktenzeichen)
Verkündet am 9. Dezember 2008
…
B E S C H L U S S
In der Beschwerdesache
betreffend die Patentanmeldung 197 14 681.3-53
…
hat der 17. Senat (Technischer Beschwerdesenat) des Bundespatentgerichts auf
die mündliche Verhandlung vom 9. Dezember 2008 unter Mitwirkung des
Vorsitzenden Richters Dipl.-Phys. Dr. Fritsch, der Richterin Eder, des Richters
Dipl.-Ing. Baumgardt sowie der Richterin Dipl.-Ing. Wickborn 08.05
beschlossen:
Auf die Beschwerde der Anmelderin wird der Beschluss der Prüfungsstelle für Klasse G06F des Deutschen Patent- und Markenamts vom 12. April 2005 aufgehoben und das Patent mit folgenden Unterlagen erteilt:
Patentansprüche 1-9 und Beschreibung Seite 3, jeweils überreicht
in der mündlichen Verhandlung,
Beschreibung Seiten 4 und 5 vom 19. August 2003, eingegangen
am 20. August 2003,
Beschreibung Seiten 1, 2, 7 und 19 vom 3. Dezember 1998,
Beschreibung Seiten 6, 8-18, 20 und 21 und
20 Blatt Zeichnungen mit 22 Figuren, jeweils vom Anmeldetag.
G r ü n d e :
I.
Die vorliegende Patentanmeldung 197 14 681.3-53 mit der Bezeichnung:
„Speichersteuergerät“
ist am 9. April 1997 unter Inanspruchnahme einer japanischen Priorität vom
10. April 1996 beim Deutschen Patent- und Markenamt eingereicht worden.
Sie wurde durch Beschluss der Prüfungsstelle für Klasse G 06 F des Deutschen
Patent- und Markenamts vom 12. April 2005 mit der Begründung zurückgewiesen,
der Gegenstand des Patentanspruchs 1 beruhe nicht auf erfinderischer Tätigkeit.
Gegen diesen Beschluss ist die Beschwerde der Anmelderin gerichtet. Sie stellt
den Antrag,
den angefochtenen Beschluss aufzuheben und das nachgesuchte
Patent mit folgenden Unterlagen zu erteilen:
Patentansprüche 1-9 und Beschreibung Seite 3,
jeweils
überreicht in der mündlichen Verhandlung,
Beschreibung Seiten 4 und 5 vom 19. August 2003, eingegangen am 20. August 2003,
Beschreibung Seiten 1, 2, 7 und 19 vom 3. Dezember 1998,
Beschreibung Seiten 6, 8-18, 20 und 21 und
20 Blatt Zeichnungen mit 22 Figuren, jeweils vom Anmeldetag.
Der Patentanspruch 1, hier mit einer denkbaren Gliederung versehen, lautet:
„Speichersteuergerät zur Verwendung in einem Computersystem mit
einem Hauptspeicher (7), einer einen Cache-Speicher (1c) enthaltenden
CPU (1) und einer DMA-Vorrichtung (2), die imstande ist, einen direkten
Speicherzugriff auf den Hauptspeicher (7) vorzunehmen, wobei das Speichersteuergerät einen Datenzugriff auf den Hauptspeicher steuert, und
wobei das Speichersteuergerät umfaßt:
a)
einen ersten Adreßbereich, der in einem Speicherbereich des Hauptspeichers (7) zugewiesen ist und erlaubt, dass Daten von dem ersten
Adreßbereich in den Cache-Speicher (1c) in der CPU (1) geladen werden,
aber einen Datenzugriff von der DMA-Vorrichtung (2) auf den ersten
Adreßbereich verhindert,
b)
und einen zweiten Adreßbereich, der im Speicherbereich des Hauptspeichers zugewiesen ist und einen Datenzugriff von der DMA-Vorrichtung (2) oder der CPU (1) auf den zweiten Adreßbereich erlaubt, aber verhindert, daß Daten von dem zweiten Adreßbereich in den Cache-Speicher (1c) in der CPU (1) geladen werden; mit
c)
einem der CPU (1) und der DMA-Vorrichtung (2) zugänglichen Lesepufferspeicher (3a, 3b), der gestattet, daß im zweiten Adreßbereich des
Hauptspeichers (7) gespeicherte Daten in den Lesepufferspeicher gespeichert werden, und gestattet, daß die geladenen Daten als Antwort auf eine
Datenlesezugriffsanforderung von der CPU (1) oder DMA-Vorrichtung (2)
gelesen werden;
d)
einem der CPU (1) und der DMA-Vorrichtung (2) zugänglichen
Schreibpufferspeicher (4a, 4b) zum Speichern von Daten auf Anforderung
durch die CPU (1) oder die DMA-Vorrichtung (2), um in den zweiten
Adreßbereich des Hauptspeichers (7) geschrieben zu werden, und das
e)
einen Steuerteil (6) umfaßt, der eine Steuerung ausführt, wenn die
CPU (1) oder DMA-Vorrichtung (2) eine Datenlesezugriffsanforderung
ausgibt, auf solche Weise, daß,
f)
falls Daten, auf die zugegriffen werden soll, im Lesepufferspeicher (3a, 3b) existieren, die Daten im Lesepufferspeicher (3a, 3b) zur die
Zugriffsleseanforderung ausgebenden CPU (1) oder DMA-Vorrichtung
übertragen werden,
g)
falls Daten, auf die zugegriffen werden soll, im Lesepufferspeicher (3a, 3b) nicht existieren, prüft, ob die Daten, auf die zugegriffen werden soll, in dem Schreibpufferspeicher (4a, 4b) existieren, wobei die
Daten, auf die zugegriffen werden soll, von dem Schreibpufferspeicher (4a, 4b) zur die Zugriffsleseanforderung ausgebenden CPU (1) oder
DMA-Vorrichtung (2) übertragen werden, wenn die Daten, auf die zugegriffen werden soll, in dem Schreibpufferspeicher (4a, 4b) existieren, und,
h)
wenn die Daten, auf die zugegriffen werden soll, in dem Schreibpufferspeicher (4a, 4b) nicht existieren, vom zweiten Adreßbereich des
Hauptspeichers (7) die angeforderten Daten sowie Daten bei Adressen
gelesen werden, die von der Adresse gemäß der Zugriffsleseanforderung
von der CPU (1) oder DMA-Vorrichtung nur in niedrigeren Bits festgelegter
Länge verschieden sind, und die gelesenen Daten in den Lesepufferspeicher (3a, 3b) geladen werden, während die angeforderten Daten zur die
Zugriffleseanforderung ausgebenden CPU (1) oder DMA-Vorrichtung (2)
übertragen werden.“
Hinsichtlich der sich anschließenden Unteransprüche 2-8 wird auf die Akte verwiesen.
Der nebengeordnete Patentanspruch 9 lautet:
„Computersystem mit einem Speichersteuergerät nach einem der vorherigen Ansprüche.“
Ihnen liegt die Aufgabe zugrunde, die Nachteile im Stand der Technik zu überwinden und ein Speichersteuergerät zum Steuern eines Zugriffs auf eine Hauptspeichereinheit von einer CPU ohne Horchfunktion und einer DMA-Vorrichtung zu realisieren, so dass ein Datenzugriff auf die Hauptspeichereinheit mit hoher
Geschwindigkeit vorgenommen werden kann, während die Widerspruchsfreiheit
von Daten zwischen dem Cache-Speicher und der Hauptspeichereinheit bewahrt
wird (Beschreibung S. 3 Abs. 4, eingegangen in der mündlichen Verhandlung).
II.
Die Beschwerde ist frist- und formgerecht eingereicht und auch sonst zulässig.
Sie hat auch Erfolg, da dem nunmehr geltenden Patentbegehren der im Verfahren
zitierte Stand der Technik nicht entgegensteht. Die Beschwerde führt deshalb zur
Aufhebung des angefochtenen Beschlusses und zur Erteilung des nachgesuchten
Patents.
1.
Die Anmeldung betrifft ein Speichersteuergerät und ein Computersystem mit
einem Speichersteuergerät, bei dem die Steuerung des Hochgeschwindigkeitszugriffs von einer CPU mit eigenem Cache und einer DMA-Vorrichtung auf einen
gemeinsamen Hauptspeicher in einem Computersystem erfolgt.
Zur Vermeidung von Datenkonsistenzproblemen zwischen den unabhängig voneinander zum Hauptspeicher zugreifenden Vorrichtungen wird der Hauptspeicher
in zwei Adressbereiche unterteilt. Ein erster Adressbereich ist ausschließlich zum
Zugriff durch den Cache-Speicher der CPU vorgesehen und ein zweiter Adressbereich erlaubt Zugriff sowohl von der DMA-Vorrichtung als auch Zugriff direkt von
der CPU, verhindert aber, dass Daten von diesem Bereich in den Cache-Speicher
der CPU geladen werden.
Um eine Beschleunigung der Lese- und Schreibzugriffe von der DMA-Vorrichtung
und der CPU zum zweiten Adressbereich des Hauptspeichers zu erreichen, sind
mindestens ein Lesepufferspeicher und mindestens ein Schreibpufferspeicher vorgesehen. Diese Puffer haben die Funktion eines I/O-Caches inne und gestatten
das Zwischenspeichern von Daten beim Datenaustausch zwischen der DMA-Vorrichtung bzw. der CPU und dem zweiten Adressbereich des Hauptspeichers. Vorteilhafterweise sind jeweils ein Lese- und Schreibpuffer der CPU und jeweils ein
weiterer Lese- und Schreibpuffer der DMA-Vorrichtung zugeordnet.
Bei Lesezugriffsanforderungen durch die CPU oder die DMA-Vorrichtung wird
zuerst im Lesepufferspeicher und dann im Schreibpufferspeicher überprüft, ob die
gewünschten Daten vorhanden sind, und wenn ja, werden diese Daten an die
anfordernde Vorrichtung übertragen. Wenn diese angeforderten Daten nicht in den
Puffern vorhanden sind, wird ein Zugriff auf den zweiten Adressbereich des Hauptspeichers veranlasst. Dabei erfolgt zur Verringerung der Zugriffszeit für nachfolgende Zugriffe ein vorausschauendes Lesen, so dass mit diesem Zugriff nicht nur
die gewünschten Daten unter der dazugehörigen Adresse angefordert werden,
sondern vorsorglich Daten unter Adressen, die sich in niedrigeren Bits festgelegter
Länge von der angeforderten unterscheiden, so dass der zu dieser Adresse gehörende gesamte Block in den Lesepufferspeicher geladen wird. Sobald die
gewünschten Daten im Lesepufferspeicher vorhanden sind, werden die von einer
der Vorrichtungen angeforderten Daten an diese übertragen.
Bei Schreibzugriffsanforderungen von der DMA-Vorrichtung oder der CPU werden
die in den zweiten Adressbereich des Hauptspeichers zu schreibenden Daten im
Schreibpufferspeicher zwischengespeichert. Zur Vermeidung von Konsistenzproblemen zwischen den Daten im Lese- und Schreibpufferspeicher wird vorab im
Lesepufferspeicher überprüft, ob Daten unter dieser Adresse vorhanden sind.
Falls Daten vorhanden sind, werden diese als ungültig erklärt, da diese nicht mehr
aktuell sind.
Beim Laden der Daten in den Schreibpufferspeicher werden diese bei benachbarten Adressen, falls vorhanden, abgespeichert, um auch beim Leeren des Puffers zum beschleunigten Schreiben der Daten in den Hauptspeicher einen Blockmodus anwenden zu können.
Das Leeren des Schreibpufferspeichers in den zweiten Speicherbereich des
Hauptspeichers erfolgt erst, wenn der Puffer voll ist.
Ausgegangen wird von einem Computersystem, bei dem Datenkonsistenz zwischen einer CPU mit eigenem Cache und dem Hauptspeicher, auf den andere
DMA-Vorrichtungen zugreifen, herzustellen ist. Bei leistungsorientierten CPUs für
Workstations und hochwertige PCs wird dies durch eine Horchfunktion (Snooping
Function) gewährleistet.
Bei preiswerteren Standard-CPUs für z. B. Heimspielmaschinen (z. B. Playstations) und Notebooks wird die Datenkonsistenz jedoch ohne Snooping Function
durch Software gesichert. Dabei kann einem Speicherbereich des Hauptspeichers
der Datenzugriff nur von DMA-Vorrichtungen erlaubt werden, aber verhindert werden, dass Daten von diesem Adressbereich in den Cache-Speicher der CPU
geladen werden können. Wenn auf den gleichen Adressbereich sowohl DMA-Vorrichtungen als auch Cache-Speicher zugreifen dürfen, müssen Daten, die beim
DMA-Start im Cache-Speicher in Übereinstimmung mit den Daten in diesem
Hauptspeicherbereich existieren, für ungültig erklärt werden. Dies reduziert das
Cache-Trefferverhältnis und erhöht damit die Zugriffszeit der CPU zum Hauptspeicher (Beschreibung S. 1 Abs. 2 - S. 3 Abs. 1).
Als zuständiger Fachmann ist hier ein Elektronikingenieur (Uni) anzusehen, der
mehrjährige Berufserfahrung auf dem Gebiet der Speichersteuerungen besitzt.
2.
Der Erteilungsantrag liegt im Rahmen der ursprünglichen Offenbarung.
2.1 Die geltenden Patentansprüche sind zulässig.
Der geltende Anspruch 1 ergibt sich aus dem ursprünglichen Anspruch 1 durch
redaktionelle Änderungen und Klarstellung sowie durch Aufnahme von Merkmalen
des ursprünglichen Anspruchs 3 und den aus den Anmeldeunterlagen S. 3
Z. 23-33, S. 4 Z. 22-26, S. 11 Abs. 2, 3, S. 21 Abs. 1 erkennbaren Merkmalen.
Die Patentansprüche 2, 4, 6 und 8 entsprechen den ursprünglichen Patentansprüchen 2, 4, 6, 8 unter Berücksichtigung der Konkretisierung, wie sie auf S. 3
Z. 27-31, S. 4 Abs. 3 in Verbindung mit S. 8 Z. 1-4 der Anmeldeunterlagen offenbart ist. Die Patentansprüche 3, 5 und 7 entsprechen im Wesentlichen den
ursprünglichen Patentansprüchen 3, 5 und 7 mit redaktionellen Änderungen und
Klarstellungen wie im Patentanspruch 1.
Die Merkmale des Patentanspruchs 9 ergeben sich aus S. 1 Abs. 1 der Anmeldeunterlagen in Verbindung mit den ursprünglichen Ansprüchen 1-8.
2.2 Die Änderungen in der Beschreibung sind durch die ursprüngliche Offenbarung gedeckt bzw. stellen redaktionelle Anpassungen dar. Nicht notwendige
Beschreibungsteile wurden gestrichen und der im Prüfungsverfahren genannte
Stand der Technik berücksichtigt.
3.
Die Vorrichtungen gemäß Anspruch 1 und 9 sind patentfähig, da sie gegenüber dem genannten Stand der Technik neu sind und auf einer erfinderischen
Tätigkeit beruhen.
Im Verfahren befinden sich die im Prüfungsverfahren genannten Druckschriften:
D1 US 5 263 142
D2 Eckelmann, P.: Das Geheimnis von EDO. In: Design & Elektronik 20
vom 4.10.94, S. 40 und 42
Hinsichtlich dieses Standes der Technik sind die Gegenstände des Anspruchs 1
und des Anspruchs 9 neu, da keine der genannten Druckschriften ein Speichersteuergerät mit allen Merkmalen des Anspruchs 1 und kein Computersystem mit
einem Speichersteuergerät mit allen Merkmalen des Anspruchs 9 zeigt. Die beanspruchten Gegenstände beruhen darüber hinaus gegenüber dem genannten
Stand der Technik auch auf einer erfinderischen Tätigkeit.
Aus D1 ist ein Speichersteuergerät zur Verwendung in einem Computersystem mit
einem Hauptspeicher (18), einer CPU (12), einem der CPU zugeordneten Cache-
Speicher (26) und einer DMA-Vorrichtung (14), die imstande ist, einen direkten
Speicherzugriff auf den Hauptspeicher (18) vorzunehmen, entnehmbar, wobei das
Speichersteuergerät einen Datenzugriff auf den Hauptspeicher steuert (Fig. 1b).
Das Computersystem in D1 weist einen einen Lesepufferspeicher und einen
Schreibpufferspeicher (Sp. 5 Z. 6-9, Fig. 4b) enthaltenden I/O-Cache (22) auf
(Sp. 2 Z. 44-49), auf den sowohl die CPU (12) als auch die DMA-Vorrichtung (14)
Zugriff besitzt (Fig. 1b). Im Lesepufferspeicher des I/O-Caches können Daten aus
dem Hauptspeicher gespeichert werden (Sp. 12 Z. 67 - Sp. 13 Z. 22, Fig. 4b) und
die in diesem Puffer vorhandenen Daten können als Antwort auf eine Datenlesezugriffsanforderung von der CPU (im Diagnosebetrieb) oder der DMA-Vorrichtung
gelesen werden (Sp. 17 Z. 59-61) (teilweise Merkmal c). Im Schreibpufferspeicher
des I/O-Caches werden Daten von der CPU (im Diagnosebetrieb) gespeichert
sowie die Daten, die von der DMA-Vorrichtung in den Hauptspeicher geschrieben
werden sollen (Sp. 17 Z. 61-64) (teilweise Merkmal d).
Das Computersystem weist einen Steuerteil (28a, 28b) auf, der eine Steuerung
ausführt, wenn die CPU oder die DMA-Vorrichtung eine Datenzugriffsanforderung
ausgibt (Fig. 1b) (Merkmal e).
Es wird vom Fachmann in D1 auch mitgelesen, dass bei Lesezugriffen auf den
I/O-Cache insgesamt (Sp. 17 Z. 59-61) die gewünschten Daten sowohl im Lese-
als auch im Schreibpufferspeicher gesucht werden und bei einem Treffer die
Daten an die anfordernde Vorrichtung übertragen werden (Merkmale f und g).
Wenn die angeforderten Daten nicht im I/O-Cache existieren, erfolgt ein vorausschauender Zugriff auf den Hauptspeicher und es wird der zu den angeforderten
Daten dazugehörige gesamte Block aus dem Hauptspeicher gelesen (Sp. 18
Z. 4-12, Sp. 23 Z. 21-23). Die vom Hauptspeicher gelesenen Daten werden in den
Lesepufferspeicher des I/O-Caches geladen. Anschließend werden die angeforderten Daten zur anfordernden DMA-Vorrichtung übertragen (Sp. 18 Z. 1-16)
(Merkmal h).
In Fig. 1b sind darüber hinaus zwei parallele Zugriffsrouten zum Hauptspeicher
offenbart: Die CPU 12 kann zum einen über ihren Cache-Speicher 26 auf den
Hauptspeicher 18 zugreifen. Eine parallele Zugriffsroute führt von der CPU 12
über die Schreib-/Lesepuffer des I/O-Caches 22 zum Hauptspeicher (Fig. 1b,
Sp. 7 Z. 20-23). Der aus Fig. 1b ersichtliche Weg von CPU 12 direkt über den I/O-
Cache 22 zum Hauptspeicher 18 dient jedoch zur Diagnose des I/O-Caches 22
und ist aus Gründen der Erhaltung der Datenkonsistenz erforderlich (Sp. 14
Z. 29-36, Sp. 15 Z. 64-67, Sp. 16 Z. 23-29). Diese Verbindung kann deshalb nicht
derart ausgelegt werden, dass von der CPU ausschließlich über den I/O-Cache 26
ein Zugriff auf Daten aus einem den DMA-Vorrichtungen zugeordneten Adressbereich des Hauptspeichers möglich ist. Denn der Cache-Speicher der CPU (Central
Cache 26) besitzt im Unterschied zum Merkmal b des geltenden Patentanspruchs 1 Zugriff auf den gesamten Adressbereich des Hauptspeichers (Sp. 11
Z. 51-68). Bei einem Fehlzugriff zum I/O-Cache (Miss) besteht in D1 die Möglichkeit, auf den Cache-Speicher 26 der CPU zuzugreifen. Um die gewünschten
Daten liefern zu können, muss der Cache-Speicher der CPU Zugriff auf den
gesamten Adressbereich des Hauptspeichers besitzen, bzw. im dem Cache-Speicher der CPU zugänglichen Adressbereich sind auch Daten gespeichert, auf die
von den DMA-Vorrichtungen zugegriffen werden kann. Deshalb ist auch ein
Datenabgleich zwischen I/O-Cache 22 und Cache-Speicher 26 der CPU erforderlich (Rückführung in Fig. 1b, Sp. 11 Z. 16-20, Sp. 19 Z. 52-57).
Der in D1 in Fig. 4a gezeigte VMEbus Adressraum 82 bezieht sich auf den im
System insgesamt verfügbaren Adressraum (Sp. 12 Z. 43-58), der zwar auch den
Hauptspeicheradressbereich enthält, was jedoch nicht den Schluss zulässt, dass
der in dieser Figur gezeigte schraffierte Bereich und der Bereich 84 eine Aufteilung des Hauptspeichers in zwei Adressbereiche mit den beanspruchten ausschließlichen Zugriffsrechten offenbart, sondern lediglich dass im insgesamt verfügbaren Adressraum 82 ein für die DMA-Vorrichtungen reservierter Adressbereich 84 vorgesehen ist (Sp. 12 Z. 58-61).
Der Anmelderin ist somit in der Auffassung zu folgen, dass aus D1 weder ein Hinweis entnehmbar ist, dass ein Datenzugriff von der DMA-Vorrichtung auf einen
ersten Adressbereich des Hauptspeichers verhindert wird (Merkmal a), noch dass
von einem zweiten Adressbereich des Hauptspeichers keine Daten in den Cache-
Speicher geladen werden können (Merkmal b).
Aus D1 sind damit zwar die Merkmale e - h des Anspruchs 1 entnehmbar sowie
die Merkmale c und d ableitbar, nicht jedoch die konkret beanspruchten Zugriffsrechte auf verschiedene Adressbereiche des Hauptspeichers gemäß Merkmal a
und b.
Die D2 bezieht sich auf einen Modus zum seitenweise Lesen von Daten aus
einem DRAM und enthält darüber hinaus keine weiteren Merkmale.
Eine Anregung in Hinsicht auf die konkret beanspruchten Zugriffsrechte auf verschiedene Adressbereiche des Hauptspeichers findet sich somit weder in D1 noch
in D2 noch aus deren Zusammenschau.
Es ist daher anzuerkennen, dass die Vorrichtung nach Patentanspruch 1 auf erfinderischer Tätigkeit beruht und patentfähig ist.
Die abhängigen Ansprüche 2 - 8 beinhalten zweckmäßige Weiterbildungen der
Vorrichtung nach Patentanspruch 1 und sind ebenfalls gewährbar.
Der Patentanspruch 9 wird durch die Merkmale des Patentanspruchs 1 getragen.
Dr. Fritsch
Eder
Baumgardt
Wickborn
Fa