Get email delivery of the Cadence blog featured here
In this blog, I will talk about the minimum period arc, which is a critical arc associated with the clock of a memory instance. The minimum period defines the maximum frequency at which the memory can operate given the minimum time between clocks and without affecting internal signals.
For example, a minimum period arc can define the duration between a rising edge of the clock and the subsequent rising edge.
There are two primary clocking schemes seen in memory instances, externally timed memory and self-timed memory.
In an externally timed memory, each clock edge has requirements for spacing to the next clock edge. The minimum period of the externally timed memory instance is equal to the sum of the minimum pulse width high and the minimum pulse width low.
In the self-timed memory, the clock controls the duration of the internal clock generation and termination. The next clock cycle can start only after the current cycle has completed and all the internal circuitry has been reset.
The method of internal clocking of the memory instance has a significant effect on the minimum period characterization methods and components. The externally timed memory, alternatively called as a level-triggered memory, uses one edge of the clock to start the memory operation and the opposite edge to terminate the operation. A self-timed memory, alternatively called as an edge-triggered memory, uses a single active clock edge to start the cycle and an internal delay path to end the cycle. The opposite clock edge is only used to provide a reset to the clock generation circuit.
In the externally timed memory, Liberate MX automatically loads the minimum period as the sum of the minimum pulse width low and the minimum pulse width high without any requiring user input.
The self-timed memory has several components, such as internal pulses, latch component, and bitline precharge, which are automatically characterized by Liberate MX.
The automatic methods used by Liberate MX are controlled by the mx_min_period_mode parameter. The valid values for this parameter are internal_pulse, latch, bitline_precharge, and user_spec (define_measure). A single value or list of values can be used.
You can also specify your own measurements for the minimum period using the Liberate MX define_measure commands. The various components of a single arc can be bundled together using the bundle attribute.
To know more about characterizing the minimum period using Liberate MX, refer to the Characterizing Clock Minimum Period Using Liberate MX application note.
Characterizing Clock Minimum Period Using Liberate MX
Liberate MX Memory Characterization Reference Manual
Liberate Characterization Portfolio Command and Parameter Support Matrix
Library Characterization Tidbits is a blog series aimed at providing insight into the useful software and documentation enhancements in the LIBERATE release. In addition, this series would broadcast the voices of different bloggers and experts, who would share their knowledge and experience about all the tools in Liberate Characterization Portfolio. To receive notifications about the new blogs in this series, click Subscribe and submit your email ID in the Subscriptions box.