Hallo! Die im angehängten Bild dargestellte Schaltung ist den Entwurfsrichtlinien des ASIC- und FPGA-Herstellers Atmel entnommen. Nun muss ich folgende Frage beantworten: Laut Atmel soll die Schaltung beim Entwurf eines ASIC oder FPGA nicht verwendet werden. Begründen Sie diese Vorschrift. Wie steht es um die Funktionssicherheit eines Gesamtentwurfs, wenn die Schaltung dennoch verwendet wird? Das Einzige was mir einfällt ist: Ausgang Q des ersten FlipFlops geht in den asynchronen Reset des zweiten FlipFlops, auch bei einem Reset kann ein metastabilier Zustand eintreten was kann ich da noch dazuschreiben?
rhood schrieb: > auch bei einem Reset kann ein metastabilier Zustand eintreten nein, sondern es wird mit hoher Wahrscheinlichkeit ständig solche Effekte geben. Zudem ist es ja kein asynchroner Reset mehr.
Selbständiger schrieb: > nein, sondern es wird mit hoher Wahrscheinlichkeit ständig solche > Effekte geben. Zudem ist es ja kein asynchroner Reset mehr. weshalb mit hoher Wahrscheinlichkeit?
rhood schrieb: > Nun muss ich folgende Frage beantworten: ... Diese Frage kannst du nur dann exakt beantworten, wenn du den genauen Aufbau und die zeitlichen Anforderungen des zweiten Flipflops kennst. Urigerweise ist nämlich nicht das Eintreten in den Resetzustand kritisch (irgendwann hat es jedes Flipflop mitbekommen, dass da ein Reset anliegt), sondern das Verlassen des Resetzustandes. Denn wenn da 1 Flipflop nicht mitbekommt, dass der Reset weg ist, dann laufen z.B. 9 Flipflops einer FSM schon mal los, und eines komt erst einen Takt später... > Ausgang Q des ersten FlipFlops geht in den asynchronen Reset des zweiten > FlipFlops Woher weißt du, dass das ein asynchroner Reset ist? > auch bei einem Reset kann ein metastabilier Zustand eintreten Warum? > Laut Atmel soll die Schaltung beim Entwurf eines ASIC oder FPGA nicht > verwendet werden. Begründen Sie diese Vorschrift. Die Begründung würde mich auch interessieren. Da fiele mir bestenfalls ein, dass die Resettimings bei dem zweiten Flipflop oder die Taktverteilung des FPGAs extrem ungünstig sein könnten, und deshalb diese übliche Art eines einsynchronisierten Resets nicht möglich ist. Aber wenn man sich den zeitlichen Ablauf beim Verlassen des Resets ansieht, dann kann da nichts passieren. Der Eintritt in den Reset ist wie gesagt erst mal uninteressant. Ich kann mir bestenfalls vorstellen, dass das Ganze irgendwie mit einem globalen Resetnetz vs. lokalem Reset zu tun haben könnte... Oder es könnte damit zu tun haben, dass vor das erste Flipflop nochmal eines müsste (das nullte quasi), dass auch tatsächlich an diesem ersten Flipflop kein metastabiler Zustand den Reset des zweiten Flipflops "so halb" ansteuern könnte... Aber da sind wir schon sehr im Konjunktiv unterwegs und bräuchten mehr Informationen zum drumrum... > Wie steht es um die Funktionssicherheit eines > Gesamtentwurfs, wenn die Schaltung dennoch verwendet wird? Sie wurde in zigtausenden VHDL-Büchern so gelehrt und wird weltweit in zigmillionen Hardwareaufbauten so verwendet. Interessant wäre allerdings die Antwort auf die Frage: was schlägt Atmel denn als Alternative vor?
:
Bearbeitet durch Moderator
Wahrscheinlich überdeckt die STA solche Pfade nicht. Angenommen R ist asynchron, dann fasst ein Period constraint dies nicht, der Pfad ist also unconstrained und kann irgendwie lang sein. Man muss also für diesen Pfad (oder Pfadklasse) ein eigenes constraint definieren (oder per Hand routen). Ferner ist der R-Eingang dann "verbraucht" und kann nicht für seine "eigentliche" Aufgabe (wenn er denn eine hat) benutzt werden. Insgesamt kann man diese Frage nur dann vollständig beantworten, wenn Details der Atmel-Technologie genannt werden. Aus der Aufgabenstellung wird schon mal nicht klar ob FPGA oder ASIC. Das ist von Bedeutung wenn es um die Initialisierung nach PowerUp geht. Bei FPGAs ist durch die Konfiguration der Intit-Wert eindeutig festgelegt, bei ASIC's dagegen muß der Init-Zustand durch das globale Reset-Netzwerk und den PowerUp reset gesetzt werden (was in diesem Fall die "eigentliche" Aufgabe des R-Inputs ist). MfG,
Lothar Miller schrieb: > Ich kann mir bestenfalls vorstellen, dass das Ganze irgendwie mit einem > globalen Resetnetz vs. lokalem Reset zu tun haben könnte... ganz schwache Erinnerung an mein ASCI-Entwurfs-Projekt an der Uni von 2007/2008 ... bringen irgendwie die Worte Clock und globaler Reset und den Satz von Lothar in Verbindung. Sowas wie globaler Reset darf das einzige asynchrone Signal im Design sein und wird speziell vom Synthesetool behandelt wie die Clock... das ist mir auch noch in Erinnerung.
Lothar Miller schrieb: > Aber da sind wir schon sehr im Konjunktiv unterwegs und bräuchten mehr > Informationen zum drumrum... Lothar Miller schrieb: > Interessant wäre allerdings > die Antwort auf die Frage: was schlägt Atmel denn als Alternative vor? Problem ist, dass das ein Beispiel von einer Musterklausur ist und ich daher nicht weiß von welchem Datenblatt,... der Professor das übernommen hat, und kann somit euch keine weiteren Infos liefern. Ich glaub ich werd den Professor nach den Ferien mal fragen :)
rhood schrieb: > Ich glaub ich werd den Professor nach den Ferien mal fragen :) Lass uns dann bitte die Antwort wissen.
Ich hab mal 3 Minuten nach "design rules atmel reset FPGA" gegoogelt und bin auf dieses gestossen: http://www.google.de/url?sa=t&rct=j&q=&esrc=s&frm=1&source=web&cd=7&cad=rja&ved=0CGAQFjAG&url=http%3A%2F%2Fwww.springer.com%2Fcda%2Fcontent%2Fdocument%2Fcda_downloaddocument%2F9781461403968-c1.pdf%3FSGWID%3D0-0-45-1223841-p174125174&ei=aDkMU7byEav-ygPco4CgCw&usg=AFQjCNHesyN88vQrE_TMs09VDg1szu1l_A&bvm=bv.61725948,d.bGQ Da wird auch das beispiel des TO diskutiert, als Vermeidungsgrund race-condition zwischen clock und async reset angegeben. Unter reference ist ein Atmel doc " ASIC design guidelines" genannt, das sich auch schnell per google finden lässt: http://www.dannicula.ro/pasic/docs/doc1205.pdf Bild 4 ist genau das Prüfungsbeispiel. Druckst deinem Prof aus und in die Hand. ;-) MfG,
Fpga Kuechle schrieb: > als Vermeidungsgrund race-condition zwischen clock und async reset > angegeben. Das sollte für ein anständig desgintes FPGA heutzutage aber nicht mehr gelten... > ein Atmel doc " ASIC design guidelines" Für ASICs ist das generell anders, weil da der Designer selber für Laufzeiten verantwortlich ist. Aber in einem FPGA muss der Taktbaum und das Taktnetz so aufgebaut sein (und nicht nur in Bezug auf den D-Eingang, sondern besonders auch in Bezug auf die Set, Reset, Load, Clear oder sonstwelche Flipflop-Steuereingänge), dass es nie zu einer race-condition kommt. Denn sonst ist ein synchrones Design per se nicht möglich...
Lothar Miller schrieb: > Fpga Kuechle schrieb: >> als Vermeidungsgrund race-condition zwischen clock und async reset >> angegeben. > Das sollte für ein anständig desgintes FPGA heutzutage aber nicht mehr > gelten... Ja. Leider sind nach meiner Erfahrung "Uni-Prüfungsaufgaben" und "Praxis heutzutage" zwei verschiedene Dinge. MfG,
Fpga Kuechle schrieb: > Leider sind nach meiner Erfahrung "Uni-Prüfungsaufgaben" und "Praxis > heutzutage" zwei verschiedene Dinge. So wie Atmel FPGAs den technischen Stand etwa zur Jahrtausendwende wiederspiegeln...
Lothar Miller schrieb: > So wie Atmel FPGAs den technischen Stand etwa zur Jahrtausendwende > wiederspiegeln. das ist was Wahres dran...
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.