Details

Autor: Jens Müller
Titel: Eine digitale Implementierung Zellularer Nichtlinearer Netzwerke
Typ: Dissertation
Fachgebiet: Informationstechnik
Auflage: 1
Sprache: Deutsch
Erscheinungsdatum: 18.03.2015
Lieferstatus: lieferbar
Umfang: 248 Seiten
Bindung: Soft
Preis: 49,00 EUR
ISBN: 9783938860830
Umschlag: (vorn)
Inhaltsverzeichnis: (pdf)


Bestellung

Abstrakt in Englisch

Computer technology is generally moving towards parallel computing. Since clock frequency leads to a considerable increase in power consumption of microprocessors, parallel architectures are utilised to raise the computational performance. However, the growing number of cores demands more and more to perform the challenging task of parallelisation of algorithms in order to exploit the performance ability of the hardware. Besides the general progression in multi-core and many-core design there is a strong demand for massively-parallel architectures with low power dissipation for highly-efficient computation of massive data, especially in image and video processing.
Cellular Nonlinear Networks (CNN) constitute such a paradigm for single instruction/multiple data (SIMD) computers with very fine granularity. Over the last 25 years, they have proved to be suitable for high-speed image processing, medical signal processing, robot control and the solution of nonlinear partial differential equations (PDE). In 1988, the CNN was introduced as an analogue computer, consisting of a large number of small, identical, dynamical, locally coupled systems (cells) that are arranged in a two-dimensional, regular grid. Various analogue and mixed-signal full-custom VLSI designs revealed their exceptional computational performance, making them attractive for the implementation in so-called vision chips for high-speed image pre-processing.
However, the analogue circuitries suffer from very low computational accuracy, volatile memory, and they are susceptible to temperature variations, light incidence and fabrication tolerances. Hence, fully digital architectures will overcome these limitations. As the design of ASICs is costly and time-consuming, emulations of the digital architectures on field-programmable gate arrays (FPGA) offer a wide range of customisation, and thus become attractive for prototyping and the development of systems that require a high degree of flexibility and a superior computational precision.
The aim of this thesis is the development of a general-purpose computer based on the digital emulation of the CNN Universal Machine (CNN-UM) on an FPGA. The proposed system takes advantage of the massively-parallel structure of the CNN and provides full programmability in order to process complex CNN algorithms. This thesis addresses the question of how to derive a digital architecture from a time-discrete representation of the CNN dynamics in order to maximise the computational performance on an implementation with limited resources. Different models are compared concerning their suitability for hardware implementations, and various methods for the mapping of the CNN state equation to processor arrays are studied. Based on this investigation a new architecture is proposed and the implementation on an FPGA is outlined. Finally, an extension with nonlinear coupling weights and its application for on-chip parameter learning is discussed.

Abstrakt in Deutsch

Die Entwicklung der Computertechnik ist stets bestrebt, die Leistungsparameter eines Rechners zu verbessern. Da mit dem Prozessortakt jedoch auch der Energieverbrauch um ein Vielfaches steigt, erlangen parallele Rechnerarchitekturen zunehmend an Bedeutung. Mit steigender Anzahl an Rechenkernen nimmt aber auch die Komplexität der Softwareentwicklung zu, denn ein Programm kann nur dann von der Implementierung auf einem Mehrkernprozessor profitieren, wenn sich die Algorithmen effizient parallelisieren lassen und die Berechnung auf alle Rechenkerne verteilt werden kann. Als Alternative zu Mehrkernprozessoren und Multi-Prozessor-Systemen besteht eine große Nachfrage nach feingranularen Architekturen mit sehr geringer Verlustleistung für die hochgradig parallele Verarbeitung großer Datenmengen.
Zellulare Nichtlineare/Neuronale Netzwerke (CNN) bilden ein Paradigma für multivariate, massiv-parallele Datenverarbeitung und wurden in den vergangenen 25 Jahren in verschiedenen Anwendungen der Hochgeschwindigkeits-Bildverarbeitung, medizinischen Signalverarbeitung, Prozesssteuerung und zur Lösung nichtlinearer partieller Differentialgleichungen eingesetzt. Das CNN wurde ursprünglich als analoger Universalrechner konzipiert, der die Rechenleistung eines Supercomputers auf einem einzigen Schaltkreis versprach. Tatsächlich belegen zahlreiche VLSI-Implementierungen im Analog- und Mixed-Signal-Design die hohe Leistungsfähigkeit von CNNs, die vor allem durch die Integration in Kamerasystemen eine sehr schnelle und energieeffiziente Bildvorverarbeitung ermöglicht.
Aufgrund der geringen Rechengenauigkeit und störanfälligen Signalverarbeitung der analogen Schaltkreise werden zunehmend digitale Architekturen vorgestellt, die robustere und vor allem reproduzierbare Berechnungen ermöglichen. Da die Entwicklung anwendungsspezifischer Schaltkreise mit einem hohen Zeit- und Kostenaufwand verbunden ist, erfolgt die Implementierung der digitalen Architekturen vor allem auf FPGAs, was zusätzliche eine individuelle Anpassung der Hardware an spezifische Problemstellungen erlaubt.
Ziel dieser Arbeit ist die Entwicklung eines Universalrechners, der das inhärent parallele Verarbeitungsprinzip des CNNs mit der Flexibilität und Rechengenauigkeit eines Digitalprozessors verbindet. Damit wird eine Brücke zwischen der enormen Rechengeschwindigkeit analoger Realisierungen und der Flexibilität und Genauigkeit einer Software-Simulation geschlagen, die neue Anwendungsmöglichkeiten für die praktische Signal- und Datenverarbeitung mit CNNs eröffnet. Im Vordergrund steht dabei die Frage, wie ein zeitdiskretes CNN-Modell optimal in eine digitale Architektur überführt werden kann, um die Berechnung beliebiger Algorithmen zu ermöglichen und deren Verarbeitungszeit bei begrenzt verfügbaren Ressourcen zu minimieren. Dafür werden verschiedene Modelle hinsichtlich ihrer Eignung für eine digitale Implementierung verglichen und Verfahren zur Abbildung des bevorzugten Modells auf einem Prozessorarray systematisch untersucht. Die daraus neu entwickelte Architektur sowie die Implementierung auf einem FPGA werden erläutert und mögliche praktische Anwendungsmöglichkeiten werden vorgestellt. Abschließend wird eine Möglichkeit zur Erweiterung des Netzwerkmodells und die Durchführung von Lernverfahren auf der entwickelten Hardware diskutiert.