Sequential RTL infers one flop family per idiom: plain, enabled, and synchronous or asynchronous reset. Each family is a distinct generic cell ($dff, $dffe, $sdff, $adff); whether that yields a distinct library cell depends on the library.
RTL idiom | Generic cell | In course.lib |
|---|---|---|
|
|
|
|
|
|
Reset tested inside the clocked block |
| Mapping varies by library |
Reset in the sensitivity list |
|
|
Lesson | What it covers |
|---|---|
The plain clocked block and the single | |
Enabled flops infer | |
Sync reset gives | |
Why datapath flops skip reset, and what initial values really mean. | |
From generic cells to |
q only when en is high and has no reset. Which generic cell does it infer?An enabled flop without reset: $dffe. The enable selects between the new data and the held value.