Um die Frage direkt zu beantworten - die meisten FPGAs können heutzutage in ihren Flipflops entweder synchrone oder asynchrone Resets durchführen. In Bezug auf das Hinzufügen eines asynchronen Clear- und Sync-Rests bin ich mir nicht sicher, was Sie damit erreicht haben - fügen Sie die Signale hinzu, die für die Funktion Ihres Designs erforderlich sind (möglicherweise ohne Reset für einige Flops ...)
Noch ein Ratschlag ... Wenn Sie einen asynchronen Reset verwenden, seien Sie sehr vorsichtig, wenn Sie ihn rückgängig machen. Wenn dieses "langsame" Netz auf Ihrem Gerät stark verzerrt ist, können Sie feststellen, dass einige unserer Flops in einem anderen Taktzyklus auf andere zurückgesetzt werden. Chaos entsteht!
dies zu vermeiden, ich favorisieren einen Toplevel Block zu schaffen, die in der externen nimmt (und vermutlich sehr asynchron) Reset-Signal, synchronisiert es um die Uhr und führt es als Synchron Reset an alle Flops Sie Zurücksetzen wollen (in dieser Taktdomäne - Sie benötigen möglicherweise mehrere. Dann wird der Timing-Analysator Ihnen sagen, wenn der Skew zu viel das Gerät ist, und Sie werden sicherstellen, dass alles aus dem Reset auf einmal kommt.
Xilinx have a whitepaper zu diesem Thema, aber es gilt auch für andere FPGAs gleichermaßen.
Für einige Anwendungen benötigen Sie möglicherweise einen asynchron aktivierten Reset auf den IOs, um sicherzustellen, dass bestimmte externe Geräte so funktionieren, wie Sie es benötigen - aber es immer noch synchron deaktiviert.
(PS., Wie Sie FPGAs erwähnen, wenn Sie nicht bewusst sind, gibt es einen Stack Vorschlag programmierbare Logik im Zusammenhang, die Sie vielleicht interessiert http://area51.stackexchange.com/proposals/20632/ finden)
Vielleicht wäre diese Frage besser in http://electronics.stackexchange.com/? – thkala
Während dies in Chips implementiert ist, wird es auch in VHDL oder Verilog programmiert. Es könnte beide Orte gehen. –