Der Entwickler kann den Entwurf auf verschiedenen Entwurfsebenen und in verschiedenen Sichten eingeben. Viele Entwurfsschritte können durch ein EDA-Tool vorgenommen werden, ein vollständig automatisierter Ablauf (Silicon Compiler) ist nicht realisierbar, deshalb muss der Entwickler in verschiedenen Stadien des Entwurfs Eingriffe von Hand vornehmen. Der Entwurf kann strukturell (ADD(A, B, C) oder funktionell (C=A+B) eingegeben werden. Die Entwurfseingabe basiert immer auf Verwendung einer Eingabesprache. Häufig wird dem Entwickler die Eingabe durch eine graphische Benutzeroberfläche vereinfacht. Man unterscheidet bei den Eingabesprachen:
1) Datenaustauschsprachen
Diese Sprachen sind für den Austausch von Daten gedacht. Dabei handelt es sich hauptsächlich um einen maschinellen Austausch.
2) Beschreibungssprachen
Diese Sprachen dienen zur Beschreibung von Daten/Informationen auf einer Ebene mit einem höheren Abstraktionsgrad. Sie sind für die Benutzung durch den Menschen ausgelegt.