>Benötige ich hierfür einen Zustandsautomaten oder nicht?
Tja, nachdem sich die Geschichte auf mehrere Einzelschritte aufteilen
lässt, z.B.
0) Alles vorbereiten, Adresse+Steuersignale zum RAM initilaisieren
1) Adresse ans RAM anlegen und RAM selektieren
2) Daten einlesen und RAM deselektieren
3) Daten vergleichen, wenn ungleich weiter bei 4, sonst 5
4) Adresse inkrementieren, wenn Adresse<Endadresse weiter bei 1, sonst 6
5) gefunden, fertig, aufräumen
6) nicht gefunden, fertig, aufräumen
Da sieht das Ganze doch nach einer/m Statemachine/Zustandsautomaten aus.
Natürlich könnte ich deine Aufgabe auch so hindrehen, dass ich ohne SM
hinkomme, nur: im realen Leben hilft das gar nichts, da ist die Aufgabe
nur sehr begrenzt umdefinierbar.
>Wann muß ich einen Zustandsautomaten in VHDL bauen?
Du musst State-Machines in VHDL bauen, wenn du VHDL programmierst.
Sonst musst du sie eben in Verilog oder SystemC oder sonstwas bauen oder
auch malen.
Fazit ist aber: idR sind SM eine Methode, ein Design übersichtlich und
leicht erweiterbar zu gestalten.
>Also eine For oder While-Schleife die bei positiver Suche...
Vergiss die for-Schleifen, wie du sie aus anderen Programmiersprachen
kennst. Mit diesen Syntaxelementen wird bei VHDL nur ein wiederholtes
Schreiben des Codes erspart.