Download PLSyn User's Guide
Transcript
8-8 MACH 1-4 Device-Specific Fitting Implementing HazardFree Combinatorial Latches You may need to implement combinatorial latches in MACH devices. A combinatorial latch is a simple combinatorial function in which the output is derived from inputs and feedbacks. A seemingly correct latch design can be subject to hazard conditions that might cause latch failure. By inserting redundancy into the latch equation, you can protect against hazard conditions. Basic Latch Circuit The basic transparent DLatch expression looks like the following: INPUT Data; INPUT LatchEnable; NODE DLatch; DLatch = LatchEnable * Data + /LatchEnable * DLatch; Creating a Hazard-Free Latch A Karnaugh map reveals that it is possible to lose data when the LatchEnable goes from 1 to 0 while asserting Data. To create a latch that protects against losing data 1 Add a Cover Term to the DLATCH equation by encapsulating the combinatorial latch function in a DSL procedure. 2 Add the NO_REDUCE option to the output to prevent PLSyn from reducing out the Cover Term.