mirror of
				https://github.com/YosysHQ/yosys
				synced 2025-10-31 19:52:31 +00:00 
			
		
		
		
	abc9_ops: update docs
This commit is contained in:
		
							parent
							
								
									ca4f8c9444
								
							
						
					
					
						commit
						f652a9c11c
					
				
					 1 changed files with 10 additions and 11 deletions
				
			
		|  | @ -1516,29 +1516,28 @@ struct Abc9OpsPass : public Pass { | ||||||
| 		log("        derive all used (* abc9_box *) requiring bypass, or (* abc9_flop *) (if\n"); | 		log("        derive all used (* abc9_box *) requiring bypass, or (* abc9_flop *) (if\n"); | ||||||
| 		log("        -dff option) whitebox modules. with (* abc9_box *) modules, bypassing is\n"); | 		log("        -dff option) whitebox modules. with (* abc9_box *) modules, bypassing is\n"); | ||||||
| 		log("        necessary if sequential elements (e.g. $dff, $mem, etc.) are discovered\n"); | 		log("        necessary if sequential elements (e.g. $dff, $mem, etc.) are discovered\n"); | ||||||
| 		log("        inside, to ensure that any combinatorial paths are correctly captured.\n"); | 		log("        inside to ensure that any combinatorial paths are correctly captured.\n"); | ||||||
| 		log("        with (* abc9_flop *) modules, only those containing $dff/$_DFF_[NP]_\n"); | 		log("        with (* abc9_flop *) modules, only those containing $dff/$_DFF_[NP]_\n"); | ||||||
| 		log("        cells with zero initial state -- due to an ABC limitation -- will be\n"); | 		log("        cells with zero initial state -- due to an ABC limitation -- will be\n"); | ||||||
| 		log("        derived. for such derived modules, add a rule inside the '$abc9_unmap'\n"); | 		log("        derived.\n"); | ||||||
| 		log("        design that can map a cell instantiating a derived module back to the\n"); |  | ||||||
| 		log("        original cell with parameters.\n"); |  | ||||||
| 		log("\n"); | 		log("\n"); | ||||||
| 		log("    -prep_bypass\n"); | 		log("    -prep_bypass\n"); | ||||||
| 		log("        create techmap rules in the '$abc9_map' and '$abc9_unmap' designs for\n"); | 		log("        create techmap rules in the '$abc9_map' and '$abc9_unmap' designs for\n"); | ||||||
| 		log("        bypassing sequential (* abc9_box *) modules using a combinatorial box\n"); | 		log("        bypassing sequential (* abc9_box *) modules using a combinatorial box\n"); | ||||||
| 		log("        (named *_$abc9_byp) that has inherited all its $specify2 (simple path)\n"); | 		log("        (named *_$abc9_byp). this bypass box will only contain ports that are\n"); | ||||||
| 		log("        cells.\n"); | 		log("        referenced by a simple path declaration ($specify2 cell) inside a\n"); | ||||||
|  | 		log("        specify block.\n"); | ||||||
| 		log("\n"); | 		log("\n"); | ||||||
| 		log("    -prep_dff\n"); | 		log("    -prep_dff\n"); | ||||||
| 		log("        select all (* abc9_flop *) modules instantiated in the design and store\n"); | 		log("        select all (* abc9_flop *) modules instantiated in the design and store\n"); | ||||||
| 		log("        in the named selection '$abc9_flops'.\n"); | 		log("        in the named selection '$abc9_flops'.\n"); | ||||||
| 		log("\n"); | 		log("\n"); | ||||||
| 		log("    -prep_dff_submod\n"); | 		log("    -prep_dff_submod\n"); | ||||||
| 		log("        within (* abc9_flop *) modules, attach dummy buffers to all ports and move\n"); | 		log("        within (* abc9_flop *) modules, rewrite all edge-sensitive path\n"); | ||||||
| 		log("        all $specify3/$specrule cells that share a 'DST' port with the $_DFF_[NP]_.Q\n"); | 		log("        declarations and $setup() timing checks ($specify3 and $specrule cells)\n"); | ||||||
| 		log("        port from this 'Q' port to the DFF's 'D' port. this is to ensure that all\n"); | 		log("        that share a 'DST' port with the $_DFF_[NP]_.Q port from this 'Q' port to\n"); | ||||||
| 		log("        module ports will exist in any submodule, and prepare such specify cells to\n"); | 		log("        the DFF's 'D' port. this is to prepare such specify cells to be moved\n"); | ||||||
| 		log("        be moved within.\n"); | 		log("        into the flop box.\n"); | ||||||
| 		log("\n"); | 		log("\n"); | ||||||
| 		log("    -prep_dff_unmap\n"); | 		log("    -prep_dff_unmap\n"); | ||||||
| 		log("        populate the '$abc9_unmap' design with techmap rules for mapping *_$abc9_flop\n"); | 		log("        populate the '$abc9_unmap' design with techmap rules for mapping *_$abc9_flop\n"); | ||||||
|  |  | ||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue