Ausgangspunkt für den Entwurf des Signalverarbeitungsteils eines Systems ist seine Spezifikation, in der die gewünschten Funktionen, die das System ausführen soll, beschrieben sind. Entsprechend der vorgenommenen Aufteilung in einen universellen Standardprozessor und spezifische ICs besteht der erste Teil der Entwurfsaufgabe darin zu entscheiden, welche der gewünschten Funktionen in – auf dem universellen Prozessor abzulaufende – Software und welche unmittelbar in – durch spezifische ICs zu realisierende – Hardware implementiert werden sollen.
Der Entscheidungsprozess, welche Funktionen in Software bzw. in Hardware ausgeführt werden sollen, ist Gegenstand der sogenannten Hardware/Software-Partitionierung. Sie ist ein aktueller Forschungsgegenstand, jedoch nicht Gegenstand dieser Vorlesung, die sich auf Werkzeuge für den Hardwareentwurf beschränkt. Wie das Bild Hardware/Software - Partionierung zeigt, weist der Entwurf auf der gewählten, noch sehr abstrakten Betrachtungsebene große Ähnlichkeit mit dem Softwareentwurf auf. Die zu realisierende (Teil-)Funktion muss zunächst in einer geeigneten - maschinenlesbaren - Sprache beschrieben werden. Dies erfolgt beim Softwareentwurf in einer höheren Programmiersprache wie z.B. C, C++ oder Java. Auf der Hardwareseite wird das entsprechende Äquivalent als Hardware-Beschreibungssprache bezeichnet. Die am weitesten verbreiteten Hardwarebeschreibungssprachen sind Verilog und VHDL; dabei handelt es sich um formale, programmiersprachenähnliche Beschreibungen, die in der Lage sind, neben arithmetischen Ausdrücken, Kontrollanweisungen etc. auch Hardwarestrukturen und -eigenschaften zu beschreiben.