ChStepan преди 2 години
родител
ревизия
8fdb2a5087
променени са 1 файла, в които са добавени 16 реда и са изтрити 12 реда
  1. 16 12
      CodeVerilog/readme.md

+ 16 - 12
CodeVerilog/readme.md

@@ -54,19 +54,20 @@ reg dataValid;
 reg dataValid_d1;
 reg dataValid_d2;
 
-always @(posedge Clk_i)
-begin
-  dataValid_d1 <= dataValid;
-  dataValid_d2 <= dataValid_d1;
+always @(posedge Clk_i) begin
+	dataValid_d1 <= dataValid;
+	dataValid_d2 <= dataValid_d1;
 end
 
 reg [3:0] dataValidShReg;
-always @ (posedge Clk_i)
-  dataValidShReg <= {dataValidShReg[2:0], dataValid};
+always @(posedge Clk_i) begin
+	dataValidShReg <= {dataValidShReg[2:0], dataValid};
+end
 ```
 ### Табуляция и пробелы
 
-При написании кода используется табуляция. В настройках используемого редактора необходимо добавить настройку на выдачу 4х пробелов на одно нажатие клавиши Tab. 
+При сдвиге новой строки используется табуляция, между словами одной строки используются пробелы. В настройках используемого редактора необходимо в настройках Табуляции указать размер табуляции равный 4. 
+Для улучшения читаемости кода, допускается использование табуляции между словами одной строки.
 
 ### Имя сигнала сброса
 Имя сигнала сброса должно содержать в себе "Rst". Помимо этого в названии может отображаться дополнительная информация о полярности сигнала сброса, является он синхронным или асинхронным, локальным или глобальным и т.п.
@@ -168,12 +169,14 @@ module spi (
    wire [DataWidth-1:0] outDataB;
    wire wrEnA;
 
-   always @(posedge clkA)
-      if (wrEnA)
+   always @(posedge clkA) begin
+      if (wrEnA) begin
          ramBlock[addrA] <= inDataA;
-      
-   always @(posedge clkB)
+      end
+   end
+   always @(posedge clkB) begin
       outDataB <= ramBlock[addrB];
+   end
 ```
 
 Также, вместо явного описания блока DSP, используемого для простого умножения двух 18-битных знаковых чисел, можно применить следующее описание:
@@ -182,8 +185,9 @@ module spi (
    wire signed [17:0] bIn;
    reg signed [35:0] p;
 
-   always @(posedge <clock>)   
+   always @(posedge <clock>) begin  
       p <= aIn * bIn; 
+   end
 ```
 
 **Замечание:** При использовании описанного подхода необходимо удостовериться: