Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
intro_example:start [2025/05/17 11:54] – [Connections] rajit | intro_example:start [2025/05/22 10:01] (current) – [Organizing your design] rajit | ||
---|---|---|---|
Line 5: | Line 5: | ||
ACT supports the description of circuits are multiple levels of abstraction in a unified framework. Details of the language can be found in the [[language: | ACT supports the description of circuits are multiple levels of abstraction in a unified framework. Details of the language can be found in the [[language: | ||
- | ===== Simple circuit | + | ===== Circuit |
ACT can describe circuits are multiple levels of abstraction. At the highest level of abstraction, | ACT can describe circuits are multiple levels of abstraction. At the highest level of abstraction, | ||
Line 19: | Line 19: | ||
* Dependent [[template_deps|templates]] | * Dependent [[template_deps|templates]] | ||
* Using [[standard_sim|standard testing environments]] | * Using [[standard_sim|standard testing environments]] | ||
- | + | * More on [[connection_info|connections]] and how they work | |
- | + | ||
- | ===== Connections ===== | + | |
- | + | ||
- | Apart from variables used for parameters (e.g. '' | + | |
- | names for circuit components/ | + | |
- | creates the variable '' | + | |
- | + | ||
- | ACT provides flexible syntax for connections | + | |
* [[loops|Loops]] and selections | * [[loops|Loops]] and selections | ||
*Other ways to write the [[intro_example: | *Other ways to write the [[intro_example: | ||
+ | * [[assertions|Assertions]] in parameterized definitions | ||
+ | * [[name_mangling|Expanded names]] in ACT | ||
+ | * Using [[.pure_struct|pure structures]] | ||
+ | * Defining [[.operators|operators]] | ||
- | ===== Pure structures ===== | ||
- | |||
- | [[language: | ||
- | |||
- | * Using [[.pure_struct|pure structures]] | ||
- | * Defining [[.operators|operators]] | ||
===== Organizing your design ===== | ===== Organizing your design ===== | ||
Line 44: | Line 33: | ||
* Creating [[namespace|libraries and namespaces]] | * Creating [[namespace|libraries and namespaces]] | ||
+ | * Organizing your [[files|files]] | ||
* Tracking [[dependencies|dependencies]] between ACT files | * Tracking [[dependencies|dependencies]] between ACT files | ||
Line 49: | Line 39: | ||
===== Low-level circuit design and SPICE simulation ===== | ===== Low-level circuit design and SPICE simulation ===== | ||
- | So far we have learned how to describe a circuit in ACT, simulate using prsim and irsim. Now, we will move on to the next stage i.e. designing CMOS circuits from ACT description. The process of designing circuit often starts with creating a spice netlist to simulate transistor-level circuit behavior. In order to generate a spice netlist, ACT requires some technology-dependent information and information to understand designer’s intent. We use configuration files to provide such information. For more information on configuration files, see [[config: | + | So far we have learned how to describe a circuit in ACT, simulate using actsim, |
The configuration files are saved in '' | The configuration files are saved in '' | ||
Line 55: | Line 45: | ||
* Specifying transistor [[sizing|sizes]] for CMOS implementation | * Specifying transistor [[sizing|sizes]] for CMOS implementation | ||
* Generating spice [[netlist|netlist]] and simulation with [[https:// | * Generating spice [[netlist|netlist]] and simulation with [[https:// | ||
+ | * [[name_mangling|Name mangling]] in ACT | ||
===== External tools ===== | ===== External tools ===== | ||