mirror of
				https://github.com/YosysHQ/yosys
				synced 2025-11-04 13:29:12 +00:00 
			
		
		
		
	cxxrtl: Fix handling of unclocked memory read ports
Signed-off-by: David Shah <dave@ds0.me>
This commit is contained in:
		
							parent
							
								
									7a36728b2f
								
							
						
					
					
						commit
						3b85b7c57a
					
				
					 1 changed files with 3 additions and 2 deletions
				
			
		| 
						 | 
					@ -871,7 +871,8 @@ struct CxxrtlWorker {
 | 
				
			||||||
			dump_sigspec_rhs(cell->getPort(ID(ADDR)));
 | 
								dump_sigspec_rhs(cell->getPort(ID(ADDR)));
 | 
				
			||||||
			f << ", " << memory->start_offset << ", " << memory->size << ");\n";
 | 
								f << ", " << memory->start_offset << ", " << memory->size << ");\n";
 | 
				
			||||||
			if (cell->type == ID($memrd)) {
 | 
								if (cell->type == ID($memrd)) {
 | 
				
			||||||
				if (!cell->getPort(ID(EN)).is_fully_ones()) {
 | 
									bool has_enable = cell->getParam(ID(CLK_ENABLE)).as_bool() && !cell->getPort(ID(EN)).is_fully_ones();
 | 
				
			||||||
 | 
									if (has_enable) {
 | 
				
			||||||
					f << indent << "if (";
 | 
										f << indent << "if (";
 | 
				
			||||||
					dump_sigspec_rhs(cell->getPort(ID(EN)));
 | 
										dump_sigspec_rhs(cell->getPort(ID(EN)));
 | 
				
			||||||
					f << ") {\n";
 | 
										f << ") {\n";
 | 
				
			||||||
| 
						 | 
					@ -930,7 +931,7 @@ struct CxxrtlWorker {
 | 
				
			||||||
					f << " = value<" << memory->width << "> {};\n";
 | 
										f << " = value<" << memory->width << "> {};\n";
 | 
				
			||||||
				dec_indent();
 | 
									dec_indent();
 | 
				
			||||||
				f << indent << "}\n";
 | 
									f << indent << "}\n";
 | 
				
			||||||
				if (!cell->getPort(ID(EN)).is_fully_ones()) {
 | 
									if (has_enable) {
 | 
				
			||||||
					dec_indent();
 | 
										dec_indent();
 | 
				
			||||||
					f << indent << "}\n";
 | 
										f << indent << "}\n";
 | 
				
			||||||
				}
 | 
									}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue