7 research outputs found

    Implementierung algorithmischer Optimierungen für Volume-Rendering in Hardware

    Full text link
    Diese Arbeit beschäftigt sich mit der Beschleunigung von Volumenvisualisierung. Bei der Volumenvisualisierung, auch englisch Volume-Rendering genannt, wird versucht, dreidimensionale Datensätze in einem anschaulichen zweidimensionalen Bild darzustellen. Da dies sehr hohe Ansprüche an Rechenleistung und Speicher stellt, ist es für einen interaktiven Umgang mit den Daten, zum Beispiel bei der Rotation eines gezeigten Objektes, notwendig, zur Beschleunigung spezielle Hardware-Systeme zu entwickeln. Es werden zuerst die wichtigsten Algorithmen für die Volumenvisualisierung vorgestellt und bereits existierende Volume-Rendering-Systeme erläutert. Hauptinhalt dieser Arbeit ist die Beschreibung einer neuartigen Architektur für ein Hardware-System zur Echtzeitvisualisierung dreidimensionaler Datensätze mit dem Ray-Casting-Algorithmus. Bei diesem Algorithmus wird von der Bildebene aus, für jeden Bildpunkt ein Sehstrahl durch das Volumen gelegt. Entlang des Strahlverlaufes wird das Volumen in regelmäßigen Abständen abgetastet und für jeden Abtastpunkt eine Reflexion zum Beobachter bestimmt. Auf dem Weg der Reflexionen zum Beobachter wird eine Absorption berücksichtigt und das Restlicht aller Reflexionen aufsummiert. Die Summe entspricht der Helligkeit und Farbe des Bildpunktes. Für diesen Algorithmus existieren zur Beschleunigung Optimierungstechniken, die zur Erzeugung eines Bildes, nur die unbedingt notwendigen Teile des Volumendatensatzes aus dem Hauptspeicher auslesen. Für die Echtzeitvisualisierung großer Datensätze ist deshalb eine Umsetzung der Optimierungstechniken in Hardware unbedingt notwendig. Durch sie wird allerdings ein wahlfreier Zugriff auf den Speicher notwendig und der Bearbeitungsablauf ist nicht mehr deterministisch, weshalb bisher existierende Hardware-System auf deren Umsetzung verzichten haben. In dieser Arbeit wird erstmals ein Verfahren vorgestellt, das diese Optimierungstechniken ohne Verluste in Hardware implementiert. Das Verfahren basiert auf der genauen Abstimmung dreier wesentlicher Teile: 1.Einem Pipeline-Prozessor zur parallelen Abarbeitung eines Teilbildes als Multithreading-Architektur. Multithreading bezieht sich hierbei auf den schnellen Wechsel zwischen parallel abzuarbeitenden Sehstrahlen. Hierdurch werden Verzögerungszeiten überbrückt, die bei der Berechnung der Optimierungstechniken und zwischen Adressierung und Datenauslesen des Volumenspeichers entstehen. 2.Einer optimal angepassten Speicherarchitektur, die in den Speicherbausteinen enthaltene Puffer als schnellen Zwischenspeicher (Cache) verwendet und räumlich benachbarte Volumendaten schneller abrufbar macht. 3.Einer Sortiereinrichtung, die Sehstrahlen bevorzugt bearbeitet, die bereits im Zwischenspeicher liegende Daten verwenden, um zeitraubende Seitenwechsel in den Speichern zu minimieren. Ziel war es, das System auf programmierbaren Logikbausteinen (FPGA) mit externem Hauptspeicher implementierbar zu machen, um es als Beschleunigerkarte in Standard-PCs verwenden zu können. Die Effizienz der Architektur wurde über eine C++-Simulation nachgewiesen, wogegen die Implementierbarkeit durch eine Hardware-nahe VHDL-Simulation mit anschließender Synthese überprüft wurde. Die einzelnen Aspekte der Architektur wurden auf mehreren Konferenzen vorgestellt und in der Zeitschrift IEEE Computer & Graphics veröffentlicht. Weiterhin wurde das Verfahren unter der Nummer WO9960527 beim Deutschen Patent- und Markenamt international angemeldet

    Solving the Hazard Problem for Algorithmically Optimized Volume Rendering

    Full text link
    One of the most difficult problems in volume rendering hardware architectures is to provide an efficient hardware integration of algorithmic optimization techniques like, space leaping and early ray termination. An architecture, which solves this problem, is presented in this paper. It is based on a multithreaded approach that overcomes branch hazards caused by these algorithmic optimization techniques. Additionally, a new memory architecture suitable for the multithreaded processing of rays is presented. Simulations show efficiencies of up to 97% (only 3% idle time) for the full system. A frame rate of 132 Hz for a data set of 256 256 128 and up to 4 Hz for 1024 3 voxels has been found by simulation

    Volume Rendering FPGA Hardware

    Full text link
    corecore