mirror of
				https://github.com/YosysHQ/yosys
				synced 2025-10-31 11:42:30 +00:00 
			
		
		
		
	Mis-spell
This commit is contained in:
		
							parent
							
								
									e992dbf2c5
								
							
						
					
					
						commit
						b77cf6ba48
					
				
					 1 changed files with 25 additions and 10 deletions
				
			
		|  | @ -597,10 +597,10 @@ module DSP48E1 ( | ||||||
|         else assign B_muxed = B; |         else assign B_muxed = B; | ||||||
|     endgenerate |     endgenerate | ||||||
| 
 | 
 | ||||||
|     reg signed [29:0] Ar1 = 30'b0, Ar2 = 30'b0; |     reg signed [29:0] Ar1, Ar2; | ||||||
|     reg signed [24:0] Dr = 25'b0; |     reg signed [24:0] Dr; | ||||||
|     reg signed [17:0] Br1 = 18'b0, Br2 = 18'b0; |     reg signed [17:0] Br1, Br2; | ||||||
|     reg signed [47:0] Cr = 48'b0; |     reg signed [47:0] Cr; | ||||||
|     reg        [4:0]  INMODEr = 5'b0; |     reg        [4:0]  INMODEr = 5'b0; | ||||||
|     reg        [6:0]  OPMODEr = 7'b0; |     reg        [6:0]  OPMODEr = 7'b0; | ||||||
|     reg        [3:0]  ALUMODEr = 4'b0; |     reg        [3:0]  ALUMODEr = 4'b0; | ||||||
|  | @ -609,6 +609,8 @@ module DSP48E1 ( | ||||||
|     generate |     generate | ||||||
|         // Configurable A register |         // Configurable A register | ||||||
|         if (AREG == 2) begin |         if (AREG == 2) begin | ||||||
|  |             initial Ar1 = 30'b0; | ||||||
|  |             initial Ar2 = 30'b0; | ||||||
|             always @(posedge CLK) |             always @(posedge CLK) | ||||||
|                 if (RSTA) begin |                 if (RSTA) begin | ||||||
|                     Ar1 <= 30'b0; |                     Ar1 <= 30'b0; | ||||||
|  | @ -618,6 +620,8 @@ module DSP48E1 ( | ||||||
|                     if (CEA2) Ar2 <= Ar1; |                     if (CEA2) Ar2 <= Ar1; | ||||||
|                 end |                 end | ||||||
|         end else if (AREG == 1) begin |         end else if (AREG == 1) begin | ||||||
|  |             //initial Ar1 = 30'b0; | ||||||
|  |             initial Ar2 = 30'b0; | ||||||
|             always @(posedge CLK) |             always @(posedge CLK) | ||||||
|                 if (RSTA) begin |                 if (RSTA) begin | ||||||
|                     Ar1 <= 30'b0; |                     Ar1 <= 30'b0; | ||||||
|  | @ -633,6 +637,8 @@ module DSP48E1 ( | ||||||
| 
 | 
 | ||||||
|         // Configurable B register |         // Configurable B register | ||||||
|         if (BREG == 2) begin |         if (BREG == 2) begin | ||||||
|  |             initial Br1 = 25'b0; | ||||||
|  |             initial Br2 = 25'b0; | ||||||
|             always @(posedge CLK) |             always @(posedge CLK) | ||||||
|                 if (RSTB) begin |                 if (RSTB) begin | ||||||
|                     Br1 <= 18'b0; |                     Br1 <= 18'b0; | ||||||
|  | @ -642,6 +648,8 @@ module DSP48E1 ( | ||||||
|                     if (CEB2) Br2 <= Br1; |                     if (CEB2) Br2 <= Br1; | ||||||
|                 end |                 end | ||||||
|         end else if (BREG == 1) begin |         end else if (BREG == 1) begin | ||||||
|  |             //initial Br1 = 25'b0; | ||||||
|  |             initial Br2 = 25'b0; | ||||||
|             always @(posedge CLK) |             always @(posedge CLK) | ||||||
|                 if (RSTB) begin |                 if (RSTB) begin | ||||||
|                     Br1 <= 18'b0; |                     Br1 <= 18'b0; | ||||||
|  | @ -656,24 +664,30 @@ module DSP48E1 ( | ||||||
|         end |         end | ||||||
| 
 | 
 | ||||||
|         // C and D registers |         // C and D registers | ||||||
|  |         if (CREG == 1) initial Cr = 48'b0; | ||||||
|         if (CREG == 1) begin always @(posedge CLK) if (RSTC) Cr <= 48'b0; else if (CEC) Cr <= C; end |         if (CREG == 1) begin always @(posedge CLK) if (RSTC) Cr <= 48'b0; else if (CEC) Cr <= C; end | ||||||
|         else           always @* Cr <= C; |         else           always @* Cr <= C; | ||||||
| 
 | 
 | ||||||
|  |         if (CREG == 1) initial Dr = 25'b0; | ||||||
|         if (DREG == 1) begin always @(posedge CLK) if (RSTD) Dr <= 25'b0; else if (CED) Dr <= D; end |         if (DREG == 1) begin always @(posedge CLK) if (RSTD) Dr <= 25'b0; else if (CED) Dr <= D; end | ||||||
|         else           always @* Dr <= D; |         else           always @* Dr <= D; | ||||||
| 
 | 
 | ||||||
|         // Control registers |         // Control registers | ||||||
|  |         if (INMODEREG == 1) initial INMODEr = 5'b0; | ||||||
|         if (INMODEREG == 1) begin always @(posedge CLK) if (RSTINMODE) INMODEr <= 5'b0; else if (CEINMODE) INMODEr <= INMODE; end |         if (INMODEREG == 1) begin always @(posedge CLK) if (RSTINMODE) INMODEr <= 5'b0; else if (CEINMODE) INMODEr <= INMODE; end | ||||||
|         else           always @* INMODEr <= INMODE; |         else           always @* INMODEr <= INMODE; | ||||||
|  |         if (OPMODEREG == 1) initial OPMODEr = 7'b0; | ||||||
|         if (OPMODEREG == 1) begin always @(posedge CLK) if (RSTCTRL) OPMODEr <= 7'b0; else if (CECTRL) OPMODEr <= OPMODE; end |         if (OPMODEREG == 1) begin always @(posedge CLK) if (RSTCTRL) OPMODEr <= 7'b0; else if (CECTRL) OPMODEr <= OPMODE; end | ||||||
|         else           always @* OPMODEr <= OPMODE; |         else           always @* OPMODEr <= OPMODE; | ||||||
|  |         if (ALUMODEREG == 1) initial ALUMODEr = 4'b0; | ||||||
|         if (ALUMODEREG == 1) begin always @(posedge CLK) if (RSTALUMODE) ALUMODEr <= 4'b0; else if (CEALUMODE) ALUMODEr <= ALUMODE; end |         if (ALUMODEREG == 1) begin always @(posedge CLK) if (RSTALUMODE) ALUMODEr <= 4'b0; else if (CEALUMODE) ALUMODEr <= ALUMODE; end | ||||||
|         else           always @* ALUMODEr <= ALUMODE; |         else           always @* ALUMODEr <= ALUMODE; | ||||||
|  |         if (CARRYINSELREG == 1) initial CARRYINSELr = 3'b0; | ||||||
|         if (CARRYINSELREG == 1) begin always @(posedge CLK) if (RSTCTRL) CARRYINSELr <= 3'b0; else if (CECTRL) CARRYINSELr <= CARRYINSEL; end |         if (CARRYINSELREG == 1) begin always @(posedge CLK) if (RSTCTRL) CARRYINSELr <= 3'b0; else if (CECTRL) CARRYINSELr <= CARRYINSEL; end | ||||||
|         else           always @* CARRYINSELr <= CARRYINSEL; |         else           always @* CARRYINSELr <= CARRYINSEL; | ||||||
|     endgenerate |     endgenerate | ||||||
| 
 | 
 | ||||||
|     // A and B cascsde |     // A and B cascade | ||||||
|     generate |     generate | ||||||
|         if (ACASCREG == 1 && AREG == 2) assign ACOUT = Ar1; |         if (ACASCREG == 1 && AREG == 2) assign ACOUT = Ar1; | ||||||
|         else assign ACOUT = Ar2; |         else assign ACOUT = Ar2; | ||||||
|  | @ -686,9 +700,10 @@ module DSP48E1 ( | ||||||
|     wire signed [24:0] Ar12_gated = INMODEr[1] ? 25'b0 : Ar12_muxed; |     wire signed [24:0] Ar12_gated = INMODEr[1] ? 25'b0 : Ar12_muxed; | ||||||
|     wire signed [24:0] Dr_gated   = INMODEr[2] ? Dr : 25'b0; |     wire signed [24:0] Dr_gated   = INMODEr[2] ? Dr : 25'b0; | ||||||
|     wire signed [24:0] AD_result  = INMODEr[3] ? (Dr_gated - Ar12_gated) : (Dr_gated + Ar12_gated); |     wire signed [24:0] AD_result  = INMODEr[3] ? (Dr_gated - Ar12_gated) : (Dr_gated + Ar12_gated); | ||||||
|     reg  signed [24:0] ADr = 25'b0; |     reg  signed [24:0] ADr; | ||||||
| 
 | 
 | ||||||
|     generate |     generate | ||||||
|  |         if (ADREG == 1) initial ADr = 25'b0; | ||||||
|         if (ADREG == 1) begin always @(posedge CLK) if (RSTD) ADr <= 25'b0; else if (CEAD) ADr <= AD_result; end |         if (ADREG == 1) begin always @(posedge CLK) if (RSTD) ADr <= 25'b0; else if (CEAD) ADr <= AD_result; end | ||||||
|         else            always @* ADr <= AD_result; |         else            always @* ADr <= AD_result; | ||||||
|     endgenerate |     endgenerate | ||||||
|  | @ -860,10 +875,6 @@ module DSP48E1 ( | ||||||
|     endgenerate |     endgenerate | ||||||
| 
 | 
 | ||||||
|     wire signed [47:0] Pd = ALUMODEr[1] ? ~alu_sum : alu_sum; |     wire signed [47:0] Pd = ALUMODEr[1] ? ~alu_sum : alu_sum; | ||||||
|     initial P = 48'b0; |  | ||||||
|     initial CARRYOUT = carryout_reset; |  | ||||||
|     initial CARRYCASCOUT = 1'b0; |  | ||||||
|     initial MULTSIGNOUT = 1'b0; |  | ||||||
|     wire [3:0] CARRYOUTd = (OPMODEr[3:0] == 4'b0101 || ALUMODEr[3:2] != 2'b00) ? 4'bxxxx : |     wire [3:0] CARRYOUTd = (OPMODEr[3:0] == 4'b0101 || ALUMODEr[3:2] != 2'b00) ? 4'bxxxx : | ||||||
|                            ((ALUMODEr[0] & ALUMODEr[1]) ? ~ext_carry_out : ext_carry_out); |                            ((ALUMODEr[0] & ALUMODEr[1]) ? ~ext_carry_out : ext_carry_out); | ||||||
|     wire CARRYCASCOUTd = ext_carry_out[3]; |     wire CARRYCASCOUTd = ext_carry_out[3]; | ||||||
|  | @ -871,6 +882,10 @@ module DSP48E1 ( | ||||||
| 
 | 
 | ||||||
|     generate |     generate | ||||||
|         if (PREG == 1) begin |         if (PREG == 1) begin | ||||||
|  |             initial P = 48'b0; | ||||||
|  |             initial CARRYOUT = carryout_reset; | ||||||
|  |             initial CARRYCASCOUT = 1'b0; | ||||||
|  |             initial MULTSIGNOUT = 1'b0; | ||||||
|             always @(posedge CLK) |             always @(posedge CLK) | ||||||
|                 if (RSTP) begin |                 if (RSTP) begin | ||||||
|                     P <= 48'b0; |                     P <= 48'b0; | ||||||
|  |  | ||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue