ZLayout EDA Library v1.0.0
Advanced Electronic Design Automation Layout Library with Bilingual Documentation
Loading...
Searching...
No Matches
zlayout.logic_circuits.SequentialLogic Class Reference
Inheritance diagram for zlayout.logic_circuits.SequentialLogic:

Public Member Functions

 __init__ (self, str name)
 add_input (self, str signal_name)
 add_output (self, str signal_name)
 on_clock_edge (self)
 reset (self)
bool check_timing (self)

Public Attributes

 name = name
 clock_signal = Signal("clock")
 reset_signal = Signal("reset")
 enable_signal = Signal("enable")
dict inputs = {}
dict outputs = {}
dict internal_state = {}
 clock_edge = ClockEdge.RISING
float setup_time = 0.1
float hold_time = 0.1
float propagation_delay = 0.5

Detailed Description

时序逻辑电路基类

Definition at line 83 of file logic_circuits.py.

Constructor & Destructor Documentation

◆ __init__()

zlayout.logic_circuits.SequentialLogic.__init__ ( self,
str name )

Definition at line 86 of file logic_circuits.py.

Member Function Documentation

◆ add_input()

zlayout.logic_circuits.SequentialLogic.add_input ( self,
str signal_name )
添加输入信号

Definition at line 99 of file logic_circuits.py.

◆ add_output()

zlayout.logic_circuits.SequentialLogic.add_output ( self,
str signal_name )
添加输出信号

Definition at line 103 of file logic_circuits.py.

◆ check_timing()

bool zlayout.logic_circuits.SequentialLogic.check_timing ( self)
检查时序约束

Definition at line 115 of file logic_circuits.py.

◆ on_clock_edge()

zlayout.logic_circuits.SequentialLogic.on_clock_edge ( self)
时钟边沿触发,子类需要实现

Reimplemented in zlayout.logic_circuits.Counter, and zlayout.logic_circuits.FlipFlop.

Definition at line 107 of file logic_circuits.py.

◆ reset()

zlayout.logic_circuits.SequentialLogic.reset ( self)
复位操作,子类需要实现

Reimplemented in zlayout.logic_circuits.Counter, and zlayout.logic_circuits.FlipFlop.

Definition at line 111 of file logic_circuits.py.

Here is the caller graph for this function:

Member Data Documentation

◆ clock_edge

zlayout.logic_circuits.SequentialLogic.clock_edge = ClockEdge.RISING

Definition at line 94 of file logic_circuits.py.

◆ clock_signal

zlayout.logic_circuits.SequentialLogic.clock_signal = Signal("clock")

Definition at line 88 of file logic_circuits.py.

◆ enable_signal

zlayout.logic_circuits.SequentialLogic.enable_signal = Signal("enable")

Definition at line 90 of file logic_circuits.py.

◆ hold_time

float zlayout.logic_circuits.SequentialLogic.hold_time = 0.1

Definition at line 96 of file logic_circuits.py.

◆ inputs

dict zlayout.logic_circuits.SequentialLogic.inputs = {}

Definition at line 91 of file logic_circuits.py.

◆ internal_state

dict zlayout.logic_circuits.SequentialLogic.internal_state = {}

Definition at line 93 of file logic_circuits.py.

◆ name

zlayout.logic_circuits.SequentialLogic.name = name

Definition at line 87 of file logic_circuits.py.

◆ outputs

dict zlayout.logic_circuits.SequentialLogic.outputs = {}

Definition at line 92 of file logic_circuits.py.

◆ propagation_delay

float zlayout.logic_circuits.SequentialLogic.propagation_delay = 0.5

Definition at line 97 of file logic_circuits.py.

◆ reset_signal

zlayout.logic_circuits.SequentialLogic.reset_signal = Signal("reset")

Definition at line 89 of file logic_circuits.py.

◆ setup_time

float zlayout.logic_circuits.SequentialLogic.setup_time = 0.1

Definition at line 95 of file logic_circuits.py.


The documentation for this class was generated from the following file: